Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVincent Lorenzo2014-03-13 14:53:38 +0000
committerVincent Lorenzo2014-03-13 14:53:38 +0000
commitf751336bb14fa5194900168120e3127673512668 (patch)
tree7db754792807a2d34301ee8b1d970e66cbeb2b60
parent553f8efafc6a2d4f02e08186cfa7812105ad59bf (diff)
parentee83380462941881a5d2b4fcc1c82155e2c1c446 (diff)
downloadorg.eclipse.papyrus-f751336bb14fa5194900168120e3127673512668.tar.gz
org.eclipse.papyrus-f751336bb14fa5194900168120e3127673512668.tar.xz
org.eclipse.papyrus-f751336bb14fa5194900168120e3127673512668.zip
Merge branch 'master' of ssh://git.eclipse.org/gitroot/papyrus/org.eclipse.papyrus
-rw-r--r--extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/META-INF/MANIFEST.MF3
-rw-r--r--extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/CreateJavaValidationPluginHandler.java9
-rw-r--r--extraplugins/org.eclipse.papyrus.qvtTransformation/bin/org/eclipse/papyrus/qvttransformation/popup/actions/SelectQVTTransformation.classbin3044 -> 1364 bytes
-rw-r--r--extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/META-INF/MANIFEST.MF3
-rw-r--r--extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/CmdHandler.java7
-rw-r--r--extraplugins/tablemigration/org.eclipse.papyrus.infra.emf.nattable.converter/src/org/eclipse/papyrus/uml/nattable/converter/handlers/ConvertAllTablesHandler.java15
-rw-r--r--extraplugins/tablemigration/org.eclipse.papyrus.infra.emf.nattable.converter/src/org/eclipse/papyrus/uml/nattable/converter/handlers/ConvertOldTableHandler.java5
-rw-r--r--features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/.project17
-rw-r--r--features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/build.properties6
-rw-r--r--features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/epl-v10.html304
-rw-r--r--features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/feature.properties139
-rw-r--r--features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/feature.xml273
-rw-r--r--features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/license.html108
-rw-r--r--features/papyrus-main-features/org.eclipse.papyrus.infra.emf.feature/feature.xml57
-rw-r--r--features/papyrus-main-features/org.eclipse.papyrus.sdk.feature/feature.xml8
-rw-r--r--features/papyrus-main-features/org.eclipse.papyrus.sdk.sources.feature/feature.xml4
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.palette/META-INF/MANIFEST.MF11
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.palette/src/org/eclipse/papyrus/customization/palette/dialog/ExtendedPaletteContentPage.java46
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/.project2
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/META-INF/MANIFEST.MF4
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/facet/PaletteConfiguration.custom34
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/facet/PaletteConfiguration.facetset37
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/facet/PaletteConfiguration.querySet23
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/plugin.xml9
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/GetDrawerLabelQuery.java17
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/GetIconQuery.java19
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/GetToolLabelQuery.java53
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/HasIconQuery.java17
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.properties.generation/META-INF/MANIFEST.MF3
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.properties/META-INF/MANIFEST.MF12
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.properties/plugin.xml3
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/Activator.java64
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/editor/UIEditor.java2
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/editor/preview/Preview.java12
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/modelelement/GenericAttributeModelElement.java5
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/providers/ContextContentProvider.java10
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/providers/ContextLabelProvider.java80
-rw-r--r--plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/query/ShowContextQuery.java13
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/.classpath7
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/.project28
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/META-INF/MANIFEST.MF100
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/META-INF/eclipse.inf2
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc/pom.properties5
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc/pom.xml99
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/OSGI-INF/l10n/bundle.properties13
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/about.html28
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/build.properties9
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/CustomizationMetaclass.pngbin0 -> 3834 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/CustomizedEObject.pngbin0 -> 16744 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/EClassAndFacetCustomizationMetaclasses.pngbin0 -> 9276 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/ETypedElementSwitchQuery.pngbin0 -> 11850 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/LibraryModelInModelBrowser.pngbin0 -> 3916 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/LoadCustomizationsDialog.pngbin0 -> 30019 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/bottomLeftOverlay.pngbin0 -> 873 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/bottomMiddleOverlay.pngbin0 -> 885 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/bottomRightOverlay.pngbin0 -> 876 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/customizationWithOverride.pngbin0 -> 24595 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/customizingFacetWithOverride.pngbin0 -> 36048 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/topLeftOverlay.pngbin0 -> 871 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/topMiddleOverlay.pngbin0 -> 896 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/topRightOverlay.pngbin0 -> 881 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/plugin_dev-toc.xml4
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/plugin_dev.html37
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/plugin_dev.mediawiki27
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/user-toc.xml28
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/user.html445
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/user.mediawiki224
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/plugin.xml19
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/src/org/eclipse/papyrus/emf/facet/custom/doc/Activator.java17
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/toc-dev.xml15
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/toc-user.xml15
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/.project22
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/META-INF/MANIFEST.MF5
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/build.properties3
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/plugin.xml8
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/EClassCustomCreation1.pngbin0 -> 33215 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/EClassCustomEdition.pngbin0 -> 57098 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/EditorWithEmptyFile.pngbin0 -> 18586 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/FacetCustomCreation1.pngbin0 -> 43995 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/FacetOperationCreation1.pngbin0 -> 62245 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/FacetOperationSpecifyQuery.pngbin0 -> 86902 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/FineTuneEClassCustomization.pngbin0 -> 38903 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/RightPaneldescription.pngbin0 -> 31283 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation1.pngbin0 -> 41678 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation2.pngbin0 -> 29755 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation3.pngbin0 -> 20914 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/addParameter.pngbin0 -> 59824 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/attributes.gifbin0 -> 124 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/bottomLeftOverlay.pngbin0 -> 181 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/bottomMiddleOverlay.pngbin0 -> 188 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/bottomRightOverlay.pngbin0 -> 185 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/customizationLabel.pngbin0 -> 215 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/editor-toc.xml14
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/editor.html1
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/editor.textile174
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/facetOperationWithPropertiesView.pngbin0 -> 40264 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontBold.pngbin0 -> 249 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontItalic.bmpbin0 -> 822 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontName.pngbin0 -> 256 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontSize.pngbin0 -> 275 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontStrukethrough.bmpbin0 -> 822 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontUnderline.bmpbin0 -> 822 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/imageCustomization.pngbin0 -> 215 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/middleLeftOverlay.pngbin0 -> 188 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/middleRightOverlay.pngbin0 -> 191 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/rgb.pngbin0 -> 307 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/topLeftOverlay.pngbin0 -> 170 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/topMiddleOverlay.pngbin0 -> 159 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/topRightOverlay.pngbin0 -> 196 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/.classpath7
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/.project28
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/META-INF/MANIFEST.MF213
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/META-INF/eclipse.inf2
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.metamodel.editor/pom.properties5
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.metamodel.editor/pom.xml14
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/about.html28
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/build.properties8
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/Facet.gifbin0 -> 805 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/error.gifbin0 -> 353 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/addUiCustom.gifbin0 -> 612 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/aggreg.gifbin0 -> 68 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/aggreg_unidir.gifbin0 -> 91 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/attribute_facet.gifbin0 -> 438 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/attributes.gifbin0 -> 124 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomLeftOverlay.pngbin0 -> 181 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomMiddleOverlay.pngbin0 -> 188 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomRightOverlay.pngbin0 -> 185 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/collapseall.gifbin0 -> 157 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/common_columns.gifbin0 -> 101 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/container.gifbin0 -> 88 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/customizationLabel.pngbin0 -> 215 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/decrease_font_size.gifbin0 -> 102 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/derivation_tree.gifbin0 -> 82 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/derived.gifbin0 -> 97 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/derived_instances.gifbin0 -> 76 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/eClass.gifbin0 -> 228 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/element_id.gifbin0 -> 76 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/empty_attributes.gifbin0 -> 122 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/empty_links.gifbin0 -> 91 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/feature.gifbin0 -> 294 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontBold.pngbin0 -> 249 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontItalic.bmpbin0 -> 822 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontName.pngbin0 -> 256 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontSize.pngbin0 -> 275 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontStrukethrough.bmpbin0 -> 822 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontUnderline.bmpbin0 -> 822 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/full_name.gifbin0 -> 86 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/imageCustomization.pngbin0 -> 215 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/increase_font_size.gifbin0 -> 130 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/inv_aggreg.gifbin0 -> 70 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/link.gifbin0 -> 67 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_type.gifbin0 -> 92 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_unidir.gifbin0 -> 91 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_unidir_facet.gifbin0 -> 375 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/middleLeftOverlay.pngbin0 -> 188 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/middleRightOverlay.pngbin0 -> 191 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/multiplicity.gifbin0 -> 91 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/non-zero.gifbin0 -> 187 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/operation.gifbin0 -> 161 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/opposite_links.gifbin0 -> 68 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/ordering.gifbin0 -> 102 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/package.gifbin0 -> 207 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/predicate.gifbin0 -> 645 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/range.gifbin0 -> 89 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/restore_font_size.gifbin0 -> 130 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/rgb.pngbin0 -> 307 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort.gifbin0 -> 153 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_links.gifbin0 -> 189 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_links_by_type.gifbin0 -> 136 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_num.gifbin0 -> 138 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/topLeftOverlay.pngbin0 -> 170 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/topMiddleOverlay.pngbin0 -> 159 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/topRightOverlay.pngbin0 -> 196 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/uri.gifbin0 -> 76 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/view_menu.gifbin0 -> 90 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/zero.gifbin0 -> 326 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/obj16/CustomModelFile.gifbin0 -> 346 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/wizban/NewCustom.gifbin0 -> 2462 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/logoMoDiscoMini.gifbin0 -> 1078 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/query.pngbin0 -> 709 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/shortcut.pngbin0 -> 198 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/messages.properties97
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/plugin.properties150
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/plugin.xml46
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/Activator.java53
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/ColorProvider.java66
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomActionBarContributor.java434
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomEditor.java2019
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomEditorPlugin.java102
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomModelWizard.java616
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomViewer.java445
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/EMFUtil.java363
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/FormStyleSashForm.java143
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/ImageProvider.java770
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/Messages.java122
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/messages.properties97
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/.classpath7
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/.project28
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/META-INF/MANIFEST.MF894
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/META-INF/eclipse.inf2
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.doc/pom.properties5
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.doc/pom.xml99
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/OSGI-INF/l10n/bundle.properties13
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/about.html28
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/build.properties13
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/img/EMFFacet_NatTable_CustomizationExample.pngbin0 -> 24229 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/img/EMFFacet_NatTable_QueryColumn.pngbin0 -> 18479 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/index.html16
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/allclasses-frame.html123
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/allclasses-noframe.html123
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/constant-values.html312
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/deprecated-list.html146
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/help-doc.html223
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-1.html161
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-10.html221
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-11.html154
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-12.html151
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-13.html260
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-14.html145
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-15.html163
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-2.html175
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-3.html244
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-4.html154
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-5.html199
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-6.html419
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-7.html206
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-8.html182
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-9.html145
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index.html39
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html443
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html336
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html344
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html496
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html1081
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html325
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Book.html209
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Library.html249
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/LibraryFactory.html196
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/LibraryPackage.Literals.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/LibraryPackage.html196
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Writer.html233
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-frame.html42
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html184
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-use.html225
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html417
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html395
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/class-use/LibraryAdapterFactory.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/class-use/LibrarySwitch.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-frame.html34
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html161
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-tree.html155
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html495
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/class-use/IFacetDialogFactory.html180
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-use.html170
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html358
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html294
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/class-use/IQueryContext.html237
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/class-use/IQueryDialogFactoryStrategy.html205
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html231
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/class-use/IQueryDialogFactory.html210
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-use.html189
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-frame.html34
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html161
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-use.html195
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html325
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html272
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html393
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html469
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html287
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IDerivedTypedElementWidget.html180
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IENamedElementWidget.html233
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IEStructuralFeatureWidget.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IETypedElementWidget.html188
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IFacetWidget.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html213
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/class-use/IGetOrCreateFacetSetWidget.html180
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-use.html170
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html168
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/class-use/IGetExtendedMetaclassWidget.html209
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-use.html189
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html246
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/class-use/ICreateQueryWidget.html180
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-use.html170
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html360
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html168
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/class-use/ICreateFacetInFacetSetWidget.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/class-use/IGetOrCreateFilteredFacetSetWidget.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-frame.html34
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html161
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-tree.html153
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-frame.html40
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html173
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-tree.html157
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-use.html201
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html249
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/class-use/IWizardFactory.html180
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-use.html170
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html248
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html271
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/class-use/ICreateFacetSetWizardPage.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/class-use/IFacetSetPropertyWizardPage.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-frame.html34
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-summary.html161
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html257
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html257
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html257
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html257
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html257
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html257
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddAttributeInFacetHandler.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddOperationInFacetHandler.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddParameterInOperationHandler.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddReferenceInFacetHandler.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/CreateFacetInFacetSetHandler.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/CreateFacetSetInFacetSetHandler.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-frame.html42
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html177
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-tree.html165
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html907
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html389
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html225
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html282
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html313
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html422
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/AbstractQueryDialogFactory.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/GetQueryDialog.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/IQueryCreationResult.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/IQueryWidgetCompositeFactoryFactory.html196
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/QueryWidgetCompositeFactoryImpl.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/SelectQueryTypeWidget.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-frame.html51
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html190
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-tree.html164
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-use.html171
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html441
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/class-use/OclQueryUtil.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-tree.html153
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html352
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html292
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html278
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html606
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQuery.html209
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQueryFactory.html196
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQueryPackage.Literals.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQueryPackage.html196
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-frame.html38
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html176
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-use.html201
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html389
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html367
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/class-use/OclQueryAdapterFactory.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/class-use/OclQuerySwitch.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-frame.html34
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html161
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-tree.html155
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html221
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/class-use/IOclDialogFactory.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-tree.html153
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html206
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/class-use/IOclQueryWidget.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html208
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/class-use/IOCLExpressionWidget.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-frame.html32
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-summary.html157
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-tree.html151
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-use.html144
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/overview-frame.html80
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/overview-summary.html232
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/overview-tree.html189
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/package-list20
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/resources/inherit.gifbin0 -> 57 bytes
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/stylesheet.css29
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/maintoc.xml65
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/API_Policy-toc.xml11
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/API_Policy.html76
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/API_Policy.mediawiki77
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/capabilities-toc.xml5
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/capabilities.html58
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/capabilities.mediawiki44
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/checking_BREE-toc.xml2
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/checking_BREE.html37
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/checking_BREE.mediawiki19
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/new_and_noteworthy-toc.xml10
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/new_and_noteworthy.html58
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/new_and_noteworthy.mediawiki45
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/ramp_down-toc.xml2
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/ramp_down.html24
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/ramp_down.mediawiki11
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/retention_policy-toc.xml9
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/retention_policy.html34
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/retention_policy.mediawiki32
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/running_tests-toc.xml2
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/running_tests.html34
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/running_tests.mediawiki13
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/plugin.xml25
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/src/org/eclipse/papyrus/emf/facet/doc/tasks/GenerateApiJavadocTask.java140
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/toc-full.xml58
-rw-r--r--plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/toc.html109
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.checkstyle18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.settings/org.eclipse.core.resources.prefs2
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.settings/org.eclipse.core.runtime.prefs2
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.settings/org.eclipse.jdt.core.prefs11
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.core/META-INF/MANIFEST.MF14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.core/OSGI-INF/l10n/bundle.properties16
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.core/README.txt3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.core/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.core/build.properties19
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.core/src/org/eclipse/papyrus/emf/facet/common/core/internal/Activator.java47
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.core/src/org/eclipse/papyrus/emf/facet/common/core/internal/utils/StringMatcher.java500
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.checkstyle18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.project29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.settings/org.eclipse.core.runtime.prefs3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.settings/org.eclipse.jdt.core.prefs11
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/META-INF/MANIFEST.MF20
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/OSGI-INF/l10n/bundle.properties13
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/build.properties20
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/plugin.xml32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/resources/Activator.java.template32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/schema/builderRegistration.exsd138
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/Activator.java42
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/EmfFacetProjectBuilder.java203
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/EmfFacetProjectNature.java59
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/Messages.java26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/exported/CommonConstants.java25
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/exported/IEmfFacetProjectBuilder.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/exported/utils/ProjectUtils.java355
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/messages.properties12
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.checkstyle18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.settings/org.eclipse.core.runtime.prefs2
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/API.README.txt22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/META-INF/MANIFEST.MF23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/OSGI-INF/l10n/bundle.properties17
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/build.properties18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/plugin.xml52
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/Activator.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/Messages.java25
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/PersistableColumn.java217
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/Column.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/SortableTable.java47
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/SortableTree.java47
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/SortableWidget.java30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/SortableWidgetFactory.java48
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/TableColumn.java49
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/TreeColumn.java49
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/exported/views/IColumnDescription.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/exported/views/IElementsViewFactory.java68
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/messages.properties11
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/preference/pages/EmfFacetRootPreferencePage.java59
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/views/AbstractTreeView.java176
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/views/ElementsView.java208
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/views/ElementsViewFactory.java52
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/widgets/AnywhereFilterMatcher.java28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.checkstyle18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.pmd7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.project31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.settings/org.eclipse.core.resources.prefs2
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.settings/org.eclipse.jdt.core.prefs8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/META-INF/MANIFEST.MF25
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/OSGI-INF/l10n/bundle.properties14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/build.properties17
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/plugin.xml40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationCatalogManager.java65
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationCatalogManagerFactory.java31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationManager.java91
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationManagerFactory.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationPropertiesCatalogManager.java42
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationPropertiesCatalogManagerFactory.java31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/exception/CustomizationException.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/Activator.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationCatalogManager.java99
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationCatalogManagerFactory.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationManager.java182
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationManagerFactory.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationPropertiesCatalogManager.java101
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationPropertiesCatalogManagerFactory.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationsDelegatingList.java189
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/exception/CustomizationCatalogRuntimeException.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/exported/Constants.java21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/exported/CustomizationUtils.java132
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/query/ETypedElementSwitchQueryImplementation.java83
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/query/ETypedElementSwitchQueryImplementationFactory.java45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/query/SwitchQueryImplementation.java81
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/query/SwitchQueryImplementationFactory.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/.project29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/.settings/org.eclipse.jdt.core.prefs77
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/META-INF/MANIFEST.MF17
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/build.properties22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateEClassCustomization_eStructuralFeatureCustomization_EStructuralFeatureCustomization.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_EObjectLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_ETypedElementSwitchQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_FalseLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_FloatLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_IntegerLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_IsOneOfQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NavigationQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NullLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_OperationCallQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_StringLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_TrueLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementSwitchQuery_cases_ETypedElementCase.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateFacetCustomization_eStructuralFeatureCustomization_EStructuralFeatureCustomization.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateTypeCustomization_eStructuralFeatureCustomization_EStructuralFeatureCustomization.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/Customization.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/EClassCustomization.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/EStructuralFeatureCustomization.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/ETypedElementCase.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/ETypedElementSwitchQuery.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/FacetCustomization.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/TypeCustomization.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/plugin.properties47
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/plugin.xml32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/CustomEditPlugin.java101
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/CustomItemProviderAdapterFactory.java304
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/CustomizationItemProvider.java182
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/EClassCustomizationItemProvider.java133
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/ETypedElementCaseItemProvider.java250
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/ETypedElementSwitchQueryItemProvider.java175
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/FacetCustomizationItemProvider.java158
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.project28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.settings/org.eclipse.core.resources.prefs4
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.settings/org.eclipse.jdt.core.prefs76
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/META-INF/MANIFEST.MF23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/OSGI-INF/l10n/bundle.properties12
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/build.properties21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/catalog-0.2.0.ecore7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/catalog-0.2.0.genmodel12
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom-0.2.0.ecore45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom-0.2.0.genmodel26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_main.ecorediag429
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_primitive_types-0.2.0.ecore19
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_primitive_types-0.2.0.genmodel23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_property_declaration.ecorediag131
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/query-0.3.0.ecore8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/query-0.3.0.genmodel14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/treeproxy-0.2.0.ecore54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/treeproxy-0.2.0.genmodel30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/plugin.properties14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/plugin.xml41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/custompt/IColor.java23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/custompt/IImage.java22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/CustomFactory.java87
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/CustomPackage.java793
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/Customization.java65
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/EClassCustomization.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/ETypedElementCase.java95
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/ETypedElementSwitchQuery.java57
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/FacetCustomization.java67
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/CustomFactoryImpl.java147
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/CustomPackageImpl.java328
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/CustomizationImpl.java171
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/EClassCustomizationImpl.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/ETypedElementCaseImpl.java245
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/ETypedElementSwitchQueryImpl.java158
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/FacetCustomizationImpl.java166
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/util/CustomAdapterFactory.java352
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/util/CustomSwitch.java364
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationCatalog.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationPropertiesCatalog.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationcatalogFactory.java63
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationcatalogPackage.java209
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationCatalogImpl.java211
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationPropertiesCatalogImpl.java211
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationcatalogFactoryImpl.java114
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationcatalogPackageImpl.java204
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/util/CustomizationcatalogAdapterFactory.java165
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/util/CustomizationcatalogSwitch.java175
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/Alignment.java246
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/CustomptFactory.java45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/CustomptPackage.java214
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/Shadow.java246
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/impl/CustomptFactoryImpl.java213
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/impl/CustomptPackageImpl.java237
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EAttributeTreeElement.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EObjectTreeElement.java111
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EReferenceTreeElement.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EStructuralFeatureTreeElement.java81
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/TreeElement.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/TreeproxyFactory.java78
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/TreeproxyPackage.java518
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EAttributeTreeElementImpl.java162
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EObjectTreeElementImpl.java306
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EReferenceTreeElementImpl.java162
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EStructuralFeatureTreeElementImpl.java246
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/TreeElementImpl.java58
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/TreeproxyFactoryImpl.java134
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/TreeproxyPackageImpl.java345
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/util/TreeproxyAdapterFactory.java198
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/util/TreeproxySwitch.java224
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/QueryFactory.java52
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/QueryPackage.java179
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/URIImageQuery.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/impl/QueryFactoryImpl.java102
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/impl/QueryPackageImpl.java194
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/impl/URIImageQueryImpl.java170
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/util/QueryAdapterFactory.java146
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/util/QuerySwitch.java153
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.checkstyle18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.pmd7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.settings/org.eclipse.core.runtime.prefs3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.settings/org.eclipse.jdt.core.prefs11
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/META-INF/MANIFEST.MF21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/OSGI-INF/l10n/bundle.properties18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/build.properties20
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/plugin.xml49
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/ICustomizationActions.java44
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/ICustomizationCommandFactory.java61
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/ICustomizationCommandFactoryFactory.java39
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/Activator.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/CustomizationActionsImpl.java69
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/CustomizationCommandFactory.java93
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/CustomizationCommandFactoryFactory.java26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/validation/AvoidEClassOverlayConstraint.java57
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/validation/CustomizationValidationBuilder.java116
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/validation/ValidationDelegateClientSelector.java23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/.project28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/META-INF/MANIFEST.MF379
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/META-INF/eclipse.inf2
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.sdk.ui/pom.properties5
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.sdk.ui/pom.xml15
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/OSGI-INF/l10n/bundle.properties37
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/build.properties8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/FacetAttribute.gifbin0 -> 306 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/FacetOperation.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/FacetReference.gifbin0 -> 314 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/FacetSet.gifbin0 -> 605 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/ParameterValue.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/facet.gifbin0 -> 805 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/flatView.gifbin0 -> 97 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/full/obj16/CustomModelFile.gifbin0 -> 346 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/full/wizban/NewCustom.gifbin0 -> 2462 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/querySet.gifbin0 -> 423 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/treeView.gifbin0 -> 101 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/org.eclipse.papyrus.emf.facet.custom.sdk.ui.modelcelleditors8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/plugin.xml223
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/dialog/ICustomizationDialogFactory.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/Activator.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/Messages.java72
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/Startup.java22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/dialog/CustomizationDialogFactory.java83
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/messages.properties57
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/sync/SynchronizedGetOrCreateFilteredElementCommmandWidget.java142
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/AbstractCustomizationMainDialog.java59
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/AbstractGetCustomizationDialog.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/AbstractGetOrCreateCustomizationDialog.java59
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/AddCaseQueryDialog.java78
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/AddCustomizationPropertyDialog.java73
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/CreateEClassCustomizationDialog.java95
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/CreateFacetCustomizationDialog.java71
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/QueryContext.java73
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/getorcreate/GetOrCreateCustomizationDialog.java80
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/selection/GetCustomizedFacetDialog.java71
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/selection/GetExtendedFacetDialog.java72
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/selection/GetFacetOperationDialog.java79
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedAddCaseQueryDialog.java36
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedAddCustomizationPropertyDialog.java36
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedCreateEClassCustomizationDialog.java36
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedCreateFacetCustomizationDialog.java36
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/AddCaseQueryHandler.java42
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/AddCustomizationPropertyInEClassHandler.java42
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/AddCustomizationPropertyInFacetHandler.java42
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/CreateEClassCustomizationHandler.java41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/CreateFacetCustomizationHandler.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/Utils.java78
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/AddCaseQueryWidget.java94
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/AddCustomizationPropertyWidget.java119
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/CreateEClassCustomizationWidget.java180
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/CreateFacetCustomizationWidget.java123
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/GetOrCreateCustomizationWidget.java101
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/AbstractGetFacetWidget.java61
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetCustomizedFacetWidget.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetExtendedFacetWidget.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetFiltredCustomizedFacetWidget.java121
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetFiltredExtendedFacetWidget.java120
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetFiltredOperationFacetWidget.java97
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetOperationFacetWidget.java82
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetOrCreateCustomizationWidget.java85
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/metaclass/GetExtendedMetaclassWidget.java85
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/property/name/GetCaseQueryNameWidget.java68
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/property/name/GetCaseQueryTypeWidget.java59
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/property/name/GetEClassCustomizationNameWidget.java59
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/wizard/CreateCustimizationWizardImpl.java268
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/wizard/page/CreateCustomizationWizardPage.java117
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/wizard/page/CustomPropertyWizardPage.java112
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/widgets/celleditors/ImageCellEditor.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/widgets/celleditors/composite/ImageComposite.java132
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/widgets/celleditors/composite/ImageCompositeFactory.java28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/wizard/page/ICreateCustomizationWizardPage.java31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/wizard/page/ICustomizationPropertyWizardPage.java50
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.checkstyle18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.options5
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.pmd7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.project31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.settings/.api_filters19
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.settings/org.eclipse.jdt.core.prefs8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/META-INF/MANIFEST.MF28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/OSGI-INF/component.xml7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/OSGI-INF/l10n/bundle.properties13
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/build.properties20
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/aggreg.gifbin0 -> 68 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/aggreg_unidir.gifbin0 -> 91 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/attribute_facet.gifbin0 -> 438 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/attributes.gifbin0 -> 124 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/feature.gifbin0 -> 294 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/inv_aggreg.gifbin0 -> 70 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/link.gifbin0 -> 67 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/link_unidir.gifbin0 -> 91 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/link_unidir_facet.gifbin0 -> 375 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/uiCustom.gifbin0 -> 612 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/plugin.xml37
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet595
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/CustomizedContentProviderUtils.java77
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/IContentPropertiesHandler.java26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/IContentPropertiesHandlerFactory.java30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomOverride.java31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedContentProvider.java37
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedContentProviderFactory.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedLabelProvider.java65
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedLabelProviderFactory.java39
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedToolTipLabelProvider.java68
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedTreeContentProvider.java31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/IFontPropertiesHandler.java38
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/IResolvingCustomizedLabelProviderFactory.java35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ISelectionPropertiesHandler.java24
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ISelectionPropertiesHandlerFactory.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ImageUtils.java57
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/Activator.java63
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizationCommandFactory.java247
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizationCommandFactoryFactory.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedContentProviderFactory.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedLabelDecorator.java124
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedLabelProvider.java594
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedLabelProviderFactory.java28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedTreeContentProvider.java529
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/DecoratingCustomizedLabelProvider.java182
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/DefaultCustomOverride.java55
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ImageManager.java98
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ImageProvider.java181
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/Messages.java70
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/PropertiesHandler.java308
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/PropertiesHandlerFactory.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ResolvingCustomizedLabelProvider.java492
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ResolvingCustomizedLabelProviderFactory.java26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/TreeElementAdapter.java86
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/custompt/Color.java67
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/custompt/ImageWrapper.java48
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/custompt/URIImage.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/dialog/ColorLabelProvider.java61
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/dialog/LoadCustomizationsDialog.java699
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/dialog/LoadCustomizationsDialogFactory.java46
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/dialog/SynchronizedLoadCustomizationsDialog.java222
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exception/CustomizationEditRuntimeException.java35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exception/CustomizedContentProviderRuntimeException.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/CustomizationUIConstants.java27
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/ICustomizationCommandFactory.java39
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/ICustomizationCommandFactoryFactory.java24
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/ILabelPropertiesHandler.java24
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/ILabelPropertiesHandlerFactory.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/dialog/ILoadCustomizationsDialog.java168
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/dialog/ILoadCustomizationsDialogFactory.java72
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/exception/IllegalParameterException.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/messages.properties55
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/BackgroundQuery.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/FontNameQuery.java31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/FontSizeQuery.java31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ForegroundQuery.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ImageQuery.java131
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/LabelQuery.java136
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/SelectionQuery.java59
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipAlignmentQuery.java37
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipBackgroundQuery.java41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipDelayQuery.java35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipShadowQuery.java37
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipTextQuery.java76
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/URIImageQueryImplementationFactory.java39
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/querytype/URIImageQueryEvaluator.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/view/CustomizationsCatalogView.java223
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.checkstyle22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.settings/org.eclipse.jdt.core.prefs81
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/META-INF/MANIFEST.MF16
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/OSGI-INF/l10n/bundle.properties13
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/build.properties22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/model/efacetcatalog.ecore36
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/model/efacetcatalog.genmodel21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/plugin.xml25
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/EfacetcatalogFactory.java63
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/EfacetcatalogPackage.java266
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/FacetSetCatalog.java59
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/QuerySetCatalog.java59
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/impl/EfacetcatalogFactoryImpl.java118
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/impl/EfacetcatalogPackageImpl.java257
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/impl/FacetSetCatalogImpl.java248
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/impl/QuerySetCatalogImpl.java248
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/util/EfacetcatalogAdapterFactory.java168
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/util/EfacetcatalogSwitch.java176
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/plugin/Activator.java45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.checkstyle9
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.pmd7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.project31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.settings/org.eclipse.jdt.core.prefs11
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/META-INF/MANIFEST.MF26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/OSGI-INF/l10n/bundle.properties17
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/build.properties21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/plugin.xml45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/schema/derivedTypedElementImplementationRegistration.exsd127
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/schema/internal.resolver.exsd108
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/schema/org.eclipse.emf.facet.efacet.core.query.evaluatorregistration.exsd95
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/schema/queryImplementationRegistration.exsd122
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/FacetUtils.java705
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IDerivedTypedElementManager.java201
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IEFacetManager.java87
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetAction.java135
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetActions.java45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetCommandFactory.java193
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetCommandFactoryFactory.java25
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetManager.java244
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetManagerFactory.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetManagerListener.java28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetSetCatalogManager.java26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetSetCatalogManagerFactory.java26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/DerivedTypedElementException.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/FacetManagerException.java37
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/QueryException.java39
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/QueryExecutionException.java41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/QueryTypeCheckingException.java36
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/Activator.java46
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/CastUtils.java88
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/DerivedTypedElementManager.java877
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/DerivedTypedElementUtils.java70
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/EFacetManager.java197
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/EmfUtils.java103
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetActionImpl.java205
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetActions2Impl.java231
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetActionsImpl.java78
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetCatalogManagerFactory.java30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetCommandFactoryFactory.java25
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetCommandFactoryImpl.java511
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetManager.java593
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetManagerContext.java554
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetManagerFactory.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/Messages.java28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/ResolverManager.java113
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/catalog/EFacetCatalogManager.java58
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/catalog/EFacetCatalogManager2.java72
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/DerivedTypedElementEvaluationException.java44
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/DerivedTypedElementTypeCheckingException.java37
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/FacetConformanceEvaluationException.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/NonApplicableFacetException.java21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/NonConformingEObjectException.java21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/SaveStructuralFeatureInstanceModelException.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/UnmatchingExpectedTypeException.java45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exported/IResolver.java61
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exported/IResolverManager.java28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/incubatingapi/IFacetActions2.java208
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/messages.properties13
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/DerivedTypedElementImplementationFactoryRegistry.java121
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/EObjectLiteralQueryImplementation.java48
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/EObjectLiteralQueryImplementationFactory.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/FalseLiteralQueryImplementation.java46
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/FalseLiteralQueryImplementationFactory.java35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/FloatLiteralQueryImplementation.java46
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/FloatLiteralQueryImplementationFactory.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/IntegerLiteralQueryImplementation.java46
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/IntegerLiteralQueryImplementationFactory.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/IsOneOfQueryImplementation.java52
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/IsOneOfQueryImplementationFactory.java36
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/NavigationQueryImplementation.java80
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/NavigationQueryImplementationFactory.java35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/NullLiteralQueryImplementation.java46
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/NullLiteralQueryImplementationFactory.java35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/OperationCallQueryImplementation.java68
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/OperationCallQueryImplementationFactory.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/QueryEvaluatorFactoryRegistry.java100
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/QueryImplementationFactoryRegistry.java114
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/QueryUtils.java121
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/QueryUtilsImpl.java64
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/StringLiteralQueryImplementation.java49
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/StringLiteralQueryImplementationFactory.java36
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/TrueLiteralQueryImplementation.java48
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/TrueLiteralQueryImplementationFactory.java36
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/ILinkToExtendedEObjectReference.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/ILinkToExtendedEObjectReferenceAdapterFactory.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/LinkToExtendedEObjectReferenceAdapter.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/LinkToExtendedEObjectReferenceAdapterFactory.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/SerializationManager.java432
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IDerivedTypedElementCollectionImplementation.java92
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IDerivedTypedElementImplementation.java93
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IDerivedTypedElementImplementationFactory.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryCollectionImplementation.java97
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryEvaluator.java111
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryEvaluatorFactory.java42
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryImplementation.java85
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryImplementationFactory.java45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryUtils.java45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.checkstyle17
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.settings/org.eclipse.jdt.core.prefs68
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/META-INF/MANIFEST.MF15
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/build.properties22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacetSet_categories_Category.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacetSet_facets_Facet.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_conformanceQuery_Literal.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_conformanceQuery_TypedElementRef.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_facetElements_FacetAttribute.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_facetElements_FacetOperation.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_facetElements_FacetReference.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_facetElements_OppositeReference.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQueryFacetElement_query_Literal.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQueryFacetElement_query_TypedElementRef.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQueryResult_parameterValues_ParameterValue.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQuerySet_queries_Literal.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQuerySet_queries_TypedElementRef.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQuery_parameters_Parameter.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Category.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Facet.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetAttribute.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetElement.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetOperation.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetReference.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetSet.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Literal.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/OppositeReference.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Parameter.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/ParameterValue.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Query.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/QueryContext.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/QueryFacetElement.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/QueryResult.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/QuerySet.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/TypedElementRef.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/plugin.properties81
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/plugin.xml32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/CategoryItemProvider.java132
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/EFacetItemProviderAdapterFactory.java566
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/EfacetEditPlugin.java105
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetAttributeItemProvider.java649
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetElementItemProvider.java421
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetItemProvider.java362
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetOperationItemProvider.java463
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetReferenceItemProvider.java743
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetSetItemProvider.java352
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/LiteralItemProvider.java157
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/OppositeReferenceItemProvider.java149
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/ParameterItemProvider.java375
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/ParameterValueItemProvider.java191
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QueryContextItemProvider.java191
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QueryFacetElementItemProvider.java174
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QueryItemProvider.java454
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QueryResultItemProvider.java305
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QuerySetItemProvider.java216
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/TypedElementRefItemProvider.java149
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/.project28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/.settings/org.eclipse.jdt.core.prefs71
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/META-INF/MANIFEST.MF20
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/build.properties22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/icons/full/obj16/EFacetModelFile.gifbin0 -> 805 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/plugin.properties63
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/plugin.xml32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/src/org/eclipse/papyrus/emf/facet/efacet/presentation/EFacetActionBarContributor.java439
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/src/org/eclipse/papyrus/emf/facet/efacet/presentation/EFacetEditor.java1568
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/src/org/eclipse/papyrus/emf/facet/efacet/presentation/EfacetEditorPlugin.java108
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/.project28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/.settings/org.eclipse.jdt.core.prefs77
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/META-INF/MANIFEST.MF23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/build.properties26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateAbstractDerivedTypedElementResult_parameterValues_ParameterValue.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_EObjectLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_ETypeElementSwitchQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_ETypedElementSwitchQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_FalseLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_FloatLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_IntegerLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_IsOneOfQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_NavigationQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_NullLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_OperationCallQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_StringLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_TrueLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_ETypeElementSwitchQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_FalseLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_IsOneOfQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_NavigationQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_NullLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_StringLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_TrueLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementSwitchQuery_cases_ETypeElementCase.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_ETypedElementSwitchQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_FalseLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_IsOneOfQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NavigationQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NullLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_StringLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_TrueLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementResult_parameterValues_ParameterValue.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementSwitchQuery_cases_ETypedElementCase.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_attributeInstances_AbstractAttributeInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_attributeInstances_MultiValuedAttributeInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_attributeInstances_SingleValuedAttributeInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_AbstractReferenceInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_MultiValuedContainmentReferenceInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_MultiValuedReferenceInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_SingleValuedContainmentReferenceInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_SingleValuedReferenceInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateFacetSet_categories_Category.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateFacet_facetElements_FacetAttribute.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateFacet_facetElements_FacetReference.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateFacet_facetOperations_FacetOperation.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AbstractAttributeInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AbstractReferenceInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_Aggregate.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AggregatedFacet.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AggregatedFacetElement.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AggregatedFacetSet.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_Category.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DerivedTypedElementEObjectListResult.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DerivedTypedElementEObjectResult.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DerivedTypedElementPrimitiveTypeListResult.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DerivedTypedElementPrimitiveTypeResult.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DocumentedElement.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EAnnotation.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EAttribute.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EClass.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EDataType.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EEnum.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EEnumLiteral.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EFactory.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EGenericType.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EObject.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EObjectLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EOperation.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EPackage.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EParameter.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EReference.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EStringToStringMapEntry.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypeElementCase.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypeElementSwitchQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypeParameter.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementCase.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementEObjectListResult.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementEObjectResult.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementPrimitiveTypeListResult.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementPrimitiveTypeResult.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementSwitchQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ExtendedEObjectReference.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_Facet.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FacetAttribute.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FacetOperation.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FacetReference.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FacetSet.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FalseLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FloatLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_IntegerLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_IsOneOfQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_MultiValuedAttributeInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_MultiValuedContainmentReferenceInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_MultiValuedReferenceInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_NavigationQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_NullLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_OperationCallQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ParameterValue.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_SingleValuedAttributeInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_SingleValuedContainmentReferenceInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_SingleValuedReferenceInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_StringLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_TrueLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_EObjectLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FacetAttribute.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FacetOperation.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FacetReference.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FalseLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FloatLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_IntegerLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_IsOneOfQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_NavigationQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_NullLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_OperationCallQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_StringLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_TrueLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AbstractAttributeInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AbstractReferenceInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_Aggregate.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AggregatedFacet.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AggregatedFacetElement.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AggregatedFacetSet.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_Category.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DerivedTypedElementEObjectListResult.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DerivedTypedElementEObjectResult.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DerivedTypedElementPrimitiveTypeListResult.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DerivedTypedElementPrimitiveTypeResult.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DocumentedElement.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EAnnotation.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EAttribute.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EClass.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EDataType.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EEnum.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EEnumLiteral.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EFactory.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EGenericType.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EObject.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EObjectLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EOperation.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EPackage.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EParameter.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EReference.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EStringToStringMapEntry.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypeElementCase.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypeElementSwitchQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypeParameter.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementCase.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementEObjectListResult.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementEObjectResult.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementPrimitiveTypeListResult.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementPrimitiveTypeResult.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementSwitchQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ExtendedEObjectReference.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_Facet.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FacetAttribute.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FacetOperation.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FacetReference.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FacetSet.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FalseLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FloatLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_IntegerLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_IsOneOfQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_MultiValuedAttributeInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_MultiValuedContainmentReferenceInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_MultiValuedReferenceInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_NavigationQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_NullLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_OperationCallQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ParameterValue.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_SingleValuedAttributeInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_SingleValuedContainmentReferenceInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_SingleValuedReferenceInstance.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_StringLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_TrueLiteralQuery.gifbin0 -> 223 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AbstractAttributeInstance.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AbstractReferenceInstance.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/Aggregate.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AggregatedFacet.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AggregatedFacetElement.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AggregatedFacetSet.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/Category.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DerivedTypedElementEObjectListResult.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DerivedTypedElementEObjectResult.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DerivedTypedElementPrimitiveTypeListResult.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DerivedTypedElementPrimitiveTypeResult.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DocumentedElement.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/EObjectLiteralQuery.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypeElementCase.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypeElementSwitchQuery.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementCase.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementEObjectListResult.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementEObjectResult.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementPrimitiveTypeListResult.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementPrimitiveTypeResult.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementSwitchQuery.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ExtendedEObjectReference.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/Facet.gifbin0 -> 805 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FacetAttribute.gifbin0 -> 306 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FacetOperation.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FacetReference.gifbin0 -> 314 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FacetSet.gifbin0 -> 605 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FalseLiteralQuery.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FloatLiteralQuery.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/IntegerLiteralQuery.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/IsOneOfQuery.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/MultiValuedAttributeInstance.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/MultiValuedContainmentReferenceInstance.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/MultiValuedReferenceInstance.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/NavigationQuery.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/NullLiteralQuery.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/OperationCallQuery.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ParameterValue.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/SingleValuedAttributeInstance.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/SingleValuedContainmentReferenceInstance.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/SingleValuedReferenceInstance.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/StringLiteralQuery.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/TrueLiteralQuery.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/plugin.properties159
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/plugin.xml72
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/provider/ExtensibleItemProviderAdapterFactory.java188
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/provider/QueryItemProvider.java182
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/CategoryItemProvider.java228
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/DerivedTypedElementItemProvider.java226
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/DocumentedElementItemProvider.java169
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/EFacetItemProviderAdapterFactory.java381
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/Efacet2EditPlugin.java105
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetAttributeItemProvider.java711
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetElementItemProvider.java409
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetItemProvider.java417
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetOperationItemProvider.java525
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetReferenceItemProvider.java805
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetSetItemProvider.java322
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/ParameterValueItemProvider.java193
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/EObjectLiteralQueryItemProvider.java170
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/FalseLiteralQueryItemProvider.java137
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/FloatLiteralQueryItemProvider.java178
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/IntegerLiteralQueryItemProvider.java178
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/IsOneOfQueryItemProvider.java161
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/NavigationQueryItemProvider.java192
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/NullLiteralQueryItemProvider.java137
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/OperationCallQueryItemProvider.java261
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/QueryItemProviderAdapterFactory.java428
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/StringLiteralQueryItemProvider.java169
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/TrueLiteralQueryItemProvider.java137
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementEObjectListResultItemProvider.java151
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementEObjectResultItemProvider.java151
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementPrimitiveTypeListResultItemProvider.java159
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementPrimitiveTypeResultItemProvider.java159
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementResultItemProvider.java248
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/RuntimeItemProviderAdapterFactory.java286
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/AbstractAttributeInstanceItemProvider.java158
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/AbstractReferenceInstanceItemProvider.java158
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/ExtendedEObjectReferenceItemProvider.java240
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/MultiValuedAttributeInstanceItemProvider.java153
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/MultiValuedContainmentReferenceInstanceItemProvider.java396
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/MultiValuedReferenceInstanceItemProvider.java144
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/SerializationItemProviderAdapterFactory.java404
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/SingleValuedAttributeInstanceItemProvider.java157
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/SingleValuedContainmentReferenceInstanceItemProvider.java396
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/SingleValuedReferenceInstanceItemProvider.java144
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.project28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.settings/.api_filters95
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.settings/org.eclipse.core.resources.prefs4
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.settings/org.eclipse.jdt.core.prefs77
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/META-INF/MANIFEST.MF30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/OSGI-INF/l10n/bundle.properties13
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/build.properties24
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.ecore279
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.genmodel150
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-all.pngbin0 -> 139565 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-facet.ecorediag492
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-query.ecorediag356
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-result.ecorediag274
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-serialization.ecorediag406
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2.ecorediag891
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2.pngbin0 -> 112271 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacetcatalog-0.2.0.ecore11
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacetcatalog-0.2.0.genmodel16
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/plugin.properties17
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/plugin.xml40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/Category.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/DerivedTypedElement.java92
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/DocumentedElement.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/EFacetFactory.java119
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/EFacetPackage.java1896
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/Facet.java153
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetAttribute.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetElement.java57
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetOperation.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetReference.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetSet.java63
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/ParameterValue.java94
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/ExtensibleFactory.java46
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/ExtensiblePackage.java191
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/Query.java98
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/impl/ExtensibleFactoryImpl.java95
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/impl/ExtensiblePackageImpl.java225
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/impl/QueryImpl.java249
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/util/ExtensibleAdapterFactory.java131
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/util/ExtensibleSwitch.java143
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/CategoryImpl.java205
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/DerivedTypedElementImpl.java244
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/DocumentedElementImpl.java172
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/EFacetFactoryImpl.java242
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/EFacetPackageImpl.java669
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetAttributeImpl.java414
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetElementImpl.java245
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetImpl.java490
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetOperationImpl.java414
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetReferenceImpl.java414
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetSetImpl.java318
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/ParameterValueImpl.java234
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/EObjectLiteralQuery.java73
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/FalseLiteralQuery.java38
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/FloatLiteralQuery.java71
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/IntegerLiteralQuery.java71
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/IsOneOfQuery.java61
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/NavigationQuery.java87
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/NullLiteralQuery.java39
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/OperationCallQuery.java93
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/QueryFactory.java146
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/QueryPackage.java967
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/StringLiteralQuery.java65
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/TrueLiteralQuery.java38
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/EObjectLiteralQueryImpl.java178
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/FalseLiteralQueryImpl.java55
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/FloatLiteralQueryImpl.java184
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/IntegerLiteralQueryImpl.java184
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/IsOneOfQueryImpl.java144
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/NavigationQueryImpl.java212
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/NullLiteralQueryImpl.java55
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/OperationCallQueryImpl.java239
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/QueryFactoryImpl.java213
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/QueryPackageImpl.java504
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/StringLiteralQueryImpl.java175
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/TrueLiteralQueryImpl.java56
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/util/QueryAdapterFactory.java319
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/util/QuerySwitch.java363
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementEObjectListResult.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementEObjectResult.java71
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementPrimitiveTypeListResult.java61
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementPrimitiveTypeResult.java70
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementResult.java143
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/RuntimeFactory.java88
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/RuntimePackage.java696
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementEObjectListResultImpl.java146
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementEObjectResultImpl.java172
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementPrimitiveTypeListResultImpl.java161
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementPrimitiveTypeResultImpl.java167
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementResultImpl.java356
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/RuntimeFactoryImpl.java197
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/RuntimePackageImpl.java421
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/util/RuntimeAdapterFactory.java212
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/util/RuntimeSwitch.java236
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/AbstractAttributeInstance.java63
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/AbstractReferenceInstance.java63
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/ExtendedEObjectReference.java97
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/MultiValuedAttributeInstance.java52
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/MultiValuedContainmentReferenceInstance.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/MultiValuedReferenceInstance.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SerializationFactory.java127
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SerializationPackage.java809
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SingleValuedAttributeInstance.java61
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SingleValuedContainmentReferenceInstance.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SingleValuedReferenceInstance.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/AbstractAttributeInstanceImpl.java166
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/AbstractReferenceInstanceImpl.java166
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/ExtendedEObjectReferenceImpl.java259
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/MultiValuedAttributeInstanceImpl.java156
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/MultiValuedContainmentReferenceInstanceImpl.java158
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/MultiValuedReferenceInstanceImpl.java141
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SerializationFactoryImpl.java203
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SerializationPackageImpl.java497
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SingleValuedAttributeInstanceImpl.java171
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SingleValuedContainmentReferenceInstanceImpl.java184
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SingleValuedReferenceInstanceImpl.java165
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/util/SerializationAdapterFactory.java283
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/util/SerializationSwitch.java325
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/util/EFacetAdapterFactory.java474
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/util/EFacetSwitch.java529
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/EfacetcatalogFactory.java56
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/EfacetcatalogPackage.java154
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/FacetSetCatalog.java39
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/impl/EfacetcatalogFactoryImpl.java109
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/impl/EfacetcatalogPackageImpl.java188
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/impl/FacetSetCatalogImpl.java214
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/util/EfacetcatalogAdapterFactory.java150
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/util/EfacetcatalogSwitch.java156
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/.project28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/META-INF/MANIFEST.MF1301
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/META-INF/eclipse.inf2
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.efacet.sdk.ui/pom.properties5
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.efacet.sdk.ui/pom.xml14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/OSGI-INF/l10n/bundle.properties32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/build.properties8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/FacetAttribute.gifbin0 -> 306 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/FacetOperation.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/FacetReference.gifbin0 -> 314 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/FacetSet.gifbin0 -> 605 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/ParameterValue.gifbin0 -> 129 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/facet.gifbin0 -> 805 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/flatView.gifbin0 -> 97 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/querySet.gifbin0 -> 423 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/treeView.gifbin0 -> 101 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/plugin.xml218
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/schema/queryFactoryDialogRegistration.exsd119
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.java129
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/Activator.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/Messages.java224
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/Startup.java22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/WorkbenchUtils.java71
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/AbstractComandMainDialog.java68
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/AbstractCommandDialog.java41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/FacetDialogFactoryImpl.java179
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/SynchronizedFacetDialogFactory.java184
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/AbstractComandExecDialog.java49
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetOrCreateFacetDialog.java108
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetOrCreateFacetSetDialog.java103
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetOrCreateOperationDialog.java114
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetSubTypingTypeDialog.java88
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractDerivedTypedElementDialog.java44
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractENamedElementDialog.java39
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractEStructuralFeatureDialog.java77
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractETypedElementDialog.java78
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddAttributeInFacetDialog.java66
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddOperationInFacetDialog.java74
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddParameterInOperationDialog.java70
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddReferenceInFacetDialog.java69
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/CreateFacetInFacetSetDialog.java83
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/CreateFacetSetInFacetSetDialog.java78
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetAttributeDialog.java73
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetDialog.java91
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetOperationDialog.java75
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetOperationParameterDialog.java74
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetReferenceDialog.java74
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetSetDialog.java70
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exception/SdkUiRuntimeException.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.java41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.java38
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.java27
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.java49
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.java48
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.java37
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.java56
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.java35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.java21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.java31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.java26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.java36
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.java50
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetAttributeHandler.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetHandler.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetOperationHandler.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetOperationParameterHandler.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetReferenceHandler.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetSetHandler.java45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/messages.properties177
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.java253
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.java164
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.java21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.java91
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.java290
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedCreateQueryWidget.java114
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedDerivedTypedElementWidget.java276
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedENamedElementWidget.java123
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedEStructuralFeatureWidget.java348
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedETypedElementWidget.java231
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedFacetWidget.java161
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedGetExtendedMetaclassWidget.java98
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedGetOrCreateFilteredElementCommmandWidget.java143
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedGetOrCreateFilteredFacetSetWidget.java126
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/getorcreate/GetOrCreateFacetSetWidget.java100
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/getorcreate/GetOrCreateFacetWidget.java95
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/getorcreate/GetOrCreateOperationWidget.java94
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/GetElementTypeWidget.java79
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/GetExtendedMetaclassWidget.java84
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/GetSubTypingTypeWidget.java88
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/SelectSubTypingTypeWidget.java161
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetChangeableWidget.java57
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetDerivedWidget.java57
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetOrderedWidget.java57
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetTransientWidget.java57
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetUniqueWidget.java59
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetVolatileWidget.java57
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/bounds/GetLowerBoundWidget.java56
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/bounds/GetUpperBoundWidget.java56
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/name/GetAttributeNameWidget.java56
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/name/GetOperationNameWidget.java47
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/name/GetReferenceNameWidget.java48
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/query/CreateQueryWidget.java105
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/query/GetCanBeCachedWidget.java50
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/query/GetCanHaveSideEffectsWidget.java50
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractDerivedTypedElementWidget.java184
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractENamedElementWidget.java125
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractEStructuralFeatureWidget.java135
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractETypedElementWidget.java188
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AddOperationInFacetWidget.java104
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AddParameterInOperationWidget.java119
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/GetFilteredSubTypingTypeWidget.java153
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/GetOrCreateFiltredFacetSetWidget.java142
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/GetOrCreateFiltredFacetWidget.java96
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/GetOrCreateFiltredOperationWidget.java93
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetAttributeWidget.java81
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetOperationParameterWidget.java72
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetOperationWidget.java78
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetReferenceWidget.java81
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetSetWidget.java113
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetWidget.java168
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/CreateFacetSetWizard.java240
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/WizardFactory.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/page/CreateFacetSetWizardPage.java109
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/page/FacetSetPropertyWizardPage.java120
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/page/SynchronizedCreateFacetSetWizardPage.java70
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/page/SynchronizedFacetSetPropertyWizardPage.java80
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.checkstyle18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.pmd7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.project31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/META-INF/MANIFEST.MF35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/OSGI-INF/l10n/bundle.properties32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/build.properties23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/facet.gifbin0 -> 805 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/flatView.gifbin0 -> 97 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/querySet.gifbin0 -> 423 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/remove.gifbin0 -> 351 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/removeAll.gifbin0 -> 259 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/treeView.gifbin0 -> 101 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/plugin.xml247
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/schema/eTypedElementResultDisplay.exsd104
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/schema/queryFactoryWizardPageRegistration.exsd102
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/IETypedElementResultDisplayer.java28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/IETypedElementResultDisplayerOpener.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/Activator.java59
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/FacetUIFactoryImpl.java57
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IFacetUIFactory.java108
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IFacetUIFactory2.java116
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IQueryCreationPagePart2.java168
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IQueryCreationPagePart2Registry.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IQueryCreationPagePartRegistry.java48
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/ImageProvider.java106
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/Messages.java164
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/QueryCreationPagePartRegistryImpl.java77
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/actions/LoadMetaModelResourceAction.java100
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/composites/BrowseComposite.java124
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/composites/FilteredElementSelectionComposite.java134
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/composites/SelectETypeComposite.java172
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/composites/SelectQueryTypeComposite.java101
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/DefaultFacetLabelProvider.java46
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/ETypedElementSelectionDialog.java244
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/ETypedElementSelectionDialogFactory.java50
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/FacetSetSelectionDialog.java229
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/FacetSetSelectionDialogFactory.java72
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/FacetSetTreeContentProvider.java94
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/SelectQueryDialog.java135
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/SynchronizedETypedElementSelectionDialog.java101
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/SynchronizedFacetSetSelectionDialog.java102
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/EFacetUIConstants.java24
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IETypedElementSelectionDialog.java35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IETypedElementSelectionDialogCallback.java30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IETypedElementSelectionDialogFactory.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IETypedElementSelectionDialogInternal.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IFacetSetSelectionDialog.java47
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IFacetSetSelectionDialogFactory.java72
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IFacetSetSelectionDialogInternal.java35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/view/INavigationView.java124
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/view/INavigationViewFactory.java38
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/widget/IETypedElementSelectionWidget.java42
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/widget/IETypedElementSelectionWidgetFactory.java55
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/widget/IFacetSetSelectionWidget.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/widget/IFacetSetSelectionWidgetFactory.java44
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/ICreateFacetInFacetSetWizard.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/ICreateFacetInFacetSetWizard2.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/ICreateFacetSetWizard.java18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/IFacetChildrenWizard.java47
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/IFacetChildrenWizard2.java47
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/IQueryCreationPagePart.java167
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/ISelectETypeWizard.java20
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/AddFacetAttributeHandler.java48
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/AddFacetOperationHandler.java48
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/AddFacetParameterOperationHandler.java48
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/AddFacetReferenceHandler.java48
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/CreateFacetInFacetSetHandler.java44
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/FacetPropertyTester.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/NavigationHandler.java69
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/messages.properties127
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/preferences/PreferenceConstants.java22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/preferences/PreferencesInitializer.java27
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/utils/ImageProvider.java95
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/ContextPaneMenuManager.java94
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/DropAdapter.java93
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/EditableContext.java27
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/FacetSetsCatalogView.java211
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/NavigationView.java689
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/NavigationViewFactory.java46
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/QueryResultDisplayersRegistry.java108
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/EClassifierSelectionControl.java90
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionControl.java431
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionControlContentProvider.java99
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionControlManager.java219
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionSortedControl.java206
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionWidgetFactory.java43
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/FacetSetSelectionControl.java333
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/FacetSetSelectionWidgetFactory.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/IETypedElementSelectionControlManager.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/IETypedElementSelectionWidgetInternal.java41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/IETypedElementTabSelectionWidgetInternal.java47
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/MetamodelSelectionControl.java37
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/SynchronizedETypedElementSelectionWidget.java123
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/SynchronizedFacetSetSelectionWidget.java90
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AbstractAddFacetChildrenWizard.java175
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AddFacetAttributeWizardImpl.java76
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AddFacetOperationParameterWizardImpl.java60
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AddFacetOperationWizardImpl.java71
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AddFacetReferenceWizardImpl.java78
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/CreateFacetInFacetSetWizardImpl.java163
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/CreateFacetSetWizardImpl.java189
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/SelectETypeWizardImpl.java82
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AbstractFacetWizardPage.java786
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AddAttributeInFacetWizardPage.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AddOperationInFacetWizardPage.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AddOperationParameterInFacetWizardPage.java69
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AddReferenceInFacetWizardPage.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/CreateFacetInFacetSetWizardPage.java139
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/CreateFacetSetWizardPage.java107
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/CreateQueryWizardPage.java286
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/FacetSetPropertyWizardPage.java106
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/SelectEClassifierWizardPage.java114
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/SelectEPackageWizardPage.java114
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.checkstyle21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.settings/org.eclipse.core.resources.prefs14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.settings/org.eclipse.jdt.core.prefs74
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/META-INF/MANIFEST.MF15
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/OSGI-INF/l10n/bundle.properties14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/build.properties22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/model/efacet.ecore188
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/model/efacet.ecorediag624
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/model/efacet.genmodel72
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/plugin.xml27
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Category.java31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/EFacetFactory.java205
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/EFacetPackage.java3848
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Facet.java161
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetAttribute.java36
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetElement.java126
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetOperation.java36
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetReference.java36
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetSet.java110
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Literal.java70
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/OppositeReference.java72
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Parameter.java36
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/ParameterValue.java93
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Query.java155
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/QueryContext.java83
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/QueryFacetElement.java71
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/QueryResult.java213
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/QuerySet.java89
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/TypedElementRef.java72
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/CategoryImpl.java59
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/EFacetFactoryImpl.java346
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/EFacetPackageImpl.java1109
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetAttributeImpl.java500
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetElementImpl.java362
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetImpl.java451
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetOperationImpl.java500
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetReferenceImpl.java500
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetSetImpl.java318
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/LiteralImpl.java201
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/OppositeReferenceImpl.java194
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/ParameterImpl.java59
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/ParameterValueImpl.java260
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QueryContextImpl.java225
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QueryFacetElementImpl.java220
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QueryImpl.java402
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QueryResultImpl.java548
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QuerySetImpl.java267
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/TypedElementRefImpl.java194
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/plugin/Activator.java69
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/util/EFacetAdapterFactory.java659
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/util/EFacetSwitch.java670
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.checkstyle17
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.settings/org.eclipse.jdt.core.prefs8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/API.README.txt14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/META-INF/MANIFEST.MF21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/OSGI-INF/l10n/bundle.properties14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/build.properties19
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/plugin.xml26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IJavaQuery.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IJavaQuery2.java46
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IParameterValueList.java68
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IParameterValueList2.java66
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IParameterValueListFactory.java41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IParameterValueListFactory2.java35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/ParameterValueList.java108
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/ParameterValueList2.java107
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/ParameterValueListFactoryImpl.java30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/ParameterValueListFactoryImpl2.java25
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/evaluator/JavaQueryEvaluator.java76
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/evaluator/JavaQueryEvaluatorFactory.java88
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/evaluator/JavaQueryImplementation.java70
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/evaluator/JavaQueryImplementationFactory.java84
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/exceptions/ClassAlreadyExistsException.java21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/exceptions/ResourceURIExpectedException.java21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/plugin/Activator.java68
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/.settings/org.eclipse.jdt.core.prefs82
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/META-INF/MANIFEST.MF14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/OSGI-INF/l10n/bundle.properties3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/build.properties8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/model/javaQuery-0.2.0.ecore10
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/model/javaQuery-0.2.0.genmodel15
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/plugin.properties14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/plugin.xml16
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/internal/Activator.java35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/JavaQuery.java61
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/JavaQueryFactory.java56
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/JavaQueryPackage.java182
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/impl/JavaQueryFactoryImpl.java106
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/impl/JavaQueryImpl.java175
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/impl/JavaQueryPackageImpl.java199
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/util/JavaQueryAdapterFactory.java151
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/util/JavaQuerySwitch.java155
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.checkstyle8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.pmd7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.settings/org.eclipse.core.resources.prefs2
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/META-INF/MANIFEST.MF27
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/OSGI-INF/l10n/bundle.properties13
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/build.properties20
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/plugin.xml23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/Activator.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/JavaQueryUIRuntimeException.java23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/Messages.java55
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/dialog/JavaQueryStrategy.java73
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/messages.properties39
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/widget/GetMultiValuesWidgetComposite.java56
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/widget/GetOrCreateJavaImplementationWidgetComposite.java113
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/widget/query/JavaQueryWidget.java75
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/JavaQueryUtils.java45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/JdtUtils.java264
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/SelectOrCreateJavaClassWizard.java172
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/page/CreateQueryClassWizardPage.java127
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/page/NewClassWizardPage.java68
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/page/SelectJavaClassWizardPage.java116
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/page/SelectOrCreateJavaClassWizardPage.java72
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.checkstyle21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.settings/org.eclipse.jdt.core.prefs74
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/META-INF/MANIFEST.MF15
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/OSGI-INF/l10n/bundle.properties14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/build.properties21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/model/javaQuery.ecore10
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/model/javaQuery.genmodel15
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/plugin.xml25
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/JavaQuery.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/JavaqueryFactory.java55
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/JavaqueryPackage.java289
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/impl/JavaQueryImpl.java175
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/impl/JavaqueryFactoryImpl.java107
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/impl/JavaqueryPackageImpl.java202
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/util/JavaqueryAdapterFactory.java207
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/util/JavaquerySwitch.java216
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.checkstyle8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.pmd7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.settings/org.eclipse.core.resources.prefs2
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/META-INF/MANIFEST.MF19
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/OSGI-INF/l10n/bundle.properties13
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/build.properties20
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/plugin.xml22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/src/org/eclipse/papyrus/emf/facet/query/ocl/core/internal/Activator.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/src/org/eclipse/papyrus/emf/facet/query/ocl/core/internal/evaluator/OclQueryImplementation.java95
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/src/org/eclipse/papyrus/emf/facet/query/ocl/core/internal/evaluator/OclQueryImplementationFactory.java65
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/src/org/eclipse/papyrus/emf/facet/query/ocl/core/util/OclQueryUtil.java255
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/.project28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/.settings/org.eclipse.core.resources.prefs2
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/META-INF/MANIFEST.MF16
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/build.properties23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/model/oclQuery.ecore15
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/model/oclQuery.genmodel16
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/plugin.properties14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/plugin.xml25
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/OclQuery.java98
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.java209
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/impl/OclQueryFactoryImpl.java106
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/impl/OclQueryImpl.java231
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/impl/OclQueryPackageImpl.java213
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.java151
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.java155
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.checkstyle8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.pmd7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.settings/org.eclipse.core.resources.prefs2
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.settings/org.eclipse.jdt.core.prefs11
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/META-INF/MANIFEST.MF23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/OSGI-INF/l10n/bundle.properties13
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/build.properties20
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/plugin.xml23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.java20
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/Activator.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/Messages.java48
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/dialog/OclDialogFactory.java77
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/exception/OclQueryRuntimeException.java23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/messages.properties104
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/PrintQueryContextWidget.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/PrintQueryReturnTypeWidget.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/oclexpression/OclExpressionWidgetSimple.java95
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/query/OclQueryWidget.java107
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/query/SynchonizedOclQueryWidget.java82
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.java18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.java28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.checkstyle10
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.settings/.api_filters19
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.settings/org.eclipse.jdt.core.prefs8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/API.README.txt24
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/META-INF/MANIFEST.MF15
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/OSGI-INF/l10n/bundle.properties14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/README.txt3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/build.properties17
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/DebugUtils.java106
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/Logger.java135
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/exception/DebuggingRuntimeException.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/Activator.java47
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/ErrorHandlingUtils.java50
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/JavaUtils.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/Messages.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/AbstractRegistry.java112
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/FileUtils.java192
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/FolderUtils.java108
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/IFilter.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/ListUtils.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/StringUtils.java108
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/messages.properties18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/.checkstyle21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/.settings/org.eclipse.jdt.core.prefs74
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/META-INF/MANIFEST.MF13
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/OSGI-INF/l10n/bundle.properties13
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/build.properties21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/model/catalog.ecore33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/model/catalog.genmodel22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/plugin.xml27
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/Catalog.java87
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/CatalogFactory.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/CatalogPackage.java256
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/CatalogSet.java60
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/impl/CatalogFactoryImpl.java103
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/impl/CatalogPackageImpl.java230
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/impl/CatalogSetImpl.java158
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/plugin/Activator.java41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/util/CatalogAdapterFactory.java148
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/util/CatalogSwitch.java157
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.checkstyle11
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.settings/org.eclipse.jdt.core.prefs77
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/API.README.txt13
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/META-INF/MANIFEST.MF34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/OSGI-INF/l10n/bundle.properties21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/build.properties21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/model/serialization.ecore8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/model/serialization.genmodel12
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/plugin.xml48
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/schema/catalogmanager.exsd96
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/schema/modelViewer.exsd185
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/schema/modeldeclaration.exsd95
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/schema/serialization.exsd136
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/CommandFactory.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/EmfDebugUtils.java90
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/IBrowserRegistry.java86
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ICatalogManager.java57
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ICatalogSetManager.java64
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ICatalogSetManager2.java83
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ICatalogSetManagerFactory.java26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/IEObjectBrowserOpener.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/IEPackageBrowserOpener.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/IResourceBrowserOpener.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ModelUtils.java253
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/command/EmfCommandUtils.java41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/command/ICommandFactoryResult.java24
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/command/ICommandFactoryResultFactory.java26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/command/ILockableUndoCommand.java23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/exception/DebugRuntimeException.java25
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/exception/InvalidFacetSetException.java36
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/Activator.java47
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/EMFUtils.java162
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/catalog/CatalogSetManager.java187
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/catalog/CatalogSetManagerFactory.java36
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/command/CommandFactoryResult.java35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/command/CommandFactoryResultFactory.java23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/command/SetResourceContentCommand.java105
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/exported/ICommandFactory.java71
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/preferences/PreferenceConstants.java26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/preferences/PreferenceInitializer.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/registry/BrowserRegistry.java212
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/SerializationRegistry.java133
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/SerializationService.java66
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/BooleanSerializer.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/EMFURISerializer.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/IResourceSerializer.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/IntegerSerializer.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/StringSerializer.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/ISerializationRegistry.java35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/ISerializationService.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/ISerializer.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/model/serialization/SerializationFactory.java41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/model/serialization/SerializationPackage.java121
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/model/serialization/impl/SerializationFactoryImpl.java151
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/model/serialization/impl/SerializationPackageImpl.java170
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.checkstyle19
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.pmd7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.project31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.settings/org.eclipse.core.resources.prefs2
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/META-INF/MANIFEST.MF36
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/OSGI-INF/l10n/bundle.properties11
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/build.properties19
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/icons/EPackageView.gifbin0 -> 825 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/icons/ModelIcon.gifbin0 -> 103 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/icons/catalog.pngbin0 -> 583 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/icons/logoEmfFacetMini.gifbin0 -> 1078 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/plugin.xml117
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/Activator.java73
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/EmfLabelProvider.java140
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/EmfLabelProviderFactory.java24
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/Messages.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/ResourceUiUtils.java97
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/actions/OpenModelFromEmfRegistryAction.java58
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/dialogs/CreateInstanceDialog.java76
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/dialogs/SaveAsDialog.java70
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/dialogs/URIComposite.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/dialogs/UriSelectionDialog.java105
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/IEmfLabelProviderFactory.java25
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/composite/EClassifierSelectionControl.java88
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/widget/component/metaclass/AbstractGetMetaclassWidget.java163
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/widget/component/metaclass/MetamodelSelectionControl.java45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/SelectETypeWizardImpl.java151
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/SynchronizedSelectETypeWizard.java65
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SelectEClassifierWizardPage.java188
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SelectEPackageWizardPage.java190
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SynchronizedSelectEClassifierWizardPage.java78
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SynchronizedSelectEPackageWizardPage.java75
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SynchronizedWizardPage.java260
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/exception/SelectedEClassifierRuntimeException.java39
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/exception/SelectedEPackageRuntimeException.java41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/wizard/ISelectETypeWizard.java25
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/wizard/page/ISelectEClassifierWizardPage.java43
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/wizard/page/ISelectEPackageWizardPage.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/handler/SaveAsHandler.java94
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/handler/SaveHandler.java95
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/messages.properties40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/preference/pages/DefaultBrowserPreferencePage.java106
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/utils/ImageProvider.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/utils/ImageUtils.java55
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/view/PackageRegistryView.java335
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/util/EditingUtil.java60
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.checkstyle10
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.options11
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.pmd7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.settings/org.eclipse.core.resources.prefs2
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/META-INF/MANIFEST.MF14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/OSGI-INF/l10n/bundle.properties13
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/build.properties18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/imageprovider/IImageProvider.java64
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/imageprovider/IImageProviderFactory.java37
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/internal/Activator.java50
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/internal/imageprovider/ImageProvider.java70
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/internal/imageprovider/ImageProviderFactory.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.checkstyle19
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.pmd7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.project31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/META-INF/MANIFEST.MF17
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/build.properties16
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/resources/Activator.java.template45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/resources/MANIFEST.MF.template11
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/Activator.java50
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/BuildPropertiesUtils.java146
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/PluginUtils.java605
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exception/PdeCoreUtilsRuntimeException.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/BuildPropertiesUtils.java37
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/PluginUtils.java73
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/TargetPlatformUtils.java576
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/exception/PdeCoreUtilsException.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/exception/ReflexiveDiscouragedAccessException.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.checkstyle18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.options11
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.project29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.settings/org.eclipse.core.runtime.prefs3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.settings/org.eclipse.jdt.core.prefs11
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.settings/org.eclipse.jdt.ui.prefs2
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/META-INF/MANIFEST.MF17
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/OSGI-INF/l10n/bundle.properties13
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/build.properties18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/colorprovider/IColorProvider.java22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/colorprovider/IColorProviderFactory.java22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/fontprovider/IFontProvider.java22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/fontprovider/IFontProviderFactory.java22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/imageprovider/IImageProvider.java27
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/imageprovider/IImageProviderFactory.java22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/Activator.java45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/colorprovider/ColorProvider.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/colorprovider/ColorProviderFactory.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/exported/SWTTestUtils.java38
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/exported/TestUtils.java46
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/fontprovider/FontProvider.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/fontprovider/FontProviderFactory.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/imageprovider/ImageProvider.java86
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/imageprovider/ImageProviderFactory.java35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.checkstyle8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.fbprefs127
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.options16
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.pmd7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.project32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.settings/org.eclipse.core.resources.prefs3
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/META-INF/MANIFEST.MF41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/OSGI-INF/l10n/bundle.properties11
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/build.properties16
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/Activator.java52
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/Messages.java37
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/dialog/OkDialog.java168
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/dialog/OkDialogFactory.java105
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/dialog/QuestionDialog.java184
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/dialog/QuestionDialogFactory.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/composite/IFilteredElementSelectionComposite.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IDialog.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IDialogCallback.java28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IDialogCallbackWithPreCommit.java59
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IDialogWithoutResultCallback.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IOkDialog.java32
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IOkDialogFactory.java52
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IQuestionDialog.java43
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IQuestionDialogFactory.java49
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IWithResultDialogCallback.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/AbstractExceptionFreeRunnable.java20
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/AbstractVoidExceptionFreeRunnable.java22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/AbstractVoidRunnable.java22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/DisplaySyncRuntimeException.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/IRunnable.java16
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/SynchronizedComposite.java38
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/SynchronizedObject.java115
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/handler/HandlerUtils.java90
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/tree/menu/ITreeMenu.java44
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/composite/FilteredElementSelectionComposite.java174
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/composite/SynchronizedFilteredElementSelectionComposite.java89
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/dialog/AbstractDialog.java169
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/dialog/AbstractDialogWithCallback.java58
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/dialog/AbstractMainDialog.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/dialog/SynchronizedAbstractDialog.java94
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/handler/AbstractSelectionExpectedTypeHandler.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/ExtendedTree.java174
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/item/AbstractTreeItem.java210
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/menu/AbstractTreeMenu.java205
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/menu/AbstractTreeMenuItem.java213
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/menu/AbstractTreeSubMenu.java128
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/menu/ExtendedTreeMenu.java341
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/AbstractWidget.java155
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/command/AbstractCommandWidget.java86
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/command/AbstractGetOrCreateFilteredElementCommandWidget.java147
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/command/ICommandWidget.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/command/IGetOrCreateFilteredElementCommmandWidget.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/CreateElementWidget.java132
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/getorcreate/AbstractGetOrCreateElementWidget.java168
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/getorcreate/AbstractGetOrCreateElementWithButtonWidget.java120
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/getorcreate/AbstractGetOrCreateElementWithDialogButtonWidget.java89
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/getorcreate/AbstractGetOrCreateElementWithWizardButtonWidget.java82
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/properties/AbstractGetPropertyWidget.java159
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/properties/bounds/AbstractGetBoundsWidget.java127
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/properties/name/AbstractGetElementNameWidget.java86
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/properties/name/AbstractPrintElementWidget.java59
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/query/AbstractQueryWidget.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/wizard/SynchronizedWizard.java314
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/widget/IAbstractWidget.java56
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/widget/getorcreate/IAbstractGetOrCreateElementWidget.java43
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/widget/getorcreate/IAbstractGetOrCreateElementWithButtonWidget.java41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/wizard/IExtendedWizard.java56
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/messages.properties23
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/sync/generated/SynchronizedAbstractGetOrCreateElementWidget.java92
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/sync/generated/SynchronizedAbstractGetOrCreateElementWithButtonWidget.java112
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/sync/generated/SynchronizedGetOrCreateFilteredElementCommmandWidget.java142
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/sync/generated/SynchronizedOkDialog.java64
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/widget/metaclass/FilteredElementSelectionWidget.java150
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/utils/PropertyElement.java113
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/utils/PropertyElement2.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/utils/UIUtils.java248
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/utils/WidgetProperties.java67
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/.checkstyle7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/.settings/org.eclipse.jdt.core.prefs74
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/META-INF/MANIFEST.MF16
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/OSGI-INF/l10n/bundle.properties14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/build.properties19
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.modelcelleditors60
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/plugin.xml30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/Activator.java68
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EBigDecimalCellEditor.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EBigIntegerCellEditor.java55
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EBooleanCellEditor.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EByteCellEditor.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/ECharCellEditor.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EDoubleCellEditor.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EFloatCellEditor.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EIntCellEditor.java52
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/ELongCellEditor.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EShortCellEditor.java52
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EStringMultiCellEditor.java45
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/Messages.java26
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BigDecimalComposite.java87
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BigDecimalCompositeFactory.java31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BigIntegerComposite.java82
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BigIntegerCompositeFactory.java31
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BooleanComposite.java148
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BooleanCompositeFactory.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/ByteComposite.java113
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/ByteCompositeFactory.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/CharComposite.java76
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/CharCompositeFactory.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/DoubleComposite.java107
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/DoubleCompositeFactory.java27
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/FloatComposite.java117
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/FloatCompositeFactory.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/IntComposite.java110
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/IntCompositeFactory.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/LongComposite.java110
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/LongCompositeFactory.java30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/ShortComposite.java110
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/ShortCompositeFactory.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/StringComposite.java180
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/StringMultiComposite.java203
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/StringMultiCompositeFactory.java29
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/messages.properties11
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/ui/MultiLineDialog.java108
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/.checkstyle14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/.settings/org.eclipse.jdt.core.prefs11
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/API.README.txt21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/META-INF/MANIFEST.MF37
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/build.properties22
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/model/celleditors.ecore30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/model/celleditors.genmodel35
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/org.eclipse.papyrus.emf.facet.widgets.celleditors.core.modelcelleditors12
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/plugin.properties19
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/plugin.xml52
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/schema/celleditors.exsd120
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/schema/commandFactories.exsd111
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/schema/compositeEditorFactories.exsd133
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/AbstractCellEditorComposite.java132
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/CellEditorsUtils.java65
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ICellEditorsRegistry.java80
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ICommandFactoriesRegistry.java40
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ICommandFactory.java30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ICompositeEditorFactory.java48
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IListener.java16
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IModelCellEditHandler.java21
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IModelCellEditor.java51
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IModelCellEditorContainer.java25
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IModelCellEditorValidator.java18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/INaryEAttributeCellEditor.java47
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/INaryEReferenceCellEditor.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/INaryFeatureCellEditor.java41
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IValidator.java25
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IWidget.java34
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IWidget2.java43
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/core/composite/registries/ICompositeEditorFactoriesRegistry.java38
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/core/composite/registry/ICompositeEditorFactoriesRegistry.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/Activator.java69
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/CellEditorsRegistry.java342
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/CommandFactoriesRegistry.java100
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/DefaultCommandFactory.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/Messages.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ModelCellEditor.java81
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ModelCellEditorContainer.java39
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/composite/registries/CompositeEditorFactoriesRegistry.java123
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/EEnumCellEditor.java62
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/NaryAttributeCellEditor.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/NaryReferenceCellEditor.java55
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/UnaryReferenceCellEditor.java53
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/AbstractIResourceComposite.java149
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/CoreIFileComposite.java75
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/CoreIProjectComposite.java77
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/CoreIResourceComposite.java55
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/EnumComposite.java133
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/EnumeratorComposite.java67
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/UnaryReferenceCellEditorComposite.java251
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/factories/CoreIFileCompositeFactory.java30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/factories/CoreIProjectCompositeFactory.java28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/factories/CoreIResourceCompositeFactory.java30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/messages.properties38
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/AbstractNaryEditingDialog.java139
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/AssignableValuesContentProvider.java82
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/EditingUtils.java84
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/FeatureValuesInput.java33
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/ModelCellsEditingSupport.java130
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/NaryAttributeEditingDialog.java373
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/NaryReferenceEditingDialog.java489
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/AbstractModelCellEditor.java106
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/BasicCellEditor.java63
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/ModelCellEditorDeclarations.java54
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/ModelCellEditorFactory.java78
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/ModelCellEditorPackage.java567
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/NaryFeatureCellEditor.java64
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/UnaryReferenceCellEditor.java66
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/AbstractModelCellEditorImpl.java260
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/BasicCellEditorImpl.java184
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/ModelCellEditorDeclarationsImpl.java162
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/ModelCellEditorFactoryImpl.java144
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/ModelCellEditorPackageImpl.java397
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/NaryFeatureCellEditorImpl.java184
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/UnaryReferenceCellEditorImpl.java187
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/util/ModelCellEditorAdapterFactory.java216
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/util/ModelCellEditorSwitch.java254
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/.checkstyle10
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/.classpath7
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/.project30
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/.settings/org.eclipse.jdt.core.prefs8
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/API.README.txt14
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/META-INF/MANIFEST.MF18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/OSGI-INF/l10n/bundle.properties13
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/about.html28
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/build.properties18
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/Facet.gifbin0 -> 805 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/error.gifbin0 -> 353 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/add.gifbin0 -> 318 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/addUiCustom.gifbin0 -> 612 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/aggreg.gifbin0 -> 68 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/aggreg_unidir.gifbin0 -> 91 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/attribute_facet.gifbin0 -> 438 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/attributes.gifbin0 -> 124 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/collapseall.gifbin0 -> 157 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/common_columns.gifbin0 -> 101 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/container.gifbin0 -> 88 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/decrease_font_size.gifbin0 -> 102 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/delete.gifbin0 -> 351 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/derivation_tree.gifbin0 -> 82 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/derived.gifbin0 -> 97 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/derived_instances.gifbin0 -> 76 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/eClass.gifbin0 -> 228 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/element_id.gifbin0 -> 76 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/empty_attributes.gifbin0 -> 122 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/empty_links.gifbin0 -> 91 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/feature.gifbin0 -> 294 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/full_name.gifbin0 -> 86 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/increase_font_size.gifbin0 -> 130 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/inv_aggreg.gifbin0 -> 70 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/link.gifbin0 -> 67 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/link_type.gifbin0 -> 92 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/link_unidir.gifbin0 -> 91 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/link_unidir_facet.gifbin0 -> 375 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/multiplicity.gifbin0 -> 91 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/non-zero.gifbin0 -> 187 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/operation.gifbin0 -> 161 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/opposite_links.gifbin0 -> 68 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/ordering.gifbin0 -> 102 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/package.gifbin0 -> 207 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/predicate.gifbin0 -> 645 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/range.gifbin0 -> 89 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/remove_line.gifbin0 -> 91 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/restore_font_size.gifbin0 -> 130 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/select_columns_to_hide.pngbin0 -> 433 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/sort.gifbin0 -> 153 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/sort_links.gifbin0 -> 189 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/sort_links_by_type.gifbin0 -> 136 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/sort_num.gifbin0 -> 138 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/uri.gifbin0 -> 76 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/view_menu.gifbin0 -> 90 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/zero.gifbin0 -> 326 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/logoMoDiscoMini.gifbin0 -> 1078 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/query.pngbin0 -> 709 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/shortcut.pngbin0 -> 198 bytes
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/src/org/eclipse/papyrus/emf/facet/widgets/internal/Activator.java69
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/src/org/eclipse/papyrus/emf/facet/widgets/internal/CustomizableLabelProvider.java235
-rw-r--r--plugins/facet/org.eclipse.papyrus.emf.facet.widgets/src/org/eclipse/papyrus/emf/facet/widgets/internal/ImageProvider.java652
-rw-r--r--plugins/infra/core/org.eclipse.papyrus.infra.core/src/org/eclipse/papyrus/infra/core/resource/EMFLogicalModel.java4
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/.classpath2
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/META-INF/MANIFEST.MF10
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/src/org/eclipse/papyrus/infra/emf/editor/Activator.java27
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/src/org/eclipse/papyrus/infra/emf/editor/part/PapyrusEditor2.java42
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf.facet.queries/META-INF/MANIFEST.MF2
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf.facet.queries/plugin.xml2
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/.classpath2
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/META-INF/MANIFEST.MF2
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/Model/NewChild.ecore8
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src-gen/org/eclipse/papyrus/infra/emf/newchild/MenuAction.java6
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src-gen/org/eclipse/papyrus/infra/emf/newchild/impl/MenuActionImpl.java18
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src-gen/org/eclipse/papyrus/infra/emf/newchild/impl/NewchildPackageImpl.java2
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src/org/eclipse/papyrus/infra/emf/newchild/menu/FillMenuAction.java4
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src/org/eclipse/papyrus/infra/emf/newchild/runtime/NewchildManager.java2
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf/META-INF/MANIFEST.MF12
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/Activator.java194
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/messages/Messages.java4
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/EMFLabelProvider.java16
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/MoDiscoContentProvider.java6
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/strategy/ContainmentBrowseStrategy.java7
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/strategy/SemanticEMFContentProvider.java11
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/utils/EMFFileUtil.java12
-rw-r--r--plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/utils/EMFHelper.java2
-rw-r--r--plugins/infra/gmfdiag/css/org.eclipse.papyrus.infra.gmfdiag.css.configuration/META-INF/MANIFEST.MF5
-rw-r--r--plugins/infra/gmfdiag/css/org.eclipse.papyrus.infra.gmfdiag.css.properties/META-INF/MANIFEST.MF5
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/META-INF/MANIFEST.MF7
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/commands/CreateViewCommand.java3
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/editpart/IPapyrusEditPart.java12
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/figure/node/ScalableCompartmentFigure.java12
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/helper/NotationHelper.java3
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/messages/Messages.java2
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/providers/RestrictedAbstractEditPartProvider.java12
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/service/shape/ProviderNotificationManager.java12
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/snap/copy/ConnectionEndpointTracker.java12
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/META-INF/MANIFEST.MF2
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/plugin.xml3
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/src/org/eclipse/papyrus/infra/gmfdiag/css/model/queries/GetStyleSheets.java18
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/src/org/eclipse/papyrus/infra/gmfdiag/css/model/queries/IsStyleSheetContainer.java10
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/.project2
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/META-INF/MANIFEST.MF15
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/plugin.xml18
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusDiagram.custom49
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotation.uiCustom58
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotationFacet.facetSet12
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotationFacet.querySet17
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotationFacet.uiCustom17
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/handlers/AbstractDiagramCommandHandler.java12
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/messages/Messages.java12
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/providers/DiagramPropertyTester.java4
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/DiagramsRefCollapseQuery.java36
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/EmptyReferenceAndAttributeNotVisibleQuery.java55
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/GetContainedDiagrams.java16
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/GetDiagramIcon.java17
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/IsDiagramContainer.java43
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/NotVisibleStructuralFeatureQuery.java38
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.navigation/META-INF/MANIFEST.MF1
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.navigation/src/org/eclipse/papyrus/infra/gmfdiag/navigation/Messages.java12
-rw-r--r--plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.navigation/src/org/eclipse/papyrus/infra/gmfdiag/navigation/utils/Messages.java12
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.common/src/org/eclipse/papyrus/infra/nattable/common/handlers/AbstractCreateNattableEditorHandler.java5
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/META-INF/MANIFEST.MF1
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/plugin.xml11
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/src/org/eclipse/papyrus/infra/nattable/modelexplorer/queries/GetContainedTables.java21
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/src/org/eclipse/papyrus/infra/nattable/modelexplorer/queries/IsTableContainer.java14
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/META-INF/MANIFEST.MF5
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/manager/ImportAxisInNattableManager.java12
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/painter/PapyrusSortableHeaderTextPainter.java12
-rw-r--r--plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/provider/PasteEObjectAxisInNattableCommandProvider.java12
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.constraints/.project2
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.constraints/META-INF/MANIFEST.MF3
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.constraints/plugin.xml4
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.constraints/src/org/eclipse/papyrus/infra/constraints/constraints/EMFQueryConstraint.java105
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.constraints/src/org/eclipse/papyrus/infra/constraints/constraints/JavaQueryConstraint.java12
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.constraints/src/org/eclipse/papyrus/infra/constraints/providers/ConstraintTypeContentProvider.java12
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.extendedtypes.emf/src/org/eclipse/papyrus/infra/extendedtypes/emf/Activator.java12
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.extendedtypes/src/org/eclipse/papyrus/infra/extendedtypes/Activator.java12
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.hyperlink/META-INF/MANIFEST.MF5
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.hyperlink/src/org/eclipse/papyrus/infra/hyperlink/ui/EditorLookForEditorShell.java49
-rw-r--r--plugins/infra/org.eclipse.papyrus.infra.newchild/META-INF/MANIFEST.MF1
-rw-r--r--plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration.edit/META-INF/MANIFEST.MF2
-rw-r--r--plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration.edit/src-gen/org/eclipse/papyrus/infra/queries/core/configuration/provider/ConfigurationEditPlugin.java7
-rw-r--r--plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration/META-INF/MANIFEST.MF1
-rw-r--r--plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration/src-gen/org/eclipse/papyrus/infra/queries/core/configuration/impl/ConfigurationPackageImpl.java9
-rw-r--r--plugins/infra/queries/org.eclipse.papyrus.infra.queries.core/META-INF/MANIFEST.MF3
-rw-r--r--plugins/infra/queries/org.eclipse.papyrus.infra.queries.core/src/org/eclipse/papyrus/infra/queries/core/converter/ConverterRegistry.java20
-rw-r--r--plugins/infra/queries/org.eclipse.papyrus.infra.queries.core/src/org/eclipse/papyrus/infra/queries/core/modisco/QueryUtil.java807
-rw-r--r--plugins/infra/services/org.eclipse.papyrus.infra.services.decoration/META-INF/MANIFEST.MF4
-rw-r--r--plugins/infra/services/org.eclipse.papyrus.infra.services.decoration/src/org/eclipse/papyrus/infra/services/decoration/util/DecorationUtils.java6
-rw-r--r--plugins/infra/services/org.eclipse.papyrus.infra.services.validation/META-INF/MANIFEST.MF2
-rw-r--r--plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/IPapyrusDiagnostician.java12
-rw-r--r--plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/ValidationTool.java6
-rw-r--r--plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/commands/AsyncValidateSubtreeCommand.java5
-rw-r--r--plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/commands/ValidateSubtreeCommand.java12
-rw-r--r--plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/handler/AbstractCommandHandler.java7
-rw-r--r--plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/preferences/Initializer.java12
-rw-r--r--plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/preferences/PreferencePage.java12
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/META-INF/MANIFEST.MF5
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/part/BlockDefinitionDiagramEditPart.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/factory/DiagramPaletteFactory.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/preferences/BlockPreferencePage.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/provider/CustomGraphicalTypeRegistry.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/BlockDefinitionDiagramCondition.java6
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/CreateBlockDefinitionDiagramWithNavigationHandler.java6
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/command/CustomDeleteCommand.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/dnd/helper/CustomLinkMappingHelper.java8
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/policy/PackageCreationEditPolicy.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/policy/PackageSemanticEditPolicy.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/policy/ShowHideRelatedLinkEditPolicy.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/handler/ManageProvidedInterfacesHandler.java6
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/DeleteViewDuringPartEditHelperAdvice.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/DeleteViewDuringReferenceEditHelperAdvice.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/GeneralizationHelperAdvice.java7
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/GeneralizationUtil.java7
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/part/SysMLDiagramUpdater.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/part/SysMLVisualIDRegistry.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/provider/CustomEditPolicyProvider.java3
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/ui/CreateUmlElementDialog.java38
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/ui/InterfaceManagerDialog.java6
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/ui/NewElementRepresentation.java6
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/META-INF/MANIFEST.MF9
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/commands/IdentityCommandWithNotification.java12
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/CommonDiagramDragDropEditPolicy.java13
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/CompartmentSemanticEditPolicy.java13
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/DefaultContainerNodeEditPolicy.java13
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/DefaultSnapBackEditPolicy.java13
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/DefaultXYLayoutEditPolicy.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/ILinkMappingHelper.java7
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/LabelDefaultSemanticEditPolicy.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/provider/AbstractViewProvider.java16
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/provider/CustomAbstractViewProvider.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/provider/ElementTypeLabelProvider.java11
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/commands/ConstraintExtendedDirectEditionDialog.java13
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/commands/CreateActorPartWithTypeConfigureCommandFactory.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/commands/CreateConstraintPropertyWithTypeConfigureCommandFactory.java4
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/dialogs/CreateOrSelectActorPartTypeDialog.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/dialogs/CreateOrSelectTypeDialog.java13
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/part/BlockPropertyCompositeEditPart.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/part/ConstraintBlockPropertyCompositeEditPart.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/part/NestedBlockPropertyCompositeEditPart.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/BlockPropertyStructureCompartmentSemanticEditPolicy.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/NestedBlockPropertyCompositeSemanticEditPolicy.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/PropertyCompartmentSemanticEditPolicy.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/StructureCompartmentSemanticEditPolicy.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/figure/AssociationFigure.java8
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/messages/Messages.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/FlowPortLabelParser.java3
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/FlowPropertyLabelParser.java3
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/RequirementLabelParser.java3
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/UnitLabelParser.java3
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/dnd/helper/LinkMappingHelper.java7
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/edit/part/AbstractElementChildLabelEditPart.java3
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/edit/part/AbstractShapeCompartmentEditPart.java13
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/edit/policy/StructuredClassifierCreationEditPolicy.java2
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/AssociationEndLabelParser.java3
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ConnectorLabelParser.java3
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ConstraintLabelParser.java7
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/MultiplicityElementLabelParser.java3
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/NamedElementLabelParser.java7
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/OperationLabelParser.java3
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ParameterLabelParser.java3
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/PropertyLabelParser.java3
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ReceptionLabelParser.java3
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/SlotLabelParser.java3
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/utils/ParameterLabelUtil.java13
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-gen/org/eclipse/papyrus/sysml/diagram/common/factory/ConstraintBlockPropertyCompositeClassifierViewFactory.java13
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-gen/org/eclipse/papyrus/sysml/diagram/common/figure/ConstraintBlockPropertyCompositeFigure.java13
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-gen/org/eclipse/papyrus/sysml/diagram/common/figure/SysMLDiagramFrameFigure.java7
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/Activator.java13
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/commands/CreateSysMLModelCommand.java6
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/utils/ConstraintBlockHelper.java13
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/META-INF/MANIFEST.MF6
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src-gen/org/eclipse/papyrus/sysml/diagram/internalblock/provider/InheritedCompositeDiagramViewProvider.java5
-rw-r--r--plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src/org/eclipse/papyrus/sysml/diagram/internalblock/edit/policy/ShowHideRelatedLinkEditPolicy.java2
-rw-r--r--plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/.project2
-rw-r--r--plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/META-INF/MANIFEST.MF9
-rw-r--r--plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/plugin.xml13
-rw-r--r--plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/resources/SimpleSysML.custom26
-rw-r--r--plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/resources/SysMLDefaultExplorerCustomization.uiCustom9122
-rw-r--r--plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/resources/SysMLDefaultExplorerQueries.querySet17
-rw-r--r--plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/Activator.java12
-rw-r--r--plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/query/GetImageQuery.java47
-rw-r--r--plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/query/GetLabelQuery.java35
-rw-r--r--plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/query/HasImageQuery.java34
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/META-INF/MANIFEST.MF208
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/editpolicies/PortLabelEditPolicy.java12
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/handlers/DeleteFromDiagramCommandHandler.java3
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/helper/MultiAssociationHelper.java12
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/listeners/DropTargetListener.java12
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/CommentParser.java3
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/ConstraintParser.java3
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/ShortcutDiagramParser.java3
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/StereotypePropertyParser.java7
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/custom/AbstractAssociationEndParser.java3
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/structural/UMLStructuralFeatureParser.java5
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/service/InheritedDecorator.java28
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/service/InheritedDecoratorProvider.java12
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/sheet/UMLPropertySection.java3
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.component/META-INF/MANIFEST.MF5
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.component/src/org/eclipse/papyrus/uml/diagram/component/parsers/MessageFormatParser.java5
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.component/src/org/eclipse/papyrus/uml/diagram/component/providers/UMLViewProvider.java3
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/META-INF/MANIFEST.MF5
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CompositeDiagramCreationCondition.java9
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CompositeDiagramEditorFactory.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CreateCompositeDiagramCommand.java5
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CreateCompositeDiagramWithNavigationHandler.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/UmlCompositeDiagramForMultiEditor.java7
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/actions/ManageProvidedInterfacesHandler.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/actions/ShowHideRelatedContentsAction.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/actions/ShowHideRelatedContentsHandler.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CollaborationRoleCreateCommand.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CollaborationUseFromTypeCreateCommand.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CreateBehaviorPortCommand.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CreateViewCommand.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/InformationFlowCreateCommand.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/PortCreateCommand.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/PropertyPartCreateCommand.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/PropertyPartFromTypeCreateCommand.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/RoleBindingCreateCommand.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/SetTypeWithDialogCommand.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/AbstractBehaviorPortEditPart.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/AbstractObservationEditPart.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConnectorMultiplicitySourceEditPart.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConnectorMultiplicityTargetEditPart.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConstrainedNamedElementEditPart.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConstrainedShapeNodeEditPart.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/CustomEditPartFactory.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/PropertyPartEditPartCN.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/AbstractCustomLabelEditPolicy.java5
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorLayoutEditPolicy.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorPortEditPolicy.java9
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorResizableShapeEditPolicy.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorSymbolEditPolicy.java9
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationCompositeCompartmentItemSemanticEditPolicy.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationRoleItemSemanticEditPolicy.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationUseItemSemanticEditPolicyCN.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationUseLabelEditPolicy.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CustomDiagramDragDropEditPolicy.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/EncapsulatedClassifierResizableShapeEditPolicy.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ExternalLabelPrimaryDragRoleEditPolicy.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/GraphicalNodeEditPolicy.java3
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/InformationFlowCustomLabelEditPolicy.java5
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoConnectableEditPolicy.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoDeleteFromDiagramEditPolicy.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoScrollBehaviorResizableShapeEditPolicy.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoScrollClassifierResizableShapeEditPolicy.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ObservationLayoutEditPolicy.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ParameterItemSemanticEditPolicy.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ParameterLabelEditPolicy.java5
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ParameterLayoutEditPolicy.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PortInCompartmentCreationEditPolicy.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PortLayoutEditPolicy.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PropertyLayoutEditPolicy.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PropertyPartCompartmentItemSemanticEditPolicyCN.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/RemoveOrphanViewPolicy.java8
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/StructuredClassifierLayoutEditPolicy.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/AbstractObservationNodeFigure.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ActivityCompositeFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ClassCompositeFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CollaborationCompositeFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CollaborationRoleFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CollaborationUseFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ComponentCompositeFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CompositeFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ConnectorFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/DeviceCompositeFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/DurationObservationNodeFigure.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ExecutionEnvironmentCompositeFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/FunctionBehaviorCompositeFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InformationFlowFigure.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InformationItemFigure.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InteractionCompositeFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InterfaceCompositeFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/NodeCompositeFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/OpaqueBehaviorCompositeFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ParameterFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/PortFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/PropertyPartFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ProtocolStateMachineCompositeFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/RepresentationFigure.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/RoleBindingFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/StateMachineCompositeFigure.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/TimeObservationNodeFigure.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/CollaborationHelper.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/CollaborationUseLabelHelper.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/CompositeLinkMappingHelper.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/ConnectorHelper.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/DurationObservationHelper.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/ParameterLabelHelper.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/TimeObservationHelper.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/TypeHelper.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/advice/CollaborationHelperAdvice.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/advice/GeneralizationHelperAdvice.java7
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/advice/PropertyHelperAdvice.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/BehaviorPortLocator.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/ExternalPortPositionLocator.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/InternalPortPositionLocator.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/PortPositionLocator.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/log/Log.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/messages/Messages.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/ConnectorLabelParser.java9
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/MultiplicityLabelParser.java9
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/NamedElementLabelParser.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/RoleBindingRoleNameParser.java5
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parts/PropertyDiagramUpdater.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/CustomDiagramPreferencePage.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/IPapyrusCollaborationUsePreferencesConstant.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/IPapyrusPropertyPreferencesConstant.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/IParameterPreferencesConstant.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/providers/ActionStateSourceProvider.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/providers/CustomEditPartProvider.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/providers/CustomParserProvider.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/CollaborationRoleTreeContentProvider.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/CollaborationRoleValidator.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/CreateUmlElementDialog.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/InformationItemElementTreeSelectionDialog.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/InformationItemValidator.java2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/InterfaceManagerDialog.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/NameLabelValidator.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/NewElementRepresentation.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/utils/CompositeEditPartUtil.java4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/utils/GeneralizationUtil.java7
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/edit/parts/BehaviorPortEditPart.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/edit/parts/BehaviorPortLinkEditPart.java6
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/edit/policies/UMLBaseItemSemanticEditPolicy.java16
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/AbstractionPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ActivityPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ActorPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/AnyReceiveEventPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ArtifactPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CallEventPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ChangeEventPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ClassPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CollaborationPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CollaborationRolePreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CollaborationUsePreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CommentAnnotatedElementPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CommentPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ComponentPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ComponentRealizationPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ConnectorPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ConstraintConstrainedElementPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ConstraintPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DataTypePreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DependencyPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DeploymentPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DeploymentSpecificationPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DevicePreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationConstraintPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationIntervalPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationObservationEventPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationObservationPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/EnumerationLiteralPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/EnumerationPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ExecutionEnvironmentPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ExpressionPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/FunctionBehaviorPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/GeneralizationPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InformationFlowPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InformationItemPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InstanceValuePreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InteractionConstraintPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InteractionPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InterfacePreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InterfaceRealizationPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/IntervalConstraintPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/IntervalPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralBooleanPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralIntegerPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralNullPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralStringPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralUnlimitedNaturalPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ManifestationPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/NodePreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/OpaqueBehaviorPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/OpaqueExpressionPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/OperationPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ParameterPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/PortPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/PrimitiveTypePreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/PropertyPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ProtocolStateMachinePreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/RealizationPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ReceptionPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/RoleBindingPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/SignalEventPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/SignalPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/StateMachinePreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/StringExpressionPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/SubstitutionPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeConstraintPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeEventPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeExpressionPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeIntervalPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeObservationEventPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeObservationPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/UndefinedPreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/UsagePreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/UseCasePreferencePage.java13
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/providers/UMLViewProvider.java3
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.dnd/META-INF/MANIFEST.MF4
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.interactionoverview/META-INF/MANIFEST.MF5
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/parser/CustomCallBehaviorActionParser.java7
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/META-INF/MANIFEST.MF81
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/AbstractDistributeAction.java12
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/AbstractShowHideAction.java12
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/DiagramUIActionsMessages.java12
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/handlers/ShowHideRelatedLinkHandler.java3
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.modelexplorer/META-INF/MANIFEST.MF7
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.modelexplorer/plugin.xml2
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration.edit/META-INF/MANIFEST.MF23
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/META-INF/MANIFEST.MF8
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/model/PaletteConfiguration.ecore14
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/PaletteconfigurationPackage.java34
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/ToolConfiguration.java28
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/impl/PaletteconfigurationFactoryImpl.java3
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/impl/PaletteconfigurationPackageImpl.java19
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/impl/ToolConfigurationImpl.java61
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/util/PaletteconfigurationAdapterFactory.java1
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/util/PaletteconfigurationResourceFactoryImpl.java12
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/util/PaletteconfigurationSwitch.java1
-rw-r--r--plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src/org/eclipse/papyrus/uml/diagram/paletteconfiguration/descriptor/ExtendedSemanticTypeDescriptor.java12
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/.project2
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/META-INF/MANIFEST.MF63
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/plugin.xml47
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/NotationCustomization.uiCustom50
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/PapyrusBrowserQuery.querySet32
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/PapyrusUMLFacet.facetSet12
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/SimpleUML.custom22
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/SimpleUML.uiCustom2787
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/StereotypeDisplay.custom15
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/UMLFacetDefaultBrowserCustomization.uiCustom18
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/UMLPapyrusDefaultBrowserCustomization.uiCustom9142
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src-gen/org/eclipse/papyrus/uml/modelexplorer/handler/DestructionOccurrenceSpecificationHandler.java12
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src-gen/org/eclipse/papyrus/uml/modelexplorer/handler/LiteralRealHandler.java12
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src-gen/org/eclipse/papyrus/uml/modelexplorer/handler/RefineHandler.java12
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/Activator.java1
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/factory/ModelElementItemFactory.java10
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/handler/ToggleAdvancedModelExplorerHandler.java35
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/handler/ToggleAdvancedModelExplorerState.java24
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/DisplayUMLStructuralFeature.java76
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/GetComplexName.java27
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/GetContainedDiagrams.java56
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/GetDiagramIcon.java32
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/GetName.java17
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/IsDiagram.java33
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/IsDiagramContainer.java51
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/IsReadOnly.java43
-rw-r--r--plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/util/ModelExplorerUtils.java21
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/META-INF/MANIFEST.MF2
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/src/org/eclipse/papyrus/uml/nattable/config/UMLFeatureCellEditorConfig.java4
-rw-r--r--plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/src/org/eclipse/papyrus/uml/nattable/messages/Messages.java12
-rw-r--r--plugins/uml/org.eclipse.papyrus.uml.commands/plugin.xml6
-rw-r--r--plugins/uml/org.eclipse.papyrus.uml.commands/src/org/eclipse/papyrus/uml/commands/handler/AbstractEMFCommandHandler.java22
-rw-r--r--plugins/uml/org.eclipse.papyrus.uml.import/plugin.xml27
-rw-r--r--plugins/uml/org.eclipse.papyrus.uml.profile/META-INF/MANIFEST.MF7
-rw-r--r--plugins/uml/org.eclipse.papyrus.uml.service.validation/plugin.xml54
-rw-r--r--plugins/uml/org.eclipse.papyrus.uml.services.decoration/META-INF/MANIFEST.MF1
-rw-r--r--plugins/uml/org.eclipse.papyrus.uml.ui.perspectiveconfiguration/META-INF/MANIFEST.MF3
-rw-r--r--plugins/uml/properties/org.eclipse.papyrus.uml.properties.xtext/src/org/eclipse/papyrus/uml/properties/xtext/XtextLanguageEditor.java19
-rw-r--r--plugins/uml/properties/org.eclipse.papyrus.uml.properties/.project2
-rw-r--r--plugins/uml/properties/org.eclipse.papyrus.uml.properties/META-INF/MANIFEST.MF5
-rw-r--r--plugins/uml/properties/org.eclipse.papyrus.uml.properties/plugin.xml5
-rw-r--r--plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/creation/ConnectorTypeEditorFactory.java12
-rw-r--r--plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/actions/AbstractViewActionDelegate.java4
-rw-r--r--plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/compositesformodel/AppliedProfileCompositeOnModel.java4
-rw-r--r--plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/section/AppliedProfileSection.java5
-rw-r--r--plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/section/AppliedStereotypePropertiesPlaceSection.java12
-rw-r--r--plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/section/AppliedStereotypeSectionWithView.java5
-rw-r--r--plugins/uml/textedit/org.eclipse.papyrus.uml.textedit.constraintwithessentialocl.xtext/src/org/eclipse/papyrus/uml/textedit/constraintwithessentialocl/xtext/EssentialOCLEditorConfiguration.java31
-rw-r--r--plugins/uml/tools/org.eclipse.papyrus.uml.tools.extendedtypes/META-INF/MANIFEST.MF31
-rw-r--r--plugins/uml/tools/org.eclipse.papyrus.uml.tools/META-INF/MANIFEST.MF3
-rw-r--r--plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/Activator.java12
-rw-r--r--plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/importsources/AbstractPackageImportSource.java3
-rw-r--r--plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLEClassLabelProvider.java12
-rw-r--r--plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLLabelProvider.java12
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/.project2
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/META-INF/MANIFEST.MF23
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/plugin.xml43
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/OpenedPage.custom20
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusEcoreBrowser.uiCustom19
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusEcoreBrowserQuery.querySet8
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.facetSet8
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.querySet12
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.uiCustom11
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/ReadOnlyElement.custom28
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/Activator.java193
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/CustomCommonViewer.java15
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/DecoratingLabelProviderWTooltips.java10
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/DirectEditorEditingSupport.java19
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/ITooltip.java12
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/LinkHelper.java7
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/LinkNodeAdapterFactory.java4
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/Messages.java12
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/ModelExplorerView.java19
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/NavigatorUtils.java2
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/actionprovider/AbstractCommonActionProvider.java12
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dialog/NavigatorSearchDialog.java11
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dialog/PapyrusLoadBrowserCustomizationDialog.java473
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dnd/CommonDropAdapterAssistant.java39
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dnd/EObjectDragAdapterAssistant.java6
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/handler/AbstractCommandHandler.java2
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/handler/AbstractModelExplorerHandler.java22
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/handler/LoadBrowserCustomization.java214
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/matching/HashCodeCalculus.java35
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/matching/LinkItemMatchingItem.java10
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/matching/ModelElementItemMatchingItem.java8
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsContainmentStructuralFeature.java65
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsOpen.java34
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsOpenedPage.java (renamed from plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsPage.java)16
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsReadOnly.java16
-rw-r--r--plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsReadOnlyColorQuery.java37
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.views.properties/META-INF/MANIFEST.MF8
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.views.properties/src/org/eclipse/papyrus/views/properties/runtime/ViewConstraintEngine.java12
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.views.properties/src/org/eclipse/papyrus/views/properties/widgets/CustomizablePropertyEditor.java12
-rw-r--r--plugins/views/properties/org.eclipse.papyrus.views.properties/src/org/eclipse/papyrus/views/properties/widgets/StringFileSelectorEMF.java12
-rw-r--r--releng/org.eclipse.mdt.papyrus.releng.buckminster/papyrus-trunk-nightly/build.rmap7
-rw-r--r--tests/junit/plugins/infra/services/org.eclipse.papyrus.infra.services.labelprovider.tests/META-INF/MANIFEST.MF5
-rw-r--r--tests/junit/plugins/sysml/org.eclipse.papyrus.sysml.modelexplorer.tests/META-INF/MANIFEST.MF3
-rw-r--r--tests/junit/plugins/sysml/org.eclipse.papyrus.sysml.modelexplorer.tests/test-gen/org/eclipse/papyrus/sysml/modelexplorer/tests/common/AbstractModelExplorerTest.java45
-rw-r--r--tests/junit/plugins/sysml/org.eclipse.papyrus.sysml.modelexplorer.tests/test/org/eclipse/papyrus/sysml/modelexplorer/tests/dragdrop/AbstractDragDropTest.java6
-rw-r--r--tests/junit/plugins/uml/tools/org.eclipse.papyrus.uml.tools.tests/META-INF/MANIFEST.MF3
-rw-r--r--tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/META-INF/MANIFEST.MF4
-rw-r--r--tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/src/org/eclipse/papyrus/views/modelexplorer/tests/AbstractHandlerTest.java5
-rw-r--r--tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/src/org/eclipse/papyrus/views/modelexplorer/tests/DeleteHandlerTest.java10
-rw-r--r--tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/src/org/eclipse/papyrus/views/modelexplorer/tests/ModelExplorerViewTests.java5
2901 files changed, 219462 insertions, 24402 deletions
diff --git a/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/META-INF/MANIFEST.MF b/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/META-INF/MANIFEST.MF
index 3484205a9ab..1cfb4dc86ed 100644
--- a/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/META-INF/MANIFEST.MF
+++ b/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/META-INF/MANIFEST.MF
@@ -7,7 +7,8 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.papyrus.dsml.validation.model;bundle-version="1.0.0",
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
org.eclipse.papyrus.uml.diagram.common;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.widgets.toolbox;bundle-version="1.0.0"
+ org.eclipse.papyrus.infra.widgets.toolbox;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.emf
Export-Package: org.eclipse.papyrus.dsml.validation.generation.ui
Bundle-Vendor: %pluginProvider
Bundle-ActivationPolicy: lazy
diff --git a/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/CreateJavaValidationPluginHandler.java b/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/CreateJavaValidationPluginHandler.java
index 184c3371c67..40bb57bf762 100644
--- a/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/CreateJavaValidationPluginHandler.java
+++ b/extraplugins/dsml.validation/org.eclipse.papyrus.dsml.validation.model.ui/src/org/eclipse/papyrus/dsml/validation/generation/ui/CreateJavaValidationPluginHandler.java
@@ -26,6 +26,7 @@ import org.eclipse.papyrus.dsml.validation.model.elements.interfaces.IConstraint
import org.eclipse.papyrus.dsml.validation.model.elements.interfaces.IValidationRule;
import org.eclipse.papyrus.dsml.validation.model.profilenames.Utils;
import org.eclipse.papyrus.dsml.validation.wizard.CreateEMFValidationProject;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.widgets.toolbox.notification.builders.NotificationBuilder;
import org.eclipse.ui.PlatformUI;
import org.eclipse.uml2.uml.Profile;
@@ -65,13 +66,7 @@ public class CreateJavaValidationPluginHandler extends AbstractHandler {
// Treat non-null selected object (try to adapt and return EObject)
if(selection != null) {
- if(selection instanceof IAdaptable) {
- selection = ((IAdaptable)selection).getAdapter(EObject.class);
- }
-
- if(selection instanceof EObject) {
- eObject = (EObject)selection;
- }
+ eObject = EMFHelper.getEObject(selection);
}
return eObject;
}
diff --git a/extraplugins/org.eclipse.papyrus.qvtTransformation/bin/org/eclipse/papyrus/qvttransformation/popup/actions/SelectQVTTransformation.class b/extraplugins/org.eclipse.papyrus.qvtTransformation/bin/org/eclipse/papyrus/qvttransformation/popup/actions/SelectQVTTransformation.class
index 47b08c07da8..39b4f182f0f 100644
--- a/extraplugins/org.eclipse.papyrus.qvtTransformation/bin/org/eclipse/papyrus/qvttransformation/popup/actions/SelectQVTTransformation.class
+++ b/extraplugins/org.eclipse.papyrus.qvtTransformation/bin/org/eclipse/papyrus/qvttransformation/popup/actions/SelectQVTTransformation.class
Binary files differ
diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/META-INF/MANIFEST.MF b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/META-INF/MANIFEST.MF
index 935f9860a62..5d7351adae1 100644
--- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/META-INF/MANIFEST.MF
+++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/META-INF/MANIFEST.MF
@@ -38,7 +38,8 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
org.eclipse.papyrus.uml.tools.utils;bundle-version="1.0.0",
org.eclipse.papyrus.infra.widgets.toolbox;bundle-version="1.0.0",
- org.eclipse.papyrus.qompass.designer.core;bundle-version="1.0.0"
+ org.eclipse.papyrus.qompass.designer.core;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="1.0.0"
Bundle-ActivationPolicy: lazy
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-Vendor: %providerName
diff --git a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/CmdHandler.java b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/CmdHandler.java
index 74a97f103e9..ccb634c2366 100644
--- a/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/CmdHandler.java
+++ b/extraplugins/qompass-designer/org.eclipse.papyrus.qompass.designer.ui/src/org/eclipse/papyrus/qompass/designer/ui/handlers/CmdHandler.java
@@ -17,6 +17,7 @@ import org.eclipse.core.commands.AbstractHandler;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.papyrus.infra.emf.utils.BusinessModelResolver;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.ui.PlatformUI;
@@ -35,10 +36,8 @@ public abstract class CmdHandler extends AbstractHandler {
.getSelectionService().getSelection();
if(selection != null) {
- Object selectedObject = BusinessModelResolver.getInstance().getBusinessModel(selection.getFirstElement());
- if (selectedObject instanceof EObject) {
- selectedEObject = (EObject) selectedObject;
- }
+
+ selectedEObject = EMFHelper.getEObject(selection);
}
}
diff --git a/extraplugins/tablemigration/org.eclipse.papyrus.infra.emf.nattable.converter/src/org/eclipse/papyrus/uml/nattable/converter/handlers/ConvertAllTablesHandler.java b/extraplugins/tablemigration/org.eclipse.papyrus.infra.emf.nattable.converter/src/org/eclipse/papyrus/uml/nattable/converter/handlers/ConvertAllTablesHandler.java
index 3575a6649f1..581468fdfca 100644
--- a/extraplugins/tablemigration/org.eclipse.papyrus.infra.emf.nattable.converter/src/org/eclipse/papyrus/uml/nattable/converter/handlers/ConvertAllTablesHandler.java
+++ b/extraplugins/tablemigration/org.eclipse.papyrus.infra.emf.nattable.converter/src/org/eclipse/papyrus/uml/nattable/converter/handlers/ConvertAllTablesHandler.java
@@ -21,6 +21,7 @@ import org.eclipse.core.expressions.IEvaluationContext;
import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.papyrus.infra.core.sasheditor.contentprovider.IPageManager;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.table.instance.papyrustableinstance.PapyrusTableInstance;
@@ -42,14 +43,12 @@ public class ConvertAllTablesHandler extends ConvertOldTableHandler {
Iterator<?> iter = list.iterator();
while(iter.hasNext()) {
Object current = iter.next();
- if(current instanceof IAdaptable) {
- EObject eobject = (EObject)((IAdaptable)current).getAdapter(EObject.class);
- if(eobject != null) {
- final IPageManager manager = getPageManager(eobject);
- for(final Object page : manager.allPages()) {
- if(page instanceof PapyrusTableInstance) {
- allPapyrusTableInstances.add((PapyrusTableInstance)page);
- }
+ EObject eobject = EMFHelper.getEObject(selection);
+ if(eobject != null) {
+ final IPageManager manager = getPageManager(eobject);
+ for(final Object page : manager.allPages()) {
+ if(page instanceof PapyrusTableInstance) {
+ allPapyrusTableInstances.add((PapyrusTableInstance)page);
}
}
}
diff --git a/extraplugins/tablemigration/org.eclipse.papyrus.infra.emf.nattable.converter/src/org/eclipse/papyrus/uml/nattable/converter/handlers/ConvertOldTableHandler.java b/extraplugins/tablemigration/org.eclipse.papyrus.infra.emf.nattable.converter/src/org/eclipse/papyrus/uml/nattable/converter/handlers/ConvertOldTableHandler.java
index 6930666bb11..8f6407763fb 100644
--- a/extraplugins/tablemigration/org.eclipse.papyrus.infra.emf.nattable.converter/src/org/eclipse/papyrus/uml/nattable/converter/handlers/ConvertOldTableHandler.java
+++ b/extraplugins/tablemigration/org.eclipse.papyrus.infra.emf.nattable.converter/src/org/eclipse/papyrus/uml/nattable/converter/handlers/ConvertOldTableHandler.java
@@ -44,6 +44,7 @@ import org.eclipse.papyrus.infra.core.resource.ModelSet;
import org.eclipse.papyrus.infra.core.sasheditor.contentprovider.IPageManager;
import org.eclipse.papyrus.infra.core.sashwindows.di.DiPackage;
import org.eclipse.papyrus.infra.core.services.ServiceException;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForEObject;
import org.eclipse.papyrus.infra.nattable.common.modelresource.PapyrusNattableModel;
import org.eclipse.papyrus.infra.nattable.model.nattable.Table;
@@ -405,8 +406,7 @@ public class ConvertOldTableHandler extends AbstractHandler {
List<?> currentSelection = (selection instanceof List<?>) ? (List<?>)selection : new java.util.ArrayList<Object>((Collection<?>)selection);
if(currentSelection.size() == 1) {
Object current = currentSelection.get(0);
- if(current instanceof IAdaptable) {
- EObject eobject = (EObject)((IAdaptable)current).getAdapter(EObject.class);
+ EObject eobject= EMFHelper.getEObject(current);
if(eobject instanceof PapyrusTableInstance) {
this.oldPapyrusTableInstance.add((PapyrusTableInstance)eobject);
@@ -414,7 +414,6 @@ public class ConvertOldTableHandler extends AbstractHandler {
setBaseEnabled(this.oldPapyrusTableInstance != null && this.oldPapyrusTableInstance.size() == 1);
return;
}
- }
}
}
setBaseEnabled(false);
diff --git a/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/.project b/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/.project
new file mode 100644
index 00000000000..09afdd3544b
--- /dev/null
+++ b/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.feature</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.pde.FeatureBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.FeatureNature</nature>
+ </natures>
+</projectDescription>
diff --git a/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/build.properties b/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/build.properties
new file mode 100644
index 00000000000..463be2d773f
--- /dev/null
+++ b/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/build.properties
@@ -0,0 +1,6 @@
+bin.includes = feature.xml,\
+ epl-v10.html,\
+ feature.properties,\
+ license.html
+src.includes = epl-v10.html,\
+ license.html
diff --git a/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/epl-v10.html b/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/epl-v10.html
new file mode 100644
index 00000000000..cb1073a4bad
--- /dev/null
+++ b/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/epl-v10.html
@@ -0,0 +1,304 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+<html xmlns:o="urn:schemas-microsoft-com:office:office"
+xmlns:w="urn:schemas-microsoft-com:office:word"
+xmlns="http://www.w3.org/TR/REC-html40">
+
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<link rel=File-List
+href="./Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml">
+<title>Eclipse Public License - Version 1.0</title>
+<style>
+<!--
+ /* Font Definitions */
+@font-face
+ {
+ panose-1:2 11 6 4 3 5 4 4 2 4;
+ mso-font-charset:0;
+ mso-font-pitch:variable;
+ mso-font-signature:553679495 -2147483648 8 0 66047 0;}
+ /* Style Definitions */
+p.MsoNormal, li.MsoNormal, div.MsoNormal
+ {mso-style-parent:"";
+ margin:0in;
+ margin-bottom:.0001pt;
+ mso-pagination:widow-orphan;
+ font-size:12.0pt;
+ }
+p
+ {margin-right:0in;
+ mso-margin-top-alt:auto;
+ mso-margin-bottom-alt:auto;
+ margin-left:0in;
+ mso-pagination:widow-orphan;
+ font-size:12.0pt;
+ }
+p.BalloonText, li.BalloonText, div.BalloonText
+ {mso-style-name:"Balloon Text";
+ margin:0in;
+ margin-bottom:.0001pt;
+ mso-pagination:widow-orphan;
+ font-size:8.0pt;
+
+ }
+@page Section1
+ {size:8.5in 11.0in;
+ margin:1.0in 1.25in 1.0in 1.25in;
+ mso-header-margin:.5in;
+ mso-footer-margin:.5in;
+ mso-paper-source:0;}
+div.Section1
+ {page:Section1;}
+-->
+</style>
+</head>
+
+<body lang="EN-US" style='tab-interval:.5in'>
+
+<div class=Section1>
+
+<p align=center style='text-align:center'><b>Eclipse Public License - v 1.0</b>
+</p>
+
+<p><span style='font-size:10.0pt'>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER
+THE TERMS OF THIS ECLIPSE PUBLIC LICENSE (&quot;AGREEMENT&quot;). ANY USE,
+REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE
+OF THIS AGREEMENT.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>1. DEFINITIONS</span></b> </p>
+
+<p><span style='font-size:10.0pt'>&quot;Contribution&quot; means:</span> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+in the case of the initial Contributor, the initial code and documentation
+distributed under this Agreement, and<br clear=left>
+b) in the case of each subsequent Contributor:</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
+changes to the Program, and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
+additions to the Program;</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>where
+such changes and/or additions to the Program originate from and are distributed
+by that particular Contributor. A Contribution 'originates' from a Contributor
+if it was added to the Program by such Contributor itself or anyone acting on
+such Contributor's behalf. Contributions do not include additions to the
+Program which: (i) are separate modules of software distributed in conjunction
+with the Program under their own license agreement, and (ii) are not derivative
+works of the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>&quot;Contributor&quot; means any person or
+entity that distributes the Program.</span> </p>
+
+<p><span style='font-size:10.0pt'>&quot;Licensed Patents &quot; mean patent
+claims licensable by a Contributor which are necessarily infringed by the use
+or sale of its Contribution alone or when combined with the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>&quot;Program&quot; means the Contributions
+distributed in accordance with this Agreement.</span> </p>
+
+<p><span style='font-size:10.0pt'>&quot;Recipient&quot; means anyone who
+receives the Program under this Agreement, including all Contributors.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>2. GRANT OF RIGHTS</span></b> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+Subject to the terms of this Agreement, each Contributor hereby grants Recipient
+a non-exclusive, worldwide, royalty-free copyright license to<span
+style='color:red'> </span>reproduce, prepare derivative works of, publicly
+display, publicly perform, distribute and sublicense the Contribution of such
+Contributor, if any, and such derivative works, in source code and object code
+form.</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
+Subject to the terms of this Agreement, each Contributor hereby grants
+Recipient a non-exclusive, worldwide,<span style='color:green'> </span>royalty-free
+patent license under Licensed Patents to make, use, sell, offer to sell, import
+and otherwise transfer the Contribution of such Contributor, if any, in source
+code and object code form. This patent license shall apply to the combination
+of the Contribution and the Program if, at the time the Contribution is added
+by the Contributor, such addition of the Contribution causes such combination
+to be covered by the Licensed Patents. The patent license shall not apply to
+any other combinations which include the Contribution. No hardware per se is
+licensed hereunder. </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>c)
+Recipient understands that although each Contributor grants the licenses to its
+Contributions set forth herein, no assurances are provided by any Contributor
+that the Program does not infringe the patent or other intellectual property
+rights of any other entity. Each Contributor disclaims any liability to Recipient
+for claims brought by any other entity based on infringement of intellectual
+property rights or otherwise. As a condition to exercising the rights and
+licenses granted hereunder, each Recipient hereby assumes sole responsibility
+to secure any other intellectual property rights needed, if any. For example,
+if a third party patent license is required to allow Recipient to distribute
+the Program, it is Recipient's responsibility to acquire that license before
+distributing the Program.</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>d)
+Each Contributor represents that to its knowledge it has sufficient copyright
+rights in its Contribution, if any, to grant the copyright license set forth in
+this Agreement. </span></p>
+
+<p><b><span style='font-size:10.0pt'>3. REQUIREMENTS</span></b> </p>
+
+<p><span style='font-size:10.0pt'>A Contributor may choose to distribute the
+Program in object code form under its own license agreement, provided that:</span>
+</p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+it complies with the terms and conditions of this Agreement; and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
+its license agreement:</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
+effectively disclaims on behalf of all Contributors all warranties and
+conditions, express and implied, including warranties or conditions of title
+and non-infringement, and implied warranties or conditions of merchantability
+and fitness for a particular purpose; </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
+effectively excludes on behalf of all Contributors all liability for damages,
+including direct, indirect, special, incidental and consequential damages, such
+as lost profits; </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iii)
+states that any provisions which differ from this Agreement are offered by that
+Contributor alone and not by any other party; and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iv)
+states that source code for the Program is available from such Contributor, and
+informs licensees how to obtain it in a reasonable manner on or through a
+medium customarily used for software exchange.<span style='color:blue'> </span></span></p>
+
+<p><span style='font-size:10.0pt'>When the Program is made available in source
+code form:</span> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+it must be made available under this Agreement; and </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) a
+copy of this Agreement must be included with each copy of the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>Contributors may not remove or alter any
+copyright notices contained within the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>Each Contributor must identify itself as the
+originator of its Contribution, if any, in a manner that reasonably allows
+subsequent Recipients to identify the originator of the Contribution. </span></p>
+
+<p><b><span style='font-size:10.0pt'>4. COMMERCIAL DISTRIBUTION</span></b> </p>
+
+<p><span style='font-size:10.0pt'>Commercial distributors of software may
+accept certain responsibilities with respect to end users, business partners
+and the like. While this license is intended to facilitate the commercial use
+of the Program, the Contributor who includes the Program in a commercial
+product offering should do so in a manner which does not create potential
+liability for other Contributors. Therefore, if a Contributor includes the
+Program in a commercial product offering, such Contributor (&quot;Commercial
+Contributor&quot;) hereby agrees to defend and indemnify every other
+Contributor (&quot;Indemnified Contributor&quot;) against any losses, damages and
+costs (collectively &quot;Losses&quot;) arising from claims, lawsuits and other
+legal actions brought by a third party against the Indemnified Contributor to
+the extent caused by the acts or omissions of such Commercial Contributor in
+connection with its distribution of the Program in a commercial product
+offering. The obligations in this section do not apply to any claims or Losses
+relating to any actual or alleged intellectual property infringement. In order
+to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
+Contributor in writing of such claim, and b) allow the Commercial Contributor
+to control, and cooperate with the Commercial Contributor in, the defense and
+any related settlement negotiations. The Indemnified Contributor may participate
+in any such claim at its own expense.</span> </p>
+
+<p><span style='font-size:10.0pt'>For example, a Contributor might include the
+Program in a commercial product offering, Product X. That Contributor is then a
+Commercial Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance claims and
+warranties are such Commercial Contributor's responsibility alone. Under this
+section, the Commercial Contributor would have to defend claims against the
+other Contributors related to those performance claims and warranties, and if a
+court requires any other Contributor to pay any damages as a result, the
+Commercial Contributor must pay those damages.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>5. NO WARRANTY</span></b> </p>
+
+<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
+AGREEMENT, THE PROGRAM IS PROVIDED ON AN &quot;AS IS&quot; BASIS, WITHOUT
+WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING,
+WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,
+MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
+responsible for determining the appropriateness of using and distributing the
+Program and assumes all risks associated with its exercise of rights under this
+Agreement , including but not limited to the risks and costs of program errors,
+compliance with applicable laws, damage to or loss of data, programs or
+equipment, and unavailability or interruption of operations. </span></p>
+
+<p><b><span style='font-size:10.0pt'>6. DISCLAIMER OF LIABILITY</span></b> </p>
+
+<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
+AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF
+THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF
+THE POSSIBILITY OF SUCH DAMAGES.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>7. GENERAL</span></b> </p>
+
+<p><span style='font-size:10.0pt'>If any provision of this Agreement is invalid
+or unenforceable under applicable law, it shall not affect the validity or
+enforceability of the remainder of the terms of this Agreement, and without
+further action by the parties hereto, such provision shall be reformed to the
+minimum extent necessary to make such provision valid and enforceable.</span> </p>
+
+<p><span style='font-size:10.0pt'>If Recipient institutes patent litigation
+against any entity (including a cross-claim or counterclaim in a lawsuit)
+alleging that the Program itself (excluding combinations of the Program with
+other software or hardware) infringes such Recipient's patent(s), then such
+Recipient's rights granted under Section 2(b) shall terminate as of the date
+such litigation is filed. </span></p>
+
+<p><span style='font-size:10.0pt'>All Recipient's rights under this Agreement
+shall terminate if it fails to comply with any of the material terms or
+conditions of this Agreement and does not cure such failure in a reasonable
+period of time after becoming aware of such noncompliance. If all Recipient's
+rights under this Agreement terminate, Recipient agrees to cease use and
+distribution of the Program as soon as reasonably practicable. However,
+Recipient's obligations under this Agreement and any licenses granted by
+Recipient relating to the Program shall continue and survive. </span></p>
+
+<p><span style='font-size:10.0pt'>Everyone is permitted to copy and distribute
+copies of this Agreement, but in order to avoid inconsistency the Agreement is
+copyrighted and may only be modified in the following manner. The Agreement
+Steward reserves the right to publish new versions (including revisions) of
+this Agreement from time to time. No one other than the Agreement Steward has
+the right to modify this Agreement. The Eclipse Foundation is the initial
+Agreement Steward. The Eclipse Foundation may assign the responsibility to
+serve as the Agreement Steward to a suitable separate entity. Each new version
+of the Agreement will be given a distinguishing version number. The Program
+(including Contributions) may always be distributed subject to the version of
+the Agreement under which it was received. In addition, after a new version of
+the Agreement is published, Contributor may elect to distribute the Program
+(including its Contributions) under the new version. Except as expressly stated
+in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
+the intellectual property of any Contributor under this Agreement, whether
+expressly, by implication, estoppel or otherwise. All rights in the Program not
+expressly granted under this Agreement are reserved.</span> </p>
+
+<p><span style='font-size:10.0pt'>This Agreement is governed by the laws of the
+State of New York and the intellectual property laws of the United States of
+America. No party to this Agreement will bring a legal action under this
+Agreement more than one year after the cause of action arose. Each party waives
+its rights to a jury trial in any resulting litigation.</span> </p>
+
+<p class=MsoNormal></p>
+
+</div>
+
+</body>
+
+</html> \ No newline at end of file
diff --git a/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/feature.properties b/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/feature.properties
new file mode 100644
index 00000000000..daf98a7bcff
--- /dev/null
+++ b/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/feature.properties
@@ -0,0 +1,139 @@
+# NLS_MESSAGEFORMAT_VAR
+
+# "featureName" property - name of the feature
+featureName=Papyrus Facet (Incubation)
+
+# "providerName" property - name of the company that provides the feature
+providerName=Eclipse Modeling Project
+
+# "licenseURL" property - URL of the "Feature License"
+# do not translate value - just change to point to a locale-specific HTML page
+licenseURL=license.html
+
+# "license" property - text of the "Feature Update License"
+# should be plain text version of license agreement pointed to be "licenseURL"
+license=\
+Eclipse Foundation Software User Agreement\n\
+February 1, 2011\n\
+\n\
+Usage Of Content\n\
+\n\
+THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
+OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
+USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
+AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
+NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
+AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
+AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
+OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
+TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
+OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
+BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
+\n\
+Applicable Licenses\n\
+\n\
+Unless otherwise indicated, all Content made available by the\n\
+Eclipse Foundation is provided to you under the terms and conditions of\n\
+the Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is\n\
+provided with this Content and is also available at http://www.eclipse.org/legal/epl-v10.html.\n\
+For purposes of the EPL, "Program" will mean the Content.\n\
+\n\
+Content includes, but is not limited to, source code, object code,\n\
+documentation and other files maintained in the Eclipse Foundation source code\n\
+repository ("Repository") in software modules ("Modules") and made available\n\
+as downloadable archives ("Downloads").\n\
+\n\
+ - Content may be structured and packaged into modules to facilitate delivering,\n\
+ extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"),\n\
+ plug-in fragments ("Fragments"), and features ("Features").\n\
+ - Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java(TM) ARchive)\n\
+ in a directory named "plugins".\n\
+ - A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.\n\
+ Each Feature may be packaged as a sub-directory in a directory named "features".\n\
+ Within a Feature, files named "feature.xml" may contain a list of the names and version\n\
+ numbers of the Plug-ins and/or Fragments associated with that Feature.\n\
+ - Features may also include other Features ("Included Features"). Within a Feature, files\n\
+ named "feature.xml" may contain a list of the names and version numbers of Included Features.\n\
+\n\
+The terms and conditions governing Plug-ins and Fragments should be\n\
+contained in files named "about.html" ("Abouts"). The terms and\n\
+conditions governing Features and Included Features should be contained\n\
+in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
+Licenses may be located in any directory of a Download or Module\n\
+including, but not limited to the following locations:\n\
+\n\
+ - The top-level (root) directory\n\
+ - Plug-in and Fragment directories\n\
+ - Inside Plug-ins and Fragments packaged as JARs\n\
+ - Sub-directories of the directory named "src" of certain Plug-ins\n\
+ - Feature directories\n\
+\n\
+Note: if a Feature made available by the Eclipse Foundation is installed using the\n\
+Provisioning Technology (as defined below), you must agree to a license ("Feature \n\
+Update License") during the installation process. If the Feature contains\n\
+Included Features, the Feature Update License should either provide you\n\
+with the terms and conditions governing the Included Features or inform\n\
+you where you can locate them. Feature Update Licenses may be found in\n\
+the "license" property of files named "feature.properties" found within a Feature.\n\
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the\n\
+terms and conditions (or references to such terms and conditions) that\n\
+govern your use of the associated Content in that directory.\n\
+\n\
+THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER\n\
+TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
+SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
+\n\
+ - Eclipse Distribution License Version 1.0 (available at http://www.eclipse.org/licenses/edl-v1.0.html)\n\
+ - Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)\n\
+ - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
+ - Apache Software License 2.0 (available at http://www.apache.org/licenses/LICENSE-2.0)\n\
+ - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)\n\
+ - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
+\n\
+IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
+TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License\n\
+is provided, please contact the Eclipse Foundation to determine what terms and conditions\n\
+govern that particular Content.\n\
+\n\
+\n\Use of Provisioning Technology\n\
+\n\
+The Eclipse Foundation makes available provisioning software, examples of which include,\n\
+but are not limited to, p2 and the Eclipse Update Manager ("Provisioning Technology") for\n\
+the purpose of allowing users to install software, documentation, information and/or\n\
+other materials (collectively "Installable Software"). This capability is provided with\n\
+the intent of allowing such users to install, extend and update Eclipse-based products.\n\
+Information about packaging Installable Software is available at\n\
+http://eclipse.org/equinox/p2/repository_packaging.html ("Specification").\n\
+\n\
+You may use Provisioning Technology to allow other parties to install Installable Software.\n\
+You shall be responsible for enabling the applicable license agreements relating to the\n\
+Installable Software to be presented to, and accepted by, the users of the Provisioning Technology\n\
+in accordance with the Specification. By using Provisioning Technology in such a manner and\n\
+making it available in accordance with the Specification, you further acknowledge your\n\
+agreement to, and the acquisition of all necessary rights to permit the following:\n\
+\n\
+ 1. A series of actions may occur ("Provisioning Process") in which a user may execute\n\
+ the Provisioning Technology on a machine ("Target Machine") with the intent of installing,\n\
+ extending or updating the functionality of an Eclipse-based product.\n\
+ 2. During the Provisioning Process, the Provisioning Technology may cause third party\n\
+ Installable Software or a portion thereof to be accessed and copied to the Target Machine.\n\
+ 3. Pursuant to the Specification, you will provide to the user the terms and conditions that\n\
+ govern the use of the Installable Software ("Installable Software Agreement") and such\n\
+ Installable Software Agreement shall be accessed from the Target Machine in accordance\n\
+ with the Specification. Such Installable Software Agreement must inform the user of the\n\
+ terms and conditions that govern the Installable Software and must solicit acceptance by\n\
+ the end user in the manner prescribed in such Installable Software Agreement. Upon such\n\
+ indication of agreement by the user, the provisioning Technology will complete installation\n\
+ of the Installable Software.\n\
+\n\
+Cryptography\n\
+\n\
+Content may contain encryption software. The country in which you are\n\
+currently may have restrictions on the import, possession, and use,\n\
+and/or re-export to another country, of encryption software. BEFORE\n\
+using any encryption software, please check the country's laws,\n\
+regulations and policies concerning the import, possession, or use, and\n\
+re-export of encryption software, to see if this is permitted.\n\
+\n\
+Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.\n
+########### end of license property ##########################################
diff --git a/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/feature.xml b/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/feature.xml
new file mode 100644
index 00000000000..3b38377d590
--- /dev/null
+++ b/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/feature.xml
@@ -0,0 +1,273 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+ id="org.eclipse.papyrus.emf.facet.feature"
+ label="%featureName"
+ version="1.0.0.qualifier"
+ provider-name="%providerName">
+
+ <copyright url="http://www.eclipse.org/legal/epl-v10.html">
+ Copyright (c) 2012 CEA LIST.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License
+v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+ </copyright>
+
+ <license url="%licenseURL">
+ %licenseURL
+ </license>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.common.core"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.common.sdk.core"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.common.ui"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.custom.core"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.custom.metamodel"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.custom.metamodel.edit"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.custom.sdk.core"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.custom.sdk.ui"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.custom.ui"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.efacet"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.efacet.catalog"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.efacet.core"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.efacet.edit"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.efacet.editor"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.efacet.metamodel"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.efacet.metamodel.edit"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.efacet.sdk.ui"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.efacet.ui"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.query.java"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.query.java.core"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.query.java.metamodel"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.query.java.sdk.ui"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.query.ocl.core"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.query.ocl.metamodel"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.util.core"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.util.emf.catalog"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.util.emf.core"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.util.emf.ui"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.util.jface.ui"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.util.pde.core"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.util.swt"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.util.ui"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.widgets"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.widgets.celleditors"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+</feature>
diff --git a/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/license.html b/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/license.html
new file mode 100644
index 00000000000..f19c483b9c8
--- /dev/null
+++ b/features/papyrus-main-features/org.eclipse.papyrus.emf.facet.feature/license.html
@@ -0,0 +1,108 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!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>Eclipse Foundation Software User Agreement</title>
+</head>
+
+<body lang="EN-US">
+<h2>Eclipse Foundation Software User Agreement</h2>
+<p>February 1, 2011</p>
+
+<h3>Usage Of Content</h3>
+
+<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
+ (COLLECTIVELY &quot;CONTENT&quot;). USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS AGREEMENT AND/OR THE TERMS AND
+ CONDITIONS OF LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU AGREE THAT YOUR USE
+ OF THE CONTENT IS GOVERNED BY THIS AGREEMENT AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR
+ NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND
+ CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED BELOW, THEN YOU MAY NOT USE THE CONTENT.</p>
+
+<h3>Applicable Licenses</h3>
+
+<p>Unless otherwise indicated, all Content made available by the Eclipse Foundation is provided to you under the terms and conditions of the Eclipse Public License Version 1.0
+ (&quot;EPL&quot;). A copy of the EPL is provided with this Content and is also available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+ For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse Foundation source code
+ repository (&quot;Repository&quot;) in software modules (&quot;Modules&quot;) and made available as downloadable archives (&quot;Downloads&quot;).</p>
+
+<ul>
+ <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content. Typical modules may include plug-ins (&quot;Plug-ins&quot;), plug-in fragments (&quot;Fragments&quot;), and features (&quot;Features&quot;).</li>
+ <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java&trade; ARchive) in a directory named &quot;plugins&quot;.</li>
+ <li>A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material. Each Feature may be packaged as a sub-directory in a directory named &quot;features&quot;. Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of the Plug-ins
+ and/or Fragments associated with that Feature.</li>
+ <li>Features may also include other Features (&quot;Included Features&quot;). Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version numbers of Included Features.</li>
+</ul>
+
+<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named &quot;about.html&quot; (&quot;Abouts&quot;). The terms and conditions governing Features and
+Included Features should be contained in files named &quot;license.html&quot; (&quot;Feature Licenses&quot;). Abouts and Feature Licenses may be located in any directory of a Download or Module
+including, but not limited to the following locations:</p>
+
+<ul>
+ <li>The top-level (root) directory</li>
+ <li>Plug-in and Fragment directories</li>
+ <li>Inside Plug-ins and Fragments packaged as JARs</li>
+ <li>Sub-directories of the directory named &quot;src&quot; of certain Plug-ins</li>
+ <li>Feature directories</li>
+</ul>
+
+<p>Note: if a Feature made available by the Eclipse Foundation is installed using the Provisioning Technology (as defined below), you must agree to a license (&quot;Feature Update License&quot;) during the
+installation process. If the Feature contains Included Features, the Feature Update License should either provide you with the terms and conditions governing the Included Features or
+inform you where you can locate them. Feature Update Licenses may be found in the &quot;license&quot; property of files named &quot;feature.properties&quot; found within a Feature.
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the terms and conditions (or references to such terms and conditions) that govern your use of the associated Content in
+that directory.</p>
+
+<p>THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS. SOME OF THESE
+OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):</p>
+
+<ul>
+ <li>Eclipse Distribution License Version 1.0 (available at <a href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>)</li>
+ <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
+ <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
+ <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
+ <li>Metro Link Public License 1.00 (available at <a href="http://www.opengroup.org/openmotif/supporters/metrolink/license.html">http://www.opengroup.org/openmotif/supporters/metrolink/license.html</a>)</li>
+ <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
+</ul>
+
+<p>IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License is provided, please
+contact the Eclipse Foundation to determine what terms and conditions govern that particular Content.</p>
+
+
+<h3>Use of Provisioning Technology</h3>
+
+<p>The Eclipse Foundation makes available provisioning software, examples of which include, but are not limited to, p2 and the Eclipse
+ Update Manager (&quot;Provisioning Technology&quot;) for the purpose of allowing users to install software, documentation, information and/or
+ other materials (collectively &quot;Installable Software&quot;). This capability is provided with the intent of allowing such users to
+ install, extend and update Eclipse-based products. Information about packaging Installable Software is available at <a
+ href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
+ (&quot;Specification&quot;).</p>
+
+<p>You may use Provisioning Technology to allow other parties to install Installable Software. You shall be responsible for enabling the
+ applicable license agreements relating to the Installable Software to be presented to, and accepted by, the users of the Provisioning Technology
+ in accordance with the Specification. By using Provisioning Technology in such a manner and making it available in accordance with the
+ Specification, you further acknowledge your agreement to, and the acquisition of all necessary rights to permit the following:</p>
+
+<ol>
+ <li>A series of actions may occur (&quot;Provisioning Process&quot;) in which a user may execute the Provisioning Technology
+ on a machine (&quot;Target Machine&quot;) with the intent of installing, extending or updating the functionality of an Eclipse-based
+ product.</li>
+ <li>During the Provisioning Process, the Provisioning Technology may cause third party Installable Software or a portion thereof to be
+ accessed and copied to the Target Machine.</li>
+ <li>Pursuant to the Specification, you will provide to the user the terms and conditions that govern the use of the Installable
+ Software (&quot;Installable Software Agreement&quot;) and such Installable Software Agreement shall be accessed from the Target
+ Machine in accordance with the Specification. Such Installable Software Agreement must inform the user of the terms and conditions that govern
+ the Installable Software and must solicit acceptance by the end user in the manner prescribed in such Installable Software Agreement. Upon such
+ indication of agreement by the user, the provisioning Technology will complete installation of the Installable Software.</li>
+</ol>
+
+<h3>Cryptography</h3>
+
+<p>Content may contain encryption software. The country in which you are currently may have restrictions on the import, possession, and use, and/or re-export to
+ another country, of encryption software. BEFORE using any encryption software, please check the country's laws, regulations and policies concerning the import,
+ possession, or use, and re-export of encryption software, to see if this is permitted.</p>
+
+<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p>
+</body>
+</html>
diff --git a/features/papyrus-main-features/org.eclipse.papyrus.infra.emf.feature/feature.xml b/features/papyrus-main-features/org.eclipse.papyrus.infra.emf.feature/feature.xml
index f4f8b24cc42..b61c682254c 100644
--- a/features/papyrus-main-features/org.eclipse.papyrus.infra.emf.feature/feature.xml
+++ b/features/papyrus-main-features/org.eclipse.papyrus.infra.emf.feature/feature.xml
@@ -1,11 +1,16 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?><feature id="org.eclipse.papyrus.infra.emf.feature" label="Papyrus Infra EMF (Incubation)" provider-name="Eclipse Modeling Project" version="1.0.0.qualifier">
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+ id="org.eclipse.papyrus.infra.emf.feature"
+ label="Papyrus Infra EMF (Incubation)"
+ version="1.0.0.qualifier"
+ provider-name="Eclipse Modeling Project">
<copyright url="http://www.eclipse.org/legal/epl-v10.html">
- Copyright (c) 2012 CEA LIST
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Eclipse Public License
-v1.0
-which accompanies this distribution, and is available at
+ Copyright (c) 2012 CEA LIST
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License
+v1.0
+which accompanies this distribution, and is available at
http://www.eclipse.org/legal/epl-v10.html
</copyright>
@@ -13,14 +18,32 @@ http://www.eclipse.org/legal/epl-v10.html
%license
</license>
- <plugin download-size="0" id="org.eclipse.papyrus.infra.emf" install-size="0" unpack="false" version="0.0.0"/>
-
- <plugin download-size="0" id="org.eclipse.papyrus.infra.emf.diagram.common" install-size="0" unpack="false" version="0.0.0"/>
-
- <plugin download-size="0" id="org.eclipse.papyrus.infra.emf.appearance" install-size="0" unpack="false" version="0.0.0"/>
-
- <plugin download-size="0" id="org.eclipse.papyrus.infra.emf.readonly" install-size="0" unpack="false" version="0.0.0"/>
-
- <plugin download-size="0" id="org.eclipse.papyrus.infra.emf.facet.queries" install-size="0" unpack="false" version="0.0.0"/>
-
-</feature> \ No newline at end of file
+ <plugin
+ id="org.eclipse.papyrus.infra.emf"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.infra.emf.diagram.common"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.infra.emf.appearance"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.infra.emf.readonly"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+</feature>
diff --git a/features/papyrus-main-features/org.eclipse.papyrus.sdk.feature/feature.xml b/features/papyrus-main-features/org.eclipse.papyrus.sdk.feature/feature.xml
index 00f3e697270..03bfe14d5c5 100644
--- a/features/papyrus-main-features/org.eclipse.papyrus.sdk.feature/feature.xml
+++ b/features/papyrus-main-features/org.eclipse.papyrus.sdk.feature/feature.xml
@@ -40,10 +40,6 @@ http://www.eclipse.org/legal/epl-v10.html
version="0.0.0"/>
<includes
- id="org.eclipse.papyrus.infra.queries.feature"
- version="0.0.0"/>
-
- <includes
id="org.eclipse.papyrus.infra.services.feature"
version="0.0.0"/>
@@ -155,6 +151,10 @@ http://www.eclipse.org/legal/epl-v10.html
id="org.eclipse.papyrus.uml.diagram.css.feature"
version="0.0.0"/>
+ <includes
+ id="org.eclipse.papyrus.emf.facet.feature"
+ version="0.0.0"/>
+
<plugin
id="com.google.guava"
download-size="0"
diff --git a/features/papyrus-main-features/org.eclipse.papyrus.sdk.sources.feature/feature.xml b/features/papyrus-main-features/org.eclipse.papyrus.sdk.sources.feature/feature.xml
index addad57e29e..a526184bdca 100644
--- a/features/papyrus-main-features/org.eclipse.papyrus.sdk.sources.feature/feature.xml
+++ b/features/papyrus-main-features/org.eclipse.papyrus.sdk.sources.feature/feature.xml
@@ -43,11 +43,11 @@ http://www.eclipse.org/legal/epl-v10.html
version="0.0.0"/>
<includes
- id="org.eclipse.papyrus.infra.queries.source.feature"
+ id="org.eclipse.papyrus.infra.services.source.feature"
version="0.0.0"/>
<includes
- id="org.eclipse.papyrus.infra.services.source.feature"
+ id="org.eclipse.papyrus.emf.facet.source.feature"
version="0.0.0"/>
<includes
diff --git a/plugins/customization/org.eclipse.papyrus.customization.palette/META-INF/MANIFEST.MF b/plugins/customization/org.eclipse.papyrus.customization.palette/META-INF/MANIFEST.MF
index 77232378984..aa4ff7c8be7 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.palette/META-INF/MANIFEST.MF
+++ b/plugins/customization/org.eclipse.papyrus.customization.palette/META-INF/MANIFEST.MF
@@ -1,12 +1,6 @@
Manifest-Version: 1.0
Require-Bundle: org.eclipse.pde;bundle-version="3.6.0",
org.eclipse.pde.ui;bundle-version="3.6.0",
- org.eclipse.emf.facet.infra.browser;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.browser.custom;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.facet.core;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.browser.custom.core;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.common.core;bundle-version="0.1.0",
org.eclipse.papyrus.uml.diagram.paletteconfiguration;bundle-version="1.0.0",
org.eclipse.core.runtime;bundle-version="3.8.0",
org.eclipse.papyrus.uml.diagram.common;bundle-version="1.0.0",
@@ -16,7 +10,10 @@ Require-Bundle: org.eclipse.pde;bundle-version="3.6.0",
org.eclipse.papyrus.infra.core.sasheditor;bundle-version="1.0.0",
org.eclipse.uml2.uml;bundle-version="4.0.0",
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.emf;bundle-version="1.0.0"
+ org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0",
+ org.eclipse.papyrus.uml.diagram.common
Export-Package: org.eclipse.papyrus.customization.palette,
org.eclipse.papyrus.customization.palette.dialog,
org.eclipse.papyrus.customization.palette.proxies
diff --git a/plugins/customization/org.eclipse.papyrus.customization.palette/src/org/eclipse/papyrus/customization/palette/dialog/ExtendedPaletteContentPage.java b/plugins/customization/org.eclipse.papyrus.customization.palette/src/org/eclipse/papyrus/customization/palette/dialog/ExtendedPaletteContentPage.java
index 6043daf451d..6f7cafe77a2 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.palette/src/org/eclipse/papyrus/customization/palette/dialog/ExtendedPaletteContentPage.java
+++ b/plugins/customization/org.eclipse.papyrus.customization.palette/src/org/eclipse/papyrus/customization/palette/dialog/ExtendedPaletteContentPage.java
@@ -32,11 +32,6 @@ import org.eclipse.emf.ecore.resource.ResourceSet;
import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
import org.eclipse.emf.ecore.util.EContentAdapter;
import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.facet.infra.browser.custom.MetamodelView;
-import org.eclipse.emf.facet.infra.browser.custom.core.CustomizationsCatalog;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizableModelContentProvider;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizableModelLabelProvider;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizationManager;
import org.eclipse.gef.palette.CombinedTemplateCreationEntry;
import org.eclipse.gef.palette.PaletteContainer;
import org.eclipse.gef.palette.PaletteDrawer;
@@ -64,6 +59,16 @@ import org.eclipse.jface.viewers.Viewer;
import org.eclipse.jface.viewers.ViewerComparator;
import org.eclipse.jface.viewers.ViewerFilter;
import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationCatalogManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationCatalogManagerFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManagerFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.internal.CustomizationCatalogManager;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationcatalogFactory;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.CustomizedLabelProvider;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.CustomizedTreeContentProvider;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.uml.diagram.common.Activator;
import org.eclipse.papyrus.uml.diagram.common.Messages;
import org.eclipse.papyrus.uml.diagram.common.part.PaletteUtil;
@@ -242,7 +247,8 @@ public class ExtendedPaletteContentPage extends WizardPage implements Listener {
private Resource resourceToEdit;
/** customization manager for the content provider */
- private CustomizationManager manager = new CustomizationManager();
+ //TODO: EMFFACET: pb of ResourceSET
+ private ICustomizationManager manager = ICustomizationManagerFactory.DEFAULT.getOrCreateICustomizationManager(new ResourceSetImpl());
/**
@@ -502,14 +508,14 @@ public class ExtendedPaletteContentPage extends WizardPage implements Listener {
if(!(objectToTransfer instanceof IAdaptable)) {
return;
}
- final EObject eobjectToTransfer = (EObject)((IAdaptable)objectToTransfer).getAdapter(EObject.class);
+ final EObject eobjectToTransfer = EMFHelper.getEObject(objectToTransfer);
Object targetObject = ((TreeItem)event.item).getData();
if(!(targetObject instanceof IAdaptable)) {
return;
}
- final EObject targetEObject = (EObject)((IAdaptable)targetObject).getAdapter(EObject.class);
+ final EObject targetEObject =EMFHelper.getEObject(targetObject);
if(targetEObject == null) {
return;
}
@@ -657,7 +663,7 @@ public class ExtendedPaletteContentPage extends WizardPage implements Listener {
if(!(objectToTransfer instanceof IAdaptable)) {
return;
}
- final EObject eobjectToTransfer = (EObject)((IAdaptable)objectToTransfer).getAdapter(EObject.class);
+ final EObject eobjectToTransfer = EMFHelper.getEObject(objectToTransfer);
// handle only first selected element
if(item == null) {
// adding to the root, should only be a drawer
@@ -670,7 +676,7 @@ public class ExtendedPaletteContentPage extends WizardPage implements Listener {
event.detail = DND.DROP_NONE;
return;
}
- final EObject targetEObject = (EObject)((IAdaptable)targetObject).getAdapter(EObject.class);
+ final EObject targetEObject = EMFHelper.getEObject(targetObject);
if(targetEObject == null) {
event.detail = DND.DROP_NONE;
return;
@@ -836,7 +842,7 @@ public class ExtendedPaletteContentPage extends WizardPage implements Listener {
while(it.hasNext()) {
Object o = it.next();
if(o instanceof IAdaptable) {
- EObject eobject = (EObject)((IAdaptable)o).getAdapter(EObject.class);
+ EObject eobject = EMFHelper.getEObject(o);
if(eobject instanceof Configuration) {
PaletteConfigurationUtils.removeConfiguration((Configuration)eobject);
}
@@ -954,7 +960,7 @@ public class ExtendedPaletteContentPage extends WizardPage implements Listener {
} else {
Object object = selection.getFirstElement();
if(object instanceof IAdaptable) {
- EObject eobject = (EObject)((IAdaptable)object).getAdapter(EObject.class);
+ EObject eobject = EMFHelper.getEObject(object);
if(eobject instanceof Configuration) {
return (Configuration)eobject;
}
@@ -1673,7 +1679,7 @@ public class ExtendedPaletteContentPage extends WizardPage implements Listener {
* @see org.eclipse.gef.ui.palette.customize.PaletteLabelProvider </P>
*
*/
- public class ExtendedPaletteLabelProvider extends CustomizableModelLabelProvider {
+ public class ExtendedPaletteLabelProvider extends CustomizedLabelProvider{
/**
* Constructor.
@@ -1722,18 +1728,20 @@ public class ExtendedPaletteContentPage extends WizardPage implements Listener {
/**
* Content Provider for the palette preview
*/
- public class ExtendedPaletteContentProvider extends CustomizableModelContentProvider {
+ public class ExtendedPaletteContentProvider extends CustomizedTreeContentProvider {
/**
* Constructor.
*/
public ExtendedPaletteContentProvider() {
super(manager);
- MetamodelView paletteCustomization = CustomizationsCatalog.getInstance().getCustomization("PaletteConfiguration");
- if(paletteCustomization != null) {
- manager.setShowTypeOfLinks(false);
- manager.registerCustomization(paletteCustomization);
- manager.loadCustomizations();
+ //TODO: EMFFACET refactor this code
+ CustomizationCatalogManager catalogManager=(CustomizationCatalogManager)ICustomizationCatalogManagerFactory.DEFAULT.getOrCreateCustomizationCatalogManager(new ResourceSetImpl());
+ List<Customization> paletteCustomizations =catalogManager.getCustomizationsByName("PaletteConfiguration");
+ if(paletteCustomizations.size()>0) {
+// manager.setShowTypeOfLinks(false);
+// manager.registerCustomization(paletteCustomization);
+// manager.loadCustomizations();
}
}
diff --git a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/.project b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/.project
index 12f5888da2c..e6fc7832d9a 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/.project
+++ b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/.project
@@ -22,7 +22,7 @@
</buildCommand>
</buildSpec>
<natures>
- <nature>org.eclipse.emf.facet.common.ProjectNature</nature>
+ <nature>org.eclipse.papyrus.emf.facet.common.ProjectNature</nature>
<nature>org.eclipse.pde.PluginNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
diff --git a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/META-INF/MANIFEST.MF b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/META-INF/MANIFEST.MF
index a35c8da0004..5429da82ed3 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/META-INF/MANIFEST.MF
+++ b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/META-INF/MANIFEST.MF
@@ -3,10 +3,10 @@ Require-Bundle: org.eclipse.ui;bundle-version="3.7.0",
org.eclipse.core.runtime;bundle-version="3.7.0",
org.eclipse.papyrus.uml.diagram.paletteconfiguration;bundle-version="1.0.0",
org.eclipse.uml2.uml;bundle-version="3.2.0",
- org.eclipse.emf.facet.infra.query.core;bundle-version="0.1.0",
org.eclipse.gmf.runtime.emf.type.core;bundle-version="1.4.0",
org.eclipse.papyrus.infra.extendedtypes;bundle-version="1.0.0",
- org.eclipse.papyrus.uml.diagram.paletteconfiguration.edit;bundle-version="1.0.0"
+ org.eclipse.papyrus.uml.diagram.paletteconfiguration.edit;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.query.java.core;bundle-version="0.4.0"
Export-Package: org.eclipse.papyrus.customization.paletteconfiguration,
org.eclipse.papyrus.customization.paletteconfiguration.queries
Bundle-Vendor: %Bundle-Vendor
diff --git a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/facet/PaletteConfiguration.custom b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/facet/PaletteConfiguration.custom
new file mode 100644
index 00000000000..c7dbdb185a3
--- /dev/null
+++ b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/facet/PaletteConfiguration.custom
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<custom:Customization xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:custom="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:javaQuery="http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation/javaquery" name="PaletteConfiguration">
+ <eClassifiers xsi:type="custom:EClassCustomization" name="PaletteConfiguration" documentation="PaletteConfiguration">
+ <extendedMetaclass href="platform:/plugin/org.eclipse.papyrus.uml.diagram.paletteconfiguration/model/PaletteConfiguration.ecore#//PaletteConfiguration"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="custom:EClassCustomization" name="DrawerConfiguration" documentation="DrawerConfiguration">
+ <extendedMetaclass href="platform:/plugin/org.eclipse.papyrus.uml.diagram.paletteconfiguration/model/PaletteConfiguration.ecore#//DrawerConfiguration"/>
+ <facetOperations name="getDrawerLabel" documentation="Returns the label for a drawer">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/4.0.0/Types#//String"/>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.customization.paletteconfiguration.queries.GetDrawerLabelQuery"/>
+ </facetOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="custom:EClassCustomization" name="Configuration" documentation="Configuration">
+ <extendedMetaclass href="platform:/plugin/org.eclipse.papyrus.uml.diagram.paletteconfiguration/model/PaletteConfiguration.ecore#//Configuration"/>
+ <facetOperations name="hasIcon" lowerBound="1" documentation="Returns true if the element has a specific icon to display">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/4.0.0/Types#//Boolean"/>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.customization.paletteconfiguration.queries.HasIconQuery"/>
+ </facetOperations>
+ <facetOperations name="getIcon" lowerBound="1" documentation="Gets the icon for a configuration element in the palette configuration model">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/4.0.0/Types#//String"/>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.customization.paletteconfiguration.queries.GetIconQuery"/>
+ </facetOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="custom:EClassCustomization" name="ToolConfiguration" documentation="ToolConfiguration">
+ <extendedMetaclass href="platform:/plugin/org.eclipse.papyrus.uml.diagram.paletteconfiguration/model/PaletteConfiguration.ecore#//ToolConfiguration"/>
+ <facetOperations name="getToolLabel" lowerBound="1" documentation="Returns the Label for a tool.">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/4.0.0/Types#//String"/>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.customization.paletteconfiguration.queries.GetToolLabelQuery"/>
+ </facetOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="custom:EClassCustomization" name="StackConfiguration" instanceClassName="" documentation="StackConfiguration">
+ <extendedMetaclass href="platform:/plugin/org.eclipse.papyrus.uml.diagram.paletteconfiguration/model/PaletteConfiguration.ecore#//StackConfiguration"/>
+ </eClassifiers>
+</custom:Customization>
diff --git a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/facet/PaletteConfiguration.facetset b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/facet/PaletteConfiguration.facetset
new file mode 100644
index 00000000000..7e2625417b4
--- /dev/null
+++ b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/facet/PaletteConfiguration.facetset
@@ -0,0 +1,37 @@
+<efacet:FacetSet xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:efacet="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet"
+ xmlns:query="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/query"
+ xmlns:javaQuery2="http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation"
+ xmlns:library="http://www.eclipse.org/papyrus/emf/facet/examples/library/0.2.incubation/library"
+ name="org.eclipse.papyrus.emf.facet.efacet.examples.library.core.facet"
+ documentation="Queries">
+ <eSubpackages xsi:type="efacet:FacetSet" name="PaletteConfiguration" documentation="PaletteConfiguration">
+ <eClassifiers xsi:type="efacet:Facet" name="Configuration" documentation="Configuration">
+ <extendedMetaclass href="http://www.eclipse.org/papyrus/diagram/paletteconfiguration/0.7#//Configuration"/>
+ <facetOperations xsi:type="efacet:FacetOperation" name="hasIcon" lowerBound="1" documentation="Returns true if the element has a specific icon to display" >
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/4.0.0/Types#//Boolean"/>
+ <query xsi:type="javaQuery2:JavaQuery" implementationClassName="org.eclipse.papyrus.customization.paletteconfiguration.queries.HasIconQuery"/>
+ </facetOperations>
+ <facetOperations xsi:type="efacet:FacetOperation" name="getIcon" lowerBound="1" documentation="Gets the icon for a configuration element in the palette configuration model" >
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/4.0.0/Types#//String"/>
+ <query xsi:type="javaQuery2:JavaQuery" implementationClassName="org.eclipse.papyrus.customization.paletteconfiguration.queries.GetIconQuery"/>
+ </facetOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="efacet:Facet" name="ToolConfiguration" documentation="ToolConfiguration">
+ <extendedMetaclass href="http://www.eclipse.org/papyrus/diagram/paletteconfiguration/0.7#//ToolConfiguration"/>
+ <facetOperations xsi:type="efacet:FacetOperation" name="getToolLabel" lowerBound="1" documentation="Returns the Label for a tool." >
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/4.0.0/Types#//String"/>
+ <query xsi:type="javaQuery2:JavaQuery" implementationClassName="org.eclipse.papyrus.customization.paletteconfiguration.queries.GetToolLabelQuery"/>
+ </facetOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="efacet:Facet" name="DrawerConfiguration" documentation="DrawerConfiguration">
+ <extendedMetaclass href="http://www.eclipse.org/papyrus/diagram/paletteconfiguration/0.7#//DrawerConfiguration"/>
+ <facetOperations xsi:type="efacet:FacetOperation" name="getDrawerLabel" documentation="Returns the label for a drawer">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/4.0.0/Types#//String"/>
+ <query xsi:type="javaQuery2:JavaQuery" implementationClassName="org.eclipse.papyrus.customization.paletteconfiguration.queries.GetDrawerLabelQuery"/>
+ </facetOperations>
+ </eClassifiers>
+ </eSubpackages>
+</efacet:FacetSet> \ No newline at end of file
diff --git a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/facet/PaletteConfiguration.querySet b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/facet/PaletteConfiguration.querySet
deleted file mode 100644
index 1b997df9b9f..00000000000
--- a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/facet/PaletteConfiguration.querySet
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<query:ModelQuerySet xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" name="PaletteConfiguration" description="Query Set For Palette Configuration">
- <associatedMetamodels href="http://www.eclipse.org/papyrus/diagram/paletteconfiguration/0.7#/"/>
- <associatedMetamodels href="http://www.eclipse.org/emf/2002/Ecore#/"/>
- <associatedMetamodels href="http://www.eclipse.org/uml2/5.0.0/UML#/"/>
- <associatedMetamodels href="http://www.eclipse.org/uml2/5.0.0/Types#/"/>
- <queries xsi:type="query:JavaModelQuery" name="getIcon" description="Gets the icon for a configuration element in the palette configuration model" implementationClassName="org.eclipse.papyrus.customization.paletteconfiguration.queries.GetIconQuery">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
- <scope href="http://www.eclipse.org/papyrus/diagram/paletteconfiguration/0.7#//Configuration"/>
- </queries>
- <queries xsi:type="query:JavaModelQuery" name="hasIcon" description="Returns &lt;code>true&lt;/code> if the element has a specific icon to display" implementationClassName="org.eclipse.papyrus.customization.paletteconfiguration.queries.HasIconQuery">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//Boolean"/>
- <scope href="http://www.eclipse.org/papyrus/diagram/paletteconfiguration/0.7#//Configuration"/>
- </queries>
- <queries xsi:type="query:JavaModelQuery" name="getToolLabel" description="Returns the Label for a tool." implementationClassName="org.eclipse.papyrus.customization.paletteconfiguration.queries.GetToolLabelQuery">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
- <scope href="http://www.eclipse.org/papyrus/diagram/paletteconfiguration/0.7#//ToolConfiguration"/>
- </queries>
- <queries xsi:type="query:JavaModelQuery" name="getDrawerLabel" description="Returns the label for a drawer" implementationClassName="org.eclipse.papyrus.customization.paletteconfiguration.queries.GetDrawerLabelQuery">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
- <scope href="http://www.eclipse.org/papyrus/diagram/paletteconfiguration/0.7#//DrawerConfiguration"/>
- </queries>
-</query:ModelQuerySet>
diff --git a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/plugin.xml b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/plugin.xml
index 845efa5865c..af18b758795 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/plugin.xml
+++ b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/plugin.xml
@@ -2,10 +2,15 @@
<?eclipse version="3.4"?>
<plugin>
-<extension point="org.eclipse.emf.facet.infra.browser.custom.core.registration">
+<!-- TODO: PAPYRUS EMF-FACET
+<extension point="org.eclipse.papyrus.emf.facet.infra.browser.custom.core.registration">
<browserCustomization file="facet/PaletteConfiguration.uiCustom"/>
</extension>
- <extension point="org.eclipse.emf.facet.infra.query.registration">
+ <extension point="org.eclipse.papyrus.emf.facet.infra.query.registration">
<modelqueryset file="facet/PaletteConfiguration.querySet"/>
</extension>
+ -->
+ <extension point="org.eclipse.papyrus.emf.facet.util.emf.core.modeldeclaration">
+ <modeldeclaration file="facet/PaletteConfiguration.custom"/>
+</extension>
</plugin>
diff --git a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/GetDrawerLabelQuery.java b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/GetDrawerLabelQuery.java
index 5390581b77d..445f31d6b1d 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/GetDrawerLabelQuery.java
+++ b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/GetDrawerLabelQuery.java
@@ -1,14 +1,15 @@
package org.eclipse.papyrus.customization.paletteconfiguration.queries;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
+
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.DrawerConfiguration;
/** Returns the label for a drawer */
-public class GetDrawerLabelQuery implements IJavaModelQuery<DrawerConfiguration, String> {
- public String evaluate(final DrawerConfiguration context, final ParameterValueList parameterValues)
- throws ModelQueryExecutionException {
-
- return (context.getLabel() !=null ? context.getLabel() : "<>");
+public class GetDrawerLabelQuery implements IJavaQuery2<DrawerConfiguration, String> {
+
+ public String evaluate(DrawerConfiguration source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException {
+ return (source.getLabel() !=null ? source.getLabel() : "<>");
}
}
diff --git a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/GetIconQuery.java b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/GetIconQuery.java
index 04d3a70d940..2240764d22f 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/GetIconQuery.java
+++ b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/GetIconQuery.java
@@ -1,22 +1,19 @@
package org.eclipse.papyrus.customization.paletteconfiguration.queries;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.Configuration;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.IconDescriptor;
/** Gets the icon for a configuration element in the palette configuration model */
-public class GetIconQuery implements IJavaModelQuery<Configuration, String> {
-
- /**
- * {@inheritDoc}
- */
- public String evaluate(final Configuration context, final ParameterValueList parameterValues) throws ModelQueryExecutionException {
+public class GetIconQuery implements IJavaQuery2<Configuration, String> {
+ public String evaluate(Configuration source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException {
// retrieves icon descriptor
- IconDescriptor descriptor = context.getIcon();
+ IconDescriptor descriptor = source.getIcon();
if(descriptor == null) {
return "";
}
@@ -29,6 +26,6 @@ public class GetIconQuery implements IJavaModelQuery<Configuration, String> {
}
return "/" + bundleID + iconPath;
-
}
+
}
diff --git a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/GetToolLabelQuery.java b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/GetToolLabelQuery.java
index 3af1d78a2ab..422d537080d 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/GetToolLabelQuery.java
+++ b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/GetToolLabelQuery.java
@@ -13,21 +13,19 @@
*****************************************************************************/
package org.eclipse.papyrus.customization.paletteconfiguration.queries;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.ToolConfiguration;
/** Returns the Label for a tool. */
-public class GetToolLabelQuery implements IJavaModelQuery<ToolConfiguration, String> {
+public class GetToolLabelQuery implements IJavaQuery2<ToolConfiguration, String> {
- /**
- * {@inheritDoc}
- */
- public String evaluate(final ToolConfiguration context, final ParameterValueList parameterValues) throws ModelQueryExecutionException {
+ public String evaluate(ToolConfiguration source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException {
StringBuffer buffer = new StringBuffer();
buffer.append('[');
- switch(context.getKind()) {
+ switch(source.getKind()) {
case CONNECTION_TOOL:
buffer.append("Connection Tool");
break;
@@ -39,42 +37,7 @@ public class GetToolLabelQuery implements IJavaModelQuery<ToolConfiguration, Str
buffer.append(' ');
- buffer.append(context.getLabel());
-
- // // retrieves list of types to create
- // List<IElementType> typesToCreate = new ArrayList<IElementType>();
- // for(ElementDescriptor descriptor : context.getElementDescriptors()) {
- // IElementType type = ExtendedTypesRegistry.getInstance().getType(descriptor.getElementTypeId());
- // if(type != null) {
- // typesToCreate.add(type);
- // }
- // }
- //
- // // filter the list (removes all elements that create the same metaclass, but with different representation. this is caused by standard GMF tooling generation
- // List<IElementType> filteredList = new ArrayList<IElementType>();
- // for(IElementType type : typesToCreate) {
- // boolean toAdd = true;
- // for(IElementType typeInFilteredList : filteredList) {
- // boolean isEquivalent = ElementTypeUtils.isSemanticallyEquivalent(typeInFilteredList, type);
- // if(isEquivalent) {
- // toAdd = false;
- // }
- // }
- //
- // if(toAdd) {
- // filteredList.add(type);
- // }
- // }
- //
- // Iterator<IElementType> it = filteredList.iterator();
- // while(it.hasNext()) {
- // IElementType type = it.next();
- // buffer.append(type.getDisplayName());
- // if(it.hasNext()) {
- // buffer.append(", ");
- // }
- // }
-
+ buffer.append(source.getLabel());
return buffer.toString();
}
}
diff --git a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/HasIconQuery.java b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/HasIconQuery.java
index 77a9cc765fd..bbd4e0b801a 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/HasIconQuery.java
+++ b/plugins/customization/org.eclipse.papyrus.customization.paletteconfiguration/src/org/eclipse/papyrus/customization/paletteconfiguration/queries/HasIconQuery.java
@@ -1,16 +1,17 @@
package org.eclipse.papyrus.customization.paletteconfiguration.queries;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.Configuration;
/** Returns <code>true</code> if the element has a specific icon to display */
-public class HasIconQuery implements IJavaModelQuery<Configuration, Boolean> {
- public Boolean evaluate(final Configuration context, final ParameterValueList parameterValues)
- throws ModelQueryExecutionException {
+public class HasIconQuery implements IJavaQuery2<Configuration, Boolean> {
+
- IJavaModelQuery<Configuration, String> getImageQuery = new GetIconQuery();
- String imagePath = getImageQuery.evaluate(context, parameterValues);
+ public Boolean evaluate(Configuration source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException {
+ IJavaQuery2<Configuration, String> getImageQuery = new GetIconQuery();
+ String imagePath = getImageQuery.evaluate(source, parameterValues, facetManager);
if(imagePath!=null && imagePath.length() > 0) {
return true;
diff --git a/plugins/customization/org.eclipse.papyrus.customization.properties.generation/META-INF/MANIFEST.MF b/plugins/customization/org.eclipse.papyrus.customization.properties.generation/META-INF/MANIFEST.MF
index 3f4e78a1848..9a602a8fd51 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.properties.generation/META-INF/MANIFEST.MF
+++ b/plugins/customization/org.eclipse.papyrus.customization.properties.generation/META-INF/MANIFEST.MF
@@ -26,7 +26,8 @@ Require-Bundle: org.eclipse.ui;bundle-version="3.6.1",
org.eclipse.m2m.qvt.oml.project;bundle-version="3.1.0",
org.eclipse.papyrus.customization.properties;bundle-version="1.0.0",
org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.0"
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0"
Bundle-Vendor: %Bundle-Vendor
Bundle-ActivationPolicy: lazy
Bundle-ClassPath: .,
diff --git a/plugins/customization/org.eclipse.papyrus.customization.properties/META-INF/MANIFEST.MF b/plugins/customization/org.eclipse.papyrus.customization.properties/META-INF/MANIFEST.MF
index e33b065231e..9a12ee424b0 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.properties/META-INF/MANIFEST.MF
+++ b/plugins/customization/org.eclipse.papyrus.customization.properties/META-INF/MANIFEST.MF
@@ -10,18 +10,14 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.papyrus.views.properties.model;bundle-version="1.0.0",
org.eclipse.papyrus.customization.properties.model.xwt;bundle-version="1.0.0",
org.eclipse.emf.ecore.editor;bundle-version="2.6.0",
- org.eclipse.emf.facet.infra.facet.core;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.browser.custom;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.browser.custom.core;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.query.core;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.facet;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.common.core;bundle-version="0.1.0",
org.eclipse.emf.databinding;bundle-version="1.2.0",
org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
org.eclipse.papyrus.infra.constraints;bundle-version="1.0.0",
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0"
+ org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.query.java.core
Export-Package: org.eclipse.papyrus.customization.properties.editor,
org.eclipse.papyrus.customization.properties.modelelement,
org.eclipse.papyrus.customization.properties.providers,
diff --git a/plugins/customization/org.eclipse.papyrus.customization.properties/plugin.xml b/plugins/customization/org.eclipse.papyrus.customization.properties/plugin.xml
index bc2678f43c6..a8cad1d85cb 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.properties/plugin.xml
+++ b/plugins/customization/org.eclipse.papyrus.customization.properties/plugin.xml
@@ -4,6 +4,7 @@
<plugin>
<extension-point id="contextStorage" name="Context Storage Action Providers" schema="schema/contextStorage.exsd"/>
+ <!-- TODO: EMF-FACET update uicustom
<extension point="org.eclipse.emf.facet.infra.browser.custom.core.registration">
<browserCustomization file="UICustom/context.uiCustom" loadByDefault="true">
</browserCustomization>
@@ -22,7 +23,7 @@
<modelqueryset
file="Query/Ui.querySet">
</modelqueryset>
- </extension>
+ </extension-->
<extension point="org.eclipse.ui.editors">
<editor class="org.eclipse.papyrus.customization.properties.editor.UIEditor" contributorClass="org.eclipse.papyrus.customization.properties.editor.ContextEditorActionBarContributor" default="true" extensions="ctx" icon="platform:/plugin/org.eclipse.papyrus.views.properties.model.edit/icons/full/obj16/Context.gif" id="org.eclipse.papyrus.customization.properties.UIEditor" name="%editor.name">
</editor>
diff --git a/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/Activator.java b/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/Activator.java
index 620ed14c49f..a5723962a19 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/Activator.java
+++ b/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/Activator.java
@@ -11,15 +11,11 @@
*****************************************************************************/
package org.eclipse.papyrus.customization.properties;
-import java.util.List;
-
import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.emf.facet.infra.browser.custom.MetamodelView;
-import org.eclipse.emf.facet.infra.browser.custom.core.CustomizationsCatalog;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizationManager;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
import org.eclipse.jface.resource.ImageRegistry;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManagerFactory;
import org.eclipse.papyrus.infra.core.log.LogHelper;
import org.eclipse.swt.graphics.Image;
import org.eclipse.ui.plugin.AbstractUIPlugin;
@@ -51,7 +47,7 @@ public class Activator extends AbstractUIPlugin {
*/
public static LogHelper log;
- private CustomizationManager fCustomizationManager;
+ private ICustomizationManager fCustomizationManager;
@Override
public void start(final BundleContext context) throws Exception {
@@ -79,38 +75,38 @@ public class Activator extends AbstractUIPlugin {
*
* @return the customization manager in charge to adapt element in modisco
*/
- public CustomizationManager getCustomizationManager() {
+ public ICustomizationManager getCustomizationManager() {
if(this.fCustomizationManager == null) {
- this.fCustomizationManager = new CustomizationManager();
+ this.fCustomizationManager = ICustomizationManagerFactory.DEFAULT.getOrCreateICustomizationManager(new ResourceSetImpl());
init(this.fCustomizationManager);
}
return this.fCustomizationManager;
}
- private void init(final CustomizationManager customizationManager) {
- customizationManager.setShowContainer(false);
- customizationManager.setShowDerivedLinks(true);
- customizationManager.setShowEmptyLinks(true);
-
- try {
- List<MetamodelView> registryDefaultCustomizations = CustomizationsCatalog.getInstance().getRegistryDefaultCustomizations();
- for(MetamodelView metamodelView : registryDefaultCustomizations) {
- //FIXME: One of the default uiCustom files in Papyrus has a side effect to call resolveAll on the resource set. While this is generally not a problem in Papyrus,
- //it becomes critical with the properties view customization, as the resource set contains hundreds of proxies to xwt files (Which are really expensive to load)
- //It seems that this uiCustom query cannot be easily fixed, so we disable it in this context.
- //The query which tries to (indirectly) resolve all: org.eclipse.papyrus.infra.gmfdiag.modelexplorer.queries.IsDiagramContainer
- //Used by: PapyrusNotationFacet.querySet -> PapyrusNotationFacet.uiCustom
- if("PapyrusNotationFacet".equals(metamodelView.getName())) {
- continue; //Disable this specific uiCustom
- }
-
- customizationManager.registerCustomization(metamodelView);
- }
-
- customizationManager.loadCustomizations();
- } catch (Throwable e) {
- Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Error initializing customizations", e)); //$NON-NLS-1$
- }
+ private void init(final ICustomizationManager customizationManager) {
+// customizationManager.setShowContainer(false);
+// customizationManager.setShowDerivedLinks(true);
+// customizationManager.setShowEmptyLinks(true);
+//
+// try {
+// List<MetamodelView> registryDefaultCustomizations = CustomizationsCatalog.getInstance().getRegistryDefaultCustomizations();
+// for(MetamodelView metamodelView : registryDefaultCustomizations) {
+// //FIXME: One of the default uiCustom files in Papyrus has a side effect to call resolveAll on the resource set. While this is generally not a problem in Papyrus,
+// //it becomes critical with the properties view customization, as the resource set contains hundreds of proxies to xwt files (Which are really expensive to load)
+// //It seems that this uiCustom query cannot be easily fixed, so we disable it in this context.
+// //The query which tries to (indirectly) resolve all: org.eclipse.papyrus.infra.gmfdiag.modelexplorer.queries.IsDiagramContainer
+// //Used by: PapyrusNotationFacet.querySet -> PapyrusNotationFacet.uiCustom
+// if("PapyrusNotationFacet".equals(metamodelView.getName())) {
+// continue; //Disable this specific uiCustom
+// }
+//
+// customizationManager.registerCustomization(metamodelView);
+// }
+//
+// customizationManager.loadCustomizations();
+// } catch (Throwable e) {
+// Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Error initializing customizations", e)); //$NON-NLS-1$
+// }
}
/**
diff --git a/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/editor/UIEditor.java b/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/editor/UIEditor.java
index a4ce4f09e3d..19ea7e7e636 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/editor/UIEditor.java
+++ b/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/editor/UIEditor.java
@@ -141,7 +141,7 @@ public class UIEditor extends EcoreEditor implements ITabbedPropertySheetPageCon
selectionViewer.setFilters(new ViewerFilter[]{ filter });
setCurrentViewer(selectionViewer);
ContextContentProvider contentProvider = new ContextContentProvider();
- contentProvider.getCustomizationManager().installCustomPainter(tree);
+ //contentProvider.getCustomizationManager().installCustomPainter(tree);
ILabelProvider labelProvider = new ContextLabelProvider();
diff --git a/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/editor/preview/Preview.java b/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/editor/preview/Preview.java
index c742198472d..8e4b5d1ec8b 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/editor/preview/Preview.java
+++ b/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/editor/preview/Preview.java
@@ -31,7 +31,8 @@ import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.core.runtime.IPath;
import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.facet.infra.browser.uicore.internal.model.ITreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement;
import org.eclipse.jface.viewers.ISelectionChangedListener;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.viewers.SelectionChangedEvent;
@@ -435,8 +436,8 @@ public class Preview extends ViewPart implements ISelectionChangedListener, IPar
public void selectionChanged(SelectionChangedEvent event) {
IStructuredSelection selection = (IStructuredSelection)event.getSelection();
if(selection.size() == 1) {
- ITreeElement child = null;
- ITreeElement element = (ITreeElement)selection.getFirstElement();
+ EObjectTreeElement child = null;
+ EObjectTreeElement element = (EObjectTreeElement)selection.getFirstElement();
do {
@@ -449,7 +450,10 @@ public class Preview extends ViewPart implements ISelectionChangedListener, IPar
}
child = element;
- element = element.getTreeParent();
+ EStructuralFeatureTreeElement elementFeature = element.getParent();
+ if( elementFeature.getParent()!=null){
+ element=elementFeature.getParent();
+ }
} while(child != element && element != null);
}
}
diff --git a/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/modelelement/GenericAttributeModelElement.java b/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/modelelement/GenericAttributeModelElement.java
index f7832c1e141..b5e124cca1e 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/modelelement/GenericAttributeModelElement.java
+++ b/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/modelelement/GenericAttributeModelElement.java
@@ -22,15 +22,16 @@ import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.ecore.EcorePackage;
import org.eclipse.emf.edit.domain.EditingDomain;
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
-import org.eclipse.emf.facet.infra.query.ModelQuery;
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.papyrus.infra.constraints.ConfigProperty;
import org.eclipse.papyrus.infra.core.services.ServiceException;
import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForResource;
import org.eclipse.papyrus.infra.services.labelprovider.service.LabelProviderService;
import org.eclipse.papyrus.infra.widgets.providers.AbstractStaticContentProvider;
import org.eclipse.papyrus.infra.widgets.providers.IStaticContentProvider;
import org.eclipse.papyrus.views.properties.modelelement.AbstractModelElement;
+import org.eclipse.papyrus.views.properties.ui.WidgetAttribute;
/**
* XWT relies a lot on reflectivity, as it is based on an XML syntax.
@@ -114,7 +115,7 @@ public class GenericAttributeModelElement extends AbstractModelElement {
Iterator<EObject> iterator = result.iterator();
while(iterator.hasNext()) {
EObject eObject = iterator.next();
- if(!(eObject instanceof ModelQuery)) {
+ if(!(eObject instanceof org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query)) {
iterator.remove();
}
}
diff --git a/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/providers/ContextContentProvider.java b/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/providers/ContextContentProvider.java
index 4b9d461fa83..266657ed104 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/providers/ContextContentProvider.java
+++ b/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/providers/ContextContentProvider.java
@@ -16,8 +16,8 @@ import java.util.Set;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizableModelContentProvider;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.CustomizedTreeContentProvider;
import org.eclipse.papyrus.customization.properties.Activator;
import org.eclipse.papyrus.views.properties.contexts.Context;
import org.eclipse.papyrus.views.properties.util.PropertiesUtil;
@@ -28,9 +28,9 @@ import org.eclipse.papyrus.views.properties.util.PropertiesUtil;
*
* @author Camille Letavernier
*/
-public class ContextContentProvider extends CustomizableModelContentProvider {
+public class ContextContentProvider extends CustomizedTreeContentProvider {
- private CustomizationManager customizationManager = Activator.getDefault().getCustomizationManager();
+ private ICustomizationManager customizationManager = Activator.getDefault().getCustomizationManager();
/**
* Constructor.
@@ -42,7 +42,7 @@ public class ContextContentProvider extends CustomizableModelContentProvider {
/**
* @return the CustomizationManager used by this Content provider
*/
- public CustomizationManager getCustomizationManager() {
+ public ICustomizationManager getCustomizationManager() {
return customizationManager;
}
diff --git a/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/providers/ContextLabelProvider.java b/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/providers/ContextLabelProvider.java
index 49c1eb543d2..b2c8fdfe800 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/providers/ContextLabelProvider.java
+++ b/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/providers/ContextLabelProvider.java
@@ -11,16 +11,12 @@
*****************************************************************************/
package org.eclipse.papyrus.customization.properties.providers;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizableModelLabelProvider;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizationManager;
-import org.eclipse.emf.facet.infra.browser.uicore.internal.AppearanceConfiguration;
-import org.eclipse.emf.facet.infra.browser.uicore.internal.model.ITreeElement;
-import org.eclipse.emf.facet.infra.browser.uicore.internal.model.ModelElementItem;
import org.eclipse.papyrus.customization.properties.Activator;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.DecoratingCustomizedLabelProvider;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.ResolvingCustomizedLabelProvider;
import org.eclipse.swt.graphics.Image;
/**
@@ -29,38 +25,41 @@ import org.eclipse.swt.graphics.Image;
*
* @author Camille Letavernier
*/
-public class ContextLabelProvider extends CustomizableModelLabelProvider {
+public class ContextLabelProvider extends ResolvingCustomizedLabelProvider {
- private CustomizationManager customizationManager;
+ private ICustomizationManager customizationManager;
/**
* Constructor.
*/
public ContextLabelProvider() {
- super(Activator.getDefault().getCustomizationManager());
+ super(new DecoratingCustomizedLabelProvider(Activator.getDefault().getCustomizationManager()));
}
@Override
public String getText(Object element) {
- if(!(element instanceof ITreeElement) && element instanceof EObject) {
+ if(!(element instanceof EObjectTreeElement) && element instanceof EObject) {
try {
- Method method = CustomizationManager.class.getDeclaredMethod("getAppearanceConfiguration");//$NON-NLS-1$
- method.setAccessible(true);
- AppearanceConfiguration result = (AppearanceConfiguration)method.invoke(Activator.getDefault().getCustomizationManager());
- ITreeElement treeElement = new ModelElementItem((EObject)element, null, result);
- String text = super.getText(treeElement);
+// Method method = CustomizationManager.class.getDeclaredMethod("getAppearanceConfiguration");//$NON-NLS-1$
+// method.setAccessible(true);
+// AppearanceConfiguration result = (AppearanceConfiguration)method.invoke(Activator.getDefault().getCustomizationManager());
+// ITreeElement treeElement = new ModelElementItem((EObject)element, null, result);
+
+ //Customized label provider can be applied directly on element non useful to create a EObjectTreeElement
+ String text = super.getText(element);
return text;
} catch (SecurityException ex) {
Activator.log.error(ex);
- } catch (NoSuchMethodException ex) {
- Activator.log.error(ex);
- } catch (IllegalArgumentException ex) {
- Activator.log.error(ex);
- } catch (IllegalAccessException ex) {
- Activator.log.error(ex);
- } catch (InvocationTargetException ex) {
- Activator.log.error(ex);
}
+// catch (NoSuchMethodException ex) {
+// Activator.log.error(ex);
+// } catch (IllegalArgumentException ex) {
+// Activator.log.error(ex);
+// } catch (IllegalAccessException ex) {
+// Activator.log.error(ex);
+// } catch (InvocationTargetException ex) {
+// Activator.log.error(ex);
+// }
}
if(element != null) {
return super.getText(element);
@@ -71,25 +70,28 @@ public class ContextLabelProvider extends CustomizableModelLabelProvider {
@Override
public Image getImage(Object element) {
- if(!(element instanceof ITreeElement) && element instanceof EObject) {
+ if(!(element instanceof EObjectTreeElement) && element instanceof EObject) {
try {
- Method method = CustomizationManager.class.getDeclaredMethod("getAppearanceConfiguration");//$NON-NLS-1$
- method.setAccessible(true);
- AppearanceConfiguration result = (AppearanceConfiguration)method.invoke(Activator.getDefault().getCustomizationManager());
- ITreeElement treeElement = new ModelElementItem((EObject)element, null, result);
- Image image = super.getImage(treeElement);
+// Method method = CustomizationManager.class.getDeclaredMethod("getAppearanceConfiguration");//$NON-NLS-1$
+// method.setAccessible(true);
+// AppearanceConfiguration result = (AppearanceConfiguration)method.invoke(Activator.getDefault().getCustomizationManager());
+// ITreeElement treeElement = new ModelElementItem((EObject)element, null, result);
+
+ //Customized label provider can be applied directly on element non useful to create a EObjectTreeElement
+ Image image = super.getImage(element);
return image;
} catch (SecurityException ex) {
Activator.log.error(ex);
- } catch (NoSuchMethodException ex) {
- Activator.log.error(ex);
- } catch (IllegalArgumentException ex) {
- Activator.log.error(ex);
- } catch (IllegalAccessException ex) {
- Activator.log.error(ex);
- } catch (InvocationTargetException ex) {
- Activator.log.error(ex);
}
+// catch (NoSuchMethodException ex) {
+// Activator.log.error(ex);
+// } catch (IllegalArgumentException ex) {
+// Activator.log.error(ex);
+// } catch (IllegalAccessException ex) {
+// Activator.log.error(ex);
+// } catch (InvocationTargetException ex) {
+// Activator.log.error(ex);
+// }
}
return super.getImage(element);
}
diff --git a/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/query/ShowContextQuery.java b/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/query/ShowContextQuery.java
index eac96cf0e1f..af53248b091 100644
--- a/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/query/ShowContextQuery.java
+++ b/plugins/customization/org.eclipse.papyrus.customization.properties/src/org/eclipse/papyrus/customization/properties/query/ShowContextQuery.java
@@ -11,10 +11,11 @@
*****************************************************************************/
package org.eclipse.papyrus.customization.properties.query;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
import org.eclipse.papyrus.customization.properties.editor.actions.ToggleDataContextAction;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
import org.eclipse.papyrus.views.properties.contexts.Context;
/**
@@ -22,9 +23,11 @@ import org.eclipse.papyrus.views.properties.contexts.Context;
*
* @author Camille Letavernier
*/
-public class ShowContextQuery implements IJavaModelQuery<Context, Boolean> {
+public class ShowContextQuery implements IJavaQuery2<Context, Boolean> {
- public Boolean evaluate(Context context, ParameterValueList parameters) throws ModelQueryExecutionException {
+
+ @Override
+ public Boolean evaluate(Context source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException {
Boolean result = ToggleDataContextAction.showDataContext;
return result;
}
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/.classpath b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/.classpath
new file mode 100644
index 00000000000..0a91e8e9ef8
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src/"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/.project b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/.project
new file mode 100644
index 00000000000..3f30cbe9422
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.custom.doc</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/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/META-INF/MANIFEST.MF b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..f2b36992adf
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/META-INF/MANIFEST.MF
@@ -0,0 +1,100 @@
+Manifest-Version: 1.0
+Build-Jdk: 1.6.0_27
+Bundle-ActivationPolicy: lazy
+Bundle-Vendor: %Bundle-Vendor
+Bundle-Name: %Bundle-Name
+Built-By: hudsonbuild
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.custom.doc;singleton:=true
+Require-Bundle: org.eclipse.core.runtime
+Archiver-Version: Plexus Archiver
+Created-By: Apache Maven
+Bundle-Version: 1.0.0.qualifier
+Bundle-ManifestVersion: 2
+
+Name: img/EClassAndFacetCustomizationMetaclasses.png
+SHA1-Digest: KT/9/5377DWv4iHFubpVpN20MO0=
+
+Name: mediawiki/plugin_dev-toc.xml
+SHA1-Digest: EytCw4aqp43EeifY60VasqvtrkQ=
+
+Name: OSGI-INF/l10n/bundle.properties
+SHA1-Digest: jcQC/e7346kZV/NkOrNhYJWUYFI=
+
+Name: mediawiki/plugin_dev.mediawiki
+SHA1-Digest: h1iG9G8dkESwlZ0kGpmC5YEinWE=
+
+Name: mediawiki/user-toc.xml
+SHA1-Digest: hoU8eezblOWf4BkqVNeYXXMCqow=
+
+Name: mediawiki/user.mediawiki
+SHA1-Digest: o2wKLH3th9aHaruxqbK+MxLJe+0=
+
+Name: img/bottomLeftOverlay.png
+SHA1-Digest: dJWbqgt8rfj3KXhfR4aRkMHoXCs=
+
+Name: img/CustomizedEObject.png
+SHA1-Digest: +nOdCJco88LpRtJYdLFgslm6cHE=
+
+Name: img/customizationWithOverride.png
+SHA1-Digest: FgaEwaChv4KhPkEQn00NERWfcnY=
+
+Name: img/LoadCustomizationsDialog.png
+SHA1-Digest: BsfRPTHJdmKxztMo2vOJC96KQ+g=
+
+Name: toc-user.xml
+SHA1-Digest: nJDwOHTLVShDaAKcYawrKvTFWhs=
+
+Name: plugin.xml
+SHA1-Digest: 5KUarOJ2rgoOl2RXSpuXKl5RgXI=
+
+Name: META-INF/maven/org.eclipse.emft/org.eclipse.papyrus.emf.facet.custom.doc
+ /pom.properties
+SHA1-Digest: 7/zxAz8zdWAeaTVdcE0Lf9CIq4Q=
+
+Name: META-INF/eclipse.inf
+SHA1-Digest: 09gN05tobgS/MdtqyTNQhOhB73M=
+
+Name: img/ETypedElementSwitchQuery.png
+SHA1-Digest: GGyk2KU3Vw6bM5xBSiDWW5LsTBs=
+
+Name: img/bottomRightOverlay.png
+SHA1-Digest: FA4uzJfZENFYwDw0N2EHoCn2c58=
+
+Name: img/CustomizationMetaclass.png
+SHA1-Digest: clfdviinwTyac0+0ISFY13VU5wE=
+
+Name: META-INF/maven/org.eclipse.emft/org.eclipse.papyrus.emf.facet.custom.doc
+ /pom.xml
+SHA1-Digest: 4aJXr5iQjP41tAR9kOZMqLkEn8s=
+
+Name: about.html
+SHA1-Digest: ucbJ2JQyMW17Zy+4pyWJhaS7Sws=
+
+Name: img/topMiddleOverlay.png
+SHA1-Digest: X6CxDIPYy5403NFB0Ojf6Y2s+mQ=
+
+Name: img/customizingFacetWithOverride.png
+SHA1-Digest: EI0DY9KPSRa/fo7Dy94AJTLi6Ww=
+
+Name: mediawiki/user.html
+SHA1-Digest: I3KO0mCYrlOaNRjtRszW3QjwNTQ=
+
+Name: mediawiki/plugin_dev.html
+SHA1-Digest: GytCJgSKFsygnG72KFrdK9NsPTQ=
+
+Name: img/topRightOverlay.png
+SHA1-Digest: RlZCXmpdKj+spQh2HnCjd0nxSmc=
+
+Name: img/LibraryModelInModelBrowser.png
+SHA1-Digest: XmOqZc578G4zTkNwsJZE4ezX1+4=
+
+Name: toc-dev.xml
+SHA1-Digest: 55pxFgCOz/vpnN/huBuMMQE5MtI=
+
+Name: img/topLeftOverlay.png
+SHA1-Digest: jBVSn/vyk1D+ENgZXtuTq70lQlM=
+
+Name: img/bottomMiddleOverlay.png
+SHA1-Digest: KW+VnZzQw+o1q1QXrXgXNv+78fc=
+Bundle-Activator: activator
+
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/META-INF/eclipse.inf b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/META-INF/eclipse.inf
new file mode 100644
index 00000000000..92ffed2421c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/META-INF/eclipse.inf
@@ -0,0 +1,2 @@
+#Processed using Jarprocessor
+pack200.conditioned = true
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc/pom.properties b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc/pom.properties
new file mode 100644
index 00000000000..26095aea76b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc/pom.properties
@@ -0,0 +1,5 @@
+#Generated by Maven
+#Mon Aug 19 04:53:27 EDT 2013
+version=0.4.0-SNAPSHOT
+groupId=org.eclipse.emft
+artifactId=org.eclipse.papyrus.emf.facet.custom.doc
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc/pom.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc/pom.xml
new file mode 100644
index 00000000000..e92842c099e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.doc/pom.xml
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns:m2="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ 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>
+ <artifactId>org.eclipse.papyrus.emf.facet.build</artifactId>
+ <groupId>org.eclipse.emft</groupId>
+ <version>0.4.0</version>
+ <relativePath>../../</relativePath>
+ </parent>
+ <groupId>org.eclipse.emft</groupId>
+ <artifactId>org.eclipse.papyrus.emf.facet.custom.doc</artifactId>
+ <version>0.4.0-SNAPSHOT</version>
+ <packaging>eclipse-plugin</packaging>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <version>2.7</version>
+ <executions>
+ <execution>
+ <id>copy</id>
+ <phase>initialize</phase>
+ <goals>
+ <goal>copy</goal>
+ </goals>
+ <configuration>
+ <artifactItems>
+ <artifactItem>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.4</version>
+ <overWrite>false</overWrite>
+ </artifactItem>
+ </artifactItems>
+ <outputDirectory>${project.build.directory}/downloads</outputDirectory>
+ <overWriteReleases>false</overWriteReleases>
+ <overWriteSnapshots>true</overWriteSnapshots>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <version>1.7</version>
+ <executions>
+ <execution>
+ <id>generate-doc</id>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <target>
+ <ant antfile="/opt/users/hudsonbuild/workspace/emffacet-nightly/org.eclipse.papyrus.emf.facet.releng.tycho.util/doc.build.xml"
+ target="all"
+ inheritRefs="true">
+ <property name="org.eclipse.papyrus.emf.facet.releng.tycho.util.doc.build.downloads"
+ value="${project.build.directory}/downloads"/>
+ </ant>
+ </target>
+ </configuration>
+ </execution>
+ </executions>
+ <dependencies>
+ <dependency>
+ <groupId>net.sf.saxon</groupId>
+ <artifactId>saxon</artifactId>
+ <version>8.7</version>
+ </dependency>
+ <dependency>
+ <groupId>ant-contrib</groupId>
+ <artifactId>ant-contrib</artifactId>
+ <version>1.0b3</version>
+ <exclusions>
+ <exclusion>
+ <groupId>ant</groupId>
+ <artifactId>ant</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.ant</groupId>
+ <artifactId>ant</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.4</version>
+ </dependency>
+ </dependencies>
+ </plugin>
+ </plugins>
+ </build>
+</project> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/OSGI-INF/l10n/bundle.properties b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..2d31aa16229
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,13 @@
+###############################################################################
+# Copyright (c) 2012 CEA LIST.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - Bug 375789 - Documentation
+###############################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.custom.doc
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Customization Documentation (Incubation)
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/about.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/about.html
new file mode 100644
index 00000000000..3019b95b9cf
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/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>December 22, 2008</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/build.properties b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/build.properties
new file mode 100644
index 00000000000..7a1c7bdf405
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/build.properties
@@ -0,0 +1,9 @@
+source.. = src/
+bin.includes = META-INF/,\
+ img/,\
+ about.html,\
+ plugin.xml,\
+ mediawiki/,\
+ toc-dev.xml,\
+ OSGI-INF/,\
+ toc-user.xml
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/CustomizationMetaclass.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/CustomizationMetaclass.png
new file mode 100644
index 00000000000..fe4a74e1d7e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/CustomizationMetaclass.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/CustomizedEObject.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/CustomizedEObject.png
new file mode 100644
index 00000000000..79760b1990c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/CustomizedEObject.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/EClassAndFacetCustomizationMetaclasses.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/EClassAndFacetCustomizationMetaclasses.png
new file mode 100644
index 00000000000..3a8392f1f42
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/EClassAndFacetCustomizationMetaclasses.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/ETypedElementSwitchQuery.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/ETypedElementSwitchQuery.png
new file mode 100644
index 00000000000..4324dd4a751
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/ETypedElementSwitchQuery.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/LibraryModelInModelBrowser.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/LibraryModelInModelBrowser.png
new file mode 100644
index 00000000000..3b88e3ff353
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/LibraryModelInModelBrowser.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/LoadCustomizationsDialog.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/LoadCustomizationsDialog.png
new file mode 100644
index 00000000000..3f523080f68
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/LoadCustomizationsDialog.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/bottomLeftOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/bottomLeftOverlay.png
new file mode 100644
index 00000000000..9d8ef47410f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/bottomLeftOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/bottomMiddleOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/bottomMiddleOverlay.png
new file mode 100644
index 00000000000..b058dec118f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/bottomMiddleOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/bottomRightOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/bottomRightOverlay.png
new file mode 100644
index 00000000000..8c53d11c1d0
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/bottomRightOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/customizationWithOverride.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/customizationWithOverride.png
new file mode 100644
index 00000000000..1b64c193f36
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/customizationWithOverride.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/customizingFacetWithOverride.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/customizingFacetWithOverride.png
new file mode 100644
index 00000000000..0930f1e6503
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/customizingFacetWithOverride.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/topLeftOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/topLeftOverlay.png
new file mode 100644
index 00000000000..bea1eaaabe2
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/topLeftOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/topMiddleOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/topMiddleOverlay.png
new file mode 100644
index 00000000000..c093897946a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/topMiddleOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/topRightOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/topRightOverlay.png
new file mode 100644
index 00000000000..3df5f727bf2
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/img/topRightOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/plugin_dev-toc.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/plugin_dev-toc.xml
new file mode 100644
index 00000000000..bc252ce1948
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/plugin_dev-toc.xml
@@ -0,0 +1,4 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<toc topic="mediawiki/plugin_dev.html" label="plugin_dev">
+ <topic href="mediawiki/plugin_dev.html" label="Customization selection dialog"></topic>
+</toc> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/plugin_dev.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/plugin_dev.html
new file mode 100644
index 00000000000..f941ccb211d
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/plugin_dev.html
@@ -0,0 +1,37 @@
+<?xml version='1.0' encoding='utf-8' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+ <title>plugin_dev</title>
+ </head>
+ <body>
+ <h2 id="Customization_selection_dialog">Customization selection dialog</h2>
+ <p>EMF Facet provides a customization selection dialog:</p>
+ <p>
+ <img border="0" src="../img/LoadCustomizationsDialog.png"/>
+ </p>
+ <p>To open this dialog to let the user select customizations, use <code>ILoadCustomizationsDialogFactory#createLoadCustomizationDialog</code> from the plug-in
+ <b>org.eclipse.papyrus.emf.facet.custom.ui</b>. For example:
+ </p>
+ <pre>
+ILoadCustomizationsDialogListener callback = new ILoadCustomizationsDialogListener() {
+ public void okPressed(List&lt;Customization&gt; selection) {
+ // do something with the selection
+ }
+};
+ILoadCustomizationsDialog dialog = ILoadCustomizationsDialogFactory.DEFAULT.createLoadCustomizationDialog(
+ getShell(), availableCustomizations, initiallySelectedCustomizations, callback);
+dialog.open();
+</pre>
+ <p><font size="-2">
+ Copyright &#169; 2012 Mia-Software.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+
+ <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+ Contributors: Nicolas Bros (Mia-Software)
+</font>
+ </p>
+ </body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/plugin_dev.mediawiki b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/plugin_dev.mediawiki
new file mode 100644
index 00000000000..40541782a1e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/plugin_dev.mediawiki
@@ -0,0 +1,27 @@
+== Customization selection dialog ==
+
+EMF Facet provides a customization selection dialog:
+
+[[Image:../img/LoadCustomizationsDialog.png]]
+
+To open this dialog to let the user select customizations, use <code>ILoadCustomizationsDialogFactory#createLoadCustomizationDialog</code> from the plug-in '''org.eclipse.papyrus.emf.facet.custom.ui'''. For example:
+
+<pre>
+ILoadCustomizationsDialogListener callback = new ILoadCustomizationsDialogListener() {
+ public void okPressed(List<Customization> selection) {
+ // do something with the selection
+ }
+};
+ILoadCustomizationsDialog dialog = ILoadCustomizationsDialogFactory.DEFAULT.createLoadCustomizationDialog(
+ getShell(), availableCustomizations, initiallySelectedCustomizations, callback);
+dialog.open();
+</pre>
+
+<font size="-2">
+Copyright (c) 2012 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html.
+Contributors: Nicolas Bros (Mia-Software)
+</font> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/user-toc.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/user-toc.xml
new file mode 100644
index 00000000000..ea95cc8ab3c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/user-toc.xml
@@ -0,0 +1,28 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<toc topic="mediawiki/user.html" label="user">
+ <topic href="mediawiki/user.html" label="Description"></topic>
+ <topic href="mediawiki/user.html#Customization_Metamodel" label="Customization Metamodel">
+ <topic href="mediawiki/user.html#customizations" label="customizations"></topic>
+ <topic href="mediawiki/user.html#customizable_features" label="customizable features"></topic>
+ <topic href="mediawiki/user.html#customization_override" label="customization override">
+ <topic href="mediawiki/user.html#customizing_an_EClass" label="customizing an EClass"></topic>
+ <topic href="mediawiki/user.html#customizing_a_Facet" label="customizing a Facet"></topic>
+ </topic>
+ <topic href="mediawiki/user.html#customizing_structural_features" label="customizing structural features"></topic>
+ <topic href="mediawiki/user.html#conditional_customization" label="conditional customization"></topic>
+ <topic href="mediawiki/user.html#customization_cases" label="customization cases"></topic>
+ </topic>
+ <topic href="mediawiki/user.html#Example" label="Example"></topic>
+ <topic href="mediawiki/user.html#Default_Customizations" label="Default Customizations">
+ <topic href="mediawiki/user.html#label" label="label"></topic>
+ <topic href="mediawiki/user.html#image" label="image"></topic>
+ <topic href="mediawiki/user.html#color" label="color"></topic>
+ <topic href="mediawiki/user.html#font" label="font"></topic>
+ <topic href="mediawiki/user.html#overlay" label="overlay"></topic>
+ <topic href="mediawiki/user.html#obtaining_customization_properties" label="obtaining customization properties"></topic>
+ </topic>
+ <topic href="mediawiki/user.html#Registration" label="Registration"></topic>
+ <topic href="mediawiki/user.html#Catalog" label="Catalog"></topic>
+ <topic href="mediawiki/user.html#Customization_Manager" label="Customization Manager"></topic>
+ <topic href="mediawiki/user.html#Customized_Providers" label="Customized Providers"></topic>
+</toc> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/user.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/user.html
new file mode 100644
index 00000000000..2a58b872fe8
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/user.html
@@ -0,0 +1,445 @@
+<?xml version='1.0' encoding='utf-8' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+ <title>user</title>
+ </head>
+ <body>
+ <p><h1>Table of Contents</h1></p>
+ <ol style="list-style: none;">
+ <li>
+ <a href="#Description">Description</a>
+ </li>
+ <li>
+ <a href="#Customization_Metamodel">Customization Metamodel</a>
+ <ol style="list-style: none;">
+ <li>
+ <a href="#customizations">customizations</a>
+ </li>
+ <li>
+ <a href="#customizable_features">customizable features</a>
+ </li>
+ <li>
+ <a href="#customization_override">customization override</a>
+ <ol style="list-style: none;">
+ <li>
+ <a href="#customizing_an_EClass">customizing an EClass</a>
+ </li>
+ <li>
+ <a href="#customizing_a_Facet">customizing a Facet</a>
+ </li>
+ </ol>
+ </li>
+ <li>
+ <a href="#customizing_structural_features">customizing structural features</a>
+ </li>
+ <li>
+ <a href="#conditional_customization">conditional customization</a>
+ </li>
+ <li>
+ <a href="#customization_cases">customization cases</a>
+ </li>
+ </ol>
+ </li>
+ <li>
+ <a href="#Example">Example</a>
+ </li>
+ <li>
+ <a href="#Default_Customizations">Default Customizations</a>
+ <ol style="list-style: none;">
+ <li>
+ <a href="#label">label</a>
+ </li>
+ <li>
+ <a href="#image">image</a>
+ </li>
+ <li>
+ <a href="#color">color</a>
+ </li>
+ <li>
+ <a href="#font">font</a>
+ </li>
+ <li>
+ <a href="#overlay">overlay</a>
+ </li>
+ <li>
+ <a href="#obtaining_customization_properties">obtaining customization properties</a>
+ </li>
+ </ol>
+ </li>
+ <li>
+ <a href="#Registration">Registration</a>
+ </li>
+ <li>
+ <a href="#Catalog">Catalog</a>
+ </li>
+ <li>
+ <a href="#Customization_Manager">Customization Manager</a>
+ </li>
+ <li>
+ <a href="#Customized_Providers">Customized Providers</a>
+ </li>
+ </ol>
+ <p>EMF Facet provides a
+ <b>customization</b> component, that can be used to define the appearance of model elements when viewed in an editor or view that supports this customization mechanism.
+ </p>
+ <h2 id="Description">Description</h2>
+ <p>A customization is defined in a model that conforms to the EMF Facet customization metamodel. This model is saved in a file with the ".custom" file extension.</p>
+ <h2 id="Customization_Metamodel">Customization Metamodel</h2>
+ <h3 id="customizations">customizations</h3>
+ <p>A
+ <b>Customization</b> is a
+ <b>FacetSet</b>:
+ </p>
+ <p>
+ <img border="0" src="../img/CustomizationMetaclass.png"/>
+ </p>
+ <p>A
+ <b>Customization</b> can contain customizations for Ecore metaclasses (
+ <b>EClassCustomization</b>), or Facets (
+ <b>FacetCustomization</b>). Both
+ <b>EClassCustomization</b> and
+ <b>FacetCustomization</b> are Facets.
+ </p>
+ <p>The
+ <b>extendedMetaclass</b> of an
+ <b>EClassCustomization</b> is the EClass whose instances will be customized.
+ </p>
+ <p>The
+ <b>extendedFacet</b> of an
+ <b>EClassCustomization</b> or
+ <b>FacetCustomization</b> is the Facet that defines the customizable features (label, color, etc.) that will be customized.
+ </p>
+ <p>In case of facet customization, the
+ <b>customizedFacet</b> of a
+ <b>FacetCustomization</b> is the Facet for which model elements that conform to this Facet will be customized.
+ </p>
+ <p>
+ <img border="0" src="../img/EClassAndFacetCustomizationMetaclasses.png"/>
+ </p>
+ <h3 id="customizable_features">customizable features</h3>
+ <p>Customizable features are defined in Facets as FacetOperations. For example, this FacetSet defines basic customizable features such as label, icon, etc.: <code>platform:/plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet</code></p>
+ <p>The following instance diagram shows how a Facet named
+ <b>CustomizedEObject</b> is defined in
+ <i>customproperties.efacet</i>. Its
+ <b>extendedMetaclass</b> is
+ <b>EObject</b>, so it can be used to customize any model element. It contains
+ <b>FacetOperations</b> (of which only two are represented here). These FacetOperations define the customizable features: here the
+ <b>label</b> and
+ <b>image</b> for a model element. The type of each of these FacetOperations is the customized feature's type : an
+ <b>EString</b> for the label and an
+ <b>Image</b> for the image.
+ </p>
+ <p>
+ <img border="0" src="../img/CustomizedEObject.png"/>
+ </p>
+ <p>The operation is called each time the value of its customization is needed. For example, when displaying a model element in a viewer, we will need its label. So the
+ <b>label</b> operation will be called on the model element for which the label is needed.
+ </p>
+ <h3 id="customization_override">customization override</h3>
+ <p>A FacetOperation that defines a customizable feature such as label, icon, color, font, etc. can be compared to a virtual method: it is meant to be overridden in extending Facets in order to provide a specific customization.</p>
+ <p>To understand this override mechanism, remember that a
+ <b>EClassCustomization</b> and
+ <b>FacetCustomization</b> are
+ <b>Facets</b> (the
+ <b>EClassCustomization</b> and
+ <b>FacetCustomization</b> metaclasses extend the
+ <b>Facet</b> metaclass).
+ </p>
+ <h4 id="customizing_an_EClass">customizing an EClass</h4>
+ <p>To create a customization for instances of an
+ <b>EClass</b>:
+ </p>
+ <ul>
+ <li>create an
+ <b>EClassCustomization</b>
+ </li>
+ <li>the new
+ <b>EClassCustomization</b>'s
+ <b>extendedMetaclass</b> is the
+ <b>EClass</b> whose instances you want to customize
+ </li>
+ <li>the new
+ <b>EClassCustomization</b>'s
+ <b>extendedFacet</b> is the Facet that defines the customizable feature you want to customize (i.e. the label, color, font,...)
+ </li>
+ <li>you create a
+ <b>FacetOperation</b> in your
+ <b>EClassCustomization</b> for each customizable feature you want to customize
+ </li>
+ <li>each of these
+ <b>FacetOperations</b>
+ <b>overrides</b> the
+ <b>FacetOperation</b> (from the
+ <b>extendedFacet</b>) corresponding to the customizable feature you want to customize
+ </li>
+ <li>the overriding FacetOperation and the overridden FacetOperation must have the same type</li>
+ <li>finally, you provide an implementation for your overriding
+ <b>FacetOperation</b>, by the means of a
+ <b>Query</b> that will return the value of the customization when this Query is evaluated on an instance of the
+ <b>extendedMetaclass</b>
+ </li>
+ </ul>
+ <p>In the following example, we customize the label of instances of the
+ <b>Writer</b> metaclass from a library metamodel (defined in
+ <i>library.ecore</i>). For this, we create an
+ <b>EClassCustomization</b> which extends the
+ <b>CustomizedEObject</b> Facet. This
+ <b>CustomizedEObject</b> Facet provides the customizable feature
+ <b>label</b> which we want to customize. So, we create a FacetOperation (in our EClassCustomization) which overrides the
+ <b>label</b> FacetOperation (in CustomizedEObject). Finally, we choose to provide the label using a Java query, so we create a JavaQuery under our label FacetOperation's
+ <b>query</b> reference. We set this JavaQuery's
+ <b>implementationClassName</b> to the full qualified name of a Java class that implements the query and returns the label corresponding to a Writer instance passed as a
+ <b>source</b> to this query.
+ </p>
+ <p>
+ <img border="0" src="../img/customizationWithOverride.png"/>
+ </p>
+ <h4 id="customizing_a_Facet">customizing a Facet</h4>
+ <p>To create a customization for model elements that conform to a
+ <b>Facet</b>:
+ </p>
+ <ul>
+ <li>create a
+ <b>FacetCustomization</b>
+ </li>
+ <li>the new
+ <b>FacetCustomization</b>'s
+ <b>extendedFacet</b> is the
+ <b>Facet</b> whose conforming elements you want to customize
+ </li>
+ <li>you create a
+ <b>FacetOperation</b> in your
+ <b>FacetCustomization</b> for each customizable feature (label, font, color, etc.) you want to customize
+ </li>
+ <li>each of these
+ <b>FacetOperations</b>
+ <b>overrides</b> the
+ <b>FacetOperation</b> corresponding to the customizable feature you want to customize
+ </li>
+ <li>the overriding FacetOperation and the overridden FacetOperation must have the same type</li>
+ <li>finally, you provide an implementation for your overriding
+ <b>FacetOperation</b>, by the means of a
+ <b>Query</b> that will return the value of the customization when this Query is evaluated on a model element that conforms to the
+ <b>extendedFacet</b>
+ </li>
+ </ul>
+ <p>In the following example, we want to add an overlay icon on elements that conform to the
+ <b>UnproductiveWriter</b> metaclass from the library FacetSet (defined in
+ <i>library.efacet</i>). For this, we create an
+ <b>FacetCustomization</b> which extends the
+ <b>UnproductiveWriter</b> Facet. We create a FacetOperation (in our FacetCustomization) which overrides the
+ <b>bottomRightOverlay</b> FacetOperation that allows adding an overlay icon in the bottom right corner of an element's main icon. Finally, we provide the overlay icon using a query. This query will be evaluated with instances of
+ <b>Writer</b> that conform to the
+ <b>UnproductiveWriter</b> Facet, and will return the overlay icon.
+ </p>
+ <p>
+ <img border="0" src="../img/customizingFacetWithOverride.png"/>
+ </p>
+ <h3 id="customizing_structural_features">customizing structural features</h3>
+ <p>Each FacetOperation that defines a customizable feature has a parameter named
+ <b>eStructuralFeature</b>. This parameter is useful for customizing the structural feature corresponding to a single model element. For example, in the following screenshot, a
+ <b>Library</b> model element contains
+ <b>Writers</b> through a structural feature named
+ <b>writers</b>. If we want to customize this
+ <b>writers</b> structural feature in the context of its parent
+ <b>Library</b>, then we need both the
+ <b>Library</b> model element and the
+ <b>writers</b> feature. In this case, the FacetOperation would be called on the
+ <b>Library</b> model element, and the value of the
+ <b>eStructuralFeature</b> parameter would be the
+ <b>writers</b> feature.
+ </p>
+ <p>
+ <img border="0" src="../img/LibraryModelInModelBrowser.png"/>
+ </p>
+ <h3 id="conditional_customization">conditional customization</h3>
+ <p>To specify that a customization should only be applied to elements that satisfy certain criteria, you have two choices:</p>
+ <ul>
+ <li>Either customize a Facet that applies to elements you want to customize. This is the preferred way.</li>
+ <li>Customize an EClass and set the
+ <b>conformanceTypedElement</b> of the customization to a boolean attribute (
+ <b>EAttribute</b> or
+ <b>FacetAttribute</b>) that returns whether the customization should be applied on the attribute's source element.
+ </li>
+ </ul>
+ <h3 id="customization_cases">customization cases</h3>
+ <p>To handle several cases in a customization (to return different values for a single customized feature depending on boolean conditions), you can implement the customized
+ <b>FacetOperation</b> with an
+ <b>ETypedElementSwitchQuery</b>. This type of query returns the value corresponding to the first of its cases that evaluates to
+ <b>true</b>.
+ </p>
+ <p>
+ <img border="0" src="../img/ETypedElementSwitchQuery.png"/>
+ </p>
+ <h2 id="Example">Example</h2>
+ <p>Since there is no dedicated UI tooling as yet for editing customizations, you will have to use either a generic model editor or write the XMI by hand for now. Here is an example of a customization model in the XMI format. This example defines a customization for the
+ <b>Writer</b> metaclass, that customizes the label for
+ <b>Writer</b> model elements. And a second customization that customizes the
+ <b>UnproductiveWriter</b> Facet, to add an overlay to the icon of model elements that conform to the
+ <b>UnproductiveWriter</b> Facet.
+ </p>
+ <pre>
+&lt;custom:Customization
+ xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:custom="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:efacet="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet"
+ xmlns:javaQuery2="http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation"
+ name="org.eclipse.papyrus.emf.facet.efacet.examples.library.core.custom"&gt;
+
+ &lt;eClassifiers xsi:type="custom:EClassCustomization"&gt;
+ &lt;extendedMetaclass href="http://www.eclipse.org/papyrus/emf/facet/examples/library/0.2.incubation/library#//Writer"/&gt;
+ &lt;extendedFacets href="platform:/plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject"/&gt;
+ &lt;facetOperations xsi:type="efacet:FacetOperation" name="label" lowerBound="1"&gt;
+ &lt;eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/&gt;
+ &lt;query xsi:type="javaQuery2:JavaQuery" implementationClassName="org.eclipse.papyrus.emf.facet.efacet.examples.library.core.internal.queries.WriterLabel"/&gt;
+ &lt;override xsi:type="efacet:FacetOperation" href="platform:/plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/label"/&gt;
+ &lt;eParameters xsi:type="ecore:EParameter" name="eStructuralFeature"&gt;
+ &lt;eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature"/&gt;
+ &lt;/eParameters&gt;
+ &lt;/facetOperations&gt;
+ &lt;/eClassifiers&gt;
+
+ &lt;eClassifiers xsi:type="custom:FacetCustomization"&gt;
+ &lt;extendedFacets href="platform:/plugin/org.eclipse.papyrus.emf.facet.efacet.examples.library.core/library.efacet#//writer/UnproductiveWriter"/&gt;
+ &lt;facetOperations xsi:type="efacet:FacetOperation" name="bottomRightOverlay" lowerBound="1"&gt;
+ &lt;eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/&gt;
+ &lt;query xsi:type="javaQuery2:JavaQuery" implementationClassName="org.eclipse.papyrus.emf.facet.efacet.examples.library.core.internal.queries.UnproductiveWriterOverlay"/&gt;
+ &lt;override xsi:type="efacet:FacetOperation" href="platform:/plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/bottomRightOverlay"/&gt;
+ &lt;eParameters xsi:type="ecore:EParameter" name="eStructuralFeature"&gt;
+ &lt;eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature"/&gt;
+ &lt;/eParameters&gt;
+ &lt;/facetOperations&gt;
+ &lt;/eClassifiers&gt;
+&lt;/custom:Customization&gt;
+</pre>
+ <h2 id="Default_Customizations">Default Customizations</h2>
+ <h3 id="label">label</h3>
+ <p>The text displayed for a model element can be customized with the
+ <b>label</b> customization defined on CustomizedEObject.
+ </p>
+ <h3 id="image">image</h3>
+ <p>The icon that appears before the text for a model element can be customized with the
+ <b>image</b> customization defined on CustomizedEObject.
+ </p>
+ <h3 id="color">color</h3>
+ <p>Both the text color (
+ <b>foreground</b>) and background color (
+ <b>background</b>) can be customized.
+ </p>
+ <h3 id="font">font</h3>
+ <p>The following font-related properties are defined on CustomizedEObject and can be customized:</p>
+ <ul>
+ <li>fontName</li>
+ <li>fontSize</li>
+ <li>isBold</li>
+ <li>isItalic</li>
+ <li>isUnderlined</li>
+ <li>isStruckthrough</li>
+ </ul>
+ <h3 id="overlay">overlay</h3>
+ <p>In addition to the main icon displayed for a model element, up to six additional
+ <i>overlay</i> icons can be displayed in the corners of the main icon. The following image depicts the position of each overlay relative to the main icon:
+ </p>
+ <table style="text-align: center; border-style: solid; border-width: 2px; border-color: #000">
+ <tr>
+ <td>
+ <img border="0" src="../img/topLeftOverlay.png"/>
+ </td>
+ <td>
+ <img border="0" src="../img/topMiddleOverlay.png"/>
+ </td>
+ <td>
+ <img border="0" src="../img/topRightOverlay.png"/>
+ </td>
+ </tr>
+ <tr>
+ <td>topLeftOverlay</td>
+ <td>topMiddleOverlay</td>
+ <td>topRightOverlay</td>
+ </tr>
+ <tr>
+ <td>
+ <img border="0" src="../img/bottomLeftOverlay.png"/>
+ </td>
+ <td>
+ <img border="0" src="../img/bottomMiddleOverlay.png"/>
+ </td>
+ <td>
+ <img border="0" src="../img/bottomRightOverlay.png"/>
+ </td>
+ </tr>
+ <tr>
+ <td>bottomLeftOverlay</td>
+ <td>bottomMiddleOverlay</td>
+ <td>bottomRightOverlay</td>
+ </tr>
+ </table>
+ <p>Overlays should be defined on Facets (using a
+ <b>FacetCustomization</b>). You will get a warning if you define an overlay on an EClass (with
+ <b>EClassCustomization</b>). This warning may be disabled in the preferences, in section
+ <b>Model Validation &gt; Constraints</b> : check or uncheck
+ <b>EMF Facet Custom Model Validation &gt; Avoid EClass Overlay</b>.
+ </p>
+ <h3 id="obtaining_customization_properties">obtaining customization properties</h3>
+ <p>The default customization properties defined in EMF Facet can be obtained from the following set of interfaces:</p>
+ <ul>
+ <li>IContentPropertiesHandler (instantiate through IContentPropertiesHandlerFactory)</li>
+ <li>ISelectionPropertiesHandler (instantiate through ISelectionPropertiesHandlerFactory)</li>
+ </ul>
+ <h2 id="Registration">Registration</h2>
+ <p>To make a customization available at runtime in the customization catalog, you must register it with extension point
+ <b>org.eclipse.papyrus.emf.facet.util.emf.core.modeldeclaration</b>, like this:
+ </p>
+ <pre>
+&lt;extension point="org.eclipse.papyrus.emf.facet.util.emf.core.modeldeclaration"&gt;
+ &lt;modeldeclaration file="myCustomization.custom"/&gt;
+&lt;/extension&gt;
+Also, your ".custom" file must be included in your plug-in's build.properties in order to be available in deployed plug-ins.
+</pre>
+ <h2 id="Catalog">Catalog</h2>
+ <p>Customizations that have been
+ <a href="#Registration">registered</a> are available from the customization catalog.
+ For example, if you want to retrieve the list of all registered customizations:
+ </p>
+ <pre>
+ICustomizationCatalogManager customCatalog = ICustomizationCatalogManagerFactory.DEFAULT
+ .getOrCreateCustomizationCatalogManager(new ResourceSetImpl());
+List&lt;Customization&gt; allCustomizations = customCatalog.getRegisteredCustomizations();
+</pre>
+ <p>Then you can for example look for a customization with a given name in the previous list:</p>
+ <pre>
+Customization myCustom = CustomizationUtils.getCustomization(allCustomizations, "MyCustomization");
+</pre>
+ <h2 id="Customization_Manager">Customization Manager</h2>
+ <p>The customization manager is used to manipulate customizations. To obtain an instance of the CustomizationManager, you must ask the customization manager factory:</p>
+ <pre>
+ICustomizationManager customManager = ICustomizationManagerFactory.DEFAULT.getOrCreateICustomizationManager(resourceSet);
+</pre>
+ <p>The resourceSet parameter must be the same ResourceSet that was used to instantiate a customization catalog manager in <code>ICustomizationCatalogManagerFactory#getOrCreateCustomizationCatalogManager</code>. </p>
+ <p>The customization manager provides these important methods:</p>
+ <ul>
+ <li>getManagedCustomizations() : returns a modifiable list of customizations managed by this customization manager. For example, to add a customization: <code>customManager.getManagedCustomizations().add(custom);</code></li>
+ <li>getCustomValueOf(EObject, FacetOperation, Class) : evaluates a customization property on a given object, and returns the result. The class parameter is used to typecheck the result and return a value of the correct type. For example: <code>Boolean result = customManager.getCustomValueOf(eObject, aBooleanProperty, Boolean.class);</code></li>
+ </ul>
+ <h2 id="Customized_Providers">Customized Providers</h2>
+ <p>You don't always have to interact with the customization manager directly though: when you want to evaluate a standard customization property (label, image, visibility, etc.), you can use a customized label or content provider supplied by EMF Facet:</p>
+ <ul>
+ <li>ICustomizedLabelProvider (instantiate through ICustomizedLabelProviderFactory or IResolvingCustomizedLabelProviderFactory)</li>
+ <li>ICustomizedTreeContentProvider (instantiate through ICustomizedContentProviderFactory)</li>
+ </ul>
+ <p><font size="-2">
+ Copyright &#169; 2012 Mia-Software.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+
+ <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+ Contributors: Nicolas Bros (Mia-Software) ; Laurent Pichierri (Soft-Maint) - Bug 375789 - Documentation
+</font>
+ </p>
+ </body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/user.mediawiki b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/user.mediawiki
new file mode 100644
index 00000000000..739c452d975
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/user.mediawiki
@@ -0,0 +1,224 @@
+<h1>Table of Contents</h1>
+__TOC__
+
+EMF Facet provides a '''customization''' component, that can be used to define the appearance of model elements when viewed in an editor or view that supports this customization mechanism.
+
+== Description ==
+A customization is defined in a model that conforms to the EMF Facet customization metamodel. This model is saved in a file with the ".custom" file extension.
+
+== Customization Metamodel ==
+
+=== customizations ===
+
+A '''Customization''' is a '''FacetSet''':
+
+[[Image:../img/CustomizationMetaclass.png]]
+
+A '''Customization''' can contain customizations for Ecore metaclasses ('''EClassCustomization'''), or Facets ('''FacetCustomization'''). Both '''EClassCustomization''' and '''FacetCustomization''' are Facets.
+
+The '''extendedMetaclass''' of an '''EClassCustomization''' is the EClass whose instances will be customized.
+
+The '''extendedFacet''' of an '''EClassCustomization''' or '''FacetCustomization''' is the Facet that defines the customizable features (label, color, etc.) that will be customized.
+
+In case of facet customization, the '''customizedFacet''' of a '''FacetCustomization''' is the Facet for which model elements that conform to this Facet will be customized.
+
+[[Image:../img/EClassAndFacetCustomizationMetaclasses.png]]
+
+=== customizable features ===
+
+Customizable features are defined in Facets as FacetOperations. For example, this FacetSet defines basic customizable features such as label, icon, etc.: <code>platform:/plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet</code>
+
+The following instance diagram shows how a Facet named '''CustomizedEObject''' is defined in ''customproperties.efacet''. Its '''extendedMetaclass''' is '''EObject''', so it can be used to customize any model element. It contains '''FacetOperations''' (of which only two are represented here). These FacetOperations define the customizable features: here the '''label''' and '''image''' for a model element. The type of each of these FacetOperations is the customized feature's type : an '''EString''' for the label and an '''Image''' for the image.
+
+[[Image:../img/CustomizedEObject.png]]
+
+The operation is called each time the value of its customization is needed. For example, when displaying a model element in a viewer, we will need its label. So the '''label''' operation will be called on the model element for which the label is needed.
+
+=== customization override ===
+A FacetOperation that defines a customizable feature such as label, icon, color, font, etc. can be compared to a virtual method: it is meant to be overridden in extending Facets in order to provide a specific customization.
+
+To understand this override mechanism, remember that a '''EClassCustomization''' and '''FacetCustomization''' are '''Facets''' (the '''EClassCustomization''' and '''FacetCustomization''' metaclasses extend the '''Facet''' metaclass).
+
+==== customizing an EClass ====
+
+To create a customization for instances of an '''EClass''':
+* create an '''EClassCustomization'''
+* the new '''EClassCustomization''''s '''extendedMetaclass''' is the '''EClass''' whose instances you want to customize
+* the new '''EClassCustomization''''s '''extendedFacet''' is the Facet that defines the customizable feature you want to customize (i.e. the label, color, font,...)
+* you create a '''FacetOperation''' in your '''EClassCustomization''' for each customizable feature you want to customize
+* each of these '''FacetOperations''' '''overrides''' the '''FacetOperation''' (from the '''extendedFacet''') corresponding to the customizable feature you want to customize
+* the overriding FacetOperation and the overridden FacetOperation must have the same type
+* finally, you provide an implementation for your overriding '''FacetOperation''', by the means of a '''Query''' that will return the value of the customization when this Query is evaluated on an instance of the '''extendedMetaclass'''
+
+In the following example, we customize the label of instances of the '''Writer''' metaclass from a library metamodel (defined in ''library.ecore''). For this, we create an '''EClassCustomization''' which extends the '''CustomizedEObject''' Facet. This '''CustomizedEObject''' Facet provides the customizable feature '''label''' which we want to customize. So, we create a FacetOperation (in our EClassCustomization) which overrides the '''label''' FacetOperation (in CustomizedEObject). Finally, we choose to provide the label using a Java query, so we create a JavaQuery under our label FacetOperation's '''query''' reference. We set this JavaQuery's '''implementationClassName''' to the full qualified name of a Java class that implements the query and returns the label corresponding to a Writer instance passed as a '''source''' to this query.
+
+[[Image:../img/customizationWithOverride.png]]
+
+==== customizing a Facet ====
+
+To create a customization for model elements that conform to a '''Facet''':
+* create a '''FacetCustomization'''
+* the new '''FacetCustomization''''s '''extendedFacet''' is the '''Facet''' whose conforming elements you want to customize
+* you create a '''FacetOperation''' in your '''FacetCustomization''' for each customizable feature (label, font, color, etc.) you want to customize
+* each of these '''FacetOperations''' '''overrides''' the '''FacetOperation''' corresponding to the customizable feature you want to customize
+* the overriding FacetOperation and the overridden FacetOperation must have the same type
+* finally, you provide an implementation for your overriding '''FacetOperation''', by the means of a '''Query''' that will return the value of the customization when this Query is evaluated on a model element that conforms to the '''extendedFacet'''
+
+In the following example, we want to add an overlay icon on elements that conform to the '''UnproductiveWriter''' metaclass from the library FacetSet (defined in ''library.efacet''). For this, we create an '''FacetCustomization''' which extends the '''UnproductiveWriter''' Facet. We create a FacetOperation (in our FacetCustomization) which overrides the '''bottomRightOverlay''' FacetOperation that allows adding an overlay icon in the bottom right corner of an element's main icon. Finally, we provide the overlay icon using a query. This query will be evaluated with instances of '''Writer''' that conform to the '''UnproductiveWriter''' Facet, and will return the overlay icon.
+
+[[Image:../img/customizingFacetWithOverride.png]]
+
+=== customizing structural features ===
+
+Each FacetOperation that defines a customizable feature has a parameter named '''eStructuralFeature'''. This parameter is useful for customizing the structural feature corresponding to a single model element. For example, in the following screenshot, a '''Library''' model element contains '''Writers''' through a structural feature named '''writers'''. If we want to customize this '''writers''' structural feature in the context of its parent '''Library''', then we need both the '''Library''' model element and the '''writers''' feature. In this case, the FacetOperation would be called on the '''Library''' model element, and the value of the '''eStructuralFeature''' parameter would be the '''writers''' feature.
+
+[[Image:../img/LibraryModelInModelBrowser.png]]
+
+=== conditional customization ===
+
+To specify that a customization should only be applied to elements that satisfy certain criteria, you have two choices:
+* Either customize a Facet that applies to elements you want to customize. This is the preferred way.
+* Customize an EClass and set the '''conformanceTypedElement''' of the customization to a boolean attribute ('''EAttribute''' or '''FacetAttribute''') that returns whether the customization should be applied on the attribute's source element.
+
+=== customization cases ===
+
+To handle several cases in a customization (to return different values for a single customized feature depending on boolean conditions), you can implement the customized '''FacetOperation''' with an '''ETypedElementSwitchQuery'''. This type of query returns the value corresponding to the first of its cases that evaluates to '''true'''.
+
+[[Image:../img/ETypedElementSwitchQuery.png]]
+
+
+== Example ==
+Since there is no dedicated UI tooling as yet for editing customizations, you will have to use either a generic model editor or write the XMI by hand for now. Here is an example of a customization model in the XMI format. This example defines a customization for the '''Writer''' metaclass, that customizes the label for '''Writer''' model elements. And a second customization that customizes the '''UnproductiveWriter''' Facet, to add an overlay to the icon of model elements that conform to the '''UnproductiveWriter''' Facet.
+
+<pre>
+<custom:Customization
+ xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:custom="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:efacet="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet"
+ xmlns:javaQuery2="http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation"
+ name="org.eclipse.papyrus.emf.facet.efacet.examples.library.core.custom">
+
+ <eClassifiers xsi:type="custom:EClassCustomization">
+ <extendedMetaclass href="http://www.eclipse.org/papyrus/emf/facet/examples/library/0.2.incubation/library#//Writer"/>
+ <extendedFacets href="platform:/plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject"/>
+ <facetOperations xsi:type="efacet:FacetOperation" name="label" lowerBound="1">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <query xsi:type="javaQuery2:JavaQuery" implementationClassName="org.eclipse.papyrus.emf.facet.efacet.examples.library.core.internal.queries.WriterLabel"/>
+ <override xsi:type="efacet:FacetOperation" href="platform:/plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/label"/>
+ <eParameters xsi:type="ecore:EParameter" name="eStructuralFeature">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature"/>
+ </eParameters>
+ </facetOperations>
+ </eClassifiers>
+
+ <eClassifiers xsi:type="custom:FacetCustomization">
+ <extendedFacets href="platform:/plugin/org.eclipse.papyrus.emf.facet.efacet.examples.library.core/library.efacet#//writer/UnproductiveWriter"/>
+ <facetOperations xsi:type="efacet:FacetOperation" name="bottomRightOverlay" lowerBound="1">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <query xsi:type="javaQuery2:JavaQuery" implementationClassName="org.eclipse.papyrus.emf.facet.efacet.examples.library.core.internal.queries.UnproductiveWriterOverlay"/>
+ <override xsi:type="efacet:FacetOperation" href="platform:/plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/bottomRightOverlay"/>
+ <eParameters xsi:type="ecore:EParameter" name="eStructuralFeature">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature"/>
+ </eParameters>
+ </facetOperations>
+ </eClassifiers>
+</custom:Customization>
+</pre>
+
+== Default Customizations ==
+=== label ===
+The text displayed for a model element can be customized with the '''label''' customization defined on CustomizedEObject.
+
+=== image ===
+The icon that appears before the text for a model element can be customized with the '''image''' customization defined on CustomizedEObject.
+
+=== color ===
+Both the text color ('''foreground''') and background color ('''background''') can be customized.
+
+=== font ===
+The following font-related properties are defined on CustomizedEObject and can be customized:
+* fontName
+* fontSize
+* isBold
+* isItalic
+* isUnderlined
+* isStruckthrough
+
+=== overlay ===
+In addition to the main icon displayed for a model element, up to six additional ''overlay'' icons can be displayed in the corners of the main icon. The following image depicts the position of each overlay relative to the main icon:
+
+{|style="text-align: center; border-style: solid; border-width: 2px; border-color: #000"
+|[[Image:../img/topLeftOverlay.png]]
+|[[Image:../img/topMiddleOverlay.png]]
+|[[Image:../img/topRightOverlay.png]]
+|-
+|topLeftOverlay
+|topMiddleOverlay
+|topRightOverlay
+|-
+|[[Image:../img/bottomLeftOverlay.png]]
+|[[Image:../img/bottomMiddleOverlay.png]]
+|[[Image:../img/bottomRightOverlay.png]]
+|-
+|bottomLeftOverlay
+|bottomMiddleOverlay
+|bottomRightOverlay
+|}
+
+Overlays should be defined on Facets (using a '''FacetCustomization'''). You will get a warning if you define an overlay on an EClass (with '''EClassCustomization'''). This warning may be disabled in the preferences, in section '''Model Validation > Constraints''' : check or uncheck '''EMF Facet Custom Model Validation > Avoid EClass Overlay'''.
+
+=== obtaining customization properties ===
+The default customization properties defined in EMF Facet can be obtained from the following set of interfaces:
+* IContentPropertiesHandler (instantiate through IContentPropertiesHandlerFactory)
+* ISelectionPropertiesHandler (instantiate through ISelectionPropertiesHandlerFactory)
+
+== Registration ==
+To make a customization available at runtime in the customization catalog, you must register it with extension point '''org.eclipse.papyrus.emf.facet.util.emf.core.modeldeclaration''', like this:
+<pre>
+<extension point="org.eclipse.papyrus.emf.facet.util.emf.core.modeldeclaration">
+ <modeldeclaration file="myCustomization.custom"/>
+</extension>
+Also, your ".custom" file must be included in your plug-in's build.properties in order to be available in deployed plug-ins.
+</pre>
+
+== Catalog ==
+Customizations that have been [[#Registration|registered]] are available from the customization catalog.
+For example, if you want to retrieve the list of all registered customizations:
+<pre>
+ICustomizationCatalogManager customCatalog = ICustomizationCatalogManagerFactory.DEFAULT
+ .getOrCreateCustomizationCatalogManager(new ResourceSetImpl());
+List<Customization> allCustomizations = customCatalog.getRegisteredCustomizations();
+</pre>
+Then you can for example look for a customization with a given name in the previous list:
+<pre>
+Customization myCustom = CustomizationUtils.getCustomization(allCustomizations, "MyCustomization");
+</pre>
+
+== Customization Manager ==
+
+The customization manager is used to manipulate customizations. To obtain an instance of the CustomizationManager, you must ask the customization manager factory:
+<pre>
+ICustomizationManager customManager = ICustomizationManagerFactory.DEFAULT.getOrCreateICustomizationManager(resourceSet);
+</pre>
+The resourceSet parameter must be the same ResourceSet that was used to instantiate a customization catalog manager in <code>ICustomizationCatalogManagerFactory#getOrCreateCustomizationCatalogManager</code>.
+
+The customization manager provides these important methods:
+* getManagedCustomizations() : returns a modifiable list of customizations managed by this customization manager. For example, to add a customization: <code>customManager.getManagedCustomizations().add(custom);</code>
+* getCustomValueOf(EObject, FacetOperation, Class) : evaluates a customization property on a given object, and returns the result. The class parameter is used to typecheck the result and return a value of the correct type. For example: <code>Boolean result = customManager.getCustomValueOf(eObject, aBooleanProperty, Boolean.class);</code>
+
+== Customized Providers ==
+You don't always have to interact with the customization manager directly though: when you want to evaluate a standard customization property (label, image, visibility, etc.), you can use a customized label or content provider supplied by EMF Facet:
+* ICustomizedLabelProvider (instantiate through ICustomizedLabelProviderFactory or IResolvingCustomizedLabelProviderFactory)
+* ICustomizedTreeContentProvider (instantiate through ICustomizedContentProviderFactory)
+
+<font size="-2">
+Copyright (c) 2012 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html.
+Contributors: Nicolas Bros (Mia-Software) ; Laurent Pichierri (Soft-Maint) - Bug 375789 - Documentation
+</font>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/plugin.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/plugin.xml
new file mode 100644
index 00000000000..3a3503d18c5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/plugin.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<!--
+ Copyright (c) 2012 CEA LIST.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Nicolas Bros (Mia-Software) - Bug 375789 - Documentation
+-->
+<plugin>
+ <extension point="org.eclipse.help.toc">
+ <toc file="toc-user.xml" primary="false"/>
+ <toc file="toc-dev.xml" primary="false"/>
+ </extension>
+</plugin>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/src/org/eclipse/papyrus/emf/facet/custom/doc/Activator.java b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/src/org/eclipse/papyrus/emf/facet/custom/doc/Activator.java
new file mode 100644
index 00000000000..295768e720b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/src/org/eclipse/papyrus/emf/facet/custom/doc/Activator.java
@@ -0,0 +1,17 @@
+package org.eclipse.papyrus.emf.facet.custom.doc;
+
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+public class Activator implements BundleActivator {
+
+ @Override
+ public void start(BundleContext context) throws Exception {
+ // TODO Auto-generated method stub
+ }
+
+ @Override
+ public void stop(BundleContext context) throws Exception {
+ // TODO Auto-generated method stub
+ }
+}
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/toc-dev.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/toc-dev.xml
new file mode 100644
index 00000000000..739fbff7bf3
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/toc-dev.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2012 CEA LIST.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Nicolas Bros (Mia-Software) - Bug 375789 - Documentation
+-->
+<toc label="Customization" link_to="../org.eclipse.papyrus.emf.facet.doc/maintoc.xml#dev.anchor.2">
+ <topic label="Customization" href="mediawiki/plugin_dev.html"/>
+</toc>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/toc-user.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/toc-user.xml
new file mode 100644
index 00000000000..6f1358864c1
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.doc/toc-user.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2012 CEA LIST.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Nicolas Bros (Mia-Software) - Bug 375789 - Documentation
+-->
+<toc label="Customization" link_to="../org.eclipse.papyrus.emf.facet.doc/maintoc.xml#user.anchor.2">
+ <topic label="Customization" href="mediawiki/user.html"/>
+</toc>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/.project b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/.project
new file mode 100644
index 00000000000..37a45cbabee
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/.project
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <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>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/.settings/org.eclipse.core.resources.prefs b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..1c7907bc702
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,3 @@
+eclipse.preferences.version=1
+encoding//resource/editor-toc.xml=utf-8
+encoding//resource/editor.html=utf-8
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/META-INF/MANIFEST.MF b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..c3b55a8ffdc
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/META-INF/MANIFEST.MF
@@ -0,0 +1,5 @@
+Bundle-ManifestVersion: 2
+Bundle-Name: Doc
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Require-Bundle: org.eclipse.help
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/build.properties b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/build.properties
new file mode 100644
index 00000000000..47663ae2b76
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/build.properties
@@ -0,0 +1,3 @@
+bin.includes = META-INF/,\
+ resource/,\
+ plugin.xml
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/plugin.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/plugin.xml
new file mode 100644
index 00000000000..bf9f4621285
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/plugin.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+ <extension point="org.eclipse.help.toc">
+ <toc file="resource/editor-toc.xml" primary="true"/>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/EClassCustomCreation1.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/EClassCustomCreation1.png
new file mode 100644
index 00000000000..b7ce2be5d6a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/EClassCustomCreation1.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/EClassCustomEdition.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/EClassCustomEdition.png
new file mode 100644
index 00000000000..293be89ee3f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/EClassCustomEdition.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/EditorWithEmptyFile.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/EditorWithEmptyFile.png
new file mode 100644
index 00000000000..09750a8c957
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/EditorWithEmptyFile.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/FacetCustomCreation1.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/FacetCustomCreation1.png
new file mode 100644
index 00000000000..8a787419b71
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/FacetCustomCreation1.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/FacetOperationCreation1.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/FacetOperationCreation1.png
new file mode 100644
index 00000000000..da82b169bb0
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/FacetOperationCreation1.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/FacetOperationSpecifyQuery.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/FacetOperationSpecifyQuery.png
new file mode 100644
index 00000000000..2a56ae18c97
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/FacetOperationSpecifyQuery.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/FineTuneEClassCustomization.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/FineTuneEClassCustomization.png
new file mode 100644
index 00000000000..0768ed91326
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/FineTuneEClassCustomization.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/RightPaneldescription.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/RightPaneldescription.png
new file mode 100644
index 00000000000..0eff804280d
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/RightPaneldescription.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation1.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation1.png
new file mode 100644
index 00000000000..11e4c4845e5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation1.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation2.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation2.png
new file mode 100644
index 00000000000..3c1816c30fb
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation2.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation3.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation3.png
new file mode 100644
index 00000000000..dbcc95e1ecf
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/WizardCreation3.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/addParameter.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/addParameter.png
new file mode 100644
index 00000000000..41ebe356cb8
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/addParameter.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/attributes.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/attributes.gif
new file mode 100644
index 00000000000..d4cb4254d92
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/attributes.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/bottomLeftOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/bottomLeftOverlay.png
new file mode 100644
index 00000000000..a590639ef21
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/bottomLeftOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/bottomMiddleOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/bottomMiddleOverlay.png
new file mode 100644
index 00000000000..aa965d8f304
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/bottomMiddleOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/bottomRightOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/bottomRightOverlay.png
new file mode 100644
index 00000000000..c4aa66c4043
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/bottomRightOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/customizationLabel.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/customizationLabel.png
new file mode 100644
index 00000000000..e7a492fe7b2
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/customizationLabel.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/editor-toc.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/editor-toc.xml
new file mode 100644
index 00000000000..8a6d371a5ee
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/editor-toc.xml
@@ -0,0 +1,14 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<toc topic="resource/editor.html" label="EMF Facet Customization Editor">
+ <topic href="resource/editor.html" label="Customization of model with EMF Facet"></topic>
+ <topic href="resource/editor.html#Creationof.customfile" label="Creation of .custom file"></topic>
+ <topic href="resource/editor.html#EClassCustomandFacetCustom" label="EClassCustom and FacetCustom">
+ <topic href="resource/editor.html#Creationandbasicedition" label="Creation and basic edition"></topic>
+ <topic href="resource/editor.html#Finetuneedition" label="Fine-tune edition"></topic>
+ </topic>
+ <topic href="resource/editor.html#DerivedTypedElement" label="DerivedTypedElement">
+ <topic href="resource/editor.html#Creationandbasicedition2" label="Creation and basic edition"></topic>
+ <topic href="resource/editor.html#Structuredviews" label="Structured views"></topic>
+ <topic href="resource/editor.html#Finetuneedition2" label="Fine-tune edition"></topic>
+ </topic>
+</toc> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/editor.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/editor.html
new file mode 100644
index 00000000000..84a9a2e13fe
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/editor.html
@@ -0,0 +1 @@
+<?xml version='1.0' encoding='utf-8' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/></head><body><h1 id="CustomizationofmodelwithEMFFacet">Customization of model with EMF Facet</h1><ol class="toc" style="list-style: none;"><li><a href="#CustomizationofmodelwithEMFFacet">Customization of model with EMF Facet</a></li><li><a href="#Creationof.customfile">Creation of .custom file</a></li><li><a href="#EClassCustomandFacetCustom">EClassCustom and FacetCustom</a><ol style="list-style: none;"><li><a href="#Creationandbasicedition">Creation and basic edition</a></li><li><a href="#Finetuneedition">Fine-tune edition</a></li></ol></li><li><a href="#DerivedTypedElement">DerivedTypedElement</a><ol style="list-style: none;"><li><a href="#Creationandbasicedition2">Creation and basic edition</a></li><li><a href="#Structuredviews">Structured views</a></li><li><a href="#Finetuneedition2">Fine-tune edition</a></li></ol></li></ol><p>EMF Facet provides a customization component, that can be used to define the appearance of model elements when viewed in an editor or view that supports this customization mechanism.</p><h1 id="Creationof.customfile">Creation of .custom file</h1><p>A customization is defined in a model that conforms to the EMF Facet customization metamodel. This model is saved in a file with the &#171;.custom&#187; file extension. The file can be created via a wizard in Eclipse from “New -&gt; EMF Facet -&gt; Create a customization 0.2†option in menu and will prompt the user for the nsURI and prefix for the customization model. The following screen captures show step by step the creation process :</p><p><img border="0" src="WizardCreation1.png"/><br/>Figure 1 : custom file creation wizard</p><p><img border="0" src="WizardCreation2.png"/><br/>Figure 2 : file name selection</p><p><img border="0" src="WizardCreation2.png"/><br/>Figure 3 : nsURI and prefix specification for the model</p><p>Upon the creation of the customization model file, the editor will open and allow the user to populate the model:</p><p><img border="0" src="EditorWithEmptyFile.png"/><br/>Figure 4 : empty Customization created from the wizard</p><p>Customization is a specific FacetSet acting as the main container for the customization elements. These elements may be customization for<br/>EClass or Facet; each of them containing DerivedTypedElement such as FacetAttribute, FacetReference, and FacetOperation.</p><h1 id="EClassCustomandFacetCustom">EClassCustom and FacetCustom</h1><h2 id="Creationandbasicedition">Creation and basic edition</h2><p>Custom classes can be created when a Customization element is selected, the far right panel displays buttons to ease the creation of such<br/>elements:</p><p><img border="0" src="EClassCustomCreation1.png"/><br/>Figure 5 : creation of an EClassCustom</p><p>The dialog allows specifying generic features for Custom classes and the properties view is always there to fine-tune different features:</p><p><img border="0" src="EClassCustomEdition.png"/><br/>Figure 6 : Edition of an EClassCustom</p><p>In this example, the EClassCustom extends the metaclass from the org.eclipse.papyrus.emf.facet.examples.library metamodel, the editor will<br/>automatically load every model in which a facet specifies this metamodel, hence the loading of .efacet and .custom files available in the<br/>platform. This allow an easy access of all declared facets bound to an element of the customized metamodel.</p><p>The process is identical for the creation of a FacetCustom:</p><p><img border="0" src="FacetCustomCreation1.png"/><br/>Figure 7 : creation of a FacetCustom</p><h2 id="Finetuneedition">Fine-tune edition</h2><p>If needed, properties view allows the user to have a more advanced control on custom elements:</p><p><img border="0" src="FineTuneEClassCustomization.png"/><br/>Figure 8 : fine-tune edition of an EClassCustom</p><p>Also, applied customization are strongly affected by the order the manager load them up, the editor provides a way to modify this order by<br/>selecting an element and press either the “Up†or “Down†bottom. This results in modifying the index of the selected element in its<br/>containment list.</p><h1 id="DerivedTypedElement">DerivedTypedElement</h1><h2 id="Creationandbasicedition2">Creation and basic edition</h2><p>Custom element, either ECLassCustom or FacetCustom, contains DerivedTypeElement. Those elements can be FacetAttribute, FacetReference or<br/>FacetOperation. The most used lement for Customization is the FacetOperation: each of these FacetOperations overrides the FacetOperation<br/>corresponding to the customizable feature you want to customize: label, font, color, etc…<br/>In order to create a FacetOperation, a FacetCustom or an EClassCustom must be selected:</p><p><img border="0" src="FacetOperationCreation1.png"/><br/>Figure 9 : creation of a FacetOperation</p><p>Finally, the user must provide an implementation for an overriding FacetOperation, by the means of a Query that will return the value of the<br/>customization when this Query is evaluated on a model element that conforms to the extendedFacet. If the query has not been written yet, the<br/>wizard provides an easy wizard to create the Query directly extending one of the Query class available, or the editor will scan the project<br/>and prompt the user to choose among a list of available query classes.</p><p><img border="0" src="FacetOperationSpecifyQuery.png"/><br/>Figure 10 : Creation of a Query for a FacetOperation</p><p>If a FacetOperation is selected, it is possible to add parameters. This parameter is useful for customizing the structural feature<br/>corresponding to a single customized model element:</p><p><img border="0" src="addParameter.png"/><br/>Figure 11 : adding a parameter to a FacetOperation</p><h2 id="Structuredviews">Structured views</h2><p>The left tree is the main navigator of the model in the editor, when a Custom element is selected or any DerivedTypeElement, the right panel<br/>shows the list of all child derivedTypeElements, or brother depending on the nature of the left panel selection. This panel offers a quick<br/>overview of the DerivedTypeElement:</p><p><img border="0" src="RightPaneldescription.png"/><br/>Figure 12 : detailed view of the right panel</p><p>An icon symbolizes the override customization facet, all icons are as follow:</p><ul><li><img border="0" src="attributes.gif"/> means the derivedTypeElement is not a FacetOperation</li><li><img border="0" src="customizationLabel.png"/> stands for “labelâ€</li><li><img border="0" src="fontBold.png"/> stands for “isBoldâ€</li><li><img border="0" src="fontItalic.bmp"/> stands for “isItalicâ€</li><li><img border="0" src="fontName.png"/> stands for “fontNameâ€</li><li><img border="0" src="fontSize.png"/> stands for “fontSizeâ€</li><li><img border="0" src="fontStrukethrough.bmp"/> stands for “isStrikethroughâ€</li><li><img border="0" src="fontUnderline.bmp"/> stands for “isUnderlinedâ€</li><li><img border="0" src="imageCustomization.png"/> stands for “imageâ€</li><li><img border="0" src="rgb.png"/> stands for “foreground†or “backgroundâ€</li><li><img border="0" src="middleLeftOverlay.png"/> stands for “middleLeftOverlayâ€</li><li><img border="0" src="middleRightOverlay.png"/> stands for “middleRightOverlayâ€</li><li><img border="0" src="topLeftOverlay.png"/> stands for “topLeftOverlayâ€</li><li><img border="0" src="topMiddleOverlay.png"/> stands for “topMiddleOverlayâ€</li><li><img border="0" src="topRightOverlay.png"/> stands for “topRightOverlayâ€</li><li><img border="0" src="bottomRightOverlay.png"/> stands for “bottomRightOverlayâ€</li><li><img border="0" src="bottomMiddleOverlay.png"/> stands for “bottomMiddleOverlayâ€</li><li><img border="0" src="bottomLeftOverlay.png"/> stands for “bottomLeftOverlayâ€</li></ul><h2 id="Finetuneedition2">Fine-tune edition</h2><p>An advanced control of FacetOperation, and moreover DerivedTypeElement, is available via the properties view:</p><p><img border="0" src="facetOperationWithPropertiesView.png"/><br/>Figure 13 : fine-tune edition of a FacetOperation</p></body></html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/editor.textile b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/editor.textile
new file mode 100644
index 00000000000..c94e8675e91
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/editor.textile
@@ -0,0 +1,174 @@
+h1. Customization of model with EMF Facet
+
+
+
+{toc}
+
+
+
+
+EMF Facet provides a customization component, that can be used to define the appearance of model elements when viewed in an editor or view that supports this customization mechanism.
+
+
+
+h1. Creation of .custom file
+
+
+
+A customization is defined in a model that conforms to the EMF Facet customization metamodel. This model is saved in a file with the ".custom" file extension. The file can be created via a wizard in Eclipse from “New -> EMF Facet -> Create a customization 0.2” option in menu and will prompt the user for the nsURI and prefix for the customization model. The following screen captures show step by step the creation process :
+
+
+
+!WizardCreation1.png!
+Figure 1 : custom file creation wizard
+
+
+
+!WizardCreation2.png!
+Figure 2 : file name selection
+
+
+
+!WizardCreation2.png!
+Figure 3 : nsURI and prefix specification for the model
+
+
+
+Upon the creation of the customization model file, the editor will open and allow the user to populate the model:
+
+
+!EditorWithEmptyFile.png!
+Figure 4 : empty Customization created from the wizard
+
+
+
+Customization is a specific FacetSet acting as the main container for the customization elements. These elements may be customization for
+EClass or Facet; each of them containing DerivedTypedElement such as FacetAttribute, FacetReference, and FacetOperation.
+
+
+
+h1. EClassCustom and FacetCustom
+
+
+
+h2. Creation and basic edition
+
+
+
+Custom classes can be created when a Customization element is selected, the far right panel displays buttons to ease the creation of such
+elements:
+
+!EClassCustomCreation1.png!
+Figure 5 : creation of an EClassCustom
+
+
+The dialog allows specifying generic features for Custom classes and the properties view is always there to fine-tune different features:
+
+!EClassCustomEdition.png!
+Figure 6 : Edition of an EClassCustom
+
+
+In this example, the EClassCustom extends the metaclass from the org.eclipse.papyrus.emf.facet.examples.library metamodel, the editor will
+automatically load every model in which a facet specifies this metamodel, hence the loading of .efacet and .custom files available in the
+platform. This allow an easy access of all declared facets bound to an element of the customized metamodel.
+
+The process is identical for the creation of a FacetCustom:
+
+!FacetCustomCreation1.png!
+Figure 7 : creation of a FacetCustom
+
+
+
+h2. Fine-tune edition
+
+If needed, properties view allows the user to have a more advanced control on custom elements:
+
+!FineTuneEClassCustomization.png!
+Figure 8 : fine-tune edition of an EClassCustom
+
+
+
+Also, applied customization are strongly affected by the order the manager load them up, the editor provides a way to modify this order by
+selecting an element and press either the “Up” or “Down” bottom. This results in modifying the index of the selected element in its
+containment list.
+
+
+
+h1. DerivedTypedElement
+
+
+
+h2. Creation and basic edition
+
+
+
+Custom element, either ECLassCustom or FacetCustom, contains DerivedTypeElement. Those elements can be FacetAttribute, FacetReference or
+FacetOperation. The most used lement for Customization is the FacetOperation: each of these FacetOperations overrides the FacetOperation
+corresponding to the customizable feature you want to customize: label, font, color, etc…
+In order to create a FacetOperation, a FacetCustom or an EClassCustom must be selected:
+
+!FacetOperationCreation1.png!
+Figure 9 : creation of a FacetOperation
+
+
+
+Finally, the user must provide an implementation for an overriding FacetOperation, by the means of a Query that will return the value of the
+customization when this Query is evaluated on a model element that conforms to the extendedFacet. If the query has not been written yet, the
+wizard provides an easy wizard to create the Query directly extending one of the Query class available, or the editor will scan the project
+and prompt the user to choose among a list of available query classes.
+
+!FacetOperationSpecifyQuery.png!
+Figure 10 : Creation of a Query for a FacetOperation
+
+
+If a FacetOperation is selected, it is possible to add parameters. This parameter is useful for customizing the structural feature
+corresponding to a single customized model element:
+
+
+!addParameter.png!
+Figure 11 : adding a parameter to a FacetOperation
+
+
+
+h2. Structured views
+
+
+
+The left tree is the main navigator of the model in the editor, when a Custom element is selected or any DerivedTypeElement, the right panel
+shows the list of all child derivedTypeElements, or brother depending on the nature of the left panel selection. This panel offers a quick
+overview of the DerivedTypeElement:
+
+!RightPaneldescription.png!
+Figure 12 : detailed view of the right panel
+
+
+An icon symbolizes the override customization facet, all icons are as follow:
+* !attributes.gif! means the derivedTypeElement is not a FacetOperation
+* !customizationLabel.png! stands for “label”
+* !fontBold.png! stands for “isBold”
+* !fontItalic.bmp! stands for “isItalic”
+* !fontName.png! stands for “fontName”
+* !fontSize.png! stands for “fontSize”
+* !fontStrukethrough.bmp! stands for “isStrikethrough”
+* !fontUnderline.bmp! stands for “isUnderlined”
+* !imageCustomization.png! stands for “image”
+* !rgb.png! stands for “foreground” or “background”
+* !middleLeftOverlay.png! stands for “middleLeftOverlay”
+* !middleRightOverlay.png! stands for “middleRightOverlay”
+* !topLeftOverlay.png! stands for “topLeftOverlay”
+* !topMiddleOverlay.png! stands for “topMiddleOverlay”
+* !topRightOverlay.png! stands for “topRightOverlay”
+* !bottomRightOverlay.png! stands for “bottomRightOverlay”
+* !bottomMiddleOverlay.png! stands for “bottomMiddleOverlay”
+* !bottomLeftOverlay.png! stands for “bottomLeftOverlay”
+
+
+
+h2. Fine-tune edition
+
+
+
+An advanced control of FacetOperation, and moreover DerivedTypeElement, is available via the properties view:
+
+!facetOperationWithPropertiesView.png!
+Figure 13 : fine-tune edition of a FacetOperation
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/facetOperationWithPropertiesView.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/facetOperationWithPropertiesView.png
new file mode 100644
index 00000000000..f507fb7f97c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/facetOperationWithPropertiesView.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontBold.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontBold.png
new file mode 100644
index 00000000000..45033eb9b8a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontBold.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontItalic.bmp b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontItalic.bmp
new file mode 100644
index 00000000000..3e8d38653cc
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontItalic.bmp
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontName.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontName.png
new file mode 100644
index 00000000000..348dd6641fb
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontName.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontSize.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontSize.png
new file mode 100644
index 00000000000..ba5b44296cc
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontSize.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontStrukethrough.bmp b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontStrukethrough.bmp
new file mode 100644
index 00000000000..945988b541e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontStrukethrough.bmp
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontUnderline.bmp b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontUnderline.bmp
new file mode 100644
index 00000000000..5368eb463db
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/fontUnderline.bmp
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/imageCustomization.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/imageCustomization.png
new file mode 100644
index 00000000000..c8fa43a07f5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/imageCustomization.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/middleLeftOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/middleLeftOverlay.png
new file mode 100644
index 00000000000..46158d8fe8b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/middleLeftOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/middleRightOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/middleRightOverlay.png
new file mode 100644
index 00000000000..f73c1ed8a0e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/middleRightOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/rgb.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/rgb.png
new file mode 100644
index 00000000000..119f9d57ff0
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/rgb.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/topLeftOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/topLeftOverlay.png
new file mode 100644
index 00000000000..2b30f260028
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/topLeftOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/topMiddleOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/topMiddleOverlay.png
new file mode 100644
index 00000000000..0cb45759b3b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/topMiddleOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/topRightOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/topRightOverlay.png
new file mode 100644
index 00000000000..1ea16e56587
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor.doc/resource/topRightOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/.classpath b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/.classpath
new file mode 100644
index 00000000000..da1049abda9
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src/"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/.project b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/.project
new file mode 100644
index 00000000000..82f9bcd4a08
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.custom.metamodel.editor</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/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..44217f8c068
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/META-INF/MANIFEST.MF b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..1cca23211ae
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/META-INF/MANIFEST.MF
@@ -0,0 +1,213 @@
+Manifest-Version: 1.0
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Built-By: hudsonbuild
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.custom.metamodel.editor;singleton:=true
+Bundle-Activator: org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation.Activator
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.core.resources;visibility:=reexport,
+ org.eclipse.papyrus.emf.facet.custom.metamodel.edit;visibility:=reexport,
+ org.eclipse.emf.ecore.xmi;visibility:=reexport,
+ org.eclipse.emf.edit.ui;visibility:=reexport,
+ org.eclipse.ui.ide;visibility:=reexport,
+ org.eclipse.ui.forms,
+ org.eclipse.papyrus.emf.facet.util.core,
+ org.eclipse.papyrus.emf.facet.custom.core,
+ org.eclipse.emf.ecore.edit,
+ org.eclipse.papyrus.emf.facet.efacet.sdk.ui,
+ org.eclipse.papyrus.emf.facet.util.ui,
+ org.eclipse.jface,
+ org.eclipse.papyrus.emf.facet.custom.sdk.ui,
+ org.eclipse.papyrus.emf.facet.custom.ui,
+ org.eclipse.papyrus.emf.facet.query.java.core,
+ org.eclipse.papyrus.emf.facet.query.java.metamodel,
+ org.eclipse.papyrus.emf.facet.query.ocl.metamodel
+Bundle-Version: 1.0.0.qualifier
+Bundle-ClassPath: .
+Build-Jdk: 1.6.0_27
+Bundle-ActivationPolicy: lazy
+Bundle-Vendor: %providerName
+Bundle-Name: %pluginName
+Archiver-Version: Plexus Archiver
+Created-By: Apache Maven
+Bundle-ManifestVersion: 2
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$4$1.class
+SHA1-Digest: tGOjU+4z3DxdxWdwBs+v8eOKU40=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$3$2.class
+SHA1-Digest: 7v6GXQClx8CBuOkKZiDsHVU6hdY=
+
+Name: icons/full/wizban/NewCustom.gif
+SHA1-Digest: CfAK4I3/f4RWRH687PmoPhy5xjI=
+
+Name: plugin.properties
+SHA1-Digest: fFcgM6YBhoNcfziHLJKe9rRZk5Q=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomModelWizard.class
+SHA1-Digest: zPICwLw1MMdSYMw3Qy77cPTD/iE=
+
+Name: META-INF/maven/org.eclipse.emft/org.eclipse.papyrus.emf.facet.custom.met
+ amodel.editor/pom.properties
+SHA1-Digest: aaofIniFQcvYh/8YffWqmdAjU6Y=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomActionBarContributor.class
+SHA1-Digest: jUbbHal786bYoEFb+HQ1V04eUMY=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$10.class
+SHA1-Digest: rGP+RAhFdKK1z0i6y6uVSUqRpy8=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomModelWizard$CustomModelWizardInitialObjectCreationPage.class
+SHA1-Digest: JCf9KzP6eqGktQfMgiCHT2Fqpug=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$1MyContentOutlinePage.class
+SHA1-Digest: r6puwT+FcjuGMZ6VtCjrAf5q+YY=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditorPlugin$Implementation.class
+SHA1-Digest: HyoABJYgdiywLgyKeeM6TmOkjiQ=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$11.class
+SHA1-Digest: aCGd0LETYBDgF5HzVOt4Keo5hB4=
+
+Name: META-INF/maven/org.eclipse.emft/org.eclipse.papyrus.emf.facet.custom.met
+ amodel.editor/pom.xml
+SHA1-Digest: HLvXDSszH515HuZ/i7KF+OpgR7U=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$12.class
+SHA1-Digest: 99WQOldMXPAKEbMMSPGPFyAOyZA=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$13.class
+SHA1-Digest: vMmQuv11+BuuX6wrgjRBuNm9H58=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$14.class
+SHA1-Digest: PwQg16lZjOxlrFSQ1yg6JLBTHcY=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$15.class
+SHA1-Digest: dx4TR5eJT2wFLEWaswxWdLiJTew=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$16.class
+SHA1-Digest: +sM38Zzn9kKnyDWhJrOpTUezTak=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$17.class
+SHA1-Digest: B3+AEZoxZe1p/twgF27G2zEU5BQ=
+
+Name: plugin.xml
+SHA1-Digest: tstUoV2JuOKmJRuK8Cps96TMCNE=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$18.class
+SHA1-Digest: sNMquBqHAaZ/cQOrC+jGYiFVHTM=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomModelWizard$1.class
+SHA1-Digest: NMQWpKENYfFQ57f5MsF9AkCeJVE=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomModelWizard$2.class
+SHA1-Digest: 02SUfq89oKTPJ21ygzg6Rn94wBk=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomModelWizard$CustomModelWizardInitialObjectCreationPage$1.clas
+ s
+SHA1-Digest: aSDZNSxEDYWi7AYEsADZUmGhWdQ=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomActionBarContributor$1.class
+SHA1-Digest: b6NHs6MXxzGTM0v+I9sDZKFXJS8=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomActionBarContributor$2.class
+SHA1-Digest: gGnxPxZBPgAFnI5uHTioSKbL6pc=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$ReverseAdapterFactoryContentProvider.class
+SHA1-Digest: rV5mQHtsCbaGgWDKLQibz8//pJg=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomActionBarContributor$3.class
+SHA1-Digest: 1RMb2Dc/I2QC6ey39qgENxnavtQ=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$3$1ResourceDeltaVisitor.class
+SHA1-Digest: pKEp96kJaaBR2idFYqmI+4dJ4B8=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor.class
+SHA1-Digest: +PcDDo1QQsFQ9CNAzbzc0iAU4zg=
+
+Name: META-INF/eclipse.inf
+SHA1-Digest: 09gN05tobgS/MdtqyTNQhOhB73M=
+
+Name: about.html
+SHA1-Digest: ru0WjokUORxDPBmweIE2eujSA24=
+
+Name: icons/full/obj16/CustomModelFile.gif
+SHA1-Digest: zjQCllhiXDEnFg6c6wdc1isUBw8=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomModelWizard$CustomModelWizardNewFileCreationPage.class
+SHA1-Digest: QSMjUcx0LwI/KAs7x7pbk9DmnjE=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$1.class
+SHA1-Digest: EMGiFg1kQ2AWnUXcwJm+KfN/300=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$2.class
+SHA1-Digest: f0IyTNp0D/D0HogKihbdpFuuyk4=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$3.class
+SHA1-Digest: Ujvl286N57XXS5QAcH9561MpCcI=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$4.class
+SHA1-Digest: FTDIj12FLFYzuYvPZ5/3HwW0Bxk=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$5.class
+SHA1-Digest: sOZlOeMugef1ZliYkrDPVF2CYog=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$6.class
+SHA1-Digest: 5ftPgemKKGrFwHnm4jsXaWXwQSs=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$7.class
+SHA1-Digest: QesY+HjPovGwBqF/KzUWTMhIKL4=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditorPlugin.class
+SHA1-Digest: qr5mdUQRmFnaClrP6+ypvG0fMEk=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$8.class
+SHA1-Digest: vOv9uSo0oKahHMrnTbOygwRC6Dw=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$9.class
+SHA1-Digest: Xdh/nG+cixVM9Zur3JWx0MZ/oiI=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$2$1.class
+SHA1-Digest: uvC60qxgN2C/cO2rdMwejHm0OOs=
+
+Name: org/eclipse/emf/facet/custom/metamodel/v0_2_0/custom/presentatio
+ n/CustomEditor$3$1.class
+SHA1-Digest: 7/Z2RI2RDP58/qM5l6Xn1wmDl18=
+
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/META-INF/eclipse.inf b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/META-INF/eclipse.inf
new file mode 100644
index 00000000000..92ffed2421c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/META-INF/eclipse.inf
@@ -0,0 +1,2 @@
+#Processed using Jarprocessor
+pack200.conditioned = true
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.metamodel.editor/pom.properties b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.metamodel.editor/pom.properties
new file mode 100644
index 00000000000..74f979c5dc4
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.metamodel.editor/pom.properties
@@ -0,0 +1,5 @@
+#Generated by Maven
+#Mon Aug 19 04:57:03 EDT 2013
+version=0.4.0-SNAPSHOT
+groupId=org.eclipse.emft
+artifactId=org.eclipse.papyrus.emf.facet.custom.metamodel.editor
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.metamodel.editor/pom.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.metamodel.editor/pom.xml
new file mode 100644
index 00000000000..dedd953722b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.metamodel.editor/pom.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>org.eclipse.papyrus.emf.facet.build</artifactId>
+ <groupId>org.eclipse.emft</groupId>
+ <version>0.4.0</version>
+ </parent>
+ <groupId>org.eclipse.emft</groupId>
+ <artifactId>org.eclipse.papyrus.emf.facet.custom.metamodel.editor</artifactId>
+ <version>0.4.0-SNAPSHOT</version>
+ <packaging>eclipse-plugin</packaging>
+</project>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/about.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/about.html
new file mode 100644
index 00000000000..fb3b4b23fce
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/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>September 28, 2012</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/build.properties b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/build.properties
new file mode 100644
index 00000000000..06312a26f61
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/build.properties
@@ -0,0 +1,8 @@
+source.. = src/
+bin.includes = META-INF/,\
+ .,\
+ icons/,\
+ about.html,\
+ plugin.xml,\
+ plugin.properties,\
+ src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/messages.properties
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/Facet.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/Facet.gif
new file mode 100644
index 00000000000..8c67c03cc10
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/Facet.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/error.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/error.gif
new file mode 100644
index 00000000000..9b048d60532
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/error.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/addUiCustom.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/addUiCustom.gif
new file mode 100644
index 00000000000..bc86fbc897e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/addUiCustom.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/aggreg.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/aggreg.gif
new file mode 100644
index 00000000000..2c62284e92b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/aggreg.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/aggreg_unidir.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/aggreg_unidir.gif
new file mode 100644
index 00000000000..30bf63ea561
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/aggreg_unidir.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/attribute_facet.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/attribute_facet.gif
new file mode 100644
index 00000000000..bf0e5bec658
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/attribute_facet.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/attributes.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/attributes.gif
new file mode 100644
index 00000000000..d4cb4254d92
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/attributes.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomLeftOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomLeftOverlay.png
new file mode 100644
index 00000000000..a590639ef21
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomLeftOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomMiddleOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomMiddleOverlay.png
new file mode 100644
index 00000000000..aa965d8f304
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomMiddleOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomRightOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomRightOverlay.png
new file mode 100644
index 00000000000..c4aa66c4043
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/bottomRightOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/collapseall.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/collapseall.gif
new file mode 100644
index 00000000000..a2d80a9044f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/collapseall.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/common_columns.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/common_columns.gif
new file mode 100644
index 00000000000..f3402d1dc7a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/common_columns.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/container.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/container.gif
new file mode 100644
index 00000000000..7c58ff7523b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/container.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/customizationLabel.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/customizationLabel.png
new file mode 100644
index 00000000000..e7a492fe7b2
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/customizationLabel.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/decrease_font_size.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/decrease_font_size.gif
new file mode 100644
index 00000000000..6c10954d4a4
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/decrease_font_size.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/derivation_tree.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/derivation_tree.gif
new file mode 100644
index 00000000000..9653ecc1015
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/derivation_tree.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/derived.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/derived.gif
new file mode 100644
index 00000000000..43ab3a6f1c3
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/derived.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/derived_instances.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/derived_instances.gif
new file mode 100644
index 00000000000..9224e2b9b69
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/derived_instances.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/eClass.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/eClass.gif
new file mode 100644
index 00000000000..2b72bc3e5d6
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/eClass.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/element_id.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/element_id.gif
new file mode 100644
index 00000000000..38bc0903931
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/element_id.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/empty_attributes.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/empty_attributes.gif
new file mode 100644
index 00000000000..2910be45944
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/empty_attributes.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/empty_links.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/empty_links.gif
new file mode 100644
index 00000000000..4dc1ab33608
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/empty_links.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/feature.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/feature.gif
new file mode 100644
index 00000000000..46be7a1265a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/feature.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontBold.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontBold.png
new file mode 100644
index 00000000000..45033eb9b8a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontBold.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontItalic.bmp b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontItalic.bmp
new file mode 100644
index 00000000000..3e8d38653cc
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontItalic.bmp
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontName.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontName.png
new file mode 100644
index 00000000000..348dd6641fb
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontName.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontSize.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontSize.png
new file mode 100644
index 00000000000..ba5b44296cc
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontSize.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontStrukethrough.bmp b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontStrukethrough.bmp
new file mode 100644
index 00000000000..945988b541e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontStrukethrough.bmp
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontUnderline.bmp b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontUnderline.bmp
new file mode 100644
index 00000000000..5368eb463db
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/fontUnderline.bmp
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/full_name.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/full_name.gif
new file mode 100644
index 00000000000..a666ef4f680
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/full_name.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/imageCustomization.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/imageCustomization.png
new file mode 100644
index 00000000000..c8fa43a07f5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/imageCustomization.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/increase_font_size.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/increase_font_size.gif
new file mode 100644
index 00000000000..bc3fee050e4
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/increase_font_size.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/inv_aggreg.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/inv_aggreg.gif
new file mode 100644
index 00000000000..6f1021d4d1c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/inv_aggreg.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/link.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/link.gif
new file mode 100644
index 00000000000..94c14024075
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/link.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_type.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_type.gif
new file mode 100644
index 00000000000..499cbd44704
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_type.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_unidir.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_unidir.gif
new file mode 100644
index 00000000000..c8169bcfbf8
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_unidir.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_unidir_facet.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_unidir_facet.gif
new file mode 100644
index 00000000000..143ae199d3e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/link_unidir_facet.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/middleLeftOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/middleLeftOverlay.png
new file mode 100644
index 00000000000..46158d8fe8b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/middleLeftOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/middleRightOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/middleRightOverlay.png
new file mode 100644
index 00000000000..f73c1ed8a0e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/middleRightOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/multiplicity.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/multiplicity.gif
new file mode 100644
index 00000000000..c9936db26ce
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/multiplicity.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/non-zero.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/non-zero.gif
new file mode 100644
index 00000000000..bdeb73e385b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/non-zero.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/operation.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/operation.gif
new file mode 100644
index 00000000000..3b7bb90a3e3
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/operation.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/opposite_links.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/opposite_links.gif
new file mode 100644
index 00000000000..63520975df7
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/opposite_links.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/ordering.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/ordering.gif
new file mode 100644
index 00000000000..4c768e3d94b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/ordering.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/package.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/package.gif
new file mode 100644
index 00000000000..fd09a326056
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/package.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/predicate.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/predicate.gif
new file mode 100644
index 00000000000..3b98fc65ef6
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/predicate.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/range.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/range.gif
new file mode 100644
index 00000000000..2121fcb1199
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/range.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/restore_font_size.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/restore_font_size.gif
new file mode 100644
index 00000000000..cefb5cf9897
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/restore_font_size.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/rgb.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/rgb.png
new file mode 100644
index 00000000000..119f9d57ff0
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/rgb.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort.gif
new file mode 100644
index 00000000000..6311cc00f80
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_links.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_links.gif
new file mode 100644
index 00000000000..66f63df6a7c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_links.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_links_by_type.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_links_by_type.gif
new file mode 100644
index 00000000000..c1d1190f914
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_links_by_type.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_num.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_num.gif
new file mode 100644
index 00000000000..f0d2d304060
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/sort_num.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/topLeftOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/topLeftOverlay.png
new file mode 100644
index 00000000000..2b30f260028
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/topLeftOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/topMiddleOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/topMiddleOverlay.png
new file mode 100644
index 00000000000..0cb45759b3b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/topMiddleOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/topRightOverlay.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/topRightOverlay.png
new file mode 100644
index 00000000000..1ea16e56587
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/topRightOverlay.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/uri.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/uri.gif
new file mode 100644
index 00000000000..fb99bc7183a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/uri.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/view_menu.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/view_menu.gif
new file mode 100644
index 00000000000..a7c49189228
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/view_menu.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/zero.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/zero.gif
new file mode 100644
index 00000000000..22540f70a26
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/ctool16/zero.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/obj16/CustomModelFile.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/obj16/CustomModelFile.gif
new file mode 100644
index 00000000000..8a7eeb2c824
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/obj16/CustomModelFile.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/wizban/NewCustom.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/wizban/NewCustom.gif
new file mode 100644
index 00000000000..eab53a99e8c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/full/wizban/NewCustom.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/logoMoDiscoMini.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/logoMoDiscoMini.gif
new file mode 100644
index 00000000000..19c468b1c61
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/logoMoDiscoMini.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/query.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/query.png
new file mode 100644
index 00000000000..b18d057bfff
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/query.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/shortcut.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/shortcut.png
new file mode 100644
index 00000000000..ed506ae70ee
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/icons/shortcut.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/messages.properties b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/messages.properties
new file mode 100644
index 00000000000..e213977eea5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/messages.properties
@@ -0,0 +1,97 @@
+###############################################################################
+# Copyright (c) 2009, 2010 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - initial API and implementation
+###############################################################################
+CustomizationEditor_add=&Add...
+CustomizationEditor_appliesToSubInstances=Applies to &Sub-Instances
+CustomizationEditor_bold=Bold
+CustomizationEditor_btnOpenElementSelectionDialogText=...
+CustomizationEditor_btnOpenFontDialogText=...
+CustomizationEditor_btnProperties=&Properties
+CustomizationEditor_btnTooltipViewErrors=View errors
+CustomizationEditor_cannotFindMetamodel=Couldn't find metamodel with URI "{0}"
+CustomizationEditor_changeProperties=Change Properties
+CustomizationEditor_collapseLink=Collapse link
+CustomizationEditor_conditions=Conditions :
+CustomizationEditor_conflictingUnsavedChanges=There are unsaved changes that conflict with changes made outside the editor. Do you wish to discard this editor's changes?
+CustomizationEditor_customizationsWillBeDeleted=All the customizations for metaclass "{0}" will be deleted. Are you sure?
+CustomizationEditor_customViewFor=custom view for "{0}" ({1})
+CustomizationEditor_down=&Down
+CustomizationEditor_edit=&Edit...
+CustomizationEditor_editFeatureValue=Edit feature &value...
+CustomizationEditor_error=Error
+CustomizationEditor_errorLoadingResource=Error loading resource. See log for more information.
+CustomizationEditor_fileConflict=File Conflict
+CustomizationEditor_hideMetaclassName=Hide metaclass name
+CustomizationEditor_iconSelection=Icon selection
+CustomizationEditor_invalidSelection=Invalid selection
+CustomizationEditor_italic=Italic
+CustomizationEditor_missingQuery=Couldn't find Query named "{0}" in query set "{1}".
+CustomizationEditor_missingQuerySet=Couldn't find Query Set named "{0}".
+CustomizationEditor_nonExistingQuery=Non-existing Query
+CustomizationEditor_nonExistingQuerySet=Non-existing Query Set
+CustomizationEditor_notFileSelected=You haven't selected a file
+CustomizationEditor_promptCleanCustomizations=Do you want to remove customizations that don't correspond to the new metamodel?
+CustomizationEditor_readonly=READONLY
+CustomizationEditor_remove=&Remove
+CustomizationEditor_removeIrrelevantCustomizations=Remove Irrelevant Customizations
+CustomizationEditor_resetDefaults=Reset Defaults
+CustomizationEditor_sectionName_customizations=Customizations
+CustomizationEditor_sectionName_types=Types
+CustomizationEditor_selectAnIcon=Select an icon:
+CustomizationEditor_strikethrough=Strikethrough
+CustomizationEditor_text=Text
+CustomizationEditor_Title_cleanCustomization=Clean customization
+CustomizationEditor_underlined=Underlined
+CustomizationEditor_unknown=<unknown>
+CustomizationEditor_up=&Up
+CustomizationEditor_visible=Visible
+CustomizationEditor_metaclassVisible=Visible in Types Panel
+CustomizationEditor_youChangedMetamodel=You have changed the metamodel.\n
+CustomizationPropertiesDialog_customizationProperties=Customization Properties
+CustomizationPropertiesDialog_metamodel=Metamodel
+CustomizationPropertiesDialog_metamodelMustBeSelected=A metamodel must be selected
+CustomizationPropertiesDialog_noMetamodelSelected=No metamodel selected
+CustomizationPropertiesDialog_querySets=Query Sets
+CustomizationViewer_backgroundColor=Background Color
+CustomizationViewer_collapseLink=Collapse Link
+CustomizationViewer_defaultValue=<default value>
+CustomizationViewer_feature=Feature
+CustomizationViewer_hideMetaclassName=Hide Metaclass Name
+CustomizationViewer_typeIcon=Type Icon
+CustomizationViewer_isBold=Is Bold
+CustomizationViewer_isItalic=Is Italic
+CustomizationViewer_isStruckthrough=Is Struckthrough
+CustomizationViewer_isUnderlined=Is Underlined
+CustomizationViewer_isVisible=Is Visible
+CustomizationViewer_metaclassVisible=Visible in Types Panel
+CustomizationViewer_label=Label
+CustomizationViewer_instanceIcon=Instance Icon
+CustomizationViewer_overlayIcon=Overlay Icon
+CustomizationViewer_textColor=Text Color
+CustomizationViewer_textFontName=Text Font Name
+CustomizationViewer_value=Value
+ErrorsDialog_diagnosticMessage={0}\nin: {1}\nline: {2} column: {3}
+ErrorsDialog_errors=Errors
+MetaclassViewToolBar_showDerivedLinks=Show Derived Links
+MetaclassViewToolBar_showFullQualifiedNames=Show Full Qualified Names
+MetaclassViewToolBar_showMultiplicity=Show Multiplicity
+MetaclassViewToolBar_sortLinks=Sort Links
+MetaclassViewToolBar_sortLinksByType=Sort Links by Type
+EditFeatureValueDialog_conditionQueryMustBeSelected=A condition query must be selected
+EditFeatureValueDialog_defaultValue=Default value
+EditFeatureValueDialog_editFeatureValue=Edit Feature Value
+EditFeatureValueDialog_featureValue=Feature value
+EditFeatureValueDialog_noConditionQuerySelected=No condition query selected
+EditFeatureValueDialog_noQuerySelected=No query selected
+EditFeatureValueDialog_queryForCondition=Query for condition
+EditFeatureValueDialog_queryMustBeSelected=A query must be selected
+EditFeatureValueDialog_queryValue=Value computed by a query
+EditFeatureValueDialog_staticValue=Static value
+EditFeatureValueDialog_type=Type
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/plugin.properties b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/plugin.properties
new file mode 100644
index 00000000000..05ded8b915f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/plugin.properties
@@ -0,0 +1,150 @@
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+# Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+# Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+
+pluginName = EMF Facet Custom Editor (Incubation)
+providerName = Eclipse Modeling Project
+
+_UI_CustomEditor_menu = &Custom Editor
+
+_UI_CreateChild_menu_item = &New Child
+_UI_CreateSibling_menu_item = N&ew Sibling
+
+_UI_ShowPropertiesView_menu_item = Show &Properties View
+_UI_RefreshViewer_menu_item = &Refresh
+
+_UI_SelectionPage_label = Selection
+_UI_ParentPage_label = Parent
+_UI_ListPage_label = List
+_UI_TreePage_label = Tree
+_UI_TablePage_label = Table
+_UI_TreeWithColumnsPage_label = Tree with Columns
+_UI_ObjectColumn_label = Object
+_UI_SelfColumn_label = Self
+
+_UI_NoObjectSelected = Selected Nothing
+_UI_SingleObjectSelected = Selected Object: {0}
+_UI_MultiObjectSelected = Selected {0} Objects
+
+_UI_OpenEditorError_label = Open Editor
+
+_UI_Wizard_category = Example EMF Model Creation Wizards
+
+_UI_CreateModelError_message = Problems encountered in file "{0}"
+
+_UI_CustomModelWizard_label = Custom Model
+_UI_CustomModelWizard_description = Create a new Custom model
+
+_UI_CustomEditor_label = Custom Model Editor
+
+_UI_CustomEditorFilenameDefaultBase = My
+_UI_CustomEditorFilenameExtensions = custom
+
+_UI_Wizard_label = New
+
+_WARN_FilenameExtension = The file name must end in ''.{0}''
+_WARN_FilenameExtensions = The file name must have one of the following extensions: {0}
+
+_UI_ModelObject = &Model Object
+_UI_XMLEncoding = &XML Encoding
+_UI_XMLEncodingChoices = UTF-8 ASCII UTF-16 UTF-16BE UTF-16LE ISO-8859-1
+_UI_Wizard_initial_object_description = Select a model object to create
+
+_UI_FileConflict_label = File Conflict
+_WARN_FileConflict = There are unsaved changes that conflict with changes made outside the editor. Do you wish to discard this editor's changes?
+
+CustomizationEditor_add=&Add...
+CustomizationEditor_appliesToSubInstances=Applies to &Sub-Instances
+CustomizationEditor_bold=Bold
+CustomizationEditor_btnOpenElementSelectionDialogText=...
+CustomizationEditor_btnOpenFontDialogText=...
+CustomizationEditor_btnProperties=&Properties
+CustomizationEditor_btnTooltipViewErrors=View errors
+CustomizationEditor_cannotFindMetamodel=Couldn't find metamodel with URI "{0}"
+CustomizationEditor_changeProperties=Change Properties
+CustomizationEditor_collapseLink=Collapse link
+CustomizationEditor_conditions=Conditions :
+CustomizationEditor_conflictingUnsavedChanges=There are unsaved changes that conflict with changes made outside the editor. Do you wish to discard this editor's changes?
+CustomizationEditor_customizationsWillBeDeleted=All the customizations for metaclass "{0}" will be deleted. Are you sure?
+CustomizationEditor_customViewFor=custom view for "{0}" ({1})
+CustomizationEditor_down=&Down
+CustomizationEditor_edit=&Edit...
+CustomizationEditor_editFeatureValue=Edit feature &value...
+CustomizationEditor_error=Error
+CustomizationEditor_errorLoadingResource=Error loading resource. See log for more information.
+CustomizationEditor_fileConflict=File Conflict
+CustomizationEditor_hideMetaclassName=Hide metaclass name
+CustomizationEditor_iconSelection=Icon selection
+CustomizationEditor_invalidSelection=Invalid selection
+CustomizationEditor_italic=Italic
+CustomizationEditor_missingQuery=Couldn't find Query named "{0}" in query set "{1}".
+CustomizationEditor_missingQuerySet=Couldn't find Query Set named "{0}".
+CustomizationEditor_nonExistingQuery=Non-existing Query
+CustomizationEditor_nonExistingQuerySet=Non-existing Query Set
+CustomizationEditor_notFileSelected=You haven't selected a file
+CustomizationEditor_promptCleanCustomizations=Do you want to remove customizations that don't correspond to the new metamodel?
+CustomizationEditor_readonly=READONLY
+CustomizationEditor_remove=&Remove
+CustomizationEditor_removeIrrelevantCustomizations=Remove Irrelevant Customizations
+CustomizationEditor_resetDefaults=Reset Defaults
+CustomizationEditor_sectionName_customizations=Customizations
+CustomizationEditor_sectionName_types=Types
+CustomizationEditor_selectAnIcon=Select an icon:
+CustomizationEditor_strikethrough=Strikethrough
+CustomizationEditor_text=Text
+CustomizationEditor_Title_cleanCustomization=Clean customization
+CustomizationEditor_underlined=Underlined
+CustomizationEditor_unknown=<unknown>
+CustomizationEditor_up=&Up
+CustomizationEditor_visible=Visible
+CustomizationEditor_metaclassVisible=Visible in Types Panel
+CustomizationEditor_youChangedMetamodel=You have changed the metamodel.\n
+CustomizationPropertiesDialog_customizationProperties=Customization Properties
+CustomizationPropertiesDialog_metamodel=Metamodel
+CustomizationPropertiesDialog_metamodelMustBeSelected=A metamodel must be selected
+CustomizationPropertiesDialog_noMetamodelSelected=No metamodel selected
+CustomizationPropertiesDialog_querySets=Query Sets
+CustomizationViewer_backgroundColor=Background Color
+CustomizationViewer_collapseLink=Collapse Link
+CustomizationViewer_defaultValue=<default value>
+CustomizationViewer_feature=Feature
+CustomizationViewer_hideMetaclassName=Hide Metaclass Name
+CustomizationViewer_typeIcon=Type Icon
+CustomizationViewer_isBold=Is Bold
+CustomizationViewer_isItalic=Is Italic
+CustomizationViewer_isStruckthrough=Is Struckthrough
+CustomizationViewer_isUnderlined=Is Underlined
+CustomizationViewer_isVisible=Is Visible
+CustomizationViewer_metaclassVisible=Visible in Types Panel
+CustomizationViewer_label=Label
+CustomizationViewer_instanceIcon=Instance Icon
+CustomizationViewer_overlayIcon=Overlay Icon
+CustomizationViewer_textColor=Text Color
+CustomizationViewer_textFontName=Text Font Name
+CustomizationViewer_value=Value
+ErrorsDialog_diagnosticMessage={0}\nin: {1}\nline: {2} column: {3}
+ErrorsDialog_errors=Errors
+MetaclassViewToolBar_showDerivedLinks=Show Derived Links
+MetaclassViewToolBar_showFullQualifiedNames=Show Full Qualified Names
+MetaclassViewToolBar_showMultiplicity=Show Multiplicity
+MetaclassViewToolBar_sortLinks=Sort Links
+MetaclassViewToolBar_sortLinksByType=Sort Links by Type
+EditFeatureValueDialog_conditionQueryMustBeSelected=A condition query must be selected
+EditFeatureValueDialog_defaultValue=Default value
+EditFeatureValueDialog_editFeatureValue=Edit Feature Value
+EditFeatureValueDialog_featureValue=Feature value
+EditFeatureValueDialog_noConditionQuerySelected=No condition query selected
+EditFeatureValueDialog_noQuerySelected=No query selected
+EditFeatureValueDialog_queryForCondition=Query for condition
+EditFeatureValueDialog_queryMustBeSelected=A query must be selected
+EditFeatureValueDialog_queryValue=Value computed by a query
+EditFeatureValueDialog_staticValue=Static value
+EditFeatureValueDialog_type=Type
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/plugin.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/plugin.xml
new file mode 100644
index 00000000000..ed9a7acb236
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/plugin.xml
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+-->
+
+<plugin>
+
+ <extension point="org.eclipse.ui.newWizards">
+ <category
+ id="org.eclipse.emf.ecore.Wizard.category.ID"
+ name="%_UI_Wizard_category"/>
+ <wizard
+ id="org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation.CustomModelWizardID"
+ name="%_UI_CustomModelWizard_label"
+ class="org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation.CustomModelWizard"
+ category="org.eclipse.emf.ecore.Wizard.category.ID"
+ icon="icons/full/obj16/CustomModelFile.gif">
+ <description>%_UI_CustomModelWizard_description</description>
+ <selection class="org.eclipse.core.resources.IResource"/>
+ </wizard>
+ </extension>
+
+ <extension point="org.eclipse.ui.editors">
+ <editor
+ id="org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation.CustomEditorID"
+ name="%_UI_CustomEditor_label"
+ icon="icons/full/obj16/CustomModelFile.gif"
+ extensions="custom"
+ class="org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation.CustomEditor"
+ contributorClass="org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation.CustomActionBarContributor">
+ </editor>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/Activator.java b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/Activator.java
new file mode 100644
index 00000000000..17b82a09d3f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/Activator.java
@@ -0,0 +1,53 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+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.facet.custom.metamodel.editor"; //$NON-NLS-1$
+
+ /** The shared instance */
+ private static Activator plugin;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ // nothing
+ }
+
+ @Override
+ public void start(final BundleContext context) throws Exception {
+ super.start(context);
+ Activator.plugin = this;
+ }
+
+ @Override
+ public void stop(final BundleContext context) throws Exception {
+ Activator.plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return Activator.plugin;
+ }
+
+} \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/ColorProvider.java b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/ColorProvider.java
new file mode 100644
index 00000000000..f19f3ff5ea3
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/ColorProvider.java
@@ -0,0 +1,66 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2010 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *
+ *******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+import org.eclipse.jface.resource.JFaceColors;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.RGB;
+import org.eclipse.swt.widgets.Display;
+
+public final class ColorProvider {
+
+ private static ColorProvider instance;
+
+ public static ColorProvider getInstance() {
+ if (ColorProvider.instance == null) {
+ ColorProvider.instance = new ColorProvider();
+ }
+ return ColorProvider.instance;
+ }
+
+ /** The color used for elements that are empty or not used */
+ private final Color gray;
+ /** The color used for elements that are not part of the first resource */
+ private final Color externalResourceColor;
+ /** The color used for elements that are not in any resource */
+ private final Color nullResourceColor;
+
+ private ColorProvider() {
+ final Display display = Display.getCurrent();
+
+ final RGB rgbGray = new RGB(128, 128, 128);
+ this.gray = new Color(display, rgbGray);
+
+ final RGB rgbBlue = new RGB(0, 0, 255);
+ this.externalResourceColor = new Color(display, rgbBlue);
+
+ final RGB rgbDarkRed = new RGB(192, 0, 0);
+ this.nullResourceColor = new Color(display, rgbDarkRed);
+ }
+
+ public Color getGray() {
+ return this.gray;
+ }
+
+ public Color getExternalResourceColor() {
+ return this.externalResourceColor;
+ }
+
+ public Color getNullResourceColor() {
+ return this.nullResourceColor;
+ }
+
+ public Color getUnresolvedProxyColor() {
+ return JFaceColors.getErrorText(Display.getCurrent());
+ }
+}
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomActionBarContributor.java b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomActionBarContributor.java
new file mode 100644
index 00000000000..9179e92431e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomActionBarContributor.java
@@ -0,0 +1,434 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.ui.viewer.IViewerProvider;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+
+import org.eclipse.emf.edit.ui.action.ControlAction;
+import org.eclipse.emf.edit.ui.action.CreateChildAction;
+import org.eclipse.emf.edit.ui.action.CreateSiblingAction;
+import org.eclipse.emf.edit.ui.action.EditingDomainActionBarContributor;
+import org.eclipse.emf.edit.ui.action.LoadResourceAction;
+import org.eclipse.emf.edit.ui.action.ValidateAction;
+
+import org.eclipse.jface.action.Action;
+import org.eclipse.jface.action.ActionContributionItem;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.action.IContributionItem;
+import org.eclipse.jface.action.IContributionManager;
+import org.eclipse.jface.action.IMenuListener;
+import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.action.IToolBarManager;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.action.Separator;
+import org.eclipse.jface.action.SubContributionItem;
+
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.ISelectionProvider;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.Viewer;
+
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.PartInitException;
+
+/**
+ * This is the action bar contributor for the Custom model editor.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CustomActionBarContributor
+ extends EditingDomainActionBarContributor
+ implements ISelectionChangedListener {
+ /**
+ * This keeps track of the active editor.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IEditorPart activeEditorPart;
+
+ /**
+ * This keeps track of the current selection provider.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ISelectionProvider selectionProvider;
+
+ /**
+ * This action opens the Properties view.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IAction showPropertiesViewAction =
+ new Action(CustomEditorPlugin.INSTANCE.getString("_UI_ShowPropertiesView_menu_item")) {
+ @Override
+ public void run() {
+ try {
+ getPage().showView("org.eclipse.ui.views.PropertySheet");
+ }
+ catch (PartInitException exception) {
+ CustomEditorPlugin.INSTANCE.log(exception);
+ }
+ }
+ };
+
+ /**
+ * This action refreshes the viewer of the current editor if the editor
+ * implements {@link org.eclipse.emf.common.ui.viewer.IViewerProvider}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IAction refreshViewerAction =
+ new Action(CustomEditorPlugin.INSTANCE.getString("_UI_RefreshViewer_menu_item")) {
+ @Override
+ public boolean isEnabled() {
+ return activeEditorPart instanceof IViewerProvider;
+ }
+
+ @Override
+ public void run() {
+ if (activeEditorPart instanceof IViewerProvider) {
+ Viewer viewer = ((IViewerProvider)activeEditorPart).getViewer();
+ if (viewer != null) {
+ viewer.refresh();
+ }
+ }
+ }
+ };
+
+ /**
+ * This will contain one {@link org.eclipse.emf.edit.ui.action.CreateChildAction} corresponding to each descriptor
+ * generated for the current selection by the item provider.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<IAction> createChildActions;
+
+ /**
+ * This is the menu manager into which menu contribution items should be added for CreateChild actions.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IMenuManager createChildMenuManager;
+
+ /**
+ * This will contain one {@link org.eclipse.emf.edit.ui.action.CreateSiblingAction} corresponding to each descriptor
+ * generated for the current selection by the item provider.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<IAction> createSiblingActions;
+
+ /**
+ * This is the menu manager into which menu contribution items should be added for CreateSibling actions.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IMenuManager createSiblingMenuManager;
+
+ /**
+ * This creates an instance of the contributor.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomActionBarContributor() {
+ super(ADDITIONS_LAST_STYLE);
+ loadResourceAction = new LoadResourceAction();
+ validateAction = new ValidateAction();
+ controlAction = new ControlAction();
+ }
+
+ /**
+ * This adds Separators for editor additions to the tool bar.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void contributeToToolBar(IToolBarManager toolBarManager) {
+ toolBarManager.add(new Separator("custom-settings"));
+ toolBarManager.add(new Separator("custom-additions"));
+ }
+
+ /**
+ * This adds to the menu bar a menu and some separators for editor additions,
+ * as well as the sub-menus for object creation items.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void contributeToMenu(IMenuManager menuManager) {
+ super.contributeToMenu(menuManager);
+
+ IMenuManager submenuManager = new MenuManager(CustomEditorPlugin.INSTANCE.getString("_UI_CustomEditor_menu"), "org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customMenuID");
+ menuManager.insertAfter("additions", submenuManager);
+ submenuManager.add(new Separator("settings"));
+ submenuManager.add(new Separator("actions"));
+ submenuManager.add(new Separator("additions"));
+ submenuManager.add(new Separator("additions-end"));
+
+ // Prepare for CreateChild item addition or removal.
+ //
+ createChildMenuManager = new MenuManager(CustomEditorPlugin.INSTANCE.getString("_UI_CreateChild_menu_item"));
+ submenuManager.insertBefore("additions", createChildMenuManager);
+
+ // Prepare for CreateSibling item addition or removal.
+ //
+ createSiblingMenuManager = new MenuManager(CustomEditorPlugin.INSTANCE.getString("_UI_CreateSibling_menu_item"));
+ submenuManager.insertBefore("additions", createSiblingMenuManager);
+
+ // Force an update because Eclipse hides empty menus now.
+ //
+ submenuManager.addMenuListener
+ (new IMenuListener() {
+ public void menuAboutToShow(IMenuManager menuManager) {
+ menuManager.updateAll(true);
+ }
+ });
+
+ addGlobalActions(submenuManager);
+ }
+
+ /**
+ * When the active editor changes, this remembers the change and registers with it as a selection provider.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+// @Override
+// public void setActiveEditor(IEditorPart part) {
+// super.setActiveEditor(part);
+// activeEditorPart = part;
+//
+// // Switch to the new selection provider.
+// //
+// if (selectionProvider != null) {
+// selectionProvider.removeSelectionChangedListener(this);
+// }
+// if (part == null) {
+// selectionProvider = null;
+// }
+// else {
+// selectionProvider = part.getSite().getSelectionProvider();
+// selectionProvider.addSelectionChangedListener(this);
+//
+// // Fake a selection changed event to update the menus.
+// //
+// if (selectionProvider.getSelection() != null) {
+// selectionChanged(new SelectionChangedEvent(selectionProvider, selectionProvider.getSelection()));
+// }
+// }
+// }
+
+ /**
+ * This implements {@link org.eclipse.jface.viewers.ISelectionChangedListener},
+ * handling {@link org.eclipse.jface.viewers.SelectionChangedEvent}s by querying for the children and siblings
+ * that can be added to the selected object and updating the menus accordingly.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void selectionChanged(SelectionChangedEvent event) {
+ // Remove any menu items for old selection.
+ //
+ if (createChildMenuManager != null) {
+ depopulateManager(createChildMenuManager, createChildActions);
+ }
+ if (createSiblingMenuManager != null) {
+ depopulateManager(createSiblingMenuManager, createSiblingActions);
+ }
+
+ // Query the new selection for appropriate new child/sibling descriptors
+ //
+ Collection<?> newChildDescriptors = null;
+ Collection<?> newSiblingDescriptors = null;
+
+ ISelection selection = event.getSelection();
+ if (selection instanceof IStructuredSelection && ((IStructuredSelection)selection).size() == 1) {
+ Object object = ((IStructuredSelection)selection).getFirstElement();
+
+ EditingDomain domain = ((IEditingDomainProvider)activeEditorPart).getEditingDomain();
+
+ newChildDescriptors = domain.getNewChildDescriptors(object, null);
+ newSiblingDescriptors = domain.getNewChildDescriptors(null, object);
+ }
+
+ // Generate actions for selection; populate and redraw the menus.
+ //
+ createChildActions = generateCreateChildActions(newChildDescriptors, selection);
+ createSiblingActions = generateCreateSiblingActions(newSiblingDescriptors, selection);
+
+ if (createChildMenuManager != null) {
+ populateManager(createChildMenuManager, createChildActions, null);
+ createChildMenuManager.update(true);
+ }
+ if (createSiblingMenuManager != null) {
+ populateManager(createSiblingMenuManager, createSiblingActions, null);
+ createSiblingMenuManager.update(true);
+ }
+ }
+
+ /**
+ * This generates a {@link org.eclipse.emf.edit.ui.action.CreateChildAction} for each object in <code>descriptors</code>,
+ * and returns the collection of these actions.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<IAction> generateCreateChildActions(Collection<?> descriptors, ISelection selection) {
+ Collection<IAction> actions = new ArrayList<IAction>();
+ if (descriptors != null) {
+ for (Object descriptor : descriptors) {
+ actions.add(new CreateChildAction(activeEditorPart, selection, descriptor));
+ }
+ }
+ return actions;
+ }
+
+ /**
+ * This generates a {@link org.eclipse.emf.edit.ui.action.CreateSiblingAction} for each object in <code>descriptors</code>,
+ * and returns the collection of these actions.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<IAction> generateCreateSiblingActions(Collection<?> descriptors, ISelection selection) {
+ Collection<IAction> actions = new ArrayList<IAction>();
+ if (descriptors != null) {
+ for (Object descriptor : descriptors) {
+ actions.add(new CreateSiblingAction(activeEditorPart, selection, descriptor));
+ }
+ }
+ return actions;
+ }
+
+ /**
+ * This populates the specified <code>manager</code> with {@link org.eclipse.jface.action.ActionContributionItem}s
+ * based on the {@link org.eclipse.jface.action.IAction}s contained in the <code>actions</code> collection,
+ * by inserting them before the specified contribution item <code>contributionID</code>.
+ * If <code>contributionID</code> is <code>null</code>, they are simply added.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void populateManager(IContributionManager manager, Collection<? extends IAction> actions, String contributionID) {
+ if (actions != null) {
+ for (IAction action : actions) {
+ if (contributionID != null) {
+ manager.insertBefore(contributionID, action);
+ }
+ else {
+ manager.add(action);
+ }
+ }
+ }
+ }
+
+ /**
+ * This removes from the specified <code>manager</code> all {@link org.eclipse.jface.action.ActionContributionItem}s
+ * based on the {@link org.eclipse.jface.action.IAction}s contained in the <code>actions</code> collection.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void depopulateManager(IContributionManager manager, Collection<? extends IAction> actions) {
+ if (actions != null) {
+ IContributionItem[] items = manager.getItems();
+ for (int i = 0; i < items.length; i++) {
+ // Look into SubContributionItems
+ //
+ IContributionItem contributionItem = items[i];
+ while (contributionItem instanceof SubContributionItem) {
+ contributionItem = ((SubContributionItem)contributionItem).getInnerItem();
+ }
+
+ // Delete the ActionContributionItems with matching action.
+ //
+ if (contributionItem instanceof ActionContributionItem) {
+ IAction action = ((ActionContributionItem)contributionItem).getAction();
+ if (actions.contains(action)) {
+ manager.remove(contributionItem);
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * This populates the pop-up menu before it appears.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void menuAboutToShow(IMenuManager menuManager) {
+ super.menuAboutToShow(menuManager);
+ MenuManager submenuManager = null;
+
+ submenuManager = new MenuManager(CustomEditorPlugin.INSTANCE.getString("_UI_CreateChild_menu_item"));
+ populateManager(submenuManager, createChildActions, null);
+ menuManager.insertBefore("edit", submenuManager);
+
+ submenuManager = new MenuManager(CustomEditorPlugin.INSTANCE.getString("_UI_CreateSibling_menu_item"));
+ populateManager(submenuManager, createSiblingActions, null);
+ menuManager.insertBefore("edit", submenuManager);
+ }
+
+ /**
+ * This inserts global actions before the "additions-end" separator.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected void addGlobalActions(IMenuManager menuManager) {
+ menuManager.insertAfter("additions-end", new Separator("ui-actions"));
+ menuManager.insertAfter("ui-actions", showPropertiesViewAction);
+
+ refreshViewerAction.setEnabled(refreshViewerAction.isEnabled());
+ menuManager.insertAfter("ui-actions", refreshViewerAction);
+
+ super.addGlobalActions(menuManager);
+ }
+
+ /**
+ * This ensures that a delete action will clean up all references to deleted objects.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected boolean removeAllReferencesOnDelete() {
+ return true;
+ }
+
+} \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomEditor.java b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomEditor.java
new file mode 100644
index 00000000000..6bff3822125
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomEditor.java
@@ -0,0 +1,2019 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URISyntaxException;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.EventObject;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.logging.Logger;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IResourceChangeEvent;
+import org.eclipse.core.resources.IResourceChangeListener;
+import org.eclipse.core.resources.IResourceDelta;
+import org.eclipse.core.resources.IResourceDeltaVisitor;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.emf.common.command.BasicCommandStack;
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.common.command.CommandStack;
+import org.eclipse.emf.common.command.CommandStackListener;
+import org.eclipse.emf.common.ui.MarkerHelper;
+import org.eclipse.emf.common.ui.URIEditorInput;
+import org.eclipse.emf.common.ui.ViewerPane;
+import org.eclipse.emf.common.ui.editor.ProblemEditorPart;
+import org.eclipse.emf.common.ui.viewer.IViewerProvider;
+import org.eclipse.emf.common.util.BasicDiagnostic;
+import org.eclipse.emf.common.util.Diagnostic;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EValidator;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.edit.command.MoveCommand;
+import org.eclipse.emf.edit.command.RemoveCommand;
+import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+import org.eclipse.emf.edit.provider.AdapterFactoryItemDelegator;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.ReflectiveItemProviderAdapterFactory;
+import org.eclipse.emf.edit.provider.resource.ResourceItemProviderAdapterFactory;
+import org.eclipse.emf.edit.ui.action.EditingDomainActionBarContributor;
+import org.eclipse.emf.edit.ui.celleditor.AdapterFactoryTreeEditor;
+import org.eclipse.emf.edit.ui.dnd.EditingDomainViewerDropAdapter;
+import org.eclipse.emf.edit.ui.dnd.LocalTransfer;
+import org.eclipse.emf.edit.ui.dnd.ViewerDragAdapter;
+import org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvider;
+import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider;
+import org.eclipse.emf.edit.ui.provider.UnwrappingSelectionProvider;
+import org.eclipse.emf.edit.ui.util.EditUIMarkerHelper;
+import org.eclipse.emf.edit.ui.view.ExtendedPropertySheetPage;
+import org.eclipse.jface.action.IMenuListener;
+import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.action.IStatusLineManager;
+import org.eclipse.jface.action.IToolBarManager;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.action.Separator;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.dialogs.ProgressMonitorDialog;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.ISelectionProvider;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.ITreeSelection;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.viewers.StructuredViewer;
+import org.eclipse.jface.viewers.TreeSelection;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.provider.CustomItemProviderAdapterFactory;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.dialog.ICustomizationDialogFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.provider.ExtensibleItemProviderAdapterFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.EFacetItemProviderAdapterFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.provider.QueryItemProviderAdapterFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.provider.RuntimeItemProviderAdapterFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.provider.SerializationItemProviderAdapterFactory;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.custom.SashForm;
+import org.eclipse.swt.dnd.DND;
+import org.eclipse.swt.dnd.Transfer;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Menu;
+import org.eclipse.swt.widgets.Tree;
+import org.eclipse.ui.IActionBars;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IEditorSite;
+import org.eclipse.ui.IFileEditorInput;
+import org.eclipse.ui.IPartListener;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.actions.WorkspaceModifyOperation;
+import org.eclipse.ui.dialogs.SaveAsDialog;
+import org.eclipse.ui.forms.widgets.ExpandableComposite;
+import org.eclipse.ui.forms.widgets.Form;
+import org.eclipse.ui.forms.widgets.FormToolkit;
+import org.eclipse.ui.forms.widgets.Section;
+import org.eclipse.ui.ide.IGotoMarker;
+import org.eclipse.ui.part.EditorPart;
+import org.eclipse.ui.part.FileEditorInput;
+import org.eclipse.ui.views.contentoutline.ContentOutline;
+import org.eclipse.ui.views.contentoutline.ContentOutlinePage;
+import org.eclipse.ui.views.contentoutline.IContentOutlinePage;
+import org.eclipse.ui.views.properties.IPropertySheetPage;
+import org.eclipse.ui.views.properties.PropertySheet;
+import org.eclipse.ui.views.properties.PropertySheetPage;
+
+
+/**
+ * This is an example of a Custom model editor.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CustomEditor
+extends EditorPart
+implements IGotoMarker, ISelectionProvider, IMenuListener, IEditingDomainProvider, IViewerProvider {
+
+ protected Customization mainCustomization;
+
+ protected ComposedAdapterFactory adapterFactory;
+
+ protected CustomViewer customizationViewer;
+
+ /**
+ * Resources that have been changed since last activation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<Resource> changedResources = new ArrayList<Resource>();
+
+ /**
+ * Resources that have been saved.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<Resource> savedResources = new ArrayList<Resource>();
+
+ /**
+ * Resources that have been removed since last activation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<Resource> removedResources = new ArrayList<Resource>();
+
+ /**
+ * This keeps track of the selection of the editor as a whole.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ISelection editorSelection = StructuredSelection.EMPTY;
+
+ /**
+ * This listens to which ever viewer is active.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ISelectionChangedListener selectionChangedListener;
+
+ /**
+ * This keeps track of all the {@link org.eclipse.jface.viewers.ISelectionChangedListener}s that are listening to this editor.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<ISelectionChangedListener> selectionChangedListeners = new ArrayList<ISelectionChangedListener>();
+
+ /**
+ * Controls whether the problem indication should be updated.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected boolean updateProblemIndication = true;
+
+ /**
+ * This is the content outline page's viewer.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TreeViewer contentOutlineViewer;
+
+ /**
+ * This is a kludge...
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IStatusLineManager contentOutlineStatusLineManager;
+
+ /**
+ * Map to store the diagnostic associated with a resource.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Map<Resource, Diagnostic> resourceToDiagnosticMap = new LinkedHashMap<Resource, Diagnostic>();
+
+ /**
+ * The MarkerHelper is responsible for creating workspace resource markers presented
+ * in Eclipse's Problems View.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected MarkerHelper markerHelper = new EditUIMarkerHelper();
+
+ /**
+ * This is the property sheet page.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected PropertySheetPage propertySheetPage;
+
+ /**
+ * This is the content outline page.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IContentOutlinePage contentOutlinePage;
+
+ protected Composite buttonsPaneComposite;
+
+ private static final int VERTICAL_SPACE_BETWEEN_BUTTON_GROUPS = 30;
+ private static final int VERTICAL_SPACE_BEFORE_FIRST_BUTTON = 10;
+ public static final String ID = "org.eclipse.papyrus.emf.facet.infra.browser.custom.editor"; //$NON-NLS-1$
+ private static final int MAIN_FORM_MARGIN_WIDTH = 4;
+ private static final int MAIN_FORM_MARGIN_HEIGHT = 6;
+ private static final int LEFT_PANE_SASH_WEIGHT = 400;
+ private static final int RIGHT_PANE_SASH_WEIGHT = 600;
+
+ private TreeViewer selectionViewer;
+ private Button btnEdit;
+ private Button btnRemove;
+ private Button btnUp;
+ private Button btnDown;
+ private Button cbAppliesToSubinstances;
+ private FormToolkit toolkit;
+ private boolean readOnly;
+
+ protected int listenerCounter = 0;
+
+ private Form fForm;
+ private AdapterFactoryEditingDomain editingDomain;
+
+ public CustomEditor() {
+ super();
+ initializeEditingDomain();
+ }
+
+ /**
+ * This sets up the editing domain for the model editor.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void initializeEditingDomain() {
+ // Create an adapter factory that yields item providers.
+ //
+ adapterFactory = new ComposedAdapterFactory(ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
+
+ adapterFactory.addAdapterFactory(new ResourceItemProviderAdapterFactory());
+ adapterFactory.addAdapterFactory(new CustomItemProviderAdapterFactory());
+ adapterFactory.addAdapterFactory(new EFacetItemProviderAdapterFactory());
+ adapterFactory.addAdapterFactory(new SerializationItemProviderAdapterFactory());
+ adapterFactory.addAdapterFactory(new ExtensibleItemProviderAdapterFactory());
+ adapterFactory.addAdapterFactory(new QueryItemProviderAdapterFactory());
+ adapterFactory.addAdapterFactory(new RuntimeItemProviderAdapterFactory());
+ adapterFactory.addAdapterFactory(new ReflectiveItemProviderAdapterFactory());
+
+ // Create the command stack that will notify this editor as commands are executed.
+ //
+ BasicCommandStack commandStack = new BasicCommandStack();
+
+ // Add a listener to set the most recent command's affected objects to be the selection of the viewer with focus.
+ //
+ commandStack.addCommandStackListener
+ (new CommandStackListener() {
+ public void commandStackChanged(final EventObject event) {
+ getSite().getShell().getDisplay().asyncExec
+ (new Runnable() {
+ public void run() {
+ firePropertyChange(IEditorPart.PROP_DIRTY);
+ //setDirty(commandStack.isSaveNeeded());
+ // Try to select the affected objects.
+ //
+ Command mostRecentCommand = ((CommandStack)event.getSource()).getMostRecentCommand();
+ if (mostRecentCommand != null) {
+ setSelectionToViewer(mostRecentCommand.getAffectedObjects());
+ }
+ if (propertySheetPage != null && !propertySheetPage.getControl().isDisposed()) {
+ propertySheetPage.refresh();
+ }
+ }
+ });
+ }
+ });
+
+ // Create the editing domain with a special command stack.
+ //
+ editingDomain = new AdapterFactoryEditingDomain(adapterFactory, commandStack, new HashMap<Resource, Boolean>());
+ }
+
+ @Override
+ public void init(final IEditorSite site, final IEditorInput input) throws PartInitException {
+ setSite(site);
+ setInputWithNotify(input);
+ setPartName(input.getName());
+ site.setSelectionProvider(this);
+ site.getPage().addPartListener(partListener);
+ ResourcesPlugin.getWorkspace().addResourceChangeListener(resourceChangeListener, IResourceChangeEvent.POST_CHANGE);
+ }
+
+ /**
+ * This sets the selection into whichever viewer is active.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSelectionToViewer(Collection<?> collection) {
+ final Collection<?> theSelection = collection;
+ // Make sure it's okay.
+ //
+ if (theSelection != null && !theSelection.isEmpty()) {
+ Runnable runnable =
+ new Runnable() {
+ public void run() {
+ // Try to select the items in the current content viewer of the editor.
+ //
+ if (selectionViewer != null) {
+ selectionViewer.setSelection(new StructuredSelection(theSelection.toArray()), true);
+ }
+ }
+ };
+ getSite().getShell().getDisplay().asyncExec(runnable);
+ }
+ }
+
+ @Override
+ public void createPartControl(final Composite parent) {
+ java.net.URI locationURI;
+ String fileName = ""; //$NON-NLS-1$
+ final IEditorInput editorInput = getEditorInput();
+ if (editorInput instanceof IFileEditorInput) {
+ final IFileEditorInput fileEditorInput = (IFileEditorInput) editorInput;
+ try {
+ if (fileEditorInput.getFile().exists()) {
+ locationURI = new java.net.URI(URI.createPlatformResourceURI(
+ fileEditorInput.getFile().getFullPath().toString(), true).toString());
+ } else {
+ locationURI = fileEditorInput.getFile().getLocationURI();
+ }
+ } catch (URISyntaxException e) {
+ locationURI = fileEditorInput.getFile().getLocationURI();
+ }
+ fileName = fileEditorInput.getFile().getName();
+ } else if (editorInput instanceof URIEditorInput) {
+ final URIEditorInput uriEditorInput = (URIEditorInput) editorInput;
+ try {
+ locationURI = new java.net.URI(uriEditorInput.getURI().toString());
+ } catch (final URISyntaxException e) {
+ throw new IllegalArgumentException(e);
+ }
+ fileName = new Path(locationURI.getPath()).lastSegment();
+ } else {
+ throw new IllegalStateException("wrong kind of input: " //$NON-NLS-1$
+ + editorInput.getClass().getName());
+ }
+
+ loadResource(org.eclipse.emf.common.util.URI.createURI(locationURI.toString()));
+ setPartName(fileName);
+
+ createContents(parent);
+
+ this.selectionViewer.addSelectionChangedListener(new ISelectionChangedListener() {
+ public void selectionChanged(final SelectionChangedEvent event) {
+ if(listenerCounter == 0){
+ ISelection eventSelection = event.getSelection();
+ setSelection(eventSelection);
+ final ITreeSelection selection = (ITreeSelection) CustomEditor.this.selectionViewer
+ .getSelection();
+ listenerCounter++;
+ CustomEditor.this.handleSelectionViewerSelectionChanged(selection.getFirstElement());
+ listenerCounter = 0;
+ CustomEditor.this.customizationViewer.getViewer().getControl()
+ .setRedraw(false);
+ CustomEditor.this.customizationViewer.getViewer().expandAll();
+ CustomEditor.this.customizationViewer.getViewer().getControl()
+ .setRedraw(true);
+ }else {
+ listenerCounter = 0;
+ }
+ }
+ });
+
+ setSelection(selectionViewer == null ? StructuredSelection.EMPTY : selectionViewer.getSelection());
+ }
+
+ public void loadResource(URI resourceURI) {
+ Exception exception = null;
+ Resource resource = null;
+ try {
+ // Load the resource through the editing domain.
+ //
+ resource = editingDomain.getResourceSet().getResource(resourceURI, true);
+ }
+ catch (Exception e) {
+ exception = e;
+ resource = editingDomain.getResourceSet().getResource(resourceURI, false);
+ }
+ this.mainCustomization = (Customization) resource.getContents().get(0);
+ }
+
+ private void createContents(final Composite parent) {
+ this.toolkit = new FormToolkit(parent.getDisplay());
+ this.fForm = this.toolkit.createForm(parent);
+ this.toolkit.decorateFormHeading(this.fForm);
+
+ final FillLayout fillLayout = new FillLayout();
+ fillLayout.marginWidth = CustomEditor.MAIN_FORM_MARGIN_WIDTH;
+ fillLayout.marginHeight = CustomEditor.MAIN_FORM_MARGIN_HEIGHT;
+ this.fForm.getBody().setLayout(fillLayout);
+ createBottomPane(this.fForm.getBody());
+ }
+
+ protected IResourceChangeListener resourceChangeListener =
+ new IResourceChangeListener() {
+
+ public void resourceChanged(IResourceChangeEvent event) {
+ IResourceDelta delta = event.getDelta();
+ try {
+ class ResourceDeltaVisitor implements IResourceDeltaVisitor {
+ protected ResourceSet resourceSet = editingDomain.getResourceSet();
+ protected Collection<Resource> changedResources = new ArrayList<Resource>();
+ protected Collection<Resource> removedResources = new ArrayList<Resource>();
+
+ public boolean visit(IResourceDelta delta) {
+ if (delta.getResource().getType() == IResource.FILE) {
+ if (delta.getKind() == IResourceDelta.REMOVED ||
+ delta.getKind() == IResourceDelta.CHANGED && delta.getFlags() != IResourceDelta.MARKERS) {
+ Resource resource = resourceSet.getResource(URI.createPlatformResourceURI(delta.getFullPath().toString(), true), false);
+ if (resource != null) {
+ if (delta.getKind() == IResourceDelta.REMOVED) {
+ removedResources.add(resource);
+ }
+ else if (!savedResources.remove(resource)) {
+ changedResources.add(resource);
+ }
+ }
+ }
+ }
+
+ return true;
+ }
+
+ public Collection<Resource> getChangedResources() {
+ return changedResources;
+ }
+
+ public Collection<Resource> getRemovedResources() {
+ return removedResources;
+ }
+ }
+
+ final ResourceDeltaVisitor visitor = new ResourceDeltaVisitor();
+ delta.accept(visitor);
+
+ if (!visitor.getRemovedResources().isEmpty()) {
+ getSite().getShell().getDisplay().asyncExec
+ (new Runnable() {
+ public void run() {
+ removedResources.addAll(visitor.getRemovedResources());
+ if (!isDirty()) {
+ getSite().getPage().closeEditor(CustomEditor.this, false);
+ }
+ }
+ });
+ }
+
+ if (!visitor.getChangedResources().isEmpty()) {
+ getSite().getShell().getDisplay().asyncExec
+ (new Runnable() {
+ public void run() {
+ changedResources.addAll(visitor.getChangedResources());
+ if (getSite().getPage().getActiveEditor() == CustomEditor.this) {
+ handleActivate();
+ }
+ }
+ });
+ }
+ }
+ catch (CoreException exception) {
+ CustomEditorPlugin.INSTANCE.log(exception);
+ }
+ }
+ };
+
+ private Composite rightPaneComposite;
+
+ private Composite createBottomPane(final Composite parent) {
+ final SashForm sashForm = new FormStyleSashForm(parent, SWT.HORIZONTAL, this.toolkit) {
+ @Override
+ protected void createContents() {
+ createLeftPane(this);
+ createRightPane(this);
+ }
+ };
+
+ sashForm.setWeights(new int[] { CustomEditor.LEFT_PANE_SASH_WEIGHT,
+ CustomEditor.RIGHT_PANE_SASH_WEIGHT
+ });
+ sashForm.setSashWidth(5);
+
+ return sashForm;
+ }
+
+ private void createLeftPane(final Composite parent) {
+
+ ViewerPane viewerPane =
+ new ViewerPane(getSite().getPage(), CustomEditor.this) {
+ @Override
+ public Viewer createViewer(Composite composite) {
+ Tree tree = new Tree(composite, SWT.MULTI);
+ TreeViewer newTreeViewer = new TreeViewer(tree);
+ return newTreeViewer;
+ }
+ };
+ viewerPane.createControl(parent);
+
+ selectionViewer = (TreeViewer)viewerPane.getViewer();
+ selectionViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
+
+ selectionViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
+ selectionViewer.setInput(editingDomain.getResourceSet());
+ selectionViewer.setSelection(new StructuredSelection(editingDomain.getResourceSet().getResources().get(0)), true);
+ viewerPane.setTitle(editingDomain.getResourceSet());
+
+ new AdapterFactoryTreeEditor(selectionViewer.getTree(), adapterFactory);
+
+ createContextMenuFor(selectionViewer);
+ }
+
+ /** Right pane : treeviewer + fixed buttons pane */
+
+ private Composite createRightPane(final Composite parent) {
+ final Section section = this.toolkit.createSection(parent, ExpandableComposite.TITLE_BAR
+ | ExpandableComposite.EXPANDED);
+
+ this.rightPaneComposite = this.toolkit.createComposite(section, SWT.NONE);
+ section.setClient(rightPaneComposite);
+
+ final GridLayout gridLayout = new GridLayout(2, false);
+ gridLayout.marginHeight = 0;
+ gridLayout.marginWidth = 0;
+ rightPaneComposite.setLayout(gridLayout);
+
+ // tree + bottom options
+ final Composite middle = new Composite(rightPaneComposite, SWT.NONE);
+ final GridLayout middleLayout = new GridLayout();
+ middleLayout.marginHeight = 0;
+ middleLayout.marginWidth = 0;
+ middle.setLayout(middleLayout);
+ middle.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ this.customizationViewer = new CustomViewer(middle);
+ this.customizationViewer.getViewer().getControl()
+ .setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ final Composite optionsPane = this.toolkit.createComposite(middle);
+ optionsPane.setLayout(new GridLayout());
+ optionsPane.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
+
+ this.customizationViewer.addSelectionChangedListener(new ISelectionChangedListener() {
+ public void selectionChanged(final SelectionChangedEvent event) {
+ if(listenerCounter == 0){
+ ISelection eventSelection = event.getSelection();
+ setSelection(eventSelection);
+ final ITreeSelection selection = (ITreeSelection) CustomEditor.this.customizationViewer
+ .getSelection();
+ CustomEditor.this.handleCustomzizationViewerSelectionChanged(selection.getFirstElement());
+ listenerCounter++;
+ }else{
+ listenerCounter = 0;
+ }
+ }
+ });
+
+ if (this.readOnly) {
+ this.cbAppliesToSubinstances.setEnabled(false);
+ }
+
+ final GridData customizationViewerGridData = new GridData();
+ customizationViewerGridData.grabExcessHorizontalSpace = true;
+ customizationViewerGridData.grabExcessVerticalSpace = true;
+ customizationViewerGridData.horizontalAlignment = SWT.FILL;
+ customizationViewerGridData.verticalAlignment = SWT.FILL;
+ this.customizationViewer.getViewer().getControl()
+ .setLayoutData(customizationViewerGridData);
+
+ if (!this.readOnly) {
+ createButtonsPane(rightPaneComposite);
+ }
+
+
+ return rightPaneComposite;
+ }
+
+ private void setInputInCustomizationTreeviewer(Facet facet){
+ List<DerivedTypedElement> inputs = new ArrayList<DerivedTypedElement>();
+ inputs.addAll(facet.getFacetOperations());
+ EList<EStructuralFeature> facetElements = facet.getFacetElements();
+ for (EStructuralFeature eStructuralFeature : facetElements) {
+ if(eStructuralFeature instanceof DerivedTypedElement){
+ inputs.add((DerivedTypedElement) eStructuralFeature);
+ }
+ }
+ this.customizationViewer.setInput(inputs);
+ }
+
+ private void handleSelectionViewerSelectionChanged(final Object selectedElement) {
+ if (selectedElement instanceof EClassCustomization || selectedElement instanceof FacetCustomization) {
+ final Facet facet = (Facet) selectedElement;
+
+
+ setInputInCustomizationTreeviewer(facet);
+ buttonsPaneComposite.dispose();
+ createButtonsPaneWhenFacetIsSelected(rightPaneComposite);
+ rightPaneComposite.layout();
+ }else if(selectedElement instanceof Customization){
+ buttonsPaneComposite.dispose();
+ createButtonsPaneWhenCustomizationIsSelected(rightPaneComposite);
+ rightPaneComposite.layout();
+ }
+ else if(selectedElement instanceof DerivedTypedElement){
+ buttonsPaneComposite.dispose();
+ createButtonsPaneWhenDerivedIsSelected(rightPaneComposite);
+ rightPaneComposite.layout();
+
+
+ //Update customViewer input
+ DerivedTypedElement derivedTypeElement = (DerivedTypedElement)selectedElement;
+ Facet facet = (Facet)derivedTypeElement.eContainer();
+ List<DerivedTypedElement> inputs = new ArrayList<DerivedTypedElement>();
+ inputs.addAll(facet.getFacetOperations());
+ EList<EStructuralFeature> facetElements = facet.getFacetElements();
+ for (EStructuralFeature eStructuralFeature : facetElements) {
+ if(eStructuralFeature instanceof DerivedTypedElement){
+ inputs.add((DerivedTypedElement) eStructuralFeature);
+ }
+ }
+ this.customizationViewer.setInput(inputs);
+ this.customizationViewer.getViewer().setSelection(getSelection(), true);
+
+
+ }
+ }
+
+ private void handleCustomzizationViewerSelectionChanged(final Object selectedElement) {
+ setSelection(this.customizationViewer.getViewer().getSelection());
+
+ if (selectedElement instanceof FacetOperation|| selectedElement instanceof FacetElement) {
+ buttonsPaneComposite.dispose();
+ createButtonsPaneWhenDerivedIsSelected(rightPaneComposite);
+ rightPaneComposite.layout();
+ }
+ }
+
+ private void btnEditClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if(selectedElement instanceof TreeSelection){
+ final Object selectedObject = ((TreeSelection)selectedElement).getFirstElement();
+ if(selectedObject != null){
+ if (selectedObject instanceof Facet) {
+ IFacetDialogFactory.INSTANCE.openEditFacetDialog();
+ }else if(selectedObject instanceof FacetAttribute){
+ IFacetDialogFactory.INSTANCE.openEditFacetAttributeDialog();
+ }else if(selectedObject instanceof FacetOperation){
+ IFacetDialogFactory.INSTANCE.openEditFacetOperationDialog();
+ }else if(selectedObject instanceof FacetReference){
+ IFacetDialogFactory.INSTANCE.openEditFacetReferenceDialog();
+ }else if(selectedObject instanceof DerivedTypedElement){
+ IFacetDialogFactory.INSTANCE.openEditFacetOperationParameterDialog();
+ }else if(selectedObject instanceof Customization){
+ ICustomizationDialogFactory.DEFAULT.openAddCustomizationPropertyDialog(getSite().getShell().getDisplay(), editingDomain);
+ }
+ }
+ }
+ }
+
+ @Override
+ public void doSave(final IProgressMonitor monitor) {
+ // Save only resources that have actually changed.
+ //
+ final Map<Object, Object> saveOptions = new HashMap<Object, Object>();
+ saveOptions.put(Resource.OPTION_SAVE_ONLY_IF_CHANGED, Resource.OPTION_SAVE_ONLY_IF_CHANGED_MEMORY_BUFFER);
+
+ // Do the work within an operation because this is a long running activity that modifies the workbench.
+ //
+ WorkspaceModifyOperation operation =
+ new WorkspaceModifyOperation() {
+ // This is the method that gets invoked when the operation runs.
+ //
+ @Override
+ public void execute(IProgressMonitor monitor) {
+ // Save the resources to the file system.
+ //
+ boolean first = true;
+ for (Resource resource : editingDomain.getResourceSet().getResources()) {
+ if ((first || !resource.getContents().isEmpty() || isPersisted(resource)) && !editingDomain.isReadOnly(resource)) {
+ try {
+ long timeStamp = resource.getTimeStamp();
+ resource.save(saveOptions);
+ if (resource.getTimeStamp() != timeStamp) {
+ savedResources.add(resource);
+ }
+ }
+ catch (Exception exception) {
+ resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception));
+ }
+ first = false;
+ }
+ }
+ }
+ };
+
+ updateProblemIndication = false;
+ try {
+ // This runs the options, and shows progress.
+ //
+ new ProgressMonitorDialog(getSite().getShell()).run(true, false, operation);
+
+ // Refresh the necessary state.
+ //
+ ((BasicCommandStack)editingDomain.getCommandStack()).saveIsDone();
+ firePropertyChange(IEditorPart.PROP_DIRTY);
+ }
+ catch (Exception exception) {
+ // Something went wrong that shouldn't.
+ //
+ CustomEditorPlugin.INSTANCE.log(exception);
+ }
+ updateProblemIndication = true;
+ updateProblemIndication();
+ }
+
+ /**
+ * This returns whether something has been persisted to the URI of the specified resource.
+ * The implementation uses the URI converter from the editor's resource set to try to open an input stream.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected boolean isPersisted(Resource resource) {
+ boolean result = false;
+ try {
+ InputStream stream = editingDomain.getResourceSet().getURIConverter().createInputStream(resource.getURI());
+ if (stream != null) {
+ result = true;
+ stream.close();
+ }
+ }
+ catch (IOException e) {
+ // Ignore
+ }
+ return result;
+ }
+
+ /**
+ * This accesses a cached version of the content outliner.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IContentOutlinePage getContentOutlinePage() {
+ if (contentOutlinePage == null) {
+ // The content outline is just a tree.
+ //
+ class MyContentOutlinePage extends ContentOutlinePage {
+ @Override
+ public void createControl(Composite parent) {
+ super.createControl(parent);
+ contentOutlineViewer = getTreeViewer();
+ contentOutlineViewer.addSelectionChangedListener(this);
+
+ // Set up the tree viewer.
+ //
+ contentOutlineViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
+ contentOutlineViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
+ contentOutlineViewer.setInput(editingDomain.getResourceSet());
+
+ // Make sure our popups work.
+ //
+ createContextMenuFor(contentOutlineViewer);
+
+ if (!editingDomain.getResourceSet().getResources().isEmpty()) {
+ // Select the root object in the view.
+ //
+ contentOutlineViewer.setSelection(new StructuredSelection(editingDomain.getResourceSet().getResources().get(0)), true);
+ }
+ }
+
+ @Override
+ public void makeContributions(IMenuManager menuManager, IToolBarManager toolBarManager, IStatusLineManager statusLineManager) {
+ super.makeContributions(menuManager, toolBarManager, statusLineManager);
+ contentOutlineStatusLineManager = statusLineManager;
+ }
+
+ @Override
+ public void setActionBars(IActionBars actionBars) {
+ super.setActionBars(actionBars);
+ getActionBarContributor().shareGlobalActions(this, actionBars);
+ }
+ }
+
+ contentOutlinePage = new MyContentOutlinePage();
+
+ // Listen to selection so that we can handle it is a special way.
+ //
+ contentOutlinePage.addSelectionChangedListener
+ (new ISelectionChangedListener() {
+ // This ensures that we handle selections correctly.
+ //
+ public void selectionChanged(SelectionChangedEvent event) {
+ handleContentOutlineSelection(event.getSelection());
+ }
+ });
+ }
+
+ return contentOutlinePage;
+ }
+
+ /**
+ * This accesses a cached version of the property sheet.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IPropertySheetPage getPropertySheetPage() {
+ if (propertySheetPage == null) {
+ propertySheetPage =
+ new ExtendedPropertySheetPage(editingDomain) {
+ @Override
+ public void setSelectionToViewer(List<?> selection) {
+ CustomEditor.this.setSelectionToViewer(selection);
+ CustomEditor.this.setFocus();
+ }
+
+ @Override
+ public void setActionBars(IActionBars actionBars) {
+ super.setActionBars(actionBars);
+ getActionBarContributor().shareGlobalActions(this, actionBars);
+ }
+ };
+ propertySheetPage.setPropertySourceProvider(new AdapterFactoryContentProvider(adapterFactory));
+ }
+
+ return propertySheetPage;
+ }
+
+ /**
+ * This is how the framework determines which interfaces we implement.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("rawtypes")
+ @Override
+ public Object getAdapter(Class key) {
+ if (key.equals(IContentOutlinePage.class)) {
+ return showOutlineView() ? getContentOutlinePage() : null;
+ }
+ else if (key.equals(IPropertySheetPage.class)) {
+ return getPropertySheetPage();
+ }
+ else if (key.equals(IGotoMarker.class)) {
+ return this;
+ }
+ else {
+ return super.getAdapter(key);
+ }
+ }
+
+ /**
+ * Returns whether the outline view should be presented to the user.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected boolean showOutlineView() {
+ return true;
+ }
+
+ /**
+ * This deals with how we want selection in the outliner to affect the other views.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void handleContentOutlineSelection(ISelection selection) {
+ if (!selection.isEmpty() && selection instanceof IStructuredSelection) {
+ Iterator<?> selectedElements = ((IStructuredSelection)selection).iterator();
+ if (selectedElements.hasNext()) {
+ // Get the first selected element.
+ //
+ Object selectedElement = selectedElements.next();
+
+ // If it's the selection viewer, then we want it to select the same selection as this selection.
+ //
+ ArrayList<Object> selectionList = new ArrayList<Object>();
+ selectionList.add(selectedElement);
+ while (selectedElements.hasNext()) {
+ selectionList.add(selectedElements.next());
+ }
+
+ // Set the selection to the widget.
+ //
+ selectionViewer.setSelection(new StructuredSelection(selectionList));
+
+ }
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void doSaveAs(URI uri, IEditorInput editorInput) {
+ (editingDomain.getResourceSet().getResources().get(0)).setURI(uri);
+ setInputWithNotify(editorInput);
+ setPartName(editorInput.getName());
+ IProgressMonitor progressMonitor =
+ getActionBars().getStatusLineManager() != null ?
+ getActionBars().getStatusLineManager().getProgressMonitor() :
+ new NullProgressMonitor();
+ doSave(progressMonitor);
+ }
+ //
+ /**
+ * This is for implementing {@link IEditorPart} and simply tests the command stack.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isDirty() {
+ return ((BasicCommandStack)editingDomain.getCommandStack()).isSaveNeeded();
+ }
+
+ @Override
+ public boolean isSaveAsAllowed() {
+ return false;
+ }
+ //
+ @Override
+ public void setFocus() {
+ // nothing
+ }
+
+ @Override
+ public void dispose() {
+ updateProblemIndication = false;
+
+ ResourcesPlugin.getWorkspace().removeResourceChangeListener(resourceChangeListener);
+
+ getSite().getPage().removePartListener(partListener);
+
+ adapterFactory.dispose();
+
+ if (getActionBarContributor().getActiveEditor() == this) {
+ getActionBarContributor().setActiveEditor(null);
+ }
+
+ if (propertySheetPage != null) {
+ propertySheetPage.dispose();
+ }
+
+ if (contentOutlinePage != null) {
+ contentOutlinePage.dispose();
+ }
+
+ super.dispose();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void gotoMarker(IMarker marker) {
+ try {
+ if (marker.getType().equals(EValidator.MARKER)) {
+ String uriAttribute = marker.getAttribute(EValidator.URI_ATTRIBUTE, null);
+ if (uriAttribute != null) {
+ URI uri = URI.createURI(uriAttribute);
+ EObject eObject = editingDomain.getResourceSet().getEObject(uri, true);
+ if (eObject != null) {
+ setSelectionToViewer(Collections.singleton(editingDomain.getWrapper(eObject)));
+ }
+ }
+ }
+ }
+ catch (CoreException exception) {
+ CustomEditorPlugin.INSTANCE.log(exception);
+ }
+ }
+ //
+ private final IPartListener partListener =
+ new IPartListener() {
+ public void partActivated(IWorkbenchPart p) {
+ if (p instanceof ContentOutline) {
+ if (((ContentOutline)p).getCurrentPage() == contentOutlinePage) {
+ getActionBarContributor().setActiveEditor(CustomEditor.this);
+
+ if (selectionChangedListener == null) {
+ // Create the listener on demand.
+ //
+ selectionChangedListener =
+ new ISelectionChangedListener() {
+ // This just notifies those things that are affected by the section.
+ //
+ public void selectionChanged(SelectionChangedEvent selectionChangedEvent) {
+ setSelection(selectionChangedEvent.getSelection());
+ }
+ };
+ }
+ setSelection(selectionViewer == null ? StructuredSelection.EMPTY : selectionViewer.getSelection());
+ }
+ }
+ else if (p instanceof PropertySheet) {
+ if (((PropertySheet)p).getCurrentPage() == propertySheetPage) {
+ getActionBarContributor().setActiveEditor(CustomEditor.this);
+ handleActivate();
+ }
+ }
+ else if (p == CustomEditor.this) {
+ handleActivate();
+ if (selectionChangedListener == null) {
+ // Create the listener on demand.
+ //
+ selectionChangedListener =
+ new ISelectionChangedListener() {
+ // This just notifies those things that are affected by the section.
+ //
+ public void selectionChanged(SelectionChangedEvent selectionChangedEvent) {
+ setSelection(selectionChangedEvent.getSelection());
+ }
+ };
+ }
+ selectionViewer.addSelectionChangedListener(selectionChangedListener);
+ setSelection(selectionViewer.getSelection());
+ }
+ }
+ public void partBroughtToTop(IWorkbenchPart p) {
+ // Ignore.
+ }
+ public void partClosed(IWorkbenchPart p) {
+ // Ignore.
+ }
+ public void partDeactivated(IWorkbenchPart p) {
+ // Ignore.
+ }
+ public void partOpened(IWorkbenchPart p) {
+ // Ignore.
+ }
+ };
+
+ private Button btnAddFacetSet;
+
+ private Button btnAddFacet;
+
+ private Button btnAddEClassCustom;
+
+ private Button btnAddFacetCustom;
+
+ private Button btnAddFacetAttr;
+
+ private Button btnAddFacetRef;
+
+ private Button btnAddFacetOp;
+
+ private Button btnAddFacetParam;
+
+ /**
+ * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to return this editor's overall selection.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ISelection getSelection() {
+ return editorSelection;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EditingDomainActionBarContributor getActionBarContributor() {
+ return (EditingDomainActionBarContributor)getEditorSite().getActionBarContributor();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IActionBars getActionBars() {
+ return getActionBarContributor().getActionBars();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStatusLineManager(ISelection selection) {
+ IStatusLineManager statusLineManager = selectionViewer != null && selectionViewer == contentOutlineViewer ?
+ contentOutlineStatusLineManager : getActionBars().getStatusLineManager();
+
+ if (statusLineManager != null) {
+ if (selection instanceof IStructuredSelection) {
+ Collection<?> collection = ((IStructuredSelection)selection).toList();
+ switch (collection.size()) {
+ case 0: {
+ statusLineManager.setMessage(getString("_UI_NoObjectSelected"));
+ break;
+ }
+ case 1: {
+ String text = new AdapterFactoryItemDelegator(adapterFactory).getText(collection.iterator().next());
+ statusLineManager.setMessage(getString("_UI_SingleObjectSelected", text));
+ break;
+ }
+ default: {
+ statusLineManager.setMessage(getString("_UI_MultiObjectSelected", Integer.toString(collection.size())));
+ break;
+ }
+ }
+ }
+ else {
+ statusLineManager.setMessage("");
+ }
+ }
+ }
+
+ /**
+ * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to set this editor's overall selection.
+ * Calling this result will notify the listeners.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSelection(ISelection selection) {
+ editorSelection = selection;
+
+ for (ISelectionChangedListener listener : selectionChangedListeners) {
+ listener.selectionChanged(new SelectionChangedEvent(this, selection));
+ }
+ setStatusLineManager(selection);
+ }
+
+ /**
+ * Returns a diagnostic describing the errors and warnings listed in the resource
+ * and the specified exception (if any).
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Diagnostic analyzeResourceProblems(Resource resource, Exception exception) {
+ if (!resource.getErrors().isEmpty() || !resource.getWarnings().isEmpty()) {
+ BasicDiagnostic basicDiagnostic =
+ new BasicDiagnostic
+ (Diagnostic.ERROR,
+ "org.eclipse.papyrus.emf.facet.custom.metamodel.editor",
+ 0,
+ getString("_UI_CreateModelError_message", resource.getURI()),
+ new Object [] { exception == null ? (Object)resource : exception });
+ basicDiagnostic.merge(EcoreUtil.computeDiagnostic(resource, true));
+ return basicDiagnostic;
+ }
+ else if (exception != null) {
+ return
+ new BasicDiagnostic
+ (Diagnostic.ERROR,
+ "org.eclipse.papyrus.emf.facet.custom.metamodel.editor",
+ 0,
+ getString("_UI_CreateModelError_message", resource.getURI()),
+ new Object[] { exception });
+ }
+ else {
+ return Diagnostic.OK_INSTANCE;
+ }
+ }
+
+ /**
+ * Handles activation of the editor or it's associated views.
+ */
+ protected void handleActivate() {
+ // Recompute the read only state.
+ //
+ if (editingDomain.getResourceToReadOnlyMap() != null) {
+ editingDomain.getResourceToReadOnlyMap().clear();
+
+ // Refresh any actions that may become enabled or disabled.
+ //
+ setSelection(getSelection());
+ }
+
+ if (!removedResources.isEmpty()) {
+ if (handleDirtyConflict()) {
+ getSite().getPage().closeEditor(CustomEditor.this, false);
+ }
+ else {
+ removedResources.clear();
+ changedResources.clear();
+ savedResources.clear();
+ }
+ }
+ else if (!changedResources.isEmpty()) {
+ changedResources.removeAll(savedResources);
+ handleChangedResources();
+ changedResources.clear();
+ savedResources.clear();
+ }
+ }
+
+ /** Shows a dialog that asks if conflicting changes should be discarded. */
+ protected boolean handleDirtyConflict() {
+ return MessageDialog.openQuestion(getSite().getShell(),
+ "CustomEditor_fileConflict",
+ "CustomEditor_conflictingUnsavedChanges");
+ }
+
+ /**
+ * Updates the problems indication with the information described in the specified diagnostic.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void updateProblemIndication() {
+ if (updateProblemIndication) {
+ BasicDiagnostic diagnostic =
+ new BasicDiagnostic
+ (Diagnostic.OK,
+ "org.eclipse.papyrus.emf.facet.custom.metamodel.editor",
+ 0,
+ null,
+ new Object [] { editingDomain.getResourceSet() });
+ for (Diagnostic childDiagnostic : resourceToDiagnosticMap.values()) {
+ if (childDiagnostic.getSeverity() != Diagnostic.OK) {
+ diagnostic.add(childDiagnostic);
+ }
+ }
+
+ if (diagnostic.getSeverity() != Diagnostic.OK) {
+ ProblemEditorPart problemEditorPart = new ProblemEditorPart();
+ problemEditorPart.setDiagnostic(diagnostic);
+ problemEditorPart.setMarkerHelper(markerHelper);
+ }
+
+ if (markerHelper.hasMarkers(editingDomain.getResourceSet())) {
+ markerHelper.deleteMarkers(editingDomain.getResourceSet());
+ if (diagnostic.getSeverity() != Diagnostic.OK) {
+ try {
+ markerHelper.createMarkers(diagnostic);
+ }
+ catch (CoreException exception) {
+ CustomEditorPlugin.INSTANCE.log(exception);
+ }
+ }
+ }
+ }
+ }
+
+ /** Handles what to do with changed resources on activation. */
+ protected void handleChangedResources() {
+ if (!changedResources.isEmpty() && (!isDirty() || handleDirtyConflict())) {
+ if (isDirty()) {
+ changedResources.addAll(editingDomain.getResourceSet().getResources());
+ }
+ editingDomain.getCommandStack().flush();
+
+ updateProblemIndication = false;
+ for (Resource resource : changedResources) {
+ if (resource.isLoaded()) {
+ resource.unload();
+ try {
+ resource.load(Collections.EMPTY_MAP);
+ }
+ catch (IOException exception) {
+ if (!resourceToDiagnosticMap.containsKey(resource)) {
+ resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception));
+ }
+ }
+ }
+ }
+
+ if (AdapterFactoryEditingDomain.isStale(editorSelection)) {
+ setSelection(StructuredSelection.EMPTY);
+ }
+
+ updateProblemIndication = true;
+ updateProblemIndication();
+ }
+ }
+
+ /**
+ * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void addSelectionChangedListener(ISelectionChangedListener listener) {
+ selectionChangedListeners.add(listener);
+ }
+
+ /**
+ * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void removeSelectionChangedListener(ISelectionChangedListener listener) {
+ selectionChangedListeners.remove(listener);
+ }
+
+ /**
+ * This looks up a string in the plugin's plugin.properties file.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static String getString(String key) {
+ return CustomEditorPlugin.INSTANCE.getString(key);
+ }
+
+ /**
+ * This looks up a string in plugin.properties, making a substitution.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static String getString(String key, Object s1) {
+ return CustomEditorPlugin.INSTANCE.getString(key, new Object [] { s1 });
+ }
+
+ /**
+ * This creates a context menu for the viewer and adds a listener as well registering the menu for extension.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createContextMenuFor(StructuredViewer viewer) {
+ MenuManager contextMenu = new MenuManager("#PopUp");
+ contextMenu.add(new Separator("additions"));
+ contextMenu.setRemoveAllWhenShown(true);
+ contextMenu.addMenuListener(this);
+ Menu menu= contextMenu.createContextMenu(viewer.getControl());
+ viewer.getControl().setMenu(menu);
+ getSite().registerContextMenu(contextMenu, new UnwrappingSelectionProvider(viewer));
+
+ int dndOperations = DND.DROP_COPY | DND.DROP_MOVE | DND.DROP_LINK;
+ Transfer[] transfers = new Transfer[] { LocalTransfer.getInstance() };
+ viewer.addDragSupport(dndOperations, transfers, new ViewerDragAdapter(viewer));
+ viewer.addDropSupport(dndOperations, transfers, new EditingDomainViewerDropAdapter(editingDomain, viewer));
+ }
+
+ /**
+ * This implements {@link org.eclipse.jface.action.IMenuListener} to help fill the context menus with contributions from the Edit menu.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void menuAboutToShow(IMenuManager menuManager) {
+ ((IMenuListener)getEditorSite().getActionBarContributor()).menuAboutToShow(menuManager);
+ }
+
+ private Object buttonsGridData() {
+ final GridData buttonsGridData = new GridData();
+ buttonsGridData.grabExcessHorizontalSpace = true;
+ buttonsGridData.grabExcessVerticalSpace = false;
+ buttonsGridData.horizontalAlignment = SWT.FILL;
+ buttonsGridData.verticalAlignment = SWT.FILL;
+ return buttonsGridData;
+ }
+
+ private Composite createButtonsPane(final Composite parent){
+ return createButtonsPaneWhenCustomizationIsSelected(parent);
+ }
+
+ private Composite createButtonsPaneWhenCustomizationIsSelected(final Composite parent) {
+ this.buttonsPaneComposite = new Composite(parent, SWT.NONE);
+ final GridData buttonsPaneGridData = new GridData();
+ buttonsPaneGridData.grabExcessHorizontalSpace = false;
+ buttonsPaneGridData.grabExcessVerticalSpace = true;
+ buttonsPaneGridData.horizontalAlignment = SWT.FILL;
+ buttonsPaneGridData.verticalAlignment = SWT.FILL;
+ buttonsPaneComposite.setLayoutData(buttonsPaneGridData);
+
+ buttonsPaneComposite.setLayout(new GridLayout());
+
+ final Composite spacer1 = new Composite(buttonsPaneComposite, SWT.NONE);
+ final GridData spacer1GridData = new GridData();
+ spacer1GridData.heightHint = CustomEditor.VERTICAL_SPACE_BEFORE_FIRST_BUTTON;
+ spacer1.setLayoutData(spacer1GridData);
+
+ final Composite spacer2 = new Composite(buttonsPaneComposite, SWT.NONE);
+ final GridData spacer2GridData = new GridData();
+ spacer2GridData.heightHint = CustomEditor.VERTICAL_SPACE_BETWEEN_BUTTON_GROUPS;
+ spacer2.setLayoutData(spacer2GridData);
+
+ final Label lblConditions = new Label(buttonsPaneComposite, SWT.NONE);
+ lblConditions.setText("add");
+
+ this.btnAddFacetSet = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnAddFacetSet.setText("FacetSet");
+ this.btnAddFacetSet.setLayoutData(buttonsGridData());
+ this.btnAddFacetSet.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnAddFacetSetClicked();
+ }
+ });
+
+ this.btnAddFacet = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnAddFacet.setText("Facet");
+ this.btnAddFacet.setLayoutData(buttonsGridData());
+ this.btnAddFacet.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnAddFacetClicked();
+ }
+ });
+
+ this.btnAddEClassCustom = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnAddEClassCustom.setText("EClassCustom");
+ this.btnAddEClassCustom.setLayoutData(buttonsGridData());
+ this.btnAddEClassCustom.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnAddECLassCustomClicked();
+ }
+ });
+
+ this.btnAddFacetCustom = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnAddFacetCustom.setText("FacetCustom");
+ this.btnAddFacetCustom.setLayoutData(buttonsGridData());
+ this.btnAddFacetCustom.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnAddFacetCustomClicked();
+ }
+ });
+
+ return buttonsPaneComposite;
+ }
+
+ protected void btnRemoveClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final TreeSelection selectedElement = (TreeSelection)getSelection();
+ final Object selectedObject = selectedElement.getFirstElement();
+ if (selectedObject instanceof EObject) {
+ final EObject eObject = (EObject) selectedObject;
+ final EObject eContainer = eObject.eContainer();
+
+ if(eContainer instanceof Customization){
+
+ Command command = RemoveCommand.create(this.editingDomain,
+ eContainer,
+ EcorePackage.eINSTANCE.getEPackage_EClassifiers(),
+ eObject);
+ this.editingDomain.getCommandStack().execute(command);
+ //refresh();
+ }else if(eContainer instanceof Facet){
+ if(selectedObject instanceof FacetOperation){
+ Command command = RemoveCommand.create(this.editingDomain,
+ eContainer,
+ EFacetPackage.eINSTANCE.getFacet_FacetOperations(),
+ eObject);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+
+ }else if(selectedObject instanceof FacetAttribute || selectedObject instanceof FacetReference){
+ Command command = RemoveCommand.create(this.editingDomain,
+ eContainer,
+ EFacetPackage.eINSTANCE.getFacet_FacetElements(),
+ eObject);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+ }
+ }else if(eContainer instanceof FacetOperation){
+ Command command = RemoveCommand.create(this.editingDomain,
+ eContainer,
+ EcorePackage.eINSTANCE.getEOperation_EParameters(),
+ eObject);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+
+ }
+
+ }
+ }
+
+ protected void btnDownClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final TreeSelection selectedElement = (TreeSelection)getSelection();
+ final Object selectedObject = selectedElement.getFirstElement();
+ if (selectedObject instanceof EObject) {
+ final EObject eObject = (EObject) selectedObject;
+ final EObject eContainer = eObject.eContainer();
+
+ if(eContainer instanceof Customization){
+ EList<EClassifier>list = ((Customization)eContainer).getEClassifiers();
+ final int index = list.indexOf(eObject);
+ if (index + 1 < list.size()) {
+ Command command = MoveCommand.create(this.editingDomain,
+ eContainer,
+ EcorePackage.eINSTANCE.getEPackage_EClassifiers(),
+ list.get(index), index + 1);
+ this.editingDomain.getCommandStack().execute(command);
+ }
+ //refresh();
+ }else if(eContainer instanceof Facet){
+ if(selectedObject instanceof FacetOperation){
+ EList<FacetOperation>list = ((Facet)eContainer).getFacetOperations();
+ final int index = list.indexOf(eObject);
+ if (index + 1 < list.size()) {
+ Command command = MoveCommand.create(this.editingDomain,
+ eContainer,
+ EFacetPackage.eINSTANCE.getFacet_FacetOperations(),
+ list.get(index), index + 1);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+ }
+ }else if(selectedObject instanceof FacetAttribute || selectedObject instanceof FacetReference){
+ EList<EStructuralFeature>list = ((Facet)eContainer).getFacetElements();
+ final int index = list.indexOf(eObject);
+ if (index + 1 < list.size()) {
+ Command command = MoveCommand.create(this.editingDomain,
+ eContainer,
+ EFacetPackage.eINSTANCE.getFacet_FacetElements(),
+ list.get(index), index + 1);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+ }
+ }
+ }else if(eContainer instanceof FacetOperation){
+ EList<EParameter>list = ((FacetOperation)eContainer).getEParameters();
+ final int index = list.indexOf(eObject);
+ if (index + 1 < list.size()) {
+ Command command = MoveCommand.create(this.editingDomain,
+ eContainer,
+ EcorePackage.eINSTANCE.getEOperation_EParameters(),
+ list.get(index), index + 1);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+ }
+ }
+
+ }
+ }
+
+ protected void btnUpClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final TreeSelection selectedElement = (TreeSelection)getSelection();
+ final Object selectedObject = selectedElement.getFirstElement();
+ if (selectedObject instanceof EObject) {
+ final EObject eObject = (EObject) selectedObject;
+ final EObject eContainer = eObject.eContainer();
+
+ if(eContainer instanceof Customization){
+ EList<EClassifier>list = ((Customization)eContainer).getEClassifiers();
+ final int index = list.indexOf(eObject);
+ if (index - 1 >= 0) {
+ Command command = MoveCommand.create(this.editingDomain,
+ eContainer,
+ EcorePackage.eINSTANCE.getEPackage_EClassifiers(),
+ list.get(index), index - 1);
+ this.editingDomain.getCommandStack().execute(command);
+ }
+ //refresh();
+ }else if(eContainer instanceof Facet){
+ if(selectedObject instanceof FacetOperation){
+ EList<FacetOperation>list = ((Facet)eContainer).getFacetOperations();
+ final int index = list.indexOf(eObject);
+ if (index - 1 >= 0) {
+ Command command = MoveCommand.create(this.editingDomain,
+ eContainer,
+ EFacetPackage.eINSTANCE.getFacet_FacetOperations(),
+ list.get(index), index - 1);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+ }
+ }else if(selectedObject instanceof FacetAttribute || selectedObject instanceof FacetReference){
+ EList<EStructuralFeature>list = ((Facet)eContainer).getFacetElements();
+ final int index = list.indexOf(eObject);
+ if (index - 1 >= 0) {
+ Command command = MoveCommand.create(this.editingDomain,
+ eContainer,
+ EFacetPackage.eINSTANCE.getFacet_FacetElements(),
+ list.get(index), index - 1);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+ }
+ }
+ }else if(eContainer instanceof FacetOperation){
+ EList<EParameter>list = ((FacetOperation)eContainer).getEParameters();
+ final int index = list.indexOf(eObject);
+ if (index - 1 >= 0) {
+ Command command = MoveCommand.create(this.editingDomain,
+ eContainer,
+ EcorePackage.eINSTANCE.getEOperation_EParameters(),
+ list.get(index), index - 1);
+ this.editingDomain.getCommandStack().execute(command);
+
+ setInputInCustomizationTreeviewer((Facet)eContainer);
+ this.customizationViewer.getViewer().refresh();
+ }
+ }
+
+ }
+
+ }
+
+ protected void btnAddFacetCustomClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if (((TreeSelection)selectedElement).getFirstElement() instanceof Customization) {
+ ICustomizationDialogFactory.DEFAULT.openCreateFacetCustomizationDialog(getSite().getShell().getDisplay(), editingDomain);
+ }
+
+ }
+
+ protected void btnAddECLassCustomClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if (((TreeSelection)selectedElement).getFirstElement() instanceof Customization) {
+ ICustomizationDialogFactory.DEFAULT.openCreateEClassCustomizationDialog(getSite().getShell().getDisplay(), editingDomain);
+ }
+
+ }
+
+ protected void btnAddFacetClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if (((TreeSelection)selectedElement).getFirstElement() instanceof Customization) {
+ IFacetDialogFactory.INSTANCE.openCreateFacetInFacetSetDialog();
+ }
+ }
+
+ protected void btnAddFacetSetClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if (((TreeSelection)selectedElement).getFirstElement() instanceof Customization) {
+ IFacetDialogFactory.INSTANCE.openCreateFacetSetInFacetSetDialog();
+ }
+ }
+
+ private Composite createButtonsPaneWhenFacetIsSelected(final Composite parent) {
+ this.buttonsPaneComposite = new Composite(parent, SWT.NONE);
+ final GridData buttonsPaneGridData = new GridData();
+ buttonsPaneGridData.grabExcessHorizontalSpace = false;
+ buttonsPaneGridData.grabExcessVerticalSpace = true;
+ buttonsPaneGridData.horizontalAlignment = SWT.FILL;
+ buttonsPaneGridData.verticalAlignment = SWT.FILL;
+ buttonsPaneComposite.setLayoutData(buttonsPaneGridData);
+
+ buttonsPaneComposite.setLayout(new GridLayout());
+
+ final Composite spacer1 = new Composite(buttonsPaneComposite, SWT.NONE);
+ final GridData spacer1GridData = new GridData();
+ spacer1GridData.heightHint = CustomEditor.VERTICAL_SPACE_BEFORE_FIRST_BUTTON;
+ spacer1.setLayoutData(spacer1GridData);
+
+ final Composite spacer2 = new Composite(buttonsPaneComposite, SWT.NONE);
+ final GridData spacer2GridData = new GridData();
+ spacer2GridData.heightHint = CustomEditor.VERTICAL_SPACE_BETWEEN_BUTTON_GROUPS;
+ spacer2.setLayoutData(spacer2GridData);
+
+ final Label lblConditions = new Label(buttonsPaneComposite, SWT.NONE);
+ lblConditions.setText("add");
+
+ this.btnAddFacetAttr = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnAddFacetAttr.setText("Facet Attribute");
+ this.btnAddFacetAttr.setLayoutData(buttonsGridData());
+ this.btnAddFacetAttr.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnAddFacetAttributeClicked();
+ }
+ });
+
+ this.btnAddFacetRef = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnAddFacetRef.setText("Facet Reference");
+ this.btnAddFacetRef.setLayoutData(buttonsGridData());
+ this.btnAddFacetRef.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnAddFacetReferenceClicked();
+ }
+ });
+
+ this.btnAddFacetOp = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnAddFacetOp.setText("Facet Operation");
+ this.btnAddFacetOp.setLayoutData(buttonsGridData());
+ this.btnAddFacetOp.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnAddFacetOperationClicked();
+ }
+ });
+
+ final Composite spacer3 = new Composite(buttonsPaneComposite, SWT.NONE);
+ final GridData spacer3GridData = new GridData();
+ spacer3GridData.heightHint = CustomEditor.VERTICAL_SPACE_BETWEEN_BUTTON_GROUPS;
+ spacer3.setLayoutData(spacer2GridData);
+
+ final Label lblEditions = new Label(buttonsPaneComposite, SWT.NONE);
+ lblEditions.setText("edit");
+
+ this.btnEdit = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnEdit.setText(CustomEditorPlugin.INSTANCE.getString("CustomizationEditor_edit"));
+ this.btnEdit.setLayoutData(buttonsGridData());
+ this.btnEdit.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnEditClicked();
+ }
+ });
+
+ this.btnRemove = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnRemove.setText(CustomEditorPlugin.INSTANCE.getString("CustomizationEditor_remove"));
+ this.btnRemove.setLayoutData(buttonsGridData());
+ this.btnRemove.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnRemoveClicked();
+ }
+ });
+
+ this.btnUp = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnUp.setText(CustomEditorPlugin.INSTANCE.getString("CustomizationEditor_up"));
+ this.btnUp.setLayoutData(buttonsGridData());
+ this.btnUp.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnUpClicked();
+ }
+ });
+
+ this.btnDown = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnDown.setText(CustomEditorPlugin.INSTANCE.getString("CustomizationEditor_down"));
+ this.btnDown.setLayoutData(buttonsGridData());
+ this.btnDown.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnDownClicked();
+ }
+ });
+
+ return buttonsPaneComposite;
+ }
+
+ protected void btnAddFacetOperationClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if (((TreeSelection)selectedElement).getFirstElement() instanceof Facet) {
+ IFacetDialogFactory.INSTANCE.openAddOperationInFacetDialog();
+ }
+
+ }
+
+ protected void btnAddFacetReferenceClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if (((TreeSelection)selectedElement).getFirstElement() instanceof Facet) {
+ IFacetDialogFactory.INSTANCE.openAddReferenceInFacetDialog();
+ }
+ }
+
+ protected void btnAddFacetAttributeClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if (((TreeSelection)selectedElement).getFirstElement() instanceof Facet) {
+ IFacetDialogFactory.INSTANCE.openAddAttributeInFacetDialog();
+ }
+ }
+
+ private Composite createButtonsPaneWhenDerivedIsSelected(final Composite parent) {
+ this.buttonsPaneComposite = new Composite(parent, SWT.NONE);
+ final GridData buttonsPaneGridData = new GridData();
+ buttonsPaneGridData.grabExcessHorizontalSpace = false;
+ buttonsPaneGridData.grabExcessVerticalSpace = true;
+ buttonsPaneGridData.horizontalAlignment = SWT.FILL;
+ buttonsPaneGridData.verticalAlignment = SWT.FILL;
+ buttonsPaneComposite.setLayoutData(buttonsPaneGridData);
+
+ buttonsPaneComposite.setLayout(new GridLayout());
+
+ final Composite spacer1 = new Composite(buttonsPaneComposite, SWT.NONE);
+ final GridData spacer1GridData = new GridData();
+ spacer1GridData.heightHint = CustomEditor.VERTICAL_SPACE_BEFORE_FIRST_BUTTON;
+ spacer1.setLayoutData(spacer1GridData);
+
+ final Composite spacer2 = new Composite(buttonsPaneComposite, SWT.NONE);
+ final GridData spacer2GridData = new GridData();
+ spacer2GridData.heightHint = CustomEditor.VERTICAL_SPACE_BETWEEN_BUTTON_GROUPS;
+ spacer2.setLayoutData(spacer2GridData);
+
+ final Label lblConditions = new Label(buttonsPaneComposite, SWT.NONE);
+ lblConditions.setText("add");
+
+ this.btnAddFacetParam = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnAddFacetParam.setText("Parameter");
+ this.btnAddFacetParam.setLayoutData(buttonsGridData());
+ this.btnAddFacetParam.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnAddParameterClicked();
+ }
+ });
+
+ if(!(((TreeSelection)getSelection()).getFirstElement() instanceof FacetOperation)){
+ this.btnAddFacetParam.setEnabled(false);
+ }else{
+ this.btnAddFacetParam.setEnabled(true);
+ }
+
+ final Composite spacer3 = new Composite(buttonsPaneComposite, SWT.NONE);
+ final GridData spacer3GridData = new GridData();
+ spacer3GridData.heightHint = CustomEditor.VERTICAL_SPACE_BETWEEN_BUTTON_GROUPS;
+ spacer3.setLayoutData(spacer2GridData);
+
+ final Label lblEditions = new Label(buttonsPaneComposite, SWT.NONE);
+ lblEditions.setText("edit");
+
+ this.btnEdit = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnEdit.setText(CustomEditorPlugin.INSTANCE.getString("CustomizationEditor_edit"));
+ this.btnEdit.setLayoutData(buttonsGridData());
+ this.btnEdit.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnEditClicked();
+ }
+ });
+
+ this.btnRemove = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnRemove.setText(CustomEditorPlugin.INSTANCE.getString("CustomizationEditor_remove"));
+ this.btnRemove.setLayoutData(buttonsGridData());
+ this.btnRemove.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnRemoveClicked();
+ }
+ });
+
+ this.btnUp = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnUp.setText(CustomEditorPlugin.INSTANCE.getString("CustomizationEditor_up"));
+ this.btnUp.setLayoutData(buttonsGridData());
+ this.btnUp.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnUpClicked();
+ }
+ });
+
+ this.btnDown = new Button(buttonsPaneComposite, SWT.PUSH);
+ this.btnDown.setText(CustomEditorPlugin.INSTANCE.getString("CustomizationEditor_down"));
+ this.btnDown.setLayoutData(buttonsGridData());
+ this.btnDown.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ btnDownClicked();
+ }
+ });
+
+ return buttonsPaneComposite;
+ }
+
+ protected void btnAddParameterClicked() {
+ if (this.readOnly) {
+ return;
+ }
+ final Object selectedElement = getSelection();
+ if(selectedElement instanceof TreeSelection){
+ final Object selectedObject = ((TreeSelection)selectedElement).getFirstElement();
+ if (selectedObject instanceof FacetOperation) {
+ IFacetDialogFactory.INSTANCE.openAddParameterInOperationDialog();
+ }
+ }
+ }
+
+ public EditingDomain getEditingDomain() {
+ return editingDomain;
+ }
+
+ public Viewer getViewer() {
+ return selectionViewer;
+ }
+
+ /**
+ * This also changes the editor's input.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void doSaveAs() {
+ SaveAsDialog saveAsDialog = new SaveAsDialog(getSite().getShell());
+ saveAsDialog.open();
+ IPath path = saveAsDialog.getResult();
+ if (path != null) {
+ IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(path);
+ if (file != null) {
+ doSaveAs(URI.createPlatformResourceURI(file.getFullPath().toString(), true), new FileEditorInput(file));
+ }
+ }
+ }
+
+}
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomEditorPlugin.java b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomEditorPlugin.java
new file mode 100644
index 00000000000..ad66befd711
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomEditorPlugin.java
@@ -0,0 +1,102 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+import org.eclipse.emf.common.EMFPlugin;
+import org.eclipse.emf.common.ui.EclipseUIPlugin;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+
+/**
+ * This is the central singleton for the Custom editor plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public final class CustomEditorPlugin extends EMFPlugin {
+ /**
+ * Keep track of the singleton.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final CustomEditorPlugin INSTANCE = new CustomEditorPlugin();
+
+ /**
+ * Keep track of the singleton.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static Implementation plugin;
+
+ /**
+ * Create the instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomEditorPlugin() {
+ super
+ (new ResourceLocator [] {
+ Efacet2EditPlugin.INSTANCE,
+ });
+ }
+
+ /**
+ * Returns the singleton instance of the Eclipse plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the singleton instance.
+ * @generated
+ */
+ @Override
+ public ResourceLocator getPluginResourceLocator() {
+ return plugin;
+ }
+
+ /**
+ * Returns the singleton instance of the Eclipse plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the singleton instance.
+ * @generated
+ */
+ public static Implementation getPlugin() {
+ return plugin;
+ }
+
+ /**
+ * The actual implementation of the Eclipse <b>Plugin</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static class Implementation extends EclipseUIPlugin {
+ /**
+ * Creates an instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Implementation() {
+ super();
+
+ // Remember the static instance.
+ //
+ plugin = this;
+ }
+ }
+
+}
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomModelWizard.java b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomModelWizard.java
new file mode 100644
index 00000000000..09df346019f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomModelWizard.java
@@ -0,0 +1,616 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.MissingResourceException;
+import java.util.StringTokenizer;
+
+import org.eclipse.emf.common.CommonPlugin;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.xmi.XMLResource;
+import org.eclipse.emf.edit.ui.provider.ExtendedImageRegistry;
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomFactory;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.provider.CustomEditPlugin;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.ui.INewWizard;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.actions.WorkspaceModifyOperation;
+import org.eclipse.ui.dialogs.WizardNewFileCreationPage;
+import org.eclipse.ui.part.FileEditorInput;
+import org.eclipse.ui.part.ISetSelectionTarget;
+
+
+import org.eclipse.core.runtime.Path;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PartInitException;
+
+
+/**
+ * This is a simple wizard for creating a new model file.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CustomModelWizard extends Wizard implements INewWizard {
+ /**
+ * The supported extensions for created files.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<String> FILE_EXTENSIONS =
+ Collections.unmodifiableList(Arrays.asList(CustomEditorPlugin.INSTANCE.getString("_UI_CustomEditorFilenameExtensions").split("\\s*,\\s*")));
+
+ /**
+ * A formatted list of supported file extensions, suitable for display.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final String FORMATTED_FILE_EXTENSIONS =
+ CustomEditorPlugin.INSTANCE.getString("_UI_CustomEditorFilenameExtensions").replaceAll("\\s*,\\s*", ", ");
+
+ /**
+ * This caches an instance of the model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CustomPackage customPackage = CustomPackage.eINSTANCE;
+
+ /**
+ * This caches an instance of the model factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CustomFactory customFactory = customPackage.getCustomFactory();
+
+ /**
+ * This is the file creation page.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CustomModelWizardNewFileCreationPage newFileCreationPage;
+
+ /**
+ * This is the initial object creation page.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CustomModelWizardInitialObjectCreationPage initialObjectCreationPage;
+
+ /**
+ * Remember the selection during initialization for populating the default container.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IStructuredSelection selection;
+
+ /**
+ * Remember the workbench during initialization.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IWorkbench workbench;
+
+ /**
+ * Caches the names of the types that can be created as the root object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected List<String> initialObjectNames;
+
+ /**
+ * This just records the information.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void init(IWorkbench workbench, IStructuredSelection selection) {
+ this.workbench = workbench;
+ this.selection = selection;
+ setWindowTitle(CustomEditorPlugin.INSTANCE.getString("_UI_Wizard_label"));
+ setDefaultPageImageDescriptor(ExtendedImageRegistry.INSTANCE.getImageDescriptor(CustomEditorPlugin.INSTANCE.getImage("full/wizban/NewCustom")));
+ }
+
+ /**
+ * Returns the names of the types that can be created as the root object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<String> getInitialObjectNames() {
+ if (initialObjectNames == null) {
+ initialObjectNames = new ArrayList<String>();
+ for (EClassifier eClassifier : customPackage.getEClassifiers()) {
+ if (eClassifier instanceof EClass) {
+ EClass eClass = (EClass)eClassifier;
+ if (!eClass.isAbstract()) {
+ initialObjectNames.add(eClass.getName());
+ }
+ }
+ }
+ Collections.sort(initialObjectNames, CommonPlugin.INSTANCE.getComparator());
+ }
+ return initialObjectNames;
+ }
+
+ /**
+ * Create a new model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EObject createInitialModel() {
+ EClass eClass = (EClass)customPackage.getEClassifier(initialObjectCreationPage.getInitialObjectName());
+ EObject rootObject = customFactory.create(eClass);
+ return rootObject;
+ }
+
+ /**
+ * Do the work after everything is specified.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean performFinish() {
+ try {
+ // Remember the file.
+ //
+ final IFile modelFile = getModelFile();
+
+ // Do the work within an operation.
+ //
+ WorkspaceModifyOperation operation =
+ new WorkspaceModifyOperation() {
+ @Override
+ protected void execute(IProgressMonitor progressMonitor) {
+ try {
+ // Create a resource set
+ //
+ ResourceSet resourceSet = new ResourceSetImpl();
+
+ // Get the URI of the model file.
+ //
+ URI fileURI = URI.createPlatformResourceURI(modelFile.getFullPath().toString(), true);
+
+ // Create a resource for this file.
+ //
+ Resource resource = resourceSet.createResource(fileURI);
+
+ // Add the initial model object to the contents.
+ //
+ EObject rootObject = createInitialModel();
+ if (rootObject != null) {
+ resource.getContents().add(rootObject);
+ }
+
+ // Save the contents of the resource to the file system.
+ //
+ Map<Object, Object> options = new HashMap<Object, Object>();
+ options.put(XMLResource.OPTION_ENCODING, initialObjectCreationPage.getEncoding());
+ resource.save(options);
+ }
+ catch (Exception exception) {
+ CustomEditorPlugin.INSTANCE.log(exception);
+ }
+ finally {
+ progressMonitor.done();
+ }
+ }
+ };
+
+ getContainer().run(false, false, operation);
+
+ // Select the new file resource in the current view.
+ //
+ IWorkbenchWindow workbenchWindow = workbench.getActiveWorkbenchWindow();
+ IWorkbenchPage page = workbenchWindow.getActivePage();
+ final IWorkbenchPart activePart = page.getActivePart();
+ if (activePart instanceof ISetSelectionTarget) {
+ final ISelection targetSelection = new StructuredSelection(modelFile);
+ getShell().getDisplay().asyncExec
+ (new Runnable() {
+ public void run() {
+ ((ISetSelectionTarget)activePart).selectReveal(targetSelection);
+ }
+ });
+ }
+
+ // Open an editor on the new file.
+ //
+ try {
+ page.openEditor
+ (new FileEditorInput(modelFile),
+ workbench.getEditorRegistry().getDefaultEditor(modelFile.getFullPath().toString()).getId());
+ }
+ catch (PartInitException exception) {
+ MessageDialog.openError(workbenchWindow.getShell(), CustomEditorPlugin.INSTANCE.getString("_UI_OpenEditorError_label"), exception.getMessage());
+ return false;
+ }
+
+ return true;
+ }
+ catch (Exception exception) {
+ CustomEditorPlugin.INSTANCE.log(exception);
+ return false;
+ }
+ }
+
+ /**
+ * This is the one page of the wizard.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public class CustomModelWizardNewFileCreationPage extends WizardNewFileCreationPage {
+ /**
+ * Pass in the selection.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomModelWizardNewFileCreationPage(String pageId, IStructuredSelection selection) {
+ super(pageId, selection);
+ }
+
+ /**
+ * The framework calls this to see if the file is correct.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected boolean validatePage() {
+ if (super.validatePage()) {
+ String extension = new Path(getFileName()).getFileExtension();
+ if (extension == null || !FILE_EXTENSIONS.contains(extension)) {
+ String key = FILE_EXTENSIONS.size() > 1 ? "_WARN_FilenameExtensions" : "_WARN_FilenameExtension";
+ setErrorMessage(CustomEditorPlugin.INSTANCE.getString(key, new Object [] { FORMATTED_FILE_EXTENSIONS }));
+ return false;
+ }
+ return true;
+ }
+ return false;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IFile getModelFile() {
+ return ResourcesPlugin.getWorkspace().getRoot().getFile(getContainerFullPath().append(getFileName()));
+ }
+ }
+
+ /**
+ * This is the page where the type of object to create is selected.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public class CustomModelWizardInitialObjectCreationPage extends WizardPage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Combo initialObjectField;
+
+ /**
+ * @generated
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ */
+ protected List<String> encodings;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Combo encodingField;
+
+ /**
+ * Pass in the selection.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomModelWizardInitialObjectCreationPage(String pageId) {
+ super(pageId);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createControl(Composite parent) {
+ Composite composite = new Composite(parent, SWT.NONE);
+ {
+ GridLayout layout = new GridLayout();
+ layout.numColumns = 1;
+ layout.verticalSpacing = 12;
+ composite.setLayout(layout);
+
+ GridData data = new GridData();
+ data.verticalAlignment = GridData.FILL;
+ data.grabExcessVerticalSpace = true;
+ data.horizontalAlignment = GridData.FILL;
+ composite.setLayoutData(data);
+ }
+
+ Label containerLabel = new Label(composite, SWT.LEFT);
+ {
+ containerLabel.setText(CustomEditorPlugin.INSTANCE.getString("_UI_ModelObject"));
+
+ GridData data = new GridData();
+ data.horizontalAlignment = GridData.FILL;
+ containerLabel.setLayoutData(data);
+ }
+
+ initialObjectField = new Combo(composite, SWT.BORDER);
+ {
+ GridData data = new GridData();
+ data.horizontalAlignment = GridData.FILL;
+ data.grabExcessHorizontalSpace = true;
+ initialObjectField.setLayoutData(data);
+ }
+
+ for (String objectName : getInitialObjectNames()) {
+ initialObjectField.add(getLabel(objectName));
+ }
+
+ if (initialObjectField.getItemCount() == 1) {
+ initialObjectField.select(0);
+ }
+ initialObjectField.addModifyListener(validator);
+
+ Label encodingLabel = new Label(composite, SWT.LEFT);
+ {
+ encodingLabel.setText(CustomEditorPlugin.INSTANCE.getString("_UI_XMLEncoding"));
+
+ GridData data = new GridData();
+ data.horizontalAlignment = GridData.FILL;
+ encodingLabel.setLayoutData(data);
+ }
+ encodingField = new Combo(composite, SWT.BORDER);
+ {
+ GridData data = new GridData();
+ data.horizontalAlignment = GridData.FILL;
+ data.grabExcessHorizontalSpace = true;
+ encodingField.setLayoutData(data);
+ }
+
+ for (String encoding : getEncodings()) {
+ encodingField.add(encoding);
+ }
+
+ encodingField.select(0);
+ encodingField.addModifyListener(validator);
+
+ setPageComplete(validatePage());
+ setControl(composite);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ModifyListener validator =
+ new ModifyListener() {
+ public void modifyText(ModifyEvent e) {
+ setPageComplete(validatePage());
+ }
+ };
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected boolean validatePage() {
+ return getInitialObjectName() != null && getEncodings().contains(encodingField.getText());
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setVisible(boolean visible) {
+ super.setVisible(visible);
+ if (visible) {
+ if (initialObjectField.getItemCount() == 1) {
+ initialObjectField.clearSelection();
+ encodingField.setFocus();
+ }
+ else {
+ encodingField.clearSelection();
+ initialObjectField.setFocus();
+ }
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getInitialObjectName() {
+ String label = initialObjectField.getText();
+
+ for (String name : getInitialObjectNames()) {
+ if (getLabel(name).equals(label)) {
+ return name;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getEncoding() {
+ return encodingField.getText();
+ }
+
+ /**
+ * Returns the label for the specified type name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected String getLabel(String typeName) {
+ try {
+ return CustomEditPlugin.INSTANCE.getString("_UI_" + typeName + "_type");
+ }
+ catch(MissingResourceException mre) {
+ CustomEditorPlugin.INSTANCE.log(mre);
+ }
+ return typeName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<String> getEncodings() {
+ if (encodings == null) {
+ encodings = new ArrayList<String>();
+ for (StringTokenizer stringTokenizer = new StringTokenizer(CustomEditorPlugin.INSTANCE.getString("_UI_XMLEncodingChoices")); stringTokenizer.hasMoreTokens(); ) {
+ encodings.add(stringTokenizer.nextToken());
+ }
+ }
+ return encodings;
+ }
+ }
+
+ /**
+ * The framework calls this to create the contents of the wizard.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void addPages() {
+ // Create a page, set the title, and the initial model file name.
+ //
+ newFileCreationPage = new CustomModelWizardNewFileCreationPage("Whatever", selection);
+ newFileCreationPage.setTitle(CustomEditorPlugin.INSTANCE.getString("_UI_CustomModelWizard_label"));
+ newFileCreationPage.setDescription(CustomEditorPlugin.INSTANCE.getString("_UI_CustomModelWizard_description"));
+ newFileCreationPage.setFileName(CustomEditorPlugin.INSTANCE.getString("_UI_CustomEditorFilenameDefaultBase") + "." + FILE_EXTENSIONS.get(0));
+ addPage(newFileCreationPage);
+
+ // Try and get the resource selection to determine a current directory for the file dialog.
+ //
+ if (selection != null && !selection.isEmpty()) {
+ // Get the resource...
+ //
+ Object selectedElement = selection.iterator().next();
+ if (selectedElement instanceof IResource) {
+ // Get the resource parent, if its a file.
+ //
+ IResource selectedResource = (IResource)selectedElement;
+ if (selectedResource.getType() == IResource.FILE) {
+ selectedResource = selectedResource.getParent();
+ }
+
+ // This gives us a directory...
+ //
+ if (selectedResource instanceof IFolder || selectedResource instanceof IProject) {
+ // Set this for the container.
+ //
+ newFileCreationPage.setContainerFullPath(selectedResource.getFullPath());
+
+ // Make up a unique new name here.
+ //
+ String defaultModelBaseFilename = CustomEditorPlugin.INSTANCE.getString("_UI_CustomEditorFilenameDefaultBase");
+ String defaultModelFilenameExtension = FILE_EXTENSIONS.get(0);
+ String modelFilename = defaultModelBaseFilename + "." + defaultModelFilenameExtension;
+ for (int i = 1; ((IContainer)selectedResource).findMember(modelFilename) != null; ++i) {
+ modelFilename = defaultModelBaseFilename + i + "." + defaultModelFilenameExtension;
+ }
+ newFileCreationPage.setFileName(modelFilename);
+ }
+ }
+ }
+ initialObjectCreationPage = new CustomModelWizardInitialObjectCreationPage("Whatever2");
+ initialObjectCreationPage.setTitle(CustomEditorPlugin.INSTANCE.getString("_UI_CustomModelWizard_label"));
+ initialObjectCreationPage.setDescription(CustomEditorPlugin.INSTANCE.getString("_UI_Wizard_initial_object_description"));
+ addPage(initialObjectCreationPage);
+ }
+
+ /**
+ * Get the file from the page.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IFile getModelFile() {
+ return newFileCreationPage.getModelFile();
+ }
+
+}
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomViewer.java b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomViewer.java
new file mode 100644
index 00000000000..f44dfd99d52
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/CustomViewer.java
@@ -0,0 +1,445 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2010 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+
+import javax.naming.event.ObjectChangeListener;
+
+import org.eclipse.emf.common.util.BasicEList;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.jface.viewers.ColumnLabelProvider;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.StyledCellLabelProvider;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jface.viewers.TreeViewerColumn;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.jface.viewers.ViewerCell;
+import org.eclipse.jface.viewers.ViewerComparator;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.EObjectLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FalseLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FloatLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IntegerLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NullLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.TrueLiteralQuery;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQuery;
+import org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.custom.StyleRange;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.Font;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.graphics.RGB;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.TreeItem;
+
+/**
+ * Displays the current customizations for a given {@link CustomView}, which is
+ * the input of the viewer
+ */
+public class CustomViewer {
+
+ private static final int VALUE_COLUMN_WIDTH = 200;
+ private static final int TYPE_COLUMN_WIDTH = 200;
+ private static final int FEATURE_COLUMN_WIDTH = 200;
+ private final TreeViewer treeViewer;
+
+ //Customization
+ private static final String TOP_LEFT_OVERLAY_ICON_PATH = "topLeftOverlay";
+ private static final String TOP_MIDDLE_OVERLAY_ICON_PATH = "topMiddleOverlay";
+ private static final String TOP_RIGHT_OVERLAY_ICON_PATH = "topRightOverlay";
+ private static final String MIDDLE_LEFT_OVERLAY_ICON_PATH = "middleLeftOverlay";
+ private static final String MIDDLE_RIGHT_OVERLAY_ICON_PATH = "middleRightOverlay";
+ private static final String BOTTOM_LEFT_OVERLAY_ICON_PATH = "bottomLeftOverlay";
+ private static final String BOTTOM_MIDDLE_OVERLAY_ICON_PATH = "bottomMiddleOverlay";
+ private static final String BOTTOM_RIGHT_OVERLAY_ICON_PATH = "bottomRightOverlay";
+ private static final String CUSTOMIZATION_LABEL = "label";
+ private static final String CUSTOMIZATION_IMAGE = "image";
+ private static final String CUSTOMIZATION_FOREGROUND = "foreground";
+ private static final String CUSTOMIZATION_BACKGROUND = "background";
+ private static final String FONT_NAME = "fontName";
+ private static final String FONT_SIZE = "fontSize";
+ private static final String FONT_BOLD = "isBold";
+ private static final String FONT_ITALIC = "isItalic";
+ private static final String FONT_UNDERLINE = "isUnderlined";
+ private static final String FONT_STRUKETHROUGH = "isStruckthrough";
+
+ public CustomViewer(final Composite parent) {
+ this.treeViewer = new TreeViewer(parent, SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER
+ | SWT.SINGLE | SWT.FULL_SELECTION);
+ this.treeViewer.getTree().setHeaderVisible(true);
+
+ final TreeViewerColumn featureColumn = new TreeViewerColumn(this.treeViewer, SWT.LEFT);
+ featureColumn.getColumn().setText("feature column");
+ featureColumn.getColumn().setWidth(CustomViewer.FEATURE_COLUMN_WIDTH);
+ final TreeViewerColumn typeColumn = new TreeViewerColumn(this.treeViewer, SWT.LEFT);
+ typeColumn.getColumn().setText("feature type");
+ typeColumn.getColumn().setWidth(CustomViewer.TYPE_COLUMN_WIDTH);
+ final TreeViewerColumn valueColumn = new TreeViewerColumn(this.treeViewer, SWT.LEFT);
+ valueColumn.getColumn().setText("feature value");
+ valueColumn.getColumn().setWidth(CustomViewer.VALUE_COLUMN_WIDTH);
+
+ this.treeViewer.setContentProvider(new CustomViewerContentProvider());
+
+ // for sorting purposes
+ this.treeViewer.setLabelProvider(new FeatureLabelProvider());
+ this.treeViewer.setComparator(new ViewerComparator() {
+ @Override
+ public int compare(final Viewer viewer, final Object e1, final Object e2) {
+ // do not sort value cases
+ if (e1 instanceof FacetOperation) {
+ return 0;
+ }
+ return super.compare(viewer, e1, e2);
+ }
+ });
+
+ featureColumn.setLabelProvider(new FeatureLabelProvider());
+ typeColumn.setLabelProvider(new TypeLabelProvider());
+ valueColumn.setLabelProvider(new ValueLabelProvider());
+
+ this.treeViewer.addSelectionChangedListener(new ISelectionChangedListener() {
+ public void selectionChanged(final SelectionChangedEvent event) {
+ // for selection text color
+ CustomViewer.this.treeViewer.refresh();
+ }
+ });
+ }
+
+ public void setInput(final Object input) {
+ this.treeViewer.setInput(input);
+ }
+
+ protected class CustomViewerContentProvider implements ITreeContentProvider {
+ public Object[] getElements(final Object inputElement) {
+ final List facetOperations = new ArrayList<FacetOperation>();
+ if (inputElement instanceof FacetOperation) {
+ final FacetOperation facetOperation = (FacetOperation) inputElement;
+ facetOperations.add(facetOperation);
+ }
+ if(inputElement instanceof FacetElement){
+ final FacetElement facetElement = (FacetElement)inputElement;
+ facetOperations.add(facetElement);
+ }
+ if(inputElement instanceof List){
+ for (Object object : (List)inputElement) {
+ if(object instanceof DerivedTypedElement){
+ facetOperations.add(object);
+ }
+ }
+ }
+ return facetOperations.toArray();
+ }
+
+ public Object[] getChildren(final Object parentElement) {
+
+ if (parentElement instanceof FacetOperation) {
+ final FacetOperation facetOperation = (FacetOperation) parentElement;
+ final EList<EParameter> parameters = new BasicEList<EParameter>();
+ parameters.addAll(facetOperation.getEParameters());
+ return parameters.toArray();
+ }
+
+ return new Object[0];
+ }
+
+ public Object getParent(final Object element) {
+ if (element instanceof EParameter) {
+ final EParameter eParameter = (EParameter) element;
+ return eParameter.getEOperation();
+ }
+ return null;
+ }
+
+ public boolean hasChildren(final Object element) {
+ if (element instanceof FacetOperation) {
+ final FacetOperation facetOperation = (FacetOperation) element;
+ return !facetOperation.getEParameters().isEmpty();
+ }
+ return false;
+ }
+
+ public void dispose() {
+ // nothing
+ }
+
+ public void inputChanged(final Viewer viewer, final Object oldInput, final Object newInput) {
+ // nothing
+ }
+ }
+
+ protected class FeatureLabelProvider extends ColumnLabelProvider {
+
+ @Override
+ public String getText(final Object element) {
+ if (element instanceof DerivedTypedElement) {
+ final DerivedTypedElement facetElement = (DerivedTypedElement) element;
+ return facetElement.getName() ;
+ }else if (element instanceof ParameterValue){
+ final ParameterValue parameterValue = (ParameterValue) element;
+ return parameterValue.getParameter().getName();
+ }else if (element instanceof EParameter){
+ final EParameter parameterValue = (EParameter) element;
+ return parameterValue.getName();
+ }
+ return element.toString();
+ }
+
+ @Override
+ public Font getFont(final Object element) {
+ return null;
+ }
+
+ }
+
+ protected class ValueLabelProvider extends ColumnLabelProvider {
+
+ /** Images in use */
+ private final HashMap<String, Image> images = new HashMap<String, Image>();
+
+ public ValueLabelProvider() {
+ super();
+ }
+
+ public String getText(final Object element) {
+
+ if(element instanceof DerivedTypedElement){
+ DerivedTypedElement derivedTypedElement = (DerivedTypedElement)element;
+ Query query = derivedTypedElement.getQuery();
+ if(query != null){
+ if(query instanceof StringLiteralQuery){
+ StringLiteralQuery stringQuery = (StringLiteralQuery)query;
+ return stringQuery.getValue();
+ }else if(query instanceof TrueLiteralQuery){
+ return "true";
+ }else if(query instanceof FalseLiteralQuery){
+ return "false";
+ }else if(query instanceof NullLiteralQuery){
+ return "null";
+ }else if(query instanceof OperationCallQuery){
+ OperationCallQuery operationCallQuery = (OperationCallQuery)query;
+ return operationCallQuery.toString();
+ }else if(query instanceof JavaQuery){
+ JavaQuery javaQuery = (JavaQuery)query;
+ String qualifiedName = javaQuery.getImplementationClassName();
+ String[] path = qualifiedName.split("\\.");
+ return path[path.length -1];
+ }else if (query instanceof OclQuery){
+ OclQuery oclQuery = (OclQuery)query;
+ return oclQuery.getOclExpression();
+ }else if (query instanceof NavigationQuery){
+ NavigationQuery navigationQuery = (NavigationQuery)query;
+ return navigationQuery.getPath().toString();
+ }else if (query instanceof IsOneOfQuery){
+ IsOneOfQuery isOneOfQuery = (IsOneOfQuery)query;
+ return isOneOfQuery.getExpectedEObjects().toString();
+ }else if (query instanceof IntegerLiteralQuery){
+ IntegerLiteralQuery integerQuery = (IntegerLiteralQuery)query;
+ return String.valueOf(integerQuery.getValue());
+ }else if (query instanceof FloatLiteralQuery){
+ FloatLiteralQuery floatQuery = (FloatLiteralQuery)query;
+ return String.valueOf(floatQuery.getValue());
+ }else if (query instanceof EObjectLiteralQuery){
+ EObjectLiteralQuery eObjectQuery = (EObjectLiteralQuery)query;
+ return eObjectQuery.getElement().eClass().getName();
+ }else if(query instanceof ETypedElementSwitchQuery){
+ ETypedElementSwitchQuery switchQuery = (ETypedElementSwitchQuery)query;
+ EList<ETypedElementCase> list = switchQuery.getCases();
+ List listResult = new ArrayList<String>();
+ for (ETypedElementCase object : list) {
+ if(object.getCase() != null){
+ listResult.add(object.getCase().getName());
+ }
+ }
+ return listResult.toString();
+ }
+ }
+ }else if(element instanceof EParameter){
+ EParameter parameterValue = (EParameter)element;
+ return "";
+ //return parameterValue.getName();
+ }
+ return "N/A";
+ }
+
+ public Image getImage(final Object element) {
+ return null;
+ }
+
+ @Override
+ public void dispose() {
+ for (final Image image : this.images.values()) {
+ image.dispose();
+ }
+ super.dispose();
+ }
+
+ @Override
+ public void update(final ViewerCell cell) {
+ // for a color static value => display color
+ final Object element = cell.getElement();
+
+ // gray if not customized
+ boolean gray = false;
+ if (element instanceof FacetOperation) {
+ final FacetOperation customViewFeature = (FacetOperation) element;
+ //if (customViewFeature.getDefaultValue() == null) {
+ // gray = true;
+ //}
+ }
+
+ // red if unresolved query
+ boolean unresolved = false;
+ if (element instanceof DerivedTypedElement) {
+ final DerivedTypedElement derivedTypedElement = (DerivedTypedElement) element;
+ final Query query = derivedTypedElement.getQuery();
+ if (query == null || !EMFUtil.tryResolve(query)) {
+ unresolved = true;
+ }
+ }
+
+ if (unresolved) {
+ final String text = getText(element);
+ cell.setText(text);
+ cell.setImage(ImageProvider.getInstance().getErrorIcon());
+ super.update(cell);
+ } else {
+ cell.setImage(getImage(element));
+ super.update(cell);
+ }
+ }
+ }
+
+ protected class TypeLabelProvider extends ColumnLabelProvider{
+
+ @Override
+ public String getText(final Object element) {
+ if (element instanceof DerivedTypedElement) {
+ final DerivedTypedElement facetElement = (DerivedTypedElement) element;
+ if(facetElement instanceof FacetAttribute || facetElement instanceof FacetReference){
+ return facetElement.getEType().getName();
+ }else{
+ DerivedTypedElement override = facetElement.getOverride();
+ if( override != null){
+ return override.getName();
+ }else{
+ return ("N/A");
+ }
+ }
+ } else if( element instanceof EParameter){
+ final EParameter eParameter = (EParameter) element;
+ return eParameter.getEType().getName();
+ }
+
+ return element.toString();
+ }
+
+ @Override
+ public Image getImage(Object element) {
+ if (element instanceof DerivedTypedElement) {
+ final DerivedTypedElement facetElement = (DerivedTypedElement) element;
+ if(facetElement instanceof FacetAttribute || facetElement instanceof FacetReference){
+ return ImageProvider.getInstance().getAttributeIcon();
+ }else{
+ DerivedTypedElement override = facetElement.getOverride();
+ if( override != null){
+ String overrideName = override.getName();
+ if(CustomViewer.TOP_LEFT_OVERLAY_ICON_PATH.equals(overrideName)){
+ return ImageProvider.getInstance().getTopLeftOverlayIcon();
+ }else if(CustomViewer.TOP_MIDDLE_OVERLAY_ICON_PATH.equals(overrideName)){
+ return ImageProvider.getInstance().getTopMiddleOverlayIcon();
+ }else if(CustomViewer.TOP_RIGHT_OVERLAY_ICON_PATH.equals(overrideName)){
+ return ImageProvider.getInstance().getTopRightOverlayIcon();
+ }else if(CustomViewer.MIDDLE_LEFT_OVERLAY_ICON_PATH.equals(overrideName)){
+ return ImageProvider.getInstance().getMiddleLeftOverlayIcon();
+ }else if(CustomViewer.MIDDLE_RIGHT_OVERLAY_ICON_PATH.equals(overrideName)){
+ return ImageProvider.getInstance().getMiddleRightOverlayIcon();
+ }else if(CustomViewer.BOTTOM_LEFT_OVERLAY_ICON_PATH.equals(overrideName)){
+ return ImageProvider.getInstance().getBottomLeftOverlayIcon();
+ }else if(CustomViewer.BOTTOM_MIDDLE_OVERLAY_ICON_PATH.equals(overrideName)){
+ return ImageProvider.getInstance().getBottomMiddleOverlayIcon();
+ }else if(CustomViewer.BOTTOM_RIGHT_OVERLAY_ICON_PATH.equals(overrideName)){
+ return ImageProvider.getInstance().getBottomRightOverlayIcon();
+ }else if(CustomViewer.CUSTOMIZATION_LABEL.equals(overrideName)){
+ return ImageProvider.getInstance().getCustomizationLabelIcon();
+ }else if(CustomViewer.CUSTOMIZATION_IMAGE.equals(overrideName)){
+ return ImageProvider.getInstance().getCustomizationImageIcon();
+ }else if(CustomViewer.CUSTOMIZATION_FOREGROUND.equals(overrideName)){
+ return ImageProvider.getInstance().getCustomizationColorIcon();
+ }else if(CustomViewer.CUSTOMIZATION_BACKGROUND.equals(overrideName)){
+ return ImageProvider.getInstance().getCustomizationColorIcon();
+ }else if(CustomViewer.FONT_NAME.equals(overrideName)){
+ return ImageProvider.getInstance().getFontNameIcon();
+ }else if(CustomViewer.FONT_SIZE.equals(overrideName)){
+ return ImageProvider.getInstance().getFontSizeIcon();
+ }else if(CustomViewer.FONT_BOLD.equals(overrideName)){
+ return ImageProvider.getInstance().getIsBoldIcon();
+ }else if(CustomViewer.FONT_ITALIC.equals(overrideName)){
+ return ImageProvider.getInstance().getIsItalicIcon();
+ }else if(CustomViewer.FONT_UNDERLINE.equals(overrideName)){
+ return ImageProvider.getInstance().getIsUnderlinedIcon();
+ }else if(CustomViewer.FONT_STRUKETHROUGH.equals(overrideName)){
+ return ImageProvider.getInstance().getIsStrukethroughIcon();
+ }
+ }
+ }
+ }
+ return super.getImage(element);
+ }
+ }
+
+ public void refresh() {
+ if (!this.treeViewer.getTree().isDisposed()) {
+ try {
+ this.treeViewer.getTree().setRedraw(false);
+ this.treeViewer.refresh();
+ } finally {
+ this.treeViewer.getTree().setRedraw(true);
+ }
+ }
+ }
+
+ public void addSelectionChangedListener(final ISelectionChangedListener selectionChangedListener) {
+ this.treeViewer.addSelectionChangedListener(selectionChangedListener);
+ }
+
+ public ISelection getSelection() {
+ return this.treeViewer.getSelection();
+ }
+
+ public TreeViewer getViewer() {
+ return this.treeViewer;
+ }
+}
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/EMFUtil.java b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/EMFUtil.java
new file mode 100644
index 00000000000..2ad162408dc
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/EMFUtil.java
@@ -0,0 +1,363 @@
+/*******************************************************************************
+ * Copyright (c) 2008, 2010 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Comparator;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Set;
+import java.util.TreeSet;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+
+/** Utility functions related to EMF */
+public class EMFUtil {
+
+ /**
+ * @return whether the given EObject is in the first resource of its
+ * resource set
+ */
+ public static boolean isInFirstResource(final EObject eObject) {
+ final Resource resource = eObject.eResource();
+ if (resource == null) {
+ return false;
+ }
+ final ResourceSet resourceSet = resource.getResourceSet();
+ if (resourceSet == null) {
+ return false;
+ }
+ final EList<Resource> resources = resourceSet.getResources();
+ if (resources.size() > 0) {
+ if (resourceSet.getResources().get(0) == resource) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /**
+ * Search for instances of the given EClass
+ *
+ * @param eClass
+ * the EClass of the elements that are looked for
+ * @param resource
+ * the resource to search in
+ * @return elements that are instances of the given EClass
+ */
+ public Collection<EObject> findInstancesOf(final EClass eClass, final Resource resource) {
+ final ArrayList<EObject> instances = new ArrayList<EObject>();
+ final TreeIterator<EObject> allContents = resource.getAllContents();
+ while (allContents.hasNext()) {
+ final EObject eObject = allContents.next();
+ if (eObject.eClass() == eClass) {
+ instances.add(eObject);
+ }
+ }
+ return instances;
+ }
+
+ /**
+ * Find and return all the metaclasses of the given resource set.
+ *
+ * @return a list of all the metaclasses of elements contained in the
+ * resource set, and metaclasses in resources in which metaclasses
+ * of elements in the resource set have been found
+ */
+// public static Set<EClass> findAllClasses(final Set<Resource> browsedResources) {
+// // TODO: try to read from PackageRegistry?
+// // resourceSet.getPackageRegistry().keySet()
+//
+// // TODO: find EClasses in EPackages
+//
+// /*
+// * the list of metaclasses is a tree set so that it is always sorted and
+// * each class is guaranteed to appear at most once.
+// */
+// final TreeSet<EClass> classes = new TreeSet<EClass>(new Comparator<EClass>() {
+// public int compare(final EClass c1, final EClass c2) {
+// return ModelUtils.getMetaclassQualifiedName(c1).compareTo(
+// ModelUtils.getMetaclassQualifiedName(c2));
+// }
+// });
+//
+// /** The resources, in a HashSet to get constant time access */
+// final HashSet<Resource> resources = new HashSet<Resource>();
+// /**
+// * Resources that were discovered outside of the resource set, and which
+// * contain metaclasses used in the model
+// */
+// final ArrayList<Resource> newResources = new ArrayList<Resource>();
+//
+// resources.addAll(browsedResources);
+//
+// for (final Resource resource : browsedResources) {
+// final TreeIterator<EObject> allContents = resource.getAllContents();
+// while (allContents.hasNext()) {
+// final EObject eObject = allContents.next();
+// if (eObject instanceof EClass) {
+// final EClass eClass = (EClass) eObject;
+// classes.add(eClass);
+// } else {
+// // EPackage ePackage = eObject.eClass().getEPackage();
+// // System.out.println("package : " + ePackage.getNsURI());
+//
+// final EClass eClass = eObject.eClass();
+// if (eClass != null) {
+// // make sure all model elements have their metaclass in
+// // the list
+// classes.add(eClass);
+//
+// // if we discovered a new resource, then memorize it
+// final Resource res = eClass.eResource();
+// if (res != null && !resources.contains(res)) {
+// resources.add(res);
+// newResources.add(res);
+// }
+// }
+// }
+// }
+// }
+//
+// /*
+// * Now, add the classes that reside in resources that we discovered and
+// * are not part of the resource set. For example, the UML models have
+// * metaclasses in 'http://www.eclipse.org/uml2/2.1.0/UML', which is not
+// * in the resource set.
+// */
+// addAll(classes, newResources);
+// newResources.clear();
+//
+// final ArrayList<EClass> newClasses = new ArrayList<EClass>();
+//
+// for (final EClass eClass : classes) {
+// final EList<EClass> allSuperTypes = eClass.getEAllSuperTypes();
+// for (final EClass superclass : allSuperTypes) {
+// newClasses.add(superclass);
+//
+// // if we discovered a new resource, then memorize it
+// final Resource resource = superclass.eResource();
+// if (resource != null && !resources.contains(resource)) {
+// resources.add(resource);
+// newResources.add(resource);
+// }
+// }
+// }
+//
+// for (final EClass eClass : newClasses) {
+// classes.add(eClass);
+// }
+//
+// // add classes in newly discovered resources (again)
+// addAll(classes, newResources);
+//
+// // for (Resource resource : resources) {
+// // System.out.println(resource.getURI().toString());
+// // }
+//
+// return classes;
+// }
+
+ /**
+ * Add all the classes in <code>resources</code> to the <code>classes</code>
+ * set
+ */
+ private static void addAll(final Set<EClass> classes, final List<Resource> resources) {
+ for (final Resource resource : resources) {
+ final TreeIterator<EObject> allContents = resource.getAllContents();
+ while (allContents.hasNext()) {
+ final EObject eObject = allContents.next();
+ if (eObject instanceof EClass) {
+ final EClass eClass = (EClass) eObject;
+ classes.add(eClass);
+ }
+ }
+ }
+ }
+
+ /**
+ * Find the most specific metaclass that is common to all of the given
+ * elements.
+ *
+ * @return the common metaclass or <code>null</code> if none was found
+ */
+ public static EClass findCommonClass(final List<EObject> elements) {
+ // FIXME this algorithm can make a choice about a branch early and not
+ // find
+ // a solution, when a solution does exist
+ EClass eClass = null;
+ for (final EObject element : elements) {
+ final EClass elementEClass = element.eClass();
+ if (eClass == null) {
+ eClass = elementEClass;
+ } else {
+ if (eClass.isSuperTypeOf(elementEClass)) {
+ continue;
+ } else if (elementEClass.isSuperTypeOf(eClass)) {
+ eClass = elementEClass;
+ } else {
+ // elements are on two different branches
+ // try to find a common metaclass
+ eClass = findSuperType(eClass, elementEClass);
+ if (eClass == null) {
+ return null;
+ }
+ }
+ }
+ }
+ return eClass;
+ }
+
+ /**
+ * Find the first superclass of <code>eClass</code> that is a superclass of
+ * <code>element</code>
+ */
+ private static EClass findSuperType(final EClass eClass, final EClass element) {
+ // do a breadth-first search (with a bottom-up tree)
+ final LinkedList<EClass> breadthFirstList = new LinkedList<EClass>();
+ breadthFirstList.addFirst(eClass);
+
+ while (!breadthFirstList.isEmpty()) {
+ final EClass candidateClass = breadthFirstList.poll();
+
+ if (candidateClass.isSuperTypeOf(element)) {
+ return candidateClass;
+ }
+
+ // add all the direct super-types of this class
+ for (final EClass supertype : candidateClass.getESuperTypes()) {
+ breadthFirstList.addLast(supertype);
+ }
+ }
+
+ return null;
+ }
+
+ /**
+ * Try to resolve the given proxy.
+ *
+ * @return whether the proxy could be resolved
+ */
+ public static boolean tryResolve(final EObject eObject) {
+ final EObject resolved = EcoreUtil.resolve(eObject, (EObject) null);
+ return !resolved.eIsProxy();
+ }
+
+ /** @return the proxy URI for the given EObject or an empty String if none */
+ public static String proxyURI(final EObject eObject) {
+ final URI eProxyURI = ((InternalEObject) eObject).eProxyURI();
+ if (eProxyURI == null) {
+ return ""; //$NON-NLS-1$
+ }
+ return eProxyURI.toString();
+ }
+
+ public static <T extends ENamedElement> T findElementWithName(final String name,
+ final EList<T> elements) {
+ for (T element : elements) {
+ if (name.equals(element.getName())) {
+ return element;
+ }
+ }
+ return null;
+ }
+
+// public static EClass findMetaclassWithName(final String metaclassFullyQualifiedName,
+// final List<EClass> metaclasses) {
+// for (EClass eClass : metaclasses) {
+// if (metaclassFullyQualifiedName.equals(ModelUtils.getMetaclassQualifiedName(eClass))) {
+// return eClass;
+// }
+// }
+// return null;
+// }
+
+ /**
+ * @return the name of the package in the package registry with this nsURI,
+ * or <code>null</code> if not found
+ */
+ public static String getMetamodelName(final String nsURI) {
+ if (nsURI != null) {
+ final EPackage ePackage = EPackage.Registry.INSTANCE.getEPackage(nsURI);
+ if (ePackage != null) {
+ final String name = ePackage.getName();
+ if (name != null) {
+ return name;
+ }
+ }
+
+ final URI uri = URI.createURI(nsURI);
+ final String lastSegment = uri.lastSegment();
+ if (lastSegment != null) {
+ return lastSegment;
+ }
+ }
+ return null;
+ }
+
+ /** @return the list of {@link EClass}es found in the following resource */
+ public static List<EClass> getMetaclasses(final Resource metamodel) {
+ final List<EClass> metaclasses = new ArrayList<EClass>();
+ final TreeIterator<EObject> allContents = metamodel.getAllContents();
+ while (allContents.hasNext()) {
+ final EObject eObject = allContents.next();
+ if (eObject instanceof EClass) {
+ final EClass eClass = (EClass) eObject;
+ metaclasses.add(eClass);
+ }
+ }
+ return metaclasses;
+ }
+
+ /**
+ * Find the {@link EObject} with the given URI in the given
+ * {@link ResourceSet}
+ *
+ * @return the element or <code>null</code> if no element was found with
+ * this URI in the given {@link ResourceSet}
+ */
+ public static EObject findElementByURI(final String uriFragment, final ResourceSet resourceSet) {
+ EList<Resource> resources = resourceSet.getResources();
+ for (Resource resource : resources) {
+ EObject eObject = resource.getEObject(uriFragment);
+ if (eObject != null) {
+ return eObject;
+ }
+ }
+
+ // Resource resource;
+ // resource.
+ // TreeIterator<Notifier> allContents = resourceSet.getAllContents();
+ // while (allContents.hasNext()) {
+ // Notifier notifier = allContents.next();
+ // if (notifier instanceof EObject) {
+ // EObject eObject = (EObject) notifier;
+ // if (uri.equals(EcoreUtil.getURI(eObject))) {
+ // return eObject;
+ // }
+ // }
+ // }
+ return null;
+ }
+
+}
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/FormStyleSashForm.java b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/FormStyleSashForm.java
new file mode 100644
index 00000000000..e00906cfa75
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/FormStyleSashForm.java
@@ -0,0 +1,143 @@
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+import java.lang.reflect.Field;
+import java.util.ArrayList;
+import java.util.Iterator;
+
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.core.internal.Activator;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.custom.SashForm;
+import org.eclipse.swt.graphics.GC;
+import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Sash;
+import org.eclipse.ui.forms.FormColors;
+import org.eclipse.ui.forms.IFormColors;
+import org.eclipse.ui.forms.widgets.FormToolkit;
+
+/** Adapted from {@link org.eclipse.ui.forms.MasterDetailsBlock} */
+public abstract class FormStyleSashForm extends SashForm {
+ private final ArrayList<Sash> fSashes = new ArrayList<Sash>();
+ private final FormToolkit formToolkit;
+ private int minWidth = 0;
+
+ private final Listener fListener = new Listener() {
+ public void handleEvent(final Event e) {
+ switch (e.type) {
+ case SWT.MouseEnter:
+ e.widget.setData("hover", Boolean.TRUE); //$NON-NLS-1$
+ ((Control) e.widget).redraw();
+ break;
+ case SWT.MouseExit:
+ e.widget.setData("hover", null); //$NON-NLS-1$
+ ((Control) e.widget).redraw();
+ break;
+ case SWT.Paint:
+ onSashPaint(e);
+ break;
+ case SWT.Resize:
+ hookSashListeners();
+ break;
+ case SWT.Selection:
+ if (e.x < FormStyleSashForm.this.minWidth) {
+ e.x = FormStyleSashForm.this.minWidth;
+ }
+ break;
+ default:
+ Logger.logWarning("Unhandled event", Activator.getDefault()); //$NON-NLS-1$
+ }
+ }
+ };
+
+ public FormStyleSashForm(final Composite parent, final int style, final FormToolkit formToolkit) {
+ super(parent, style);
+ this.formToolkit = formToolkit;
+ formToolkit.adapt(this, false, false);
+ createContents();
+ hookListeners();
+ }
+
+ public void setMinWidth(final int minWidth) {
+ this.minWidth = minWidth;
+ }
+
+ protected abstract void createContents();
+
+ private void hookListeners() {
+ final Listener listener = this.fListener;
+ for (final Control child : getChildren()) {
+ if (!(child instanceof Sash)) {
+ child.addListener(SWT.Resize, listener);
+ }
+ }
+ }
+
+ @Override
+ public void layout(final boolean changed) {
+ super.layout(changed);
+ hookSashListeners();
+ }
+
+ @Override
+ public void layout(final Control[] children) {
+ super.layout(children);
+ hookSashListeners();
+ }
+
+ void hookSashListeners() {
+ purgeSashes();
+ try {
+ final Sash[] allSashes = getSashes();
+ for (final Sash sash : allSashes) {
+ if (this.fSashes.contains(sash)) {
+ continue;
+ }
+ sash.addListener(SWT.Paint, this.fListener);
+ sash.addListener(SWT.MouseEnter, this.fListener);
+ sash.addListener(SWT.MouseExit, this.fListener);
+ sash.addListener(SWT.Selection, this.fListener);
+ this.fSashes.add(sash);
+ }
+ } catch (final Exception e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+
+ private Sash[] getSashes() {
+ try {
+ final Field sashesField = SashForm.class.getDeclaredField("sashes"); //$NON-NLS-1$
+ sashesField.setAccessible(true);
+ final Sash[] allSashes = (Sash[]) sashesField.get(this);
+ return allSashes;
+ } catch (final Exception e) {
+ Logger.logError(e, Activator.getDefault());
+ return new Sash[0];
+ }
+ }
+
+ private void purgeSashes() {
+ for (final Iterator<Sash> iter = this.fSashes.iterator(); iter.hasNext();) {
+ final Sash sash = iter.next();
+ if (sash.isDisposed()) {
+ iter.remove();
+ }
+ }
+ }
+
+ void onSashPaint(final Event e) {
+ final Sash sash = (Sash) e.widget;
+ final FormColors colors = this.formToolkit.getColors();
+ final GC gc = e.gc;
+ final Boolean hover = (Boolean) sash.getData("hover"); //$NON-NLS-1$
+ if (hover != null) {
+ gc.setBackground(colors.getColor(IFormColors.TB_BG));
+ gc.setForeground(colors.getColor(IFormColors.TB_BORDER));
+ final Point size = sash.getSize();
+ gc.fillRectangle(0, 0, size.x, size.y);
+ }
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/ImageProvider.java b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/ImageProvider.java
new file mode 100644
index 00000000000..7086e6914ca
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/ImageProvider.java
@@ -0,0 +1,770 @@
+/*******************************************************************************
+ * Copyright (c) 2008, 2010 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Vincent Lorenzo (CEA-LIST) - bug 341238 - We need to be able to specify which column have to be hidden/visible using the customization mechanism
+ *******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+import java.net.URL;
+
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.widgets.Display;
+
+/** A singleton image provider, which caches image descriptors */
+public final class ImageProvider {
+
+ private ImageProvider() {
+ // This class must only be instantiated by getInstance().
+ }
+
+ private static ImageProvider instance;
+
+ public static ImageProvider getInstance() {
+ if (ImageProvider.instance == null) {
+ ImageProvider.instance = new ImageProvider();
+ }
+ return ImageProvider.instance;
+ }
+
+ private Image linkIcon = null;
+ private Image linkUniDirIcon = null;
+ private Image linkFacetIcon = null;
+ private Image aggregIcon = null;
+ private Image aggregUniDirIcon = null;
+ private Image invAggregIcon = null;
+
+ private Image emptyLinksIcon = null;
+ // private Image sortInstancesIcon = null;
+ private Image sortLinksIcon = null;
+ private Image sortLinksByTypeIcon = null;
+ // private Image sortNumericallyIcon = null;
+ private Image showDerivedLinksIcon = null;
+ private Image showFullQualifiedNamesIcon = null;
+ private Image showMultiplicityIcon = null;
+ private Image showOppositeLinksIcon = null;
+
+ private Image rangeIcon = null;
+ private Image containerIcon = null;
+ // private Image emptyMetaclassesIcon = null;
+ private Image packageIcon = null;
+ // private Image derivedInstancesIcon = null;
+ // private Image derivationTreeIcon = null;
+ private Image attributeIcon = null;
+ private Image attributeFacetIcon = null;
+ private Image emptyAttributeIcon = null;
+ private Image orderingIcon = null;
+ private Image linkTypeIcon = null;
+
+ private Image facetIcon = null;
+ private Image viewMenuIcon = null;
+
+ private ImageDescriptor increaseFontSizeIcon = null;
+ private ImageDescriptor decreaseFontSizeIcon = null;
+ private ImageDescriptor restoreFontSizeIcon = null;
+
+ private Image hideEmptyColumnsIcon = null;
+ private Image commonColumnsIcon = null;
+ private Image eClassIcon = null;
+ private Image operationIcon = null;
+ private Image predicateIcon = null;
+ private Image emffacetIcon = null;
+ private Image featureIcon = null;
+ private Image errorIcon = null;
+ private Image queryIcon = null;
+ private Image uiCustomIcon = null;
+ private Image grayedUiCustomIcon=null;
+ private Image uriIcon = null;
+
+ private Image shortcutIcon = null;
+
+ private Image topLeftOverlay = null;
+ private Image topMiddleOverlay = null;
+ private Image topRightOverlay = null;
+ private Image middleLeftOverlay = null;
+ private Image middleRightOverlay = null;
+ private Image bottomLeftOverlay = null;
+ private Image bottomMiddleOverlay = null;
+ private Image bottomRightOverlay = null;
+ private Image customizationLabel = null;
+ private Image customizationImage = null;
+ private Image rgb = null;
+ private Image fontName = null;
+ private Image fontSize = null;
+ private Image isBold = null;
+ private Image isItalic = null;
+ private Image isUnderlined = null;
+ private Image isStruckthrough = null;
+
+
+ private static final String LINK_ICON_PATH = "/icons/full/ctool16/link.gif"; //$NON-NLS-1$
+ private static final String LINK_UNIDIR_ICON_PATH = "/icons/full/ctool16/link_unidir.gif"; //$NON-NLS-1$
+ private static final String LINK_FACET_ICON_PATH = "/icons/full/ctool16/link_unidir_facet.gif"; //$NON-NLS-1$
+ private static final String AGGREG_ICON_PATH = "/icons/full/ctool16/aggreg.gif"; //$NON-NLS-1$
+ private static final String AGGREG_UNIDIR_ICON_PATH = "/icons/full/ctool16/aggreg_unidir.gif"; //$NON-NLS-1$
+ private static final String INV_AGGREG_ICON_PATH = "/icons/full/ctool16/inv_aggreg.gif"; //$NON-NLS-1$
+ private static final String EMPTY_LINKS_ICON_PATH = "/icons/full/ctool16/empty_links.gif"; //$NON-NLS-1$
+ private static final String SORT_INSTANCES_ICON_PATH = "/icons/full/ctool16/sort.gif"; //$NON-NLS-1$
+ private static final String SORT_LINKS_ICON_PATH = "/icons/full/ctool16/sort_links.gif"; //$NON-NLS-1$
+ private static final String SORT_LINKS_BY_TYPE_ICON_PATH = "/icons/full/ctool16/sort_links_by_type.gif"; //$NON-NLS-1$
+ private static final String SORT_NUMERICALLY_ICON_PATH = "/icons/full/ctool16/sort_num.gif"; //$NON-NLS-1$
+ private static final String SHOW_DERIVED_LINKS_ICON_PATH = "/icons/full/ctool16/derived.gif"; //$NON-NLS-1$
+ private static final String SHOW_FULL_QUALIFIED_NAMES_ICON_PATH = "/icons/full/ctool16/full_name.gif"; //$NON-NLS-1$
+ private static final String RANGE_ICON_PATH = "/icons/full/ctool16/range.gif"; //$NON-NLS-1$
+ private static final String SHOW_MULTIPLICITY_ICON_PATH = "/icons/full/ctool16/multiplicity.gif"; //$NON-NLS-1$
+ private static final String SHOW_OPPOSITE_LINKS_ICON_PATH = "/icons/full/ctool16/opposite_links.gif"; //$NON-NLS-1$
+ private static final String CONTAINER_ICON_PATH = "/icons/full/ctool16/container.gif"; //$NON-NLS-1$
+ private static final String EMPTY_METACLASSES_ICON_PATH = "/icons/full/ctool16/zero.gif"; //$NON-NLS-1$
+ private static final String PACKAGE_ICON_PATH = "/icons/full/ctool16/package.gif"; //$NON-NLS-1$
+ private static final String DERIVED_INSTANCES_ICON_PATH = "/icons/full/ctool16/derived_instances.gif"; //$NON-NLS-1$
+ private static final String DERIVATION_TREE_ICON_PATH = "/icons/full/ctool16/derivation_tree.gif"; //$NON-NLS-1$
+ private static final String ATTRIBUTE_ICON_PATH = "/icons/full/ctool16/attributes.gif"; //$NON-NLS-1$
+ private static final String ATTRIBUTE_FACET_ICON_PATH = "/icons/full/ctool16/attribute_facet.gif"; //$NON-NLS-1$
+ private static final String EMPTY_ATTRIBUTE_ICON_PATH = "/icons/full/ctool16/empty_attributes.gif"; //$NON-NLS-1$
+ private static final String INCREASE_FONT_SIZE_ICON_PATH = "/icons/full/ctool16/increase_font_size.gif"; //$NON-NLS-1$
+ private static final String DECREASE_FONT_SIZE_ICON_PATH = "/icons/full/ctool16/decrease_font_size.gif"; //$NON-NLS-1$
+ private static final String RESTORE_FONT_SIZE_ICON_PATH = "/icons/full/ctool16/restore_font_size.gif"; //$NON-NLS-1$
+ private static final String HIDE_EMPTY_COLUMNS_ICON_PATH = "/icons/full/ctool16/non-zero.gif"; //$NON-NLS-1$
+ private static final String COMMON_COLUMNS_ICON_PATH = "/icons/full/ctool16/common_columns.gif"; //$NON-NLS-1$
+ private static final String ORDERING_ICON_PATH = "/icons/full/ctool16/ordering.gif"; //$NON-NLS-1$
+ private static final String ECLASS_ICON_PATH = "/icons/full/ctool16/eClass.gif"; //$NON-NLS-1$
+ private static final String OPERATION_ICON_PATH = "/icons/full/ctool16/operation.gif"; //$NON-NLS-1$
+ private static final String PREDICATE_ICON_PATH = "/icons/full/ctool16/predicate.gif"; //$NON-NLS-1$
+ private static final String EMFFACET_ICON_PATH = "icons/logoEmfFacetMini.gif"; //$NON-NLS-1$
+ private static final String FEATURE_ICON_PATH = "icons/full/ctool16/feature.gif"; //$NON-NLS-1$
+ private static final String ERROR_ICON_PATH = "icons/error.gif"; //$NON-NLS-1$
+ private static final String FACET_ICON_PATH = "icons/Facet.gif"; //$NON-NLS-1$
+ private static final String ADD_UI_CUSTOM_ICON_PATH = "icons/full/ctool16/addUiCustom.gif"; //$NON-NLS-1$
+ private static final String VIEW_MENU_ICON_PATH = "icons/full/ctool16/view_menu.gif"; //$NON-NLS-1$
+ private static final String LINK_TYPE_ICON_PATH = "icons/full/ctool16/link_type.gif"; //$NON-NLS-1$
+ private static final String QUERY_ICON_PATH = "icons/query.png"; //$NON-NLS-1$
+ private static final String ELEMENT_IDS_ICON_PATH = "/icons/full/ctool16/element_id.gif"; //$NON-NLS-1$
+ private static final String URI_ICON_PATH = "/icons/full/ctool16/uri.gif"; //$NON-NLS-1$
+ private static final String COLLAPSE_ALL_ICON_PATH = "/icons/full/ctool16/collapseall.gif"; //$NON-NLS-1$
+ private static final String SHORTCUT_ICON_PATH = "/icons/shortcut.png"; //$NON-NLS-1$
+
+ //Customization
+ private static final String TOP_LEFT_OVERLAY_ICON_PATH = "/icons/full/ctool16/topLeftOverlay.png";
+ private static final String TOP_MIDDLE_OVERLAY_ICON_PATH = "/icons/full/ctool16/topMiddleOverlay.png";
+ private static final String TOP_RIGHT_OVERLAY_ICON_PATH = "/icons/full/ctool16/topRightOverlay.png";
+ private static final String MIDDLE_LEFT_OVERLAY_ICON_PATH = "/icons/full/ctool16/middleLeftOverlay.png";
+ private static final String MIDDLE_RIGHT_OVERLAY_ICON_PATH = "/icons/full/ctool16/middleRightOverlay.png";
+ private static final String BOTTOM_LEFT_OVERLAY_ICON_PATH = "/icons/full/ctool16/bottomLeftOverlay.png";
+ private static final String BOTTOM_MIDDLE_OVERLAY_ICON_PATH = "/icons/full/ctool16/bottomMiddleOverlay.png";
+ private static final String BOTTOM_RIGHT_OVERLAY_ICON_PATH = "/icons/full/ctool16/bottomRightOverlay.png";
+ private static final String LABEL_CUSTOMIZATION = "/icons/full/ctool16/customizationLabel.png";
+ private static final String IMAGE_CUSTOMIZATION = "/icons/full/ctool16/imageCustomization.png";
+ private static final String RGB_CUSTOMIZATION = "/icons/full/ctool16/rgb.png";
+ private static final String FONT_NAME = "/icons/full/ctool16/fontName.png"; //$NON-NLS-1$
+ private static final String FONT_SIZE = "/icons/full/ctool16/fontSize.png"; //$NON-NLS-1$
+ private static final String IS_BOLD = "/icons/full/ctool16/fontBold.png"; //$NON-NLS-1$
+ private static final String IS_ITALIC = "/icons/full/ctool16/fontItalic.bmp"; //$NON-NLS-1$
+ private static final String IS_UNDERLINED = "/icons/full/ctool16/fontUnderline.bmp"; //$NON-NLS-1$
+ private static final String IS_STRUCKTHROUGH = "/icons/full/ctool16/fontStrukethrough.bmp"; //$NON-NLS-1$
+
+ /**
+ * Create an image descriptor from a resource
+ *
+ * @param resourcePath
+ * the path of the resource (in the bundle)
+ * @return the image descriptor
+ */
+ private ImageDescriptor createImageDescriptor(final String resourcePath) {
+ final URL url = Activator.getDefault().getBundle().getResource(resourcePath);
+ if (url == null) {
+ Logger.logError(NLS.bind("Resource not found: {0}", //$NON-NLS-1$
+ resourcePath), Activator.getDefault());
+ return ImageDescriptor.getMissingImageDescriptor();
+ }
+ return ImageDescriptor.createFromURL(url);
+ }
+
+ /** Return the icon representing a bidirectional link */
+ public Image getLinkIcon() {
+ if (this.linkIcon == null) {
+ this.linkIcon = createImageDescriptor(ImageProvider.LINK_ICON_PATH).createImage();
+ }
+ return this.linkIcon;
+ }
+
+ /** Return the icon representing an unidirectional link */
+ public Image getUnidirectionalLinkIcon() {
+ if (this.linkUniDirIcon == null) {
+ this.linkUniDirIcon = createImageDescriptor(ImageProvider.LINK_UNIDIR_ICON_PATH)
+ .createImage();
+ }
+ return this.linkUniDirIcon;
+ }
+
+ /** Return the icon representing a facet reference */
+ public Image getFacetLinkIcon() {
+ if (this.linkFacetIcon == null) {
+ this.linkFacetIcon = createImageDescriptor(ImageProvider.LINK_FACET_ICON_PATH)
+ .createImage();
+ }
+ return this.linkFacetIcon;
+ }
+
+ /** Return the icon representing a composition link */
+ public Image getAggregIcon() {
+ if (this.aggregIcon == null) {
+ this.aggregIcon = createImageDescriptor(ImageProvider.AGGREG_ICON_PATH).createImage();
+ }
+ return this.aggregIcon;
+ }
+
+ /** Return the icon representing an unidirectional composition link */
+ public Image getUnidirectionalAggregIcon() {
+ if (this.aggregUniDirIcon == null) {
+ this.aggregUniDirIcon = createImageDescriptor(ImageProvider.AGGREG_UNIDIR_ICON_PATH)
+ .createImage();
+ }
+ return this.aggregUniDirIcon;
+ }
+
+ /** Return the icon representing a reverse composition link */
+ public Image getInvAggregIcon() {
+ if (this.invAggregIcon == null) {
+ this.invAggregIcon = createImageDescriptor(ImageProvider.INV_AGGREG_ICON_PATH)
+ .createImage();
+ }
+ return this.invAggregIcon;
+ }
+
+ /** Return the icon representing empty links */
+ public Image getEmptyLinksIcon() {
+ if (this.emptyLinksIcon == null) {
+ this.emptyLinksIcon = createImageDescriptor(ImageProvider.EMPTY_LINKS_ICON_PATH)
+ .createImage();
+ }
+ return this.emptyLinksIcon;
+ }
+
+ /** Return the icon representing empty links */
+ public ImageDescriptor getEmptyLinksImageDescriptor() {
+ return createImageDescriptor(ImageProvider.EMPTY_LINKS_ICON_PATH);
+ }
+
+ /** Return the icon representing sorting of instances */
+ public ImageDescriptor getSortInstancesIcon() {
+ return createImageDescriptor(ImageProvider.SORT_INSTANCES_ICON_PATH);
+ }
+
+ /** Return the icon representing sorting of links */
+ public Image getSortLinksIcon() {
+ if (this.sortLinksIcon == null) {
+ this.sortLinksIcon = createImageDescriptor(ImageProvider.SORT_LINKS_ICON_PATH)
+ .createImage();
+ }
+ return this.sortLinksIcon;
+ }
+
+ /** Return the icon representing sorting of links */
+ public ImageDescriptor getSortLinksImageDescriptor() {
+ return createImageDescriptor(ImageProvider.SORT_LINKS_ICON_PATH);
+ }
+
+ /** Return the icon representing sorting of links by type */
+ public Image getSortLinksByTypeIcon() {
+ if (this.sortLinksByTypeIcon == null) {
+ this.sortLinksByTypeIcon = createImageDescriptor(
+ ImageProvider.SORT_LINKS_BY_TYPE_ICON_PATH).createImage();
+ }
+ return this.sortLinksByTypeIcon;
+ }
+
+ /** Return the icon representing sorting of links by type */
+ public ImageDescriptor getSortLinksByTypeImageDescriptor() {
+ return createImageDescriptor(ImageProvider.SORT_LINKS_BY_TYPE_ICON_PATH);
+ }
+
+ /** Return the icon representing sorting numerically */
+ public ImageDescriptor getSortNumericallyIcon() {
+ return createImageDescriptor(ImageProvider.SORT_NUMERICALLY_ICON_PATH);
+ }
+
+ /** Return the icon representing derived links */
+ public Image getShowDerivedLinksIcon() {
+ if (this.showDerivedLinksIcon == null) {
+ this.showDerivedLinksIcon = createImageDescriptor(
+ ImageProvider.SHOW_DERIVED_LINKS_ICON_PATH).createImage();
+ }
+ return this.showDerivedLinksIcon;
+ }
+
+ /** Return the icon representing derived links */
+ public ImageDescriptor getShowDerivedLinksImageDescriptor() {
+ return createImageDescriptor(ImageProvider.SHOW_DERIVED_LINKS_ICON_PATH);
+ }
+
+ /** Return the icon representing full qualified names */
+ public Image getShowFullQualifiedNamesIcon() {
+ if (this.showFullQualifiedNamesIcon == null) {
+ this.showFullQualifiedNamesIcon = createImageDescriptor(
+ ImageProvider.SHOW_FULL_QUALIFIED_NAMES_ICON_PATH).createImage();
+ }
+ return this.showFullQualifiedNamesIcon;
+ }
+
+ /** Return the icon representing full qualified names */
+ public ImageDescriptor getShowFullQualifiedNamesImageDescriptor() {
+ return createImageDescriptor(ImageProvider.SHOW_FULL_QUALIFIED_NAMES_ICON_PATH);
+ }
+
+ /** Return the icon representing a range */
+ public Image getRangeIcon() {
+ if (this.rangeIcon == null) {
+ this.rangeIcon = createImageDescriptor(ImageProvider.RANGE_ICON_PATH).createImage();
+ }
+ return this.rangeIcon;
+ }
+
+ /** Return the multiplicity icon */
+ public Image getShowMultiplicityIcon() {
+ if (this.showMultiplicityIcon == null) {
+ this.showMultiplicityIcon = createImageDescriptor(
+ ImageProvider.SHOW_MULTIPLICITY_ICON_PATH).createImage();
+ }
+ return this.showMultiplicityIcon;
+ }
+
+ /** Return the multiplicity icon */
+ public ImageDescriptor getShowMultiplicityImageDescriptor() {
+ return createImageDescriptor(ImageProvider.SHOW_MULTIPLICITY_ICON_PATH);
+ }
+
+ /** Return the "opposite links" icon */
+ public Image getShowOppositeLinksIcon() {
+ if (this.showOppositeLinksIcon == null) {
+ this.showOppositeLinksIcon = createImageDescriptor(
+ ImageProvider.SHOW_OPPOSITE_LINKS_ICON_PATH).createImage();
+ }
+ return this.showOppositeLinksIcon;
+ }
+
+ /** Return the "opposite links" icon */
+ public ImageDescriptor getShowOppositeLinksImageDescriptor() {
+ return createImageDescriptor(ImageProvider.SHOW_OPPOSITE_LINKS_ICON_PATH);
+ }
+
+ /** Return the "container" icon */
+ public Image getContainerIcon() {
+ if (this.containerIcon == null) {
+ this.containerIcon = createImageDescriptor(ImageProvider.CONTAINER_ICON_PATH)
+ .createImage();
+ }
+ return this.containerIcon;
+ }
+
+ /** Return the "container" icon */
+ public ImageDescriptor getContainerImageDescriptor() {
+ return createImageDescriptor(ImageProvider.CONTAINER_ICON_PATH);
+ }
+
+ /** Return the "show empty metaclasses" icon */
+ public ImageDescriptor getShowEmptyMetaclassesIcon() {
+ return createImageDescriptor(ImageProvider.EMPTY_METACLASSES_ICON_PATH);
+ }
+
+ /** Return the "package" icon */
+ public Image getPackageIcon() {
+ if (this.packageIcon == null) {
+ this.packageIcon = createImageDescriptor(ImageProvider.PACKAGE_ICON_PATH).createImage();
+ }
+ return this.packageIcon;
+ }
+
+ /** Return the "package" icon */
+ public ImageDescriptor getPackageImageDescriptor() {
+ return createImageDescriptor(ImageProvider.PACKAGE_ICON_PATH);
+ }
+
+ // /** Return the "derived instances" icon */
+ // public Image getDerivedInstancesIcon() {
+ // if (this.derivedInstancesIcon == null) {
+ // this.derivedInstancesIcon = createImageDescriptor(
+ // ImageProvider.DERIVED_INSTANCES_ICON_PATH).createImage();
+ // }
+ // return this.derivedInstancesIcon;
+ // }
+
+ /** Return the "derived instances" icon */
+ public ImageDescriptor getDerivedInstancesImageDescriptor() {
+ return createImageDescriptor(ImageProvider.DERIVED_INSTANCES_ICON_PATH);
+ }
+
+ /** Return the "derivation tree" icon */
+ public ImageDescriptor getDerivationTreeIcon() {
+ return createImageDescriptor(ImageProvider.DERIVATION_TREE_ICON_PATH);
+ }
+
+ /** Return the "attribute" icon */
+ public Image getAttributeIcon() {
+ if (this.attributeIcon == null) {
+ this.attributeIcon = createImageDescriptor(ImageProvider.ATTRIBUTE_ICON_PATH)
+ .createImage();
+ }
+ return this.attributeIcon;
+ }
+
+ /** Return the "attribute" icon */
+ public ImageDescriptor getAttributeImageDescriptor() {
+ return createImageDescriptor(ImageProvider.ATTRIBUTE_ICON_PATH);
+ }
+
+ /** Return the "facet attribute" icon */
+ public Image getFacetAttributeIcon() {
+ if (this.attributeFacetIcon == null) {
+ this.attributeFacetIcon = createImageDescriptor(ImageProvider.ATTRIBUTE_FACET_ICON_PATH)
+ .createImage();
+ }
+ return this.attributeFacetIcon;
+ }
+
+ /** Return the "empty attributes" icon */
+ public Image getEmptyAttributeIcon() {
+ if (this.emptyAttributeIcon == null) {
+ this.emptyAttributeIcon = createImageDescriptor(ImageProvider.EMPTY_ATTRIBUTE_ICON_PATH)
+ .createImage();
+ }
+ return this.emptyAttributeIcon;
+ }
+
+ /** Return the "empty attributes" icon */
+ public ImageDescriptor getEmptyAttributeImageDescriptor() {
+ return createImageDescriptor(ImageProvider.EMPTY_ATTRIBUTE_ICON_PATH);
+ }
+
+ /** Return the "increase font size" icon */
+ public ImageDescriptor getIncreaseFontSizeIcon() {
+ if (this.increaseFontSizeIcon == null) {
+ this.increaseFontSizeIcon = createImageDescriptor(ImageProvider.INCREASE_FONT_SIZE_ICON_PATH);
+ }
+ return this.increaseFontSizeIcon;
+ }
+
+ /** Return the "decrease font size" icon */
+ public ImageDescriptor getDecreaseFontSizeIcon() {
+ if (this.decreaseFontSizeIcon == null) {
+ this.decreaseFontSizeIcon = createImageDescriptor(ImageProvider.DECREASE_FONT_SIZE_ICON_PATH);
+ }
+ return this.decreaseFontSizeIcon;
+ }
+
+ /** Return the "restore font size" icon */
+ public ImageDescriptor getRestoreFontSizeIcon() {
+ if (this.restoreFontSizeIcon == null) {
+ this.restoreFontSizeIcon = createImageDescriptor(ImageProvider.RESTORE_FONT_SIZE_ICON_PATH);
+ }
+ return this.restoreFontSizeIcon;
+ }
+
+ /** Return the "hide empty columns" icon */
+ public Image getHideEmptyColumnsIcon() {
+ if (this.hideEmptyColumnsIcon == null) {
+ this.hideEmptyColumnsIcon = createImageDescriptor(
+ ImageProvider.HIDE_EMPTY_COLUMNS_ICON_PATH).createImage();
+ }
+ return this.hideEmptyColumnsIcon;
+ }
+
+ /** Return the "common columns" icon */
+ public Image getCommonColumnsIcon() {
+ if (this.commonColumnsIcon == null) {
+ this.commonColumnsIcon = createImageDescriptor(ImageProvider.COMMON_COLUMNS_ICON_PATH)
+ .createImage();
+ }
+ return this.commonColumnsIcon;
+ }
+
+ /** Return the "ordering" icon */
+ public Image getOrderingIcon() {
+ if (this.orderingIcon == null) {
+ this.orderingIcon = createImageDescriptor(ImageProvider.ORDERING_ICON_PATH)
+ .createImage();
+ }
+ return this.orderingIcon;
+ }
+
+ /** Return the "ordering" icon */
+ public ImageDescriptor getOrderingImageDescriptor() {
+ return createImageDescriptor(ImageProvider.ORDERING_ICON_PATH);
+ }
+
+ /** Return the "eClass" icon */
+ public Image getEClassIcon() {
+ if (this.eClassIcon == null) {
+ this.eClassIcon = createImageDescriptor(ImageProvider.ECLASS_ICON_PATH).createImage();
+ }
+ return this.eClassIcon;
+ }
+
+ /** Return the "operation" icon */
+ public Image getOperationIcon() {
+ if (this.operationIcon == null) {
+ this.operationIcon = createImageDescriptor(ImageProvider.OPERATION_ICON_PATH)
+ .createImage();
+ }
+ return this.operationIcon;
+ }
+
+ /** Return the "predicate" icon */
+ public Image getPredicateIcon() {
+ if (this.predicateIcon == null) {
+ this.predicateIcon = createImageDescriptor(ImageProvider.PREDICATE_ICON_PATH)
+ .createImage();
+ }
+ return this.predicateIcon;
+ }
+
+ /** Return the "EmfFacet" icon */
+ public Image getEmfFacetIcon() {
+ if (this.emffacetIcon == null) {
+ this.emffacetIcon = createImageDescriptor(ImageProvider.EMFFACET_ICON_PATH).createImage();
+ }
+ return this.emffacetIcon;
+ }
+
+ /** Return an icon representing the concept of "feature" */
+ public Image getFeatureIcon() {
+ if (this.featureIcon == null) {
+ this.featureIcon = createImageDescriptor(ImageProvider.FEATURE_ICON_PATH).createImage();
+ }
+ return this.featureIcon;
+ }
+
+ /** Return an icon descriptor representing the concept of "feature" */
+ public ImageDescriptor getFeatureIconDescriptor() {
+ return createImageDescriptor(ImageProvider.FEATURE_ICON_PATH);
+ }
+
+ /** Return an icon descriptor representing the concept of "facet" */
+ public ImageDescriptor getFacetIconDescriptor() {
+ return createImageDescriptor(ImageProvider.FACET_ICON_PATH);
+ }
+
+ /** Return an icon descriptor representing the concept of "facet" */
+ public Image getFacetIcon() {
+ if (this.facetIcon == null) {
+ this.facetIcon = createImageDescriptor(ImageProvider.FACET_ICON_PATH).createImage();
+ }
+ return this.facetIcon;
+ }
+
+ /** Return an icon descriptor for "uiCustom" */
+ public ImageDescriptor getAddUiCustomIconDescriptor() {
+ return createImageDescriptor(ImageProvider.ADD_UI_CUSTOM_ICON_PATH);
+ }
+
+ /** Return an icon for "uiCustom" */
+ public Image getUiCustomIcon() {
+ if (this.uiCustomIcon == null) {
+ this.uiCustomIcon = createImageDescriptor(ImageProvider.ADD_UI_CUSTOM_ICON_PATH)
+ .createImage();
+ }
+ return this.uiCustomIcon;
+ }
+
+ /**Return the grayed image for "uiCustom*/
+ public Image getGrayedUiCustomIcon(){
+ if(this.grayedUiCustomIcon==null){
+ this.grayedUiCustomIcon = new Image(Display.getCurrent(), getUiCustomIcon(), SWT.IMAGE_GRAY);
+ }
+ return this.grayedUiCustomIcon;
+ }
+
+ /** Return the "error" icon */
+ public Image getErrorIcon() {
+ if (this.errorIcon == null) {
+ this.errorIcon = createImageDescriptor(ImageProvider.ERROR_ICON_PATH).createImage();
+ }
+ return this.errorIcon;
+ }
+
+ /** Return the toolbar menu icon */
+ public Image getViewMenuIcon() {
+ if (this.viewMenuIcon == null) {
+ this.viewMenuIcon = createImageDescriptor(ImageProvider.VIEW_MENU_ICON_PATH)
+ .createImage();
+ }
+ return this.viewMenuIcon;
+ }
+
+ /** Return the query menu icon */
+ public Image getQueryIcon() {
+ if (this.queryIcon == null) {
+ this.queryIcon = createImageDescriptor(ImageProvider.QUERY_ICON_PATH).createImage();
+ }
+ return this.queryIcon;
+ }
+
+ /** Return the link type icon */
+ public Image getLinkTypeIcon() {
+ if (this.linkTypeIcon == null) {
+ this.linkTypeIcon = createImageDescriptor(ImageProvider.LINK_TYPE_ICON_PATH)
+ .createImage();
+ }
+ return this.linkTypeIcon;
+ }
+
+ /** Return the link type icon descriptor */
+ public ImageDescriptor getLinkTypeIconDescriptor() {
+ return createImageDescriptor(ImageProvider.LINK_TYPE_ICON_PATH);
+ }
+
+ /** Return the "element ID" icon descriptor */
+ public ImageDescriptor getShowElementIDsDescriptor() {
+ return createImageDescriptor(ImageProvider.ELEMENT_IDS_ICON_PATH);
+ }
+
+ public ImageDescriptor getShowURIDescriptor() {
+ return createImageDescriptor(ImageProvider.URI_ICON_PATH);
+ }
+
+ public Image getURIIcon() {
+ if (this.uriIcon == null) {
+ this.uriIcon = createImageDescriptor(ImageProvider.URI_ICON_PATH).createImage();
+ }
+ return this.uriIcon;
+ }
+
+ public ImageDescriptor getCollapseAllDescriptor() {
+ return createImageDescriptor(ImageProvider.COLLAPSE_ALL_ICON_PATH);
+ }
+
+ public Image getShortcutIcon() {
+ if (this.shortcutIcon == null) {
+ this.shortcutIcon = createImageDescriptor(ImageProvider.SHORTCUT_ICON_PATH).createImage();
+ }
+ return this.shortcutIcon;
+ }
+
+ public Image getTopLeftOverlayIcon() {
+ if (this.topLeftOverlay == null) {
+ this.topLeftOverlay = createImageDescriptor(ImageProvider.TOP_LEFT_OVERLAY_ICON_PATH).createImage();
+ }
+ return this.topLeftOverlay;
+ }
+
+ public Image getTopMiddleOverlayIcon() {
+ if (this.topMiddleOverlay == null) {
+ this.topMiddleOverlay = createImageDescriptor(ImageProvider.TOP_MIDDLE_OVERLAY_ICON_PATH).createImage();
+ }
+ return this.topMiddleOverlay;
+ }
+
+ public Image getTopRightOverlayIcon() {
+ if (this.topRightOverlay == null) {
+ this.topRightOverlay = createImageDescriptor(ImageProvider.TOP_RIGHT_OVERLAY_ICON_PATH).createImage();
+ }
+ return this.topRightOverlay;
+ }
+
+ public Image getMiddleLeftOverlayIcon() {
+ if (this.middleLeftOverlay == null) {
+ this.middleLeftOverlay = createImageDescriptor(ImageProvider.MIDDLE_LEFT_OVERLAY_ICON_PATH).createImage();
+ }
+ return this.middleLeftOverlay;
+ }
+
+ public Image getMiddleRightOverlayIcon() {
+ if (this.middleRightOverlay == null) {
+ this.middleRightOverlay = createImageDescriptor(ImageProvider.MIDDLE_RIGHT_OVERLAY_ICON_PATH).createImage();
+ }
+ return this.middleRightOverlay;
+ }
+
+ public Image getBottomLeftOverlayIcon() {
+ if (this.bottomLeftOverlay == null) {
+ this.bottomLeftOverlay = createImageDescriptor(ImageProvider.BOTTOM_LEFT_OVERLAY_ICON_PATH).createImage();
+ }
+ return this.bottomLeftOverlay;
+ }
+
+ public Image getBottomMiddleOverlayIcon() {
+ if (this.bottomMiddleOverlay == null) {
+ this.bottomMiddleOverlay = createImageDescriptor(ImageProvider.BOTTOM_MIDDLE_OVERLAY_ICON_PATH).createImage();
+ }
+ return this.bottomMiddleOverlay;
+ }
+
+ public Image getBottomRightOverlayIcon() {
+ if (this.bottomRightOverlay == null) {
+ this.bottomRightOverlay = createImageDescriptor(ImageProvider.BOTTOM_RIGHT_OVERLAY_ICON_PATH).createImage();
+ }
+ return this.bottomRightOverlay;
+ }
+
+ public Image getCustomizationLabelIcon() {
+ if (this.customizationLabel == null) {
+ this.customizationLabel = createImageDescriptor(ImageProvider.LABEL_CUSTOMIZATION).createImage();
+ }
+ return this.customizationLabel;
+ }
+
+ public Image getCustomizationImageIcon() {
+ if (this.customizationImage == null) {
+ this.customizationImage = createImageDescriptor(ImageProvider.IMAGE_CUSTOMIZATION).createImage();
+ }
+ return this.customizationImage;
+ }
+
+ public Image getCustomizationColorIcon() {
+ if (this.rgb == null) {
+ this.rgb = createImageDescriptor(ImageProvider.RGB_CUSTOMIZATION).createImage();
+ }
+ return this.rgb;
+ }
+
+ public Image getFontNameIcon() {
+ if (this.fontName == null) {
+ this.fontName = createImageDescriptor(ImageProvider.FONT_NAME).createImage();
+ }
+ return this.fontName;
+ }
+
+ public Image getFontSizeIcon() {
+ if (this.fontSize == null) {
+ this.fontSize = createImageDescriptor(ImageProvider.FONT_SIZE).createImage();
+ }
+ return this.fontSize;
+ }
+
+ public Image getIsBoldIcon() {
+ if (this.isBold == null) {
+ this.isBold = createImageDescriptor(ImageProvider.IS_BOLD).createImage();
+ }
+ return this.isBold;
+ }
+
+ public Image getIsItalicIcon() {
+ if (this.isItalic == null) {
+ this.isItalic = createImageDescriptor(ImageProvider.IS_ITALIC).createImage();
+ }
+ return this.isItalic;
+ }
+
+ public Image getIsUnderlinedIcon() {
+ if (this.isUnderlined == null) {
+ this.isUnderlined = createImageDescriptor(ImageProvider.IS_UNDERLINED).createImage();
+ }
+ return this.isUnderlined;
+ }
+
+ public Image getIsStrukethroughIcon() {
+ if (this.isStruckthrough == null) {
+ this.isStruckthrough = createImageDescriptor(ImageProvider.IS_STRUCKTHROUGH).createImage();
+ }
+ return this.isStruckthrough;
+ }
+}
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/Messages.java b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/Messages.java
new file mode 100644
index 00000000000..baa1d3401ff
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/Messages.java
@@ -0,0 +1,122 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2010 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation;
+
+import org.eclipse.osgi.util.NLS;
+
+public final class Messages extends NLS {
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.emf.facet.custom.metamodel.editor.messages"; //$NON-NLS-1$
+
+ public static String CustomizationEditor_add;
+ public static String CustomizationEditor_appliesToSubInstances;
+ public static String CustomizationEditor_bold;
+ public static String CustomizationEditor_btnOpenElementSelectionDialogText;
+ public static String CustomizationEditor_btnOpenFontDialogText;
+ public static String CustomizationEditor_btnProperties;
+ public static String CustomizationEditor_btnTooltipViewErrors;
+ public static String CustomizationEditor_cannotFindMetamodel;
+
+ public static String CustomizationEditor_changeProperties;
+ public static String CustomizationEditor_collapseLink;
+
+ public static String CustomizationEditor_conditions;
+
+ public static String CustomizationEditor_conflictingUnsavedChanges;
+ public static String CustomizationEditor_customizationsWillBeDeleted;
+
+ public static String CustomizationEditor_customViewFor;
+ public static String CustomizationEditor_down;
+ public static String CustomizationEditor_edit;
+ public static String CustomizationEditor_editFeatureValue;
+ public static String CustomizationEditor_error;
+ public static String CustomizationEditor_errorLoadingResource;
+
+ public static String CustomizationEditor_fileConflict;
+ public static String CustomizationEditor_hideMetaclassName;
+ public static String CustomizationEditor_iconSelection;
+ public static String CustomizationEditor_invalidSelection;
+ public static String CustomizationEditor_italic;
+ public static String CustomizationEditor_missingQuery;
+ public static String CustomizationEditor_missingQuerySet;
+ public static String CustomizationEditor_nonExistingQuery;
+ public static String CustomizationEditor_nonExistingQuerySet;
+ public static String CustomizationEditor_notFileSelected;
+ public static String CustomizationEditor_promptCleanCustomizations;
+ public static String CustomizationEditor_readonly;
+ public static String CustomizationEditor_remove;
+
+ public static String CustomizationEditor_removeIrrelevantCustomizations;
+
+ public static String CustomizationEditor_resetDefaults;
+ public static String CustomizationEditor_sectionName_customizations;
+ public static String CustomizationEditor_sectionName_types;
+ public static String CustomizationEditor_selectAnIcon;
+ public static String CustomizationEditor_strikethrough;
+ public static String CustomizationEditor_text;
+ public static String CustomizationEditor_Title_cleanCustomization;
+ public static String CustomizationEditor_underlined;
+ public static String CustomizationEditor_unknown;
+ public static String CustomizationEditor_up;
+ public static String CustomizationEditor_visible;
+ public static String CustomizationEditor_metaclassVisible;
+ public static String CustomizationEditor_youChangedMetamodel;
+ public static String CustomizationPropertiesDialog_customizationProperties;
+ public static String CustomizationPropertiesDialog_metamodel;
+ public static String CustomizationPropertiesDialog_metamodelMustBeSelected;
+ public static String CustomizationPropertiesDialog_noMetamodelSelected;
+ public static String CustomizationPropertiesDialog_querySets;
+ public static String CustomizationViewer_backgroundColor;
+
+ public static String CustomizationViewer_collapseLink;
+ public static String CustomizationViewer_defaultValue;
+ public static String CustomizationViewer_feature;
+ public static String CustomizationViewer_hideMetaclassName;
+ public static String CustomizationViewer_typeIcon;
+ public static String CustomizationViewer_isBold;
+ public static String CustomizationViewer_isItalic;
+ public static String CustomizationViewer_isStruckthrough;
+ public static String CustomizationViewer_isUnderlined;
+ public static String CustomizationViewer_isVisible;
+ public static String CustomizationViewer_label;
+ public static String CustomizationViewer_instanceIcon;
+ public static String CustomizationViewer_overlayIcon;
+ public static String CustomizationViewer_textColor;
+ public static String CustomizationViewer_textFontName;
+ public static String CustomizationViewer_value;
+ public static String CustomizationViewer_metaclassVisible;
+ public static String ErrorsDialog_diagnosticMessage;
+ public static String ErrorsDialog_errors;
+ public static String MetaclassViewToolBar_showDerivedLinks;
+ public static String MetaclassViewToolBar_showFullQualifiedNames;
+ public static String MetaclassViewToolBar_showMultiplicity;
+ public static String MetaclassViewToolBar_sortLinks;
+ public static String MetaclassViewToolBar_sortLinksByType;
+ public static String EditFeatureValueDialog_conditionQueryMustBeSelected;
+ public static String EditFeatureValueDialog_defaultValue;
+ public static String EditFeatureValueDialog_editFeatureValue;
+ public static String EditFeatureValueDialog_featureValue;
+ public static String EditFeatureValueDialog_noConditionQuerySelected;
+ public static String EditFeatureValueDialog_noQuerySelected;
+ public static String EditFeatureValueDialog_queryForCondition;
+ public static String EditFeatureValueDialog_queryMustBeSelected;
+ public static String EditFeatureValueDialog_queryValue;
+ public static String EditFeatureValueDialog_staticValue;
+ public static String EditFeatureValueDialog_type;
+
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(Messages.BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ // not instantiable
+ }
+}
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/messages.properties b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/messages.properties
new file mode 100644
index 00000000000..e213977eea5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/presentation/messages.properties
@@ -0,0 +1,97 @@
+###############################################################################
+# Copyright (c) 2009, 2010 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - initial API and implementation
+###############################################################################
+CustomizationEditor_add=&Add...
+CustomizationEditor_appliesToSubInstances=Applies to &Sub-Instances
+CustomizationEditor_bold=Bold
+CustomizationEditor_btnOpenElementSelectionDialogText=...
+CustomizationEditor_btnOpenFontDialogText=...
+CustomizationEditor_btnProperties=&Properties
+CustomizationEditor_btnTooltipViewErrors=View errors
+CustomizationEditor_cannotFindMetamodel=Couldn't find metamodel with URI "{0}"
+CustomizationEditor_changeProperties=Change Properties
+CustomizationEditor_collapseLink=Collapse link
+CustomizationEditor_conditions=Conditions :
+CustomizationEditor_conflictingUnsavedChanges=There are unsaved changes that conflict with changes made outside the editor. Do you wish to discard this editor's changes?
+CustomizationEditor_customizationsWillBeDeleted=All the customizations for metaclass "{0}" will be deleted. Are you sure?
+CustomizationEditor_customViewFor=custom view for "{0}" ({1})
+CustomizationEditor_down=&Down
+CustomizationEditor_edit=&Edit...
+CustomizationEditor_editFeatureValue=Edit feature &value...
+CustomizationEditor_error=Error
+CustomizationEditor_errorLoadingResource=Error loading resource. See log for more information.
+CustomizationEditor_fileConflict=File Conflict
+CustomizationEditor_hideMetaclassName=Hide metaclass name
+CustomizationEditor_iconSelection=Icon selection
+CustomizationEditor_invalidSelection=Invalid selection
+CustomizationEditor_italic=Italic
+CustomizationEditor_missingQuery=Couldn't find Query named "{0}" in query set "{1}".
+CustomizationEditor_missingQuerySet=Couldn't find Query Set named "{0}".
+CustomizationEditor_nonExistingQuery=Non-existing Query
+CustomizationEditor_nonExistingQuerySet=Non-existing Query Set
+CustomizationEditor_notFileSelected=You haven't selected a file
+CustomizationEditor_promptCleanCustomizations=Do you want to remove customizations that don't correspond to the new metamodel?
+CustomizationEditor_readonly=READONLY
+CustomizationEditor_remove=&Remove
+CustomizationEditor_removeIrrelevantCustomizations=Remove Irrelevant Customizations
+CustomizationEditor_resetDefaults=Reset Defaults
+CustomizationEditor_sectionName_customizations=Customizations
+CustomizationEditor_sectionName_types=Types
+CustomizationEditor_selectAnIcon=Select an icon:
+CustomizationEditor_strikethrough=Strikethrough
+CustomizationEditor_text=Text
+CustomizationEditor_Title_cleanCustomization=Clean customization
+CustomizationEditor_underlined=Underlined
+CustomizationEditor_unknown=<unknown>
+CustomizationEditor_up=&Up
+CustomizationEditor_visible=Visible
+CustomizationEditor_metaclassVisible=Visible in Types Panel
+CustomizationEditor_youChangedMetamodel=You have changed the metamodel.\n
+CustomizationPropertiesDialog_customizationProperties=Customization Properties
+CustomizationPropertiesDialog_metamodel=Metamodel
+CustomizationPropertiesDialog_metamodelMustBeSelected=A metamodel must be selected
+CustomizationPropertiesDialog_noMetamodelSelected=No metamodel selected
+CustomizationPropertiesDialog_querySets=Query Sets
+CustomizationViewer_backgroundColor=Background Color
+CustomizationViewer_collapseLink=Collapse Link
+CustomizationViewer_defaultValue=<default value>
+CustomizationViewer_feature=Feature
+CustomizationViewer_hideMetaclassName=Hide Metaclass Name
+CustomizationViewer_typeIcon=Type Icon
+CustomizationViewer_isBold=Is Bold
+CustomizationViewer_isItalic=Is Italic
+CustomizationViewer_isStruckthrough=Is Struckthrough
+CustomizationViewer_isUnderlined=Is Underlined
+CustomizationViewer_isVisible=Is Visible
+CustomizationViewer_metaclassVisible=Visible in Types Panel
+CustomizationViewer_label=Label
+CustomizationViewer_instanceIcon=Instance Icon
+CustomizationViewer_overlayIcon=Overlay Icon
+CustomizationViewer_textColor=Text Color
+CustomizationViewer_textFontName=Text Font Name
+CustomizationViewer_value=Value
+ErrorsDialog_diagnosticMessage={0}\nin: {1}\nline: {2} column: {3}
+ErrorsDialog_errors=Errors
+MetaclassViewToolBar_showDerivedLinks=Show Derived Links
+MetaclassViewToolBar_showFullQualifiedNames=Show Full Qualified Names
+MetaclassViewToolBar_showMultiplicity=Show Multiplicity
+MetaclassViewToolBar_sortLinks=Sort Links
+MetaclassViewToolBar_sortLinksByType=Sort Links by Type
+EditFeatureValueDialog_conditionQueryMustBeSelected=A condition query must be selected
+EditFeatureValueDialog_defaultValue=Default value
+EditFeatureValueDialog_editFeatureValue=Edit Feature Value
+EditFeatureValueDialog_featureValue=Feature value
+EditFeatureValueDialog_noConditionQuerySelected=No condition query selected
+EditFeatureValueDialog_noQuerySelected=No query selected
+EditFeatureValueDialog_queryForCondition=Query for condition
+EditFeatureValueDialog_queryMustBeSelected=A query must be selected
+EditFeatureValueDialog_queryValue=Value computed by a query
+EditFeatureValueDialog_staticValue=Static value
+EditFeatureValueDialog_type=Type
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/.classpath b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/.classpath
new file mode 100644
index 00000000000..da1049abda9
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src/"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/.project b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/.project
new file mode 100644
index 00000000000..c83ba113fcb
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.doc</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/facet/editor/org.eclipse.papyrus.emf.facet.doc/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..44217f8c068
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/META-INF/MANIFEST.MF b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..76fd81d317a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/META-INF/MANIFEST.MF
@@ -0,0 +1,894 @@
+Manifest-Version: 1.0
+Build-Jdk: 1.6.0_27
+Bundle-Vendor: %Bundle-Vendor
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-Name: %Bundle-Name
+Built-By: hudsonbuild
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.doc;singleton:=true
+Require-Bundle: org.apache.ant;bundle-version="1.7.1"
+Archiver-Version: Plexus Archiver
+Created-By: Apache Maven
+Bundle-Version: 1.0.0.qualifier
+Bundle-ManifestVersion: 2
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/IETypedElementWidget.html
+SHA1-Digest: mjP70k6m6OOosxUJF8FFS7r3fbQ=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/cre
+ ation/class-use/CreateFacetInFacetSetHandler.html
+SHA1-Digest: XI0Ste0cDXWKk4DH99C2TdHYNc8=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/creation/package-summary.html
+SHA1-Digest: E46W5Rr8xuJjmvoUKKzqnTs/I38=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-summar
+ y.html
+SHA1-Digest: P/jphKXrXVJBbCaGs5t1YaESuhE=
+
+Name: mediawiki/running_tests-toc.xml
+SHA1-Digest: 9aLzO+THmtKZAbOgY44dPo8vIjU=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ zard/class-use/IWizardFactory.html
+SHA1-Digest: OcSfJ8GDb/9qi0shVhyoKUjAFV8=
+
+Name: javadoc/index-files/index-4.html
+SHA1-Digest: AUVcw+Rb9sS2ylb6j6dDGLqdJ4s=
+
+Name: mediawiki/running_tests.mediawiki
+SHA1-Digest: 7zxwbR23VpZ5NKdXX8hHKjSjPzg=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/getorcreate/class-use/IGetOrCreateFacetSetWidget.html
+SHA1-Digest: bwoB375y2S4+YLWp+Aw43H2t5IM=
+
+Name: javadoc/index-files/index-10.html
+SHA1-Digest: ljE8F0yJ3yTTytVVCY9oesy5TH0=
+
+Name: mediawiki/ramp_down.mediawiki
+SHA1-Digest: PIof1KfbXYVxQetNHSvgm7fc0rY=
+
+Name: mediawiki/checking_BREE.html
+SHA1-Digest: VHFF4uCSEaWndSXiAzP0fWvIqso=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-use.h
+ tml
+SHA1-Digest: QlDJk7S5htp6e09+uveVhNlidPA=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/cre
+ ation/class-use/AddReferenceInFacetHandler.html
+SHA1-Digest: ZIdg4umD584XAl/EghUjLSHKZPk=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/cre
+ ation/AddOperationInFacetHandler.html
+SHA1-Digest: EmA6C6hD8pLVZIYqCTJBTQYGvzY=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/cl
+ ass-use/IQueryDialogFactoryStrategy.html
+SHA1-Digest: vWN1Q0ZwzWD70F5i4x7gq3d9bO8=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/di
+ alog/query/package-tree.html
+SHA1-Digest: P6kZBjXUmWOaelHuOblsBqeCfyQ=
+
+Name: javadoc/index-files/index-1.html
+SHA1-Digest: C2KlUf2Jaoje+MQVmgbqn+9As+o=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/class-use/IDerivedTypedElementWidget.html
+SHA1-Digest: lVEdPdtrFIEDXbr2EFxFt7bh7hk=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpress
+ ion/package-use.html
+SHA1-Digest: F9hOrAfayfx6M1XRoo7YqkCFZQg=
+
+Name: mediawiki/retention_policy-toc.xml
+SHA1-Digest: 05ipIZjRSzALq/2DvfHyGLqF/zo=
+
+Name: mediawiki/running_tests.html
+SHA1-Digest: 3wLz6z+xrN6Rr2NbbyOLRWckU78=
+
+Name: mediawiki/retention_policy.mediawiki
+SHA1-Digest: 8TAQn96wmnoLM553n2E8LXtn/ZY=
+
+Name: org/eclipse/emf/facet/doc/tasks/GenerateApiJavadocTask.class
+SHA1-Digest: q4FVQA0dHyr/DjJoGvox3vlgbpE=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/packa
+ ge-use.html
+SHA1-Digest: 7qC+leY685haKlh1XVvEV40Luzo=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/query/package-use.html
+SHA1-Digest: kYcMTXBlzOfx/5AkFrhCY0A8i50=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ zard/package-use.html
+SHA1-Digest: 3DdnGFw83+xImP+osb1rLrtm+ig=
+
+Name: mediawiki/API_Policy-toc.xml
+SHA1-Digest: Icn8VLFAgKix0n687pHwH6+gDig=
+
+Name: mediawiki/capabilities.mediawiki
+SHA1-Digest: guItuc+04OU5thYTHrKP36DOk8E=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/metaclass/IGetExtendedMetaclassWidget.html
+SHA1-Digest: F/wFU+lPmTTaIzJaXqubamXodnY=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpress
+ ion/class-use/IOCLExpressionWidget.html
+SHA1-Digest: 2avemYo/XQDnunwRdttEqIg5evc=
+
+Name: javadoc/allclasses-noframe.html
+SHA1-Digest: sRoIqMQzZowxnolULmnU+EgL9Hg=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQu
+ eryFactory.html
+SHA1-Digest: hXTdhJsHFW74sB/IO7aFZwdFDvQ=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-tree.h
+ tml
+SHA1-Digest: T1VlQmdYXutHGtaaB/DepOFytII=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/
+ package-summary.html
+SHA1-Digest: qKmJlAyOQZ16n5fJGVGCcI6hvnw=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-fr
+ ame.html
+SHA1-Digest: lvxh7kNMM5EL1D8ALspDPl84gho=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-use.ht
+ ml
+SHA1-Digest: lgB9NQ7kd4O8g8jikm9KI60ridg=
+
+Name: META-INF/maven/org.eclipse.emft/org.eclipse.papyrus.emf.facet.doc/pom.pr
+ operties
+SHA1-Digest: T0rSXLQKRdIbp04f7pYVsahbspc=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/cre
+ ation/AddParameterInOperationHandler.html
+SHA1-Digest: xh06a4fGUtB4Z82XMoBColFuP/k=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.h
+ tml
+SHA1-Digest: f6+7BxBWmLckznVt/LiJfCb32N8=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/cre
+ ation/class-use/CreateFacetSetInFacetSetHandler.html
+SHA1-Digest: ZADay2rnEfObMunkpK82tJpnzHs=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /Writer.html
+SHA1-Digest: mzhm40xBuUCeVJ4jVtvhWiZWhsU=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/creation/class-use/IGetOrCreateFilteredFacetSetWidget.html
+SHA1-Digest: HQ3OeuztB1IENZ9saJqItA0zbLM=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/cre
+ ation/package-tree.html
+SHA1-Digest: 77qRa4SDQCVUeMma4akWI38Lm+0=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-frame.
+ html
+SHA1-Digest: kTCJWHzq7nT2neoVtoa2El3fm9Y=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/cre
+ ation/CreateFacetInFacetSetHandler.html
+SHA1-Digest: mHu1c/VasMvgZBeHToLJo1AxQQY=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /class-use/Library.html
+SHA1-Digest: v0VOjiqNLwpPBJevo9mPbdmgUKg=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQ
+ ueryContext.html
+SHA1-Digest: q7VhjJ0ILXcJKV32c5/eKFsYtE4=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpress
+ ion/package-summary.html
+SHA1-Digest: +lT+8SwgTGpB/ndRq1l9Eb28GCk=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/package-tree.html
+SHA1-Digest: yBIzTeLihqi8L5JCeGoZEPFVGQI=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /util/package-tree.html
+SHA1-Digest: T8l6Ig0n3Ls3daQJmiAh41N8nuA=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/packa
+ ge-summary.html
+SHA1-Digest: poctsQrb4PLkQyXBPPjdErs1t4k=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/packa
+ ge-summary.html
+SHA1-Digest: V4synXxfmWJXfBHHzeSzsLDlWBg=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/package-use.html
+SHA1-Digest: AlvKlMRYRNVqa3z2Y3M/OYG/8RE=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /util/package-use.html
+SHA1-Digest: CH9X26Ylaklbf861JVg1hkLNJfk=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /package-frame.html
+SHA1-Digest: 8Ph6XDXn7VakcOdODhurPvLWVrQ=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class
+ -use/OclQueryPackage.Literals.html
+SHA1-Digest: icyBPRvU5zxVtEGFOoPKKZEVoA4=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /LibraryFactory.html
+SHA1-Digest: RufgWkHa3EIF0wO8f8CAGYuyKzs=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /util/class-use/LibraryAdapterFactory.html
+SHA1-Digest: piDa2PgPi3QxrE9GaS4hdXGF/vQ=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQu
+ eryPackage.html
+SHA1-Digest: K1czP+ZOpDjRAEeAD3OkOroXosk=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/IFacetWidget.html
+SHA1-Digest: v5KZ2KcR7CJ7aGjRhcZHNC/Iko4=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/
+ package-use.html
+SHA1-Digest: hupZ3OirW/tW/+ny5B5Ap2DsuPg=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/cre
+ ation/class-use/AddOperationInFacetHandler.html
+SHA1-Digest: +omBB6XJtKrtHTWF3hHX8HBp5O8=
+
+Name: javadoc/index-files/index-8.html
+SHA1-Digest: 16ETK58No4k22ExdqBX7br1s1y0=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpress
+ ion/package-frame.html
+SHA1-Digest: +MCILD1zJ+2VZht/j+jU82MHD/0=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/metaclass/package-summary.html
+SHA1-Digest: EMEVoc//RgUQ51ME84sXSYrNdPo=
+
+Name: javadoc/index-files/index-14.html
+SHA1-Digest: HC745Ok87uyd/S5Fsk5P9/+RQYE=
+
+Name: toc.html
+SHA1-Digest: HMb+LZP8pOPqlBhJShez0V17tus=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ zard/page/ICreateFacetSetWizardPage.html
+SHA1-Digest: ERQqrHS81p67TDeL6t3W5qkWpjY=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ zard/page/package-frame.html
+SHA1-Digest: qEDF3wgu6kMhDhCXC5Bbdke1c6E=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ zard/page/class-use/IFacetSetPropertyWizardPage.html
+SHA1-Digest: ZJFsB65uyyggyuwzRNsUhp30oi8=
+
+Name: maintoc.xml
+SHA1-Digest: ID83uAJO8etnT7AZHlXSfkd2v28=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /LibraryPackage.Literals.html
+SHA1-Digest: lphU1QKGYBhWNMHspREEP8Qat0w=
+
+Name: mediawiki/checking_BREE-toc.xml
+SHA1-Digest: fnV+uRseYQVG0uGon+sSsGO2MsY=
+
+Name: META-INF/eclipse.inf
+SHA1-Digest: 09gN05tobgS/MdtqyTNQhOhB73M=
+
+Name: javadoc/overview-frame.html
+SHA1-Digest: Qa4hysTQxhAVeBM9haULFkDvVic=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class
+ -use/SelectQueryTypeWidget.html
+SHA1-Digest: sZcPMkxqU/CbbO4FiZR1UX3ueTY=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/
+ OclQuerySwitch.html
+SHA1-Digest: sNQs7XFLeuOLWzWTsM27ozHgu5Q=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /util/class-use/LibrarySwitch.html
+SHA1-Digest: yblx14GlTiz+WWhPH2CCObrFGAU=
+
+Name: javadoc/index-files/index-5.html
+SHA1-Digest: tDpPfJv2VqQWcoOYpmpJz3hs9Mg=
+
+Name: javadoc/index-files/index-11.html
+SHA1-Digest: PAQuC+BWdHc3OFcxAriBJCyJyTs=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/class-use/IENamedElementWidget.html
+SHA1-Digest: nWB59Cnk10pzAgHKE7xsIHcHP28=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/class-use/
+ IOclDialogFactory.html
+SHA1-Digest: 7oKRQHs/IcmEanl90KM90J/sJvw=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialog
+ Factory.html
+SHA1-Digest: Vrx6uyXwQFNGn2Etv/viIB4ax9Q=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/package-summary.html
+SHA1-Digest: XIfkds5lpQg9y1rw0j0Y98rx1FI=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /util/package-summary.html
+SHA1-Digest: pErEY4uHKteQgyfrmrzEck8Oggg=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /LibraryPackage.html
+SHA1-Digest: ytKFkDiz3tPCNZdq5/FxN4vuWSw=
+
+Name: mediawiki/new_and_noteworthy.mediawiki
+SHA1-Digest: kFIEaPOs8Pwc5HBrGujqUJHd1qU=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/creation/package-use.html
+SHA1-Digest: 6dL1Q8+/MdgM/r2eTKWI5BDf6Nk=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/creation/ICreateFacetInFacetSetWidget.html
+SHA1-Digest: g9ghgR6ePpOB+x9zjyKBAgaXH7g=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/IDerivedTypedElementWidget.html
+SHA1-Digest: vQW+dpg6/EW+BFwSCfhphSDH71g=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class
+ -use/IQueryWidgetCompositeFactoryFactory.html
+SHA1-Digest: RLDs0DxTwE00Eykhf+x94fIw2vs=
+
+Name: javadoc/index-files/index-2.html
+SHA1-Digest: R0vPJ7aAdD2zYCGYxgL+6usnrkk=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogF
+ actory.html
+SHA1-Digest: GVMGRLU6UWKQu6It7hbW2cOlNl8=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/cre
+ ation/AddAttributeInFacetHandler.html
+SHA1-Digest: QGVCcOAid2xMUFjAR1Lcf7xLkj8=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQuer
+ yWidgetCompositeFactoryFactory.html
+SHA1-Digest: fOsAk/KPWnPA9wdBIEcfUEU+kAg=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ zard/page/IFacetSetPropertyWizardPage.html
+SHA1-Digest: ccizvTQJEFtzr93uDHCDEKzz4Mo=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQu
+ eryPackage.Literals.html
+SHA1-Digest: 5axv2+io8v3hW8WMHZyj/5UuPkw=
+
+Name: plugin.xml
+SHA1-Digest: /IKxBu+FDwD8KkjS3K2guhpA1LA=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/cre
+ ation/CreateFacetSetInFacetSetHandler.html
+SHA1-Digest: br8AVPpVwwXs9sh8l9lDQrZaZZ8=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /package-use.html
+SHA1-Digest: yXzztNSPVvx1zzZUq4udy0H5NR0=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class
+ -use/AbstractQueryDialogFactory.html
+SHA1-Digest: UZmcVwhcfHh1Q3qvOqPMmPNm3wY=
+
+Name: javadoc/constant-values.html
+SHA1-Digest: 6Ko702Q9CGwpl78p+urc51rCvTk=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ zard/IWizardFactory.html
+SHA1-Digest: G8Hz8wmEtbJJuQ4SXCv1dpHoa10=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/getorcreate/package-use.html
+SHA1-Digest: B2KRXZe7lpYhoxvpRjo3Uiwz5mg=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /package-tree.html
+SHA1-Digest: dPSLD86avVaNtSCyuvj9swOT6bQ=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /util/LibrarySwitch.html
+SHA1-Digest: x7RmaKBz5bFFglexjmkKQXKOpsM=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-su
+ mmary.html
+SHA1-Digest: hj8s0cfSnSJTa1GTcGpramGkCHo=
+
+Name: mediawiki/capabilities-toc.xml
+SHA1-Digest: 52zlabivLrM4FssyN8pzKW9znDw=
+
+Name: mediawiki/new_and_noteworthy-toc.xml
+SHA1-Digest: vqWpirPoXHJArCK07Bv+IOiBdVw=
+
+Name: mediawiki/retention_policy.html
+SHA1-Digest: Ajg/YHdS3axr6mDz9LO5HAi6Phk=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/cre
+ ation/package-use.html
+SHA1-Digest: l/pSeUBqGzOzJ/rhzlhQTyPNSow=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/IENamedElementWidget.html
+SHA1-Digest: nYWW00mHC5k/UwfgfSlgGvm5c7s=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/packa
+ ge-frame.html
+SHA1-Digest: p8mcS5i8PLKMN6r1PreR0zYxbC4=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/IEStructuralFeatureWidget.html
+SHA1-Digest: eTufvQ4ao9L5FsOqFiT4j5cEXnw=
+
+Name: toc-full.xml
+SHA1-Digest: Its0zts74rkgbfMsSevx0J3QTtg=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/di
+ alog/query/package-use.html
+SHA1-Digest: 0L4XtZOTa1r8v4caCUaL+RwjBVg=
+
+Name: javadoc/index.html
+SHA1-Digest: mtlhCp9czOPuO993IKIEhVzH4vY=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /class-use/LibraryFactory.html
+SHA1-Digest: i9xGBeizlDxVrsphmC0qDIK4g1g=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/metaclass/package-frame.html
+SHA1-Digest: ndTbgmD/tS8JgCntt4iImBXy0NM=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/Query
+ WidgetCompositeFactoryImpl.html
+SHA1-Digest: StVR+Zi0zZHsVq8gzD3qwip9/pc=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /Book.html
+SHA1-Digest: jk/uOulQgKXp1RhUShlE0dBQ4PQ=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class
+ -use/IQueryCreationResult.html
+SHA1-Digest: o/DkCk2nKxDv11L/VLQFl12In0E=
+
+Name: javadoc/index-files/index-9.html
+SHA1-Digest: oCXqQo6u4vs/G+lv8gmB03Fnqyc=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/class-use/IFacetWidget.html
+SHA1-Digest: v9jISvhN2z71PvBLncZUUl6q/us=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class
+ -use/GetQueryDialog.html
+SHA1-Digest: SLI/B/zXrT9vAUY4YMxCWLFkPCo=
+
+Name: mediawiki/capabilities.html
+SHA1-Digest: 2qtZXr4GAtJKvBCkkonVvzAh68Q=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/getorcreate/package-summary.html
+SHA1-Digest: 5cKCBY/d9izNstMiraJkzVghwRI=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-us
+ e.html
+SHA1-Digest: OddzKDoIl2QkkMMXIhRsEdjgW0w=
+
+Name: javadoc/index-files/index-15.html
+SHA1-Digest: pukYRMfjOhd962OFcGsSHJXH3zI=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/cre
+ ation/class-use/AddAttributeInFacetHandler.html
+SHA1-Digest: 97IsJbdyXX4o6gaD8XxbBzPnC7Y=
+
+Name: javadoc/help-doc.html
+SHA1-Digest: BNCjc50n1rBtkwYSb6a0tKNdXcc=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/cre
+ ation/class-use/AddParameterInOperationHandler.html
+SHA1-Digest: F1a2eK0Y64zJe/PkDeeM26o7dRs=
+
+Name: mediawiki/API_Policy.mediawiki
+SHA1-Digest: mhQlE/f52thjY45mpkB2vbXBpDA=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/query/class-use/ICreateQueryWidget.html
+SHA1-Digest: HxVNRVToNIrAm9g+Zpboqnf8py8=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/packa
+ ge-use.html
+SHA1-Digest: jUtcv24qbvcQLqmYHaaSl/6bItY=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/core/util/class-use/OclQ
+ ueryUtil.html
+SHA1-Digest: vi9wx31fGOjeXjVBM1IcHbS0ysk=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class
+ -use/OclQueryFactory.html
+SHA1-Digest: 7j/RdDh+jK6g3hcL4vESdCPzHLw=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpress
+ ion/package-tree.html
+SHA1-Digest: t44WQARBsbpdKrCTFOaB5ilRUx4=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ zard/page/package-summary.html
+SHA1-Digest: r1aByOkOWg2WhYWOY2WTlJOyNss=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/getorcreate/package-frame.html
+SHA1-Digest: Hiz9ZO7B3BGrzMbWwLyRn6nBrgE=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQu
+ eryDialog.html
+SHA1-Digest: C7cJdNrazJcea8RTPTGCbTkx6As=
+
+Name: index.html
+SHA1-Digest: VfpqAqts+ysLUZO49IZTlTe938I=
+
+Name: javadoc/index-files/index-6.html
+SHA1-Digest: LdMOfp7iANxdwOW2yuPZdVAQBr4=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/metaclass/package-use.html
+SHA1-Digest: LKfeEsBW5/ov5sUj6ysWWWyAHuk=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/class-use/IFa
+ cetDialogFactory.html
+SHA1-Digest: 3dIGjwDhrT373NIIXY330fdpSaE=
+
+Name: javadoc/overview-summary.html
+SHA1-Digest: gW9vbORN8xPjdskrF45mCdK+CkM=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/query/package-frame.html
+SHA1-Digest: BSYi0hxa1tSOw9/HNM/MWh7sLDw=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ zard/package-frame.html
+SHA1-Digest: 2JDz5eHB3wTlZc3LOVSH8px55dc=
+
+Name: javadoc/index-files/index-12.html
+SHA1-Digest: 34elME71MAQ7DDNWBLFipUQBQCE=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/cre
+ ation/package-summary.html
+SHA1-Digest: StXO4wOOg59XrxhTdxcIVeQiYeU=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/class-use/IEStructuralFeatureWidget.html
+SHA1-Digest: CRHklWae9wzqM8Xzy0vQFQBvHzY=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /class-use/LibraryPackage.Literals.html
+SHA1-Digest: rs+9HbTLHnY+xovPSTXcSJ/ooOw=
+
+Name: javadoc/package-list
+SHA1-Digest: lGL7XcH4aoZQKxH08kxvtKO02Mc=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/pa
+ ckage-summary.html
+SHA1-Digest: fzyLO0y8n5i7ce4edvh3e8aefVo=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summa
+ ry.html
+SHA1-Digest: CVTUnHi/XG6dqaitArks1HcrFtA=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/metaclass/package-tree.html
+SHA1-Digest: qAM/Y+GDYIFxfv6zaT9qltzs35M=
+
+Name: mediawiki/ramp_down.html
+SHA1-Digest: nnBT4eOMOE2bP5gCPwYePdKXFB0=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /class-use/LibraryPackage.html
+SHA1-Digest: gUDFsC0WKZ2MTsfNWk6+aHwBSbM=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/creation/package-tree.html
+SHA1-Digest: mRHsSKj3F1Lb88DhmRRFtttPQh0=
+
+Name: img/EMFFacet_NatTable_CustomizationExample.png
+SHA1-Digest: YLLptteD3wP5MDUlP2wKTPuXQCo=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/cre
+ ation/package-frame.html
+SHA1-Digest: Lm8cpFkV4KhWN6zPgHh1opVz8OA=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQ
+ ueryDialogFactoryStrategy.html
+SHA1-Digest: NQhSV3suSNix4T5ntioFrhZlt9w=
+
+Name: about.html
+SHA1-Digest: kaf9iEjTiKyydsw5hQDU/Gpw0PY=
+
+Name: javadoc/index-files/index-3.html
+SHA1-Digest: v1JmiO5+iepwvmmA0raUYCF3GRk=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-su
+ mmary.html
+SHA1-Digest: /DxxMm8vYxg41oSKtSzTxyrT/hA=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/packa
+ ge-tree.html
+SHA1-Digest: zz9tjuz4GVTVPXlf7LHlBKsWskI=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/creation/IGetOrCreateFilteredFacetSetWidget.html
+SHA1-Digest: OxMHh1Q506cxnBDLxXW/rChLNqw=
+
+Name: javadoc/allclasses-frame.html
+SHA1-Digest: ihaIdW73BwLTJexOAHjcuHOsQFA=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ zard/page/package-use.html
+SHA1-Digest: lDu8//aBZ66CoyvHTYkMrnmmHAI=
+
+Name: javadoc/overview-tree.html
+SHA1-Digest: p4vq4zJEvMDMJy5NZ4r/EsCviYM=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class
+ -use/OclQueryPackage.html
+SHA1-Digest: UcgaVQk/nCmRwGKpJrVxOhjr6KY=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/
+ OclQueryAdapterFactory.html
+SHA1-Digest: IfHIF2ioxGF3wTV5UDUnZNN6RnY=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/Abstr
+ actQueryDialogFactory.html
+SHA1-Digest: zazoaIhNQ+ZE7nBM3CBbVUStuVs=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQuer
+ yCreationResult.html
+SHA1-Digest: h1Gyw0yV6Z49Ts1Fu/L9U5pjMB8=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/getorcreate/package-tree.html
+SHA1-Digest: w+V1gcyRvzQ02RqRDeLvAboLrGw=
+
+Name: mediawiki/API_Policy.html
+SHA1-Digest: YQ/6y/N9uRC64Ejcy67Q2QEPTUw=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/
+ package-tree.html
+SHA1-Digest: 990OctSJTtRvJqZcXo4Go5ZQDUE=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /class-use/Book.html
+SHA1-Digest: F09IVi7M+38ziXxB/jg1wT23xS8=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-tree.
+ html
+SHA1-Digest: ya8YUvoYyG+qmnPMlo6RWyolOEA=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class
+ -use/OclQuery.html
+SHA1-Digest: p/yFVVpKRLnBqhhjYWer7KoDc1c=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/packa
+ ge-frame.html
+SHA1-Digest: d8iJiAwrrcj5MU7kqLWLBk2LPMc=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ zard/page/package-tree.html
+SHA1-Digest: ZMP6dFpkcml4tULjDMMvgppybFY=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ zard/page/class-use/ICreateFacetSetWizardPage.html
+SHA1-Digest: VT13UkZEyKdhUTN07VfEL1glUzM=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/query/ICreateQueryWidget.html
+SHA1-Digest: 1wIK3GdQf5GDcoUGdJ/8yZBH1NM=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpress
+ ion/IOCLExpressionWidget.html
+SHA1-Digest: OaCOPuCHduyijLfC39J1nkziEmQ=
+
+Name: mediawiki/ramp_down-toc.xml
+SHA1-Digest: 9IdLRwd4675KyYf44KwAHYKwOVM=
+
+Name: META-INF/maven/org.eclipse.emft/org.eclipse.papyrus.emf.facet.doc/pom.xm
+ l
+SHA1-Digest: +TrT7NnbBIJSFcEUOf/FzjnuRtU=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/di
+ alog/query/IQueryDialogFactory.html
+SHA1-Digest: i58zRaEXFr9paG+P3b+v0q+4fo0=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/
+ package-frame.html
+SHA1-Digest: 6mVh6fMLckflhEc5uolp0NfVNiU=
+
+Name: mediawiki/checking_BREE.mediawiki
+SHA1-Digest: gVGOtCVseXIDO2+9KF1+MG+aV1I=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/creation/package-frame.html
+SHA1-Digest: 3cYBQ0zyC4HXj70IF5o3r+FMgPU=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/pa
+ ckage-use.html
+SHA1-Digest: FDeiDqgiLj9VgwR7NfTJwHzxFPA=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class
+ -use/QueryWidgetCompositeFactoryImpl.html
+SHA1-Digest: mEGfq0/MiWPwn4bkEINk8rEuKY0=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /package-summary.html
+SHA1-Digest: ipLLGEVXaAirmf+PyEBOMYjUQIg=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/
+ class-use/OclQueryAdapterFactory.html
+SHA1-Digest: Sji1P57kzSRKTMUoTohFmuH84V8=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/class-use/IETypedElementWidget.html
+SHA1-Digest: vMUSB2hzUN59y9+TwiHnPzFWTcg=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /Library.html
+SHA1-Digest: XcdNoKXsItUhHH4dABGSkJsot8Q=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/getorcreate/IGetOrCreateFacetSetWidget.html
+SHA1-Digest: cKiiFyrHB0ScJRQvMB7Vho6xk00=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-us
+ e.html
+SHA1-Digest: IhOn2x7RgZGENdlKuaLFXAaPBZA=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryW
+ idget.html
+SHA1-Digest: Z8fm3SrSe93t/TPI6yUZLGhgLKM=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/metaclass/class-use/IGetExtendedMetaclassWidget.html
+SHA1-Digest: 77jrOIDVE4cVa7SGulitJoqCEB4=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/di
+ alog/query/package-frame.html
+SHA1-Digest: 1+ZBoeDkf4JjTUJN0f9D7ikBrFU=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/packa
+ ge-tree.html
+SHA1-Digest: QnDoUnpgWUehNpZH/kD68nITf4M=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/pa
+ ckage-frame.html
+SHA1-Digest: sm0WglmFCFok7d0A895XleHFwYk=
+
+Name: javadoc/stylesheet.css
+SHA1-Digest: ImkIJB0RcjV0xhyiSqc3bT1SXE8=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/cre
+ ation/AddReferenceInFacetHandler.html
+SHA1-Digest: LZM+AVPPEn0qrHuUqSc8MSBFTgo=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /util/LibraryAdapterFactory.html
+SHA1-Digest: KK1smjX5lb6cgJMsoPScgvJB1RM=
+
+Name: OSGI-INF/l10n/bundle.properties
+SHA1-Digest: b4JaYM7RpVlYaub66poL23eotTw=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-fr
+ ame.html
+SHA1-Digest: Qq7NizJ0+serU8MNhxNSL3aMCGc=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/
+ class-use/OclQuerySwitch.html
+SHA1-Digest: LYbzn4/g9+lsVC5d03+QQs3TNt4=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/package-frame.html
+SHA1-Digest: ms7a2kVR+7zX8n/Fz1uDC4H1Nis=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /util/package-frame.html
+SHA1-Digest: HvDLDMRV7Z4HAqFtAjPCO2iUEpY=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/query/package-tree.html
+SHA1-Digest: l4UwzfRh6ubWL7WC3JYhDQ30Fwg=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ zard/package-tree.html
+SHA1-Digest: zJH3JC3RwWwOXCvgEGKL5JgTqMA=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/di
+ alog/query/class-use/IQueryDialogFactory.html
+SHA1-Digest: 2QU8jlO+Zs2m1K4gOrFUQ61v+OY=
+
+Name: mediawiki/new_and_noteworthy.html
+SHA1-Digest: /98/o2jSElS/A0m/DySCTDYZcaI=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-tr
+ ee.html
+SHA1-Digest: aWYfcdBzblrO2oiDmnya9ud7sgQ=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/di
+ alog/query/package-summary.html
+SHA1-Digest: sHeBKaGkKnEmO3Bf+u16+oA3a48=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-tr
+ ee.html
+SHA1-Digest: 3Q19frIO5m43ybf2Njy+R5q4E9w=
+
+Name: img/EMFFacet_NatTable_QueryColumn.png
+SHA1-Digest: aLLnw+PtV6qbxBjbdb7lbd8nb5E=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQu
+ ery.html
+SHA1-Digest: /kmWbSaRJB3r+oWk9yr24gE2h6c=
+
+Name: javadoc/index-files/index-7.html
+SHA1-Digest: RJktFeteN8/OEuMz8knazpy/nVU=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/creation/class-use/ICreateFacetInFacetSetWidget.html
+SHA1-Digest: DM81ggsA7cO0ZgYhjAaw3TtkIPM=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/Selec
+ tQueryTypeWidget.html
+SHA1-Digest: 1P5OZElTlPuQPoMoqj8Ks/hvTTw=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/pa
+ ckage-tree.html
+SHA1-Digest: yUDacJATdRxk0Trmh4fpS6hsPv8=
+
+Name: javadoc/resources/inherit.gif
+SHA1-Digest: 42+8XxPTdk4LcKDh/HbbyXG+EKI=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/cl
+ ass-use/IQueryContext.html
+SHA1-Digest: qRVQd9JdBUHdm8BvaPl9xXncYLo=
+
+Name: javadoc/index-files/index-13.html
+SHA1-Digest: gORN3pajbU8hDmVrfi8j0FlyxpY=
+
+Name: javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/class-use/
+ IOclQueryWidget.html
+SHA1-Digest: 2JDbsoYcYS8K/VL198ABoAjkUOA=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ dget/component/query/package-summary.html
+SHA1-Digest: qZXQRoVvaSF+18xayDgRxFdcS3c=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wi
+ zard/package-summary.html
+SHA1-Digest: KhNY0Gsu9wsoxHXWsEi2eDMY/Wo=
+
+Name: javadoc/deprecated-list.html
+SHA1-Digest: UH8TmHxVQMTRGyQBMLcEHUQL/g0=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-frame
+ .html
+SHA1-Digest: s8VTiPwxIIuI9utv8z8+jyp9sKw=
+
+Name: javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library
+ /class-use/Writer.html
+SHA1-Digest: RWevMQrEaSRTFC/HG7Y0MtEe/N8=
+
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/META-INF/eclipse.inf b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/META-INF/eclipse.inf
new file mode 100644
index 00000000000..92ffed2421c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/META-INF/eclipse.inf
@@ -0,0 +1,2 @@
+#Processed using Jarprocessor
+pack200.conditioned = true
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.doc/pom.properties b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.doc/pom.properties
new file mode 100644
index 00000000000..afb0abd67b6
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.doc/pom.properties
@@ -0,0 +1,5 @@
+#Generated by Maven
+#Mon Aug 19 04:53:36 EDT 2013
+version=0.4.0-SNAPSHOT
+groupId=org.eclipse.emft
+artifactId=org.eclipse.papyrus.emf.facet.doc
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.doc/pom.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.doc/pom.xml
new file mode 100644
index 00000000000..b075564e80e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.doc/pom.xml
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns:m2="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns="http://maven.apache.org/POM/4.0.0"
+ 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>
+ <artifactId>org.eclipse.papyrus.emf.facet.build</artifactId>
+ <groupId>org.eclipse.emft</groupId>
+ <version>0.4.0</version>
+ <relativePath>../../</relativePath>
+ </parent>
+ <groupId>org.eclipse.emft</groupId>
+ <artifactId>org.eclipse.papyrus.emf.facet.doc</artifactId>
+ <version>0.4.0-SNAPSHOT</version>
+ <packaging>eclipse-plugin</packaging>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <version>2.7</version>
+ <executions>
+ <execution>
+ <id>copy</id>
+ <phase>initialize</phase>
+ <goals>
+ <goal>copy</goal>
+ </goals>
+ <configuration>
+ <artifactItems>
+ <artifactItem>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.4</version>
+ <overWrite>false</overWrite>
+ </artifactItem>
+ </artifactItems>
+ <outputDirectory>${project.build.directory}/downloads</outputDirectory>
+ <overWriteReleases>false</overWriteReleases>
+ <overWriteSnapshots>true</overWriteSnapshots>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <version>1.7</version>
+ <executions>
+ <execution>
+ <id>generate-doc</id>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ <configuration>
+ <target>
+ <ant antfile="/opt/users/hudsonbuild/workspace/emffacet-nightly/org.eclipse.papyrus.emf.facet.releng.tycho.util/doc.build.xml"
+ target="all"
+ inheritRefs="true">
+ <property name="org.eclipse.papyrus.emf.facet.releng.tycho.util.doc.build.downloads"
+ value="${project.build.directory}/downloads"/>
+ </ant>
+ </target>
+ </configuration>
+ </execution>
+ </executions>
+ <dependencies>
+ <dependency>
+ <groupId>net.sf.saxon</groupId>
+ <artifactId>saxon</artifactId>
+ <version>8.7</version>
+ </dependency>
+ <dependency>
+ <groupId>ant-contrib</groupId>
+ <artifactId>ant-contrib</artifactId>
+ <version>1.0b3</version>
+ <exclusions>
+ <exclusion>
+ <groupId>ant</groupId>
+ <artifactId>ant</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.ant</groupId>
+ <artifactId>ant</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ <dependency>
+ <groupId>junit</groupId>
+ <artifactId>junit</artifactId>
+ <version>4.4</version>
+ </dependency>
+ </dependencies>
+ </plugin>
+ </plugins>
+ </build>
+</project> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/OSGI-INF/l10n/bundle.properties b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..4f2588f8632
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,13 @@
+############################################################################
+# Copyright (c) 2011, 2012 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Bug 337584 - Documentation set up
+############################################################################
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Documenation (Incubation) \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/about.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/about.html
new file mode 100644
index 00000000000..70d93d92528
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/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>April 19, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/build.properties b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/build.properties
new file mode 100644
index 00000000000..7a7f60f604d
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/build.properties
@@ -0,0 +1,13 @@
+source.. = src/
+bin.includes = META-INF/,\
+ .,\
+ img/,\
+ maintoc.xml,\
+ toc-full.xml,\
+ index.html,\
+ about.html,\
+ plugin.xml,\
+ mediawiki/,\
+ toc.html,\
+ OSGI-INF/,\
+ javadoc/
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/img/EMFFacet_NatTable_CustomizationExample.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/img/EMFFacet_NatTable_CustomizationExample.png
new file mode 100644
index 00000000000..a5a8a91f1fa
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/img/EMFFacet_NatTable_CustomizationExample.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/img/EMFFacet_NatTable_QueryColumn.png b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/img/EMFFacet_NatTable_QueryColumn.png
new file mode 100644
index 00000000000..3ee3698f2ce
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/img/EMFFacet_NatTable_QueryColumn.png
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/index.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/index.html
new file mode 100644
index 00000000000..77721474c5f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/index.html
@@ -0,0 +1,16 @@
+<!--
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Gregoire Dupe (Mia-Software) - Bug 337584 - Documentation set up
+-->
+
+<frameset cols="300,*">
+ <frame src="toc.html" name="toc">
+ <frame src="about:blank" name="content">
+</frame>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/allclasses-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/allclasses-frame.html
new file mode 100644
index 00000000000..e49a7f0dea1
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/allclasses-frame.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+All Classes
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameHeadingFont">
+<B>All Classes</B></FONT>
+<BR>
+
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query" target="classFrame">AbstractQueryDialogFactory</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation" target="classFrame">AddAttributeInFacetHandler</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation" target="classFrame">AddOperationInFacetHandler</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation" target="classFrame">AddParameterInOperationHandler</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation" target="classFrame">AddReferenceInFacetHandler</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library" target="classFrame"><I>Book</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation" target="classFrame">CreateFacetInFacetSetHandler</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation" target="classFrame">CreateFacetSetInFacetSetHandler</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query" target="classFrame">GetQueryDialog</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation" target="classFrame"><I>ICreateFacetInFacetSetWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page" target="classFrame"><I>ICreateFacetSetWizardPage</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query" target="classFrame"><I>ICreateQueryWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget" target="classFrame"><I>IDerivedTypedElementWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget" target="classFrame"><I>IENamedElementWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget" target="classFrame"><I>IEStructuralFeatureWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget" target="classFrame"><I>IETypedElementWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog" target="classFrame"><I>IFacetDialogFactory</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page" target="classFrame"><I>IFacetSetPropertyWizardPage</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget" target="classFrame"><I>IFacetWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass" target="classFrame"><I>IGetExtendedMetaclassWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate" target="classFrame"><I>IGetOrCreateFacetSetWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation" target="classFrame"><I>IGetOrCreateFilteredFacetSetWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog" target="classFrame"><I>IOclDialogFactory</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression" target="classFrame"><I>IOCLExpressionWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget" target="classFrame"><I>IOclQueryWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported" target="classFrame"><I>IQueryContext</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query" target="classFrame"><I>IQueryCreationResult</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query" target="classFrame"><I>IQueryDialogFactory</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported" target="classFrame"><I>IQueryDialogFactoryStrategy</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query" target="classFrame"><I>IQueryWidgetCompositeFactoryFactory</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard" target="classFrame"><I>IWizardFactory</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library" target="classFrame"><I>Library</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util" target="classFrame">LibraryAdapterFactory</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library" target="classFrame"><I>LibraryFactory</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library" target="classFrame"><I>LibraryPackage</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library" target="classFrame"><I>LibraryPackage.Literals</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util" target="classFrame">LibrarySwitch</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery" target="classFrame"><I>OclQuery</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util" target="classFrame">OclQueryAdapterFactory</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery" target="classFrame"><I>OclQueryFactory</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery" target="classFrame"><I>OclQueryPackage</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery" target="classFrame"><I>OclQueryPackage.Literals</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util" target="classFrame">OclQuerySwitch</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util" target="classFrame">OclQueryUtil</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query" target="classFrame">QueryWidgetCompositeFactoryImpl</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query" target="classFrame">SelectQueryTypeWidget</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library" target="classFrame"><I>Writer</I></A>
+<BR>
+</FONT></TD>
+</TR>
+</TABLE>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/allclasses-noframe.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/allclasses-noframe.html
new file mode 100644
index 00000000000..aa592b907c1
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/allclasses-noframe.html
@@ -0,0 +1,123 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+All Classes
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameHeadingFont">
+<B>All Classes</B></FONT>
+<BR>
+
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">AddAttributeInFacetHandler</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">AddOperationInFacetHandler</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">AddParameterInOperationHandler</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">AddReferenceInFacetHandler</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><I>Book</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">CreateFacetInFacetSetHandler</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">CreateFacetSetInFacetSetHandler</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">GetQueryDialog</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><I>ICreateFacetInFacetSetWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page"><I>ICreateFacetSetWizardPage</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query"><I>ICreateQueryWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><I>IDerivedTypedElementWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><I>IENamedElementWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><I>IEStructuralFeatureWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><I>IETypedElementWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog"><I>IFacetDialogFactory</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page"><I>IFacetSetPropertyWizardPage</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><I>IFacetWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass"><I>IGetExtendedMetaclassWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate"><I>IGetOrCreateFacetSetWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><I>IGetOrCreateFilteredFacetSetWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog"><I>IOclDialogFactory</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression"><I>IOCLExpressionWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget"><I>IOclQueryWidget</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><I>IQueryContext</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><I>IQueryCreationResult</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query"><I>IQueryDialogFactory</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><I>IQueryDialogFactoryStrategy</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><I>IQueryWidgetCompositeFactoryFactory</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard"><I>IWizardFactory</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><I>Library</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util">LibraryAdapterFactory</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><I>LibraryFactory</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><I>LibraryPackage</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><I>LibraryPackage.Literals</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util">LibrarySwitch</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><I>OclQuery</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util">OclQueryAdapterFactory</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><I>OclQueryFactory</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><I>OclQueryPackage</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><I>OclQueryPackage.Literals</I></A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util">OclQuerySwitch</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util">OclQueryUtil</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">QueryWidgetCompositeFactoryImpl</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">SelectQueryTypeWidget</A>
+<BR>
+<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><I>Writer</I></A>
+<BR>
+</FONT></TD>
+</TR>
+</TABLE>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/constant-values.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/constant-values.html
new file mode 100644
index 00000000000..4eb9d8c1639
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/constant-values.html
@@ -0,0 +1,312 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Constant Field Values
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Constant Field Values";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="index.html?constant-values.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="constant-values.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H1>
+Constant Field Values</H1>
+</CENTER>
+<HR SIZE="4" NOSHADE>
+<B>Contents</B><UL>
+<LI><A HREF="#org.eclipse">org.eclipse.*</A>
+</UL>
+
+<A NAME="org.eclipse"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left"><FONT SIZE="+2">
+org.eclipse.*</FONT></TH>
+</TR>
+</TABLE>
+
+<P>
+
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="3">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.BOOK"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK">BOOK</A></CODE></TD>
+<TD ALIGN="right"><CODE>2</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.BOOK__ISBN"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK__ISBN">BOOK__ISBN</A></CODE></TD>
+<TD ALIGN="right"><CODE>1</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.BOOK__LIBRARY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK__LIBRARY">BOOK__LIBRARY</A></CODE></TD>
+<TD ALIGN="right"><CODE>3</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.BOOK__NAME"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK__NAME">BOOK__NAME</A></CODE></TD>
+<TD ALIGN="right"><CODE>0</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.BOOK__WRITER"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK__WRITER">BOOK__WRITER</A></CODE></TD>
+<TD ALIGN="right"><CODE>2</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.BOOK_FEATURE_COUNT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK_FEATURE_COUNT">BOOK_FEATURE_COUNT</A></CODE></TD>
+<TD ALIGN="right"><CODE>4</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.eNAME"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#eNAME">eNAME</A></CODE></TD>
+<TD ALIGN="right"><CODE>"library"</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.eNS_PREFIX"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#eNS_PREFIX">eNS_PREFIX</A></CODE></TD>
+<TD ALIGN="right"><CODE>"library"</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.eNS_URI"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#eNS_URI">eNS_URI</A></CODE></TD>
+<TD ALIGN="right"><CODE>"http://www.eclipse.org/papyrus/emf/facet/examples/library/test/library"</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.LIBRARY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#LIBRARY">LIBRARY</A></CODE></TD>
+<TD ALIGN="right"><CODE>0</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.LIBRARY__BOOKS"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#LIBRARY__BOOKS">LIBRARY__BOOKS</A></CODE></TD>
+<TD ALIGN="right"><CODE>2</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.LIBRARY__NAME"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#LIBRARY__NAME">LIBRARY__NAME</A></CODE></TD>
+<TD ALIGN="right"><CODE>0</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.LIBRARY__WRITERS"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#LIBRARY__WRITERS">LIBRARY__WRITERS</A></CODE></TD>
+<TD ALIGN="right"><CODE>1</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.LIBRARY_FEATURE_COUNT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#LIBRARY_FEATURE_COUNT">LIBRARY_FEATURE_COUNT</A></CODE></TD>
+<TD ALIGN="right"><CODE>3</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.WRITER"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#WRITER">WRITER</A></CODE></TD>
+<TD ALIGN="right"><CODE>1</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.WRITER__LIBRARY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#WRITER__LIBRARY">WRITER__LIBRARY</A></CODE></TD>
+<TD ALIGN="right"><CODE>1</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.WRITER__NAME"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#WRITER__NAME">WRITER__NAME</A></CODE></TD>
+<TD ALIGN="right"><CODE>0</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.WRITER_FEATURE_COUNT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#WRITER_FEATURE_COUNT">WRITER_FEATURE_COUNT</A></CODE></TD>
+<TD ALIGN="right"><CODE>2</CODE></TD>
+</TR>
+</FONT></TD>
+</TR>
+</TABLE>
+
+<P>
+
+<P>
+
+<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="3">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage.eNAME"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#eNAME">eNAME</A></CODE></TD>
+<TD ALIGN="right"><CODE>"oclquery"</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage.eNS_PREFIX"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#eNS_PREFIX">eNS_PREFIX</A></CODE></TD>
+<TD ALIGN="right"><CODE>"oclQuery"</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage.eNS_URI"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#eNS_URI">eNS_URI</A></CODE></TD>
+<TD ALIGN="right"><CODE>"http://www.eclipse.org/papyrus/emf/facet/query/ocl/0.3.incubation/oclquery"</CODE></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<A NAME="org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage.OCL_QUERY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
+<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
+<TD ALIGN="left"><CODE><A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#OCL_QUERY">OCL_QUERY</A></CODE></TD>
+<TD ALIGN="right"><CODE>0</CODE></TD>
+</TR>
+</FONT></TD>
+</TR>
+</TABLE>
+
+<P>
+
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="index.html?constant-values.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="constant-values.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/deprecated-list.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/deprecated-list.html
new file mode 100644
index 00000000000..5f367806485
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/deprecated-list.html
@@ -0,0 +1,146 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Deprecated List
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Deprecated List";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Deprecated</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="index.html?deprecated-list.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="deprecated-list.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Deprecated API</B></H2>
+</CENTER>
+<HR SIZE="4" NOSHADE>
+<B>Contents</B><UL>
+</UL>
+
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Deprecated</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="index.html?deprecated-list.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="deprecated-list.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/help-doc.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/help-doc.html
new file mode 100644
index 00000000000..b8a70e8bb5a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/help-doc.html
@@ -0,0 +1,223 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:35 EDT 2013 -->
+<TITLE>
+API Help
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="API Help";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Help</B></FONT>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="index.html?help-doc.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="help-doc.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H1>
+How This API Document Is Organized</H1>
+</CENTER>
+This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.<H3>
+Overview</H3>
+<BLOCKQUOTE>
+
+<P>
+The <A HREF="overview-summary.html">Overview</A> page is the front page of this API document and provides a list of all packages with a summary for each. This page can also contain an overall description of the set of packages.</BLOCKQUOTE>
+<H3>
+Package</H3>
+<BLOCKQUOTE>
+
+<P>
+Each package has a page that contains a list of its classes and interfaces, with a summary for each. This page can contain four categories:<UL>
+<LI>Interfaces (italic)<LI>Classes<LI>Enums<LI>Exceptions<LI>Errors<LI>Annotation Types</UL>
+</BLOCKQUOTE>
+<H3>
+Class/Interface</H3>
+<BLOCKQUOTE>
+
+<P>
+Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a class/interface description, summary tables, and detailed member descriptions:<UL>
+<LI>Class inheritance diagram<LI>Direct Subclasses<LI>All Known Subinterfaces<LI>All Known Implementing Classes<LI>Class/interface declaration<LI>Class/interface description
+<P>
+<LI>Nested Class Summary<LI>Field Summary<LI>Constructor Summary<LI>Method Summary
+<P>
+<LI>Field Detail<LI>Constructor Detail<LI>Method Detail</UL>
+Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.</BLOCKQUOTE>
+</BLOCKQUOTE>
+<H3>
+Annotation Type</H3>
+<BLOCKQUOTE>
+
+<P>
+Each annotation type has its own separate page with the following sections:<UL>
+<LI>Annotation Type declaration<LI>Annotation Type description<LI>Required Element Summary<LI>Optional Element Summary<LI>Element Detail</UL>
+</BLOCKQUOTE>
+</BLOCKQUOTE>
+<H3>
+Enum</H3>
+<BLOCKQUOTE>
+
+<P>
+Each enum has its own separate page with the following sections:<UL>
+<LI>Enum declaration<LI>Enum description<LI>Enum Constant Summary<LI>Enum Constant Detail</UL>
+</BLOCKQUOTE>
+<H3>
+Use</H3>
+<BLOCKQUOTE>
+Each documented package, class and interface has its own Use page. This page describes what packages, classes, methods, constructors and fields use any part of the given class or package. Given a class or interface A, its Use page includes subclasses of A, fields declared as A, methods that return A, and methods and constructors with parameters of type A. You can access this page by first going to the package, class or interface, then clicking on the "Use" link in the navigation bar.</BLOCKQUOTE>
+<H3>
+Tree (Class Hierarchy)</H3>
+<BLOCKQUOTE>
+There is a <A HREF="overview-tree.html">Class Hierarchy</A> page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. The classes are organized by inheritance structure starting with <code>java.lang.Object</code>. The interfaces do not inherit from <code>java.lang.Object</code>.<UL>
+<LI>When viewing the Overview page, clicking on "Tree" displays the hierarchy for all packages.<LI>When viewing a particular package, class or interface page, clicking "Tree" displays the hierarchy for only that package.</UL>
+</BLOCKQUOTE>
+<H3>
+Deprecated API</H3>
+<BLOCKQUOTE>
+The <A HREF="deprecated-list.html">Deprecated API</A> page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to improvements, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.</BLOCKQUOTE>
+<H3>
+Index</H3>
+<BLOCKQUOTE>
+The <A HREF="index-files/index-1.html">Index</A> contains an alphabetic list of all classes, interfaces, constructors, methods, and fields.</BLOCKQUOTE>
+<H3>
+Prev/Next</H3>
+These links take you to the next or previous class, interface, package, or related page.<H3>
+Frames/No Frames</H3>
+These links show and hide the HTML frames. All pages are available with or without frames.
+<P>
+<H3>
+Serialized Form</H3>
+Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to re-implementors, not to developers using the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See also" section of the class description.
+<P>
+<H3>
+Constant Field Values</H3>
+The <a href="constant-values.html">Constant Field Values</a> page lists the static final fields and their values.
+<P>
+<FONT SIZE="-1">
+<EM>
+This help file applies to API documentation generated using the standard doclet.</EM>
+</FONT>
+<BR>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Help</B></FONT>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="index.html?help-doc.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="help-doc.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-1.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-1.html
new file mode 100644
index 00000000000..8617ba50a4e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-1.html
@@ -0,0 +1,161 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+A-Index
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="A-Index";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV LETTER&nbsp;
+&nbsp;<A HREF="index-2.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-1.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-1.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+<A NAME="_A_"><!-- --></A><H2>
+<B>A</B></H2>
+<DL>
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>AbstractQueryDialogFactory</B></A>&lt;<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="type parameter in AbstractQueryDialogFactory">Q</A> extends Query&gt; - Class in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A><DD>This abstract class must be extended by the plug-in which has to extend this
+ plug-in.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#AbstractQueryDialogFactory()"><B>AbstractQueryDialogFactory()</B></A> -
+Constructor for class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>AddAttributeInFacetHandler</B></A> - Class in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</A><DD>Handler for the creation of an Attribute in a Facet.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html#AddAttributeInFacetHandler()"><B>AddAttributeInFacetHandler()</B></A> -
+Constructor for class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">AddAttributeInFacetHandler</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>AddOperationInFacetHandler</B></A> - Class in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</A><DD>Handler for the creation of an Operation in a Facet.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html#AddOperationInFacetHandler()"><B>AddOperationInFacetHandler()</B></A> -
+Constructor for class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">AddOperationInFacetHandler</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>AddParameterInOperationHandler</B></A> - Class in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</A><DD>Handler for the creation of a Parameter in an Operation.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html#AddParameterInOperationHandler()"><B>AddParameterInOperationHandler()</B></A> -
+Constructor for class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">AddParameterInOperationHandler</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>AddReferenceInFacetHandler</B></A> - Class in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</A><DD>Handler for the creation of a Reference in a Facet.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html#AddReferenceInFacetHandler()"><B>AddReferenceInFacetHandler()</B></A> -
+Constructor for class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">AddReferenceInFacetHandler</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#addSpecificProperties()"><B>addSpecificProperties()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>The the specific properties to the existing properties.
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV LETTER&nbsp;
+&nbsp;<A HREF="index-2.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-1.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-1.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-10.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-10.html
new file mode 100644
index 00000000000..1eb37caa506
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-10.html
@@ -0,0 +1,221 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+O-Index
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="O-Index";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-9.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-11.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-10.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-10.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+<A NAME="_O_"><!-- --></A><H2>
+<B>O</B></H2>
+<DL>
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html#OCL_QUERY"><B>OCL_QUERY</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage.Literals</A>
+<DD>The meta object literal for the '<CODE><em>Ocl Query</em></CODE>' class.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#OCL_QUERY"><B>OCL_QUERY</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A>
+<DD>The meta object id for the '<CODE><em>Ocl Query</em></CODE>' class.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#OCL_QUERY__CAN_BE_CACHED"><B>OCL_QUERY__CAN_BE_CACHED</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A>
+<DD>The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#OCL_QUERY__CAN_HAVE_SIDE_EFFECTS"><B>OCL_QUERY__CAN_HAVE_SIDE_EFFECTS</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A>
+<DD>The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html#OCL_QUERY__CONTEXT"><B>OCL_QUERY__CONTEXT</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage.Literals</A>
+<DD>The meta object literal for the '<em><b>Context</b></em>' reference feature.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#OCL_QUERY__CONTEXT"><B>OCL_QUERY__CONTEXT</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A>
+<DD>The feature id for the '<em><b>Context</b></em>' reference.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html#OCL_QUERY__OCL_EXPRESSION"><B>OCL_QUERY__OCL_EXPRESSION</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage.Literals</A>
+<DD>The meta object literal for the '<em><b>Ocl Expression</b></em>' attribute feature.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#OCL_QUERY__OCL_EXPRESSION"><B>OCL_QUERY__OCL_EXPRESSION</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A>
+<DD>The feature id for the '<em><b>Ocl Expression</b></em>' attribute.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#OCL_QUERY_FEATURE_COUNT"><B>OCL_QUERY_FEATURE_COUNT</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A>
+<DD>The number of structural features of the '<em>Ocl Query</em>' class.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>OclQuery</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A><DD>A representation of the model object '<em><b>Ocl Query</b></em>'.<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><B>OclQueryAdapterFactory</B></A> - Class in <A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util</A><DD>The <b>Adapter Factory</b> for the model.<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html#OclQueryAdapterFactory()"><B>OclQueryAdapterFactory()</B></A> -
+Constructor for class org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util">OclQueryAdapterFactory</A>
+<DD>Creates an instance of the adapter factory.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>OclQueryFactory</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A><DD>The <b>Factory</b> for the model.<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>OclQueryPackage</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A><DD>The <b>Package</b> for the model.<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>OclQueryPackage.Literals</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A><DD>Defines literals for the meta objects that represent
+
+ each class,
+ each feature of each class,
+ each enum,
+ and each data type
+
+ <!-- end-user-doc --><DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><B>OclQuerySwitch</B></A>&lt;<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="type parameter in OclQuerySwitch">T</A>&gt; - Class in <A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util</A><DD>The <b>Switch</b> for the model's inheritance hierarchy.<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html#OclQuerySwitch()"><B>OclQuerySwitch()</B></A> -
+Constructor for class org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util">OclQuerySwitch</A>
+<DD>Creates an instance of the switch.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util"><B>OclQueryUtil</B></A> - Class in <A HREF="../org/eclipse/emf/facet/query/ocl/core/util/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.core.util</A><DD>All necessary methods for the creation and evaluation of OCL expressions.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#open()"><B>open()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openAddAttributeInFacetDialog()"><B>openAddAttributeInFacetDialog()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A>
+<DD>Create an new Dialog for the creation of an Attribute in a Facet.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openAddOperationInFacetDialog()"><B>openAddOperationInFacetDialog()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A>
+<DD>Create an new Dialog for the creation of an Operation in a Facet.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openAddParameterInOperationDialog()"><B>openAddParameterInOperationDialog()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A>
+<DD>Create an new Dialog for the creation of a Parameter in an Operation.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openAddReferenceInFacetDialog()"><B>openAddReferenceInFacetDialog()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A>
+<DD>Create an new Dialog for the creation of an Reference in a Facet.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openCreateFacetInFacetSetDialog()"><B>openCreateFacetInFacetSetDialog()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A>
+<DD>Create an new Dialog for the creation of a Facet in a FacetSet.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openCreateFacetSetInFacetSetDialog()"><B>openCreateFacetSetInFacetSetDialog()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A>
+<DD>Create an new Dialog for the creation of a FacetSet in a FacetSet.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openEditFacetAttributeDialog()"><B>openEditFacetAttributeDialog()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A>
+<DD>Create an new Dialog for the edition of an Attribute.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openEditFacetDialog()"><B>openEditFacetDialog()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A>
+<DD>Create an new Dialog for the edition of a Facet.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openEditFacetOperationDialog()"><B>openEditFacetOperationDialog()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A>
+<DD>Create an new Dialog for the edition of an Operation.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openEditFacetOperationParameterDialog()"><B>openEditFacetOperationParameterDialog()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A>
+<DD>Create an new Dialog for the edition of a Parameter.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openEditFacetReferenceDialog()"><B>openEditFacetReferenceDialog()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A>
+<DD>Create an new Dialog for the edition of an Reference.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openEditFacetSetDialog()"><B>openEditFacetSetDialog()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A>
+<DD>Create an new Dialog for the edition of a FacetSet.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</B></A> - package org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</B></A> - package org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog</B></A> - package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</B></A> - package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query</B></A> - package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</B></A> - package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-summary.html"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate</B></A> - package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass</B></A> - package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-summary.html"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query</B></A> - package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</B></A> - package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard</B></A> - package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-summary.html"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page</B></A> - package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</B></A> - package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</B></A> - package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/query/ocl/core/util/package-summary.html"><B>org.eclipse.papyrus.emf.facet.query.ocl.core.util</B></A> - package org.eclipse.papyrus.emf.facet.query.ocl.core.util<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html"><B>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</B></A> - package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html"><B>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util</B></A> - package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html"><B>org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog</B></A> - package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-summary.html"><B>org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget</B></A> - package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget<DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-summary.html"><B>org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression</B></A> - package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression<DD>&nbsp;</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-9.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-11.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-10.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-10.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-11.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-11.html
new file mode 100644
index 00000000000..507e7054fcf
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-11.html
@@ -0,0 +1,154 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+P-Index
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="P-Index";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-10.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-12.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-11.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-11.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+<A NAME="_P_"><!-- --></A><H2>
+<B>P</B></H2>
+<DL>
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#pressParentButton()"><B>pressParentButton()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A>
+<DD>Press the get or create parent button.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html#pressSubTypingButton()"><B>pressSubTypingButton()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation">ICreateFacetInFacetSetWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html#pressSubTypingButton()"><B>pressSubTypingButton()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IFacetWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#pressTypeButton()"><B>pressTypeButton()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A>
+<DD>Press the button to select the type.
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-10.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-12.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-11.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-11.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-12.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-12.html
new file mode 100644
index 00000000000..e9f18af88d5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-12.html
@@ -0,0 +1,151 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Q-Index
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Q-Index";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-11.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-13.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-12.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-12.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+<A NAME="_Q_"><!-- --></A><H2>
+<B>Q</B></H2>
+<DL>
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#QUERY_NAME"><B>QUERY_NAME</B></A> -
+Static variable in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#QUERY_TYPE"><B>QUERY_TYPE</B></A> -
+Static variable in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>QueryWidgetCompositeFactoryImpl</B></A> - Class in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A><DD>Implementation of the <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>IQueryWidgetCompositeFactoryFactory</CODE></A>.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html#QueryWidgetCompositeFactoryImpl()"><B>QueryWidgetCompositeFactoryImpl()</B></A> -
+Constructor for class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">QueryWidgetCompositeFactoryImpl</A>
+<DD>&nbsp;
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-11.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-13.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-12.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-12.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-13.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-13.html
new file mode 100644
index 00000000000..ffdda280c51
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-13.html
@@ -0,0 +1,260 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+S-Index
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="S-Index";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-12.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-14.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-13.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-13.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+<A NAME="_S_"><!-- --></A><H2>
+<B>S</B></H2>
+<DL>
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html#selectQueryType(java.lang.String)"><B>selectQueryType(String)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IDerivedTypedElementWidget</A>
+<DD>Select the query with the name in parameter.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#selectQueryType(java.lang.String)"><B>selectQueryType(String)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">SelectQueryTypeWidget</A>
+<DD>Select the item in the combobox with the name in parameter.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>SelectQueryTypeWidget</B></A> - Class in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A><DD>Provide the composite for the query type selection.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#SelectQueryTypeWidget(Composite, PropertyElement, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)"><B>SelectQueryTypeWidget(Composite, PropertyElement, IQueryContext)</B></A> -
+Constructor for class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">SelectQueryTypeWidget</A>
+<DD>Constructor.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#SelectQueryTypeWidget(Composite, PropertyElement, boolean, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)"><B>SelectQueryTypeWidget(Composite, PropertyElement, boolean, IQueryContext)</B></A> -
+Constructor for class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">SelectQueryTypeWidget</A>
+<DD>Constructor.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#setAlertMessage(java.lang.String)"><B>setAlertMessage(String)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">SelectQueryTypeWidget</A>
+<DD>Set the alert message that will be displayed if the checkbox is not
+ checked.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html#setChangeable(boolean)"><B>setChangeable(boolean)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IEStructuralFeatureWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#setContext(EClassifier)"><B>setContext(EClassifier)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQuery</A>
+<DD>Sets the value of the '<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getContext()"><CODE><em>Context</em></CODE></A>' reference.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html#setDerived(boolean)"><B>setDerived(boolean)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IEStructuralFeatureWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setEType(EClassifier)"><B>setEType(EClassifier)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html#setExpression(java.lang.String)"><B>setExpression(String)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog.<A HREF="../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog">IOclDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html#setExpression(java.lang.String)"><B>setExpression(String)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.<A HREF="../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget">IOclQueryWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html#setExpression(java.lang.String)"><B>setExpression(String)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression.<A HREF="../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression">IOCLExpressionWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html#setFileName(java.lang.String)"><B>setFileName(String)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page">ICreateFacetSetWizardPage</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#setHelperInstanceContext(java.lang.Object)"><B>setHelperInstanceContext(Object)</B></A> -
+Static method in class org.eclipse.papyrus.emf.facet.query.ocl.core.util.<A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util">OclQueryUtil</A>
+<DD>Set the helper context.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#setInitialQuery(Q)"><B>setInitialQuery(Q)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#setISBN(int)"><B>setISBN(int)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A>
+<DD>Sets the value of the '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getISBN()"><CODE><em>ISBN</em></CODE></A>' attribute.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#setLibrary(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Library)"><B>setLibrary(Library)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A>
+<DD>Sets the value of the '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getLibrary()"><CODE><em>Library</em></CODE></A>' container reference.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#setLibrary(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Library)"><B>setLibrary(Library)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A>
+<DD>Sets the value of the '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getLibrary()"><CODE><em>Library</em></CODE></A>' container reference.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setLowerBound(int)"><B>setLowerBound(int)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#setName(java.lang.String)"><B>setName(String)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A>
+<DD>Sets the value of the '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getName()"><CODE><em>Name</em></CODE></A>' attribute.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#setName(java.lang.String)"><B>setName(String)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A>
+<DD>Sets the value of the '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getName()"><CODE><em>Name</em></CODE></A>' attribute.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#setName(java.lang.String)"><B>setName(String)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A>
+<DD>Sets the value of the '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getName()"><CODE><em>Name</em></CODE></A>' attribute.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#setName(java.lang.String)"><B>setName(String)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A>
+<DD>Set the name of the element.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html#setNsUri(java.lang.String)"><B>setNsUri(String)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page">IFacetSetPropertyWizardPage</A>
+<DD>Set the nsURI.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#setOclExpression(java.lang.String)"><B>setOclExpression(String)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQuery</A>
+<DD>Sets the value of the '<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getOclExpression()"><CODE><em>Ocl Expression</em></CODE></A>' attribute.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setOrdered(boolean)"><B>setOrdered(boolean)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html#setPrefix(java.lang.String)"><B>setPrefix(String)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page">IFacetSetPropertyWizardPage</A>
+<DD>Set the prefix.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html#setQuery(Query)"><B>setQuery(Query)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IDerivedTypedElementWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#setQueryName(java.lang.String)"><B>setQueryName(String)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#setQueryType(EClassifier)"><B>setQueryType(EClassifier)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#setSelectionEnabled(boolean)"><B>setSelectionEnabled(boolean)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">SelectQueryTypeWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html#setSubTypingFacetSelection(boolean)"><B>setSubTypingFacetSelection(boolean)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation">ICreateFacetInFacetSetWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html#setSubTypingFacetSelection(boolean)"><B>setSubTypingFacetSelection(boolean)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IFacetWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html#setTransient(boolean)"><B>setTransient(boolean)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IEStructuralFeatureWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setUnique(boolean)"><B>setUnique(boolean)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setUpperBound(int)"><B>setUpperBound(int)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html#setVolatile(boolean)"><B>setVolatile(boolean)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IEStructuralFeatureWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#setWriter(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Writer)"><B>setWriter(Writer)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A>
+<DD>Sets the value of the '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getWriter()"><CODE><em>Writer</em></CODE></A>' reference.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#SIDE_EFFECTS"><B>SIDE_EFFECTS</B></A> -
+Static variable in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-12.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-14.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-13.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-13.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-14.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-14.html
new file mode 100644
index 00000000000..efcb2be3d2c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-14.html
@@ -0,0 +1,145 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+T-Index
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="T-Index";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-13.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-15.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-14.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-14.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+<A NAME="_T_"><!-- --></A><H2>
+<B>T</B></H2>
+<DL>
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#toString()"><B>toString()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQuery</A>
+<DD>&nbsp;
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-13.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-15.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-14.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-14.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-15.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-15.html
new file mode 100644
index 00000000000..3fce753c7dc
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-15.html
@@ -0,0 +1,163 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+W-Index
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="W-Index";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-14.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;NEXT LETTER</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-15.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-15.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+<A NAME="_W_"><!-- --></A><H2>
+<B>W</B></H2>
+<DL>
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#WRITER"><B>WRITER</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage.Literals</A>
+<DD>The meta object literal for the '<CODE><em>Writer</em></CODE>' class.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#WRITER"><B>WRITER</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The meta object id for the '<CODE><em>Writer</em></CODE>' class.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>Writer</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A><DD>A representation of the model object '<em><b>Writer</b></em>'.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#WRITER__LIBRARY"><B>WRITER__LIBRARY</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage.Literals</A>
+<DD>The meta object literal for the '<em><b>Library</b></em>' container reference feature.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#WRITER__LIBRARY"><B>WRITER__LIBRARY</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The feature id for the '<em><b>Library</b></em>' container reference.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#WRITER__NAME"><B>WRITER__NAME</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage.Literals</A>
+<DD>The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#WRITER__NAME"><B>WRITER__NAME</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The feature id for the '<em><b>Name</b></em>' attribute.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#WRITER_FEATURE_COUNT"><B>WRITER_FEATURE_COUNT</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The number of structural features of the '<em>Writer</em>' class.
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-14.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;NEXT LETTER</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-15.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-15.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-2.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-2.html
new file mode 100644
index 00000000000..988d046f3e3
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-2.html
@@ -0,0 +1,175 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+B-Index
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="B-Index";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-1.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-3.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-2.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-2.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+<A NAME="_B_"><!-- --></A><H2>
+<B>B</B></H2>
+<DL>
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>Book</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A><DD>A representation of the model object '<em><b>Book</b></em>'.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK"><B>BOOK</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The meta object id for the '<CODE><em>Book</em></CODE>' class.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#BOOK"><B>BOOK</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage.Literals</A>
+<DD>The meta object literal for the '<CODE><em>Book</em></CODE>' class.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK__ISBN"><B>BOOK__ISBN</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The feature id for the '<em><b>ISBN</b></em>' attribute.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#BOOK__ISBN"><B>BOOK__ISBN</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage.Literals</A>
+<DD>The meta object literal for the '<em><b>ISBN</b></em>' attribute feature.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK__LIBRARY"><B>BOOK__LIBRARY</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The feature id for the '<em><b>Library</b></em>' container reference.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#BOOK__LIBRARY"><B>BOOK__LIBRARY</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage.Literals</A>
+<DD>The meta object literal for the '<em><b>Library</b></em>' container reference feature.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK__NAME"><B>BOOK__NAME</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The feature id for the '<em><b>Name</b></em>' attribute.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#BOOK__NAME"><B>BOOK__NAME</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage.Literals</A>
+<DD>The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK__WRITER"><B>BOOK__WRITER</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The feature id for the '<em><b>Writer</b></em>' reference.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#BOOK__WRITER"><B>BOOK__WRITER</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage.Literals</A>
+<DD>The meta object literal for the '<em><b>Writer</b></em>' reference feature.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK_FEATURE_COUNT"><B>BOOK_FEATURE_COUNT</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The number of structural features of the '<em>Book</em>' class.
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-1.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-3.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-2.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-2.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-3.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-3.html
new file mode 100644
index 00000000000..355e47d02ce
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-3.html
@@ -0,0 +1,244 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+C-Index
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="C-Index";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-2.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-4.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-3.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-3.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+<A NAME="_C_"><!-- --></A><H2>
+<B>C</B></H2>
+<DL>
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#CAN_BE_CACHED"><B>CAN_BE_CACHED</B></A> -
+Static variable in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#cancel()"><B>cancel()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html#caseBook(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Book)"><B>caseBook(Book)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util">LibrarySwitch</A>
+<DD>Returns the result of interpreting the object as an instance of '<em>Book</em>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html#caseLibrary(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Library)"><B>caseLibrary(Library)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util">LibrarySwitch</A>
+<DD>Returns the result of interpreting the object as an instance of '<em>Library</em>'.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html#caseOclQuery(org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery)"><B>caseOclQuery(OclQuery)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util">OclQuerySwitch</A>
+<DD>Returns the result of interpreting the object as an instance of '<em>Ocl Query</em>'.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html#caseQuery(Query)"><B>caseQuery(Query)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util">OclQuerySwitch</A>
+<DD>Returns the result of interpreting the object as an instance of '<em>Query</em>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html#caseWriter(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Writer)"><B>caseWriter(Writer)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util">LibrarySwitch</A>
+<DD>Returns the result of interpreting the object as an instance of '<em>Writer</em>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#commit()"><B>commit()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#compareClassifierTypes(EClassifier, EClassifier)"><B>compareClassifierTypes(EClassifier, EClassifier)</B></A> -
+Static method in class org.eclipse.papyrus.emf.facet.query.ocl.core.util.<A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util">OclQueryUtil</A>
+<DD>Compare the two types and return if they are equivalents.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html#createAdapter(Notifier)"><B>createAdapter(Notifier)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util">LibraryAdapterFactory</A>
+<DD>Creates an adapter for the <code>target</code>.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html#createAdapter(Notifier)"><B>createAdapter(Notifier)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util">OclQueryAdapterFactory</A>
+<DD>Creates an adapter for the <code>target</code>.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html#createBook()"><B>createBook()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryFactory</A>
+<DD>Returns a new object of class '<em>Book</em>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html#createBookAdapter()"><B>createBookAdapter()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util">LibraryAdapterFactory</A>
+<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Book</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html#createCreateFacetSetWizard(ISelection)"><B>createCreateFacetSetWizard(ISelection)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard">IWizardFactory</A>
+<DD>Create a concrete instance of <CODE>ICreateFacetSetWizard</CODE>
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html#createEObjectAdapter()"><B>createEObjectAdapter()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util">LibraryAdapterFactory</A>
+<DD>Creates a new adapter for the default case.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html#createEObjectAdapter()"><B>createEObjectAdapter()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util">OclQueryAdapterFactory</A>
+<DD>Creates a new adapter for the default case.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>CreateFacetInFacetSetHandler</B></A> - Class in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</A><DD>Handler for the creation of an Facet in a FacetSet.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html#CreateFacetInFacetSetHandler()"><B>CreateFacetInFacetSetHandler()</B></A> -
+Constructor for class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">CreateFacetInFacetSetHandler</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>CreateFacetSetInFacetSetHandler</B></A> - Class in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</A><DD>The concrete handler for the creation of a FacetSet in a FacetSet.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html#CreateFacetSetInFacetSetHandler()"><B>CreateFacetSetInFacetSetHandler()</B></A> -
+Constructor for class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">CreateFacetSetInFacetSetHandler</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html#createLibrary()"><B>createLibrary()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryFactory</A>
+<DD>Returns a new object of class '<em>Library</em>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html#createLibraryAdapter()"><B>createLibraryAdapter()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util">LibraryAdapterFactory</A>
+<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Library</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#createOCLExpression(EClassifier, java.lang.String)"><B>createOCLExpression(EClassifier, String)</B></A> -
+Static method in class org.eclipse.papyrus.emf.facet.query.ocl.core.util.<A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util">OclQueryUtil</A>
+<DD>Create an OCLExpression according to a string.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html#createOclQuery()"><B>createOclQuery()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryFactory</A>
+<DD>Returns a new object of class '<em>Ocl Query</em>'.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html#createOclQueryAdapter()"><B>createOclQueryAdapter()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util">OclQueryAdapterFactory</A>
+<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><CODE><em>Ocl Query</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html#createQuery()"><B>createQuery()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query">IQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html#createQuery(boolean, boolean, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)"><B>createQuery(boolean, boolean, IQueryContext)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#createQuery()"><B>createQuery()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html#createQueryAdapter()"><B>createQueryAdapter()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util">OclQueryAdapterFactory</A>
+<DD>Creates a new adapter for an object of class '<CODE><em>Query</em></CODE>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#createSpecificProperties()"><B>createSpecificProperties()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>Return a map with the specific properties of the query.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#createSubWidget()"><B>createSubWidget()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">GetQueryDialog</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html#createWidget(Composite, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)"><B>createWidget(Composite, IQueryContext)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#createWidget(Composite)"><B>createWidget(Composite)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#createWidget()"><B>createWidget()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">GetQueryDialog</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html#createWriter()"><B>createWriter()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryFactory</A>
+<DD>Returns a new object of class '<em>Writer</em>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html#createWriterAdapter()"><B>createWriterAdapter()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util">LibraryAdapterFactory</A>
+<DD>Creates a new adapter for an object of class '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Writer</em></CODE></A>'.
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-2.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-4.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-3.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-3.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-4.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-4.html
new file mode 100644
index 00000000000..4192502e193
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-4.html
@@ -0,0 +1,154 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+D-Index
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="D-Index";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-3.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-5.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-4.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-4.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+<A NAME="_D_"><!-- --></A><H2>
+<B>D</B></H2>
+<DL>
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html#defaultCase(EObject)"><B>defaultCase(EObject)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util">LibrarySwitch</A>
+<DD>Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html#defaultCase(EObject)"><B>defaultCase(EObject)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util">OclQuerySwitch</A>
+<DD>Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html#doSwitch(EObject)"><B>doSwitch(EObject)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util">LibrarySwitch</A>
+<DD>Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html#doSwitch(EObject)"><B>doSwitch(EObject)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util">OclQuerySwitch</A>
+<DD>Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-3.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-5.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-4.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-4.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-5.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-5.html
new file mode 100644
index 00000000000..e4aabdd3a33
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-5.html
@@ -0,0 +1,199 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+E-Index
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="E-Index";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-4.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-6.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-5.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-5.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+<A NAME="_E_"><!-- --></A><H2>
+<B>E</B></H2>
+<DL>
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html#eINSTANCE"><B>eINSTANCE</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryFactory</A>
+<DD>The singleton instance of the factory.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#eINSTANCE"><B>eINSTANCE</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The singleton instance of the package.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html#eINSTANCE"><B>eINSTANCE</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryFactory</A>
+<DD>The singleton instance of the factory.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#eINSTANCE"><B>eINSTANCE</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A>
+<DD>The singleton instance of the package.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#eNAME"><B>eNAME</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The package name.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#eNAME"><B>eNAME</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A>
+<DD>The package name.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#eNS_PREFIX"><B>eNS_PREFIX</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The package namespace name.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#eNS_PREFIX"><B>eNS_PREFIX</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A>
+<DD>The package namespace name.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#eNS_URI"><B>eNS_URI</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The package namespace URI.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#eNS_URI"><B>eNS_URI</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A>
+<DD>The package namespace URI.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#evaluateQuery(EClassifier, )"><B>evaluateQuery(EClassifier, &lt;any&gt;)</B></A> -
+Static method in class org.eclipse.papyrus.emf.facet.query.ocl.core.util.<A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util">OclQueryUtil</A>
+<DD>Evaluate the expression in parameter.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#evaluateQuery(EClassifier, , java.lang.Object)"><B>evaluateQuery(EClassifier, &lt;any&gt;, Object)</B></A> -
+Static method in class org.eclipse.papyrus.emf.facet.query.ocl.core.util.<A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util">OclQueryUtil</A>
+<DD>Evaluate the expression in parameter on the specific object.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#evaluateQuery(EClassifier, , java.util.List)"><B>evaluateQuery(EClassifier, &lt;any&gt;, List&lt;?&gt;)</B></A> -
+Static method in class org.eclipse.papyrus.emf.facet.query.ocl.core.util.<A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util">OclQueryUtil</A>
+<DD>Evaluate the expression in parameter on the specifics objects.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html#execute(ExecutionEvent)"><B>execute(ExecutionEvent)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">AddAttributeInFacetHandler</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html#execute(ExecutionEvent)"><B>execute(ExecutionEvent)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">AddOperationInFacetHandler</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html#execute(ExecutionEvent)"><B>execute(ExecutionEvent)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">AddParameterInOperationHandler</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html#execute(ExecutionEvent)"><B>execute(ExecutionEvent)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">AddReferenceInFacetHandler</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html#execute(ExecutionEvent)"><B>execute(ExecutionEvent)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">CreateFacetInFacetSetHandler</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html#execute(ExecutionEvent)"><B>execute(ExecutionEvent)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">CreateFacetSetInFacetSetHandler</A>
+<DD>&nbsp;
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-4.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-6.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-5.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-5.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-6.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-6.html
new file mode 100644
index 00000000000..719f1fe168b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-6.html
@@ -0,0 +1,419 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+G-Index
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="G-Index";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-5.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-7.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-6.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-6.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+<A NAME="_G_"><!-- --></A><H2>
+<B>G</B></H2>
+<DL>
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook()"><B>getBook()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>Returns the meta object for class '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Book</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook_ISBN()"><B>getBook_ISBN()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>Returns the meta object for the attribute '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getISBN()"><CODE><em>ISBN</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook_Library()"><B>getBook_Library()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>Returns the meta object for the container reference '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getLibrary()"><CODE><em>Library</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook_Name()"><B>getBook_Name()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>Returns the meta object for the attribute '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getName()"><CODE><em>Name</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook_Writer()"><B>getBook_Writer()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>Returns the meta object for the reference '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getWriter()"><CODE><em>Writer</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getBooks()"><B>getBooks()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A>
+<DD>Returns the value of the '<em><b>Books</b></em>' containment reference list.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getCanBeCachedProperty()"><B>getCanBeCachedProperty()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getCanHaveSideEffects()"><B>getCanHaveSideEffects()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html#getConclusionText()"><B>getConclusionText()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query">IQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html#getConclusionText()"><B>getConclusionText()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getConclusionText()"><B>getConclusionText()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#getConclusionText()"><B>getConclusionText()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">GetQueryDialog</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#getContainer()"><B>getContainer()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getContext()"><B>getContext()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQuery</A>
+<DD>Returns the value of the '<em><b>Context</b></em>' reference.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html#getCreateQueryWidget()"><B>getCreateQueryWidget()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query">ICreateQueryWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#getCreateQueryWidget()"><B>getCreateQueryWidget()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">GetQueryDialog</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getDerivedTypedElement()"><B>getDerivedTypedElement()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getDerivedTypedElementName()"><B>getDerivedTypedElementName()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html#getDialogMessage()"><B>getDialogMessage()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getDialogMessage()"><B>getDialogMessage()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html#getDialogTitle()"><B>getDialogTitle()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getDialogTitle()"><B>getDialogTitle()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#getEClassifier(EClassifier, java.lang.Object)"><B>getEClassifier(EClassifier, Object)</B></A> -
+Static method in class org.eclipse.papyrus.emf.facet.query.ocl.core.util.<A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util">OclQueryUtil</A>
+<DD>Return the <CODE>EClassifier</CODE> associated to the <code>type</code> in
+ parameter.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#getElementName()"><B>getElementName()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#getElementTypeName()"><B>getElementTypeName()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#getError()"><B>getError()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">SelectQueryTypeWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#getEType()"><B>getEType()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#getEvaluationEvironment()"><B>getEvaluationEvironment()</B></A> -
+Static method in class org.eclipse.papyrus.emf.facet.query.ocl.core.util.<A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util">OclQueryUtil</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#getExpressionType()"><B>getExpressionType(&lt;any&gt;)</B></A> -
+Static method in class org.eclipse.papyrus.emf.facet.query.ocl.core.util.<A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util">OclQueryUtil</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getExtendedEClass()"><B>getExtendedEClass()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getFacet()"><B>getFacet()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html#getFacetSet()"><B>getFacetSet()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate">IGetOrCreateFacetSetWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html#getFileName()"><B>getFileName()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page">ICreateFacetSetWizardPage</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html#getGetExtendedMetaclassWidget()"><B>getGetExtendedMetaclassWidget()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation">ICreateFacetInFacetSetWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html#getGetExtendedMetaclassWidget()"><B>getGetExtendedMetaclassWidget()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IFacetWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html#getGetFacetNameWidget()"><B>getGetFacetNameWidget()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation">ICreateFacetInFacetSetWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html#getGetOrCreateFacetSetWidget()"><B>getGetOrCreateFacetSetWidget()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation">ICreateFacetInFacetSetWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getInitialQuery()"><B>getInitialQuery()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getIntermediateEObject()"><B>getIntermediateEObject()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getISBN()"><B>getISBN()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A>
+<DD>Returns the value of the '<em><b>ISBN</b></em>' attribute.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html#getLabel()"><B>getLabel()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryCreationResult</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getLibrary()"><B>getLibrary()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A>
+<DD>Returns the value of the '<em><b>Library</b></em>' container reference.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibrary()"><B>getLibrary()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>Returns the meta object for class '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Library</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getLibrary()"><B>getLibrary()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A>
+<DD>Returns the value of the '<em><b>Library</b></em>' container reference.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibrary_Books()"><B>getLibrary_Books()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>Returns the meta object for the containment reference list '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getBooks()"><CODE><em>Books</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibrary_Name()"><B>getLibrary_Name()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>Returns the meta object for the attribute '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getName()"><CODE><em>Name</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibrary_Writers()"><B>getLibrary_Writers()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>Returns the meta object for the containment reference list '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getWriters()"><CODE><em>Writers</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibraryFactory()"><B>getLibraryFactory()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>Returns the factory that creates the instances of the model.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html#getLibraryPackage()"><B>getLibraryPackage()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryFactory</A>
+<DD>Returns the package supported by this factory.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#getLowerBound()"><B>getLowerBound()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html#getModelFile()"><B>getModelFile()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page">ICreateFacetSetWizardPage</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getName()"><B>getName()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A>
+<DD>Returns the value of the '<em><b>Name</b></em>' attribute.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getName()"><B>getName()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A>
+<DD>Returns the value of the '<em><b>Name</b></em>' attribute.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getName()"><B>getName()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A>
+<DD>Returns the value of the '<em><b>Name</b></em>' attribute.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html#getNsUri()"><B>getNsUri()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page">IFacetSetPropertyWizardPage</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getOclExpression()"><B>getOclExpression()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQuery</A>
+<DD>Returns the value of the '<em><b>Ocl Expression</b></em>' attribute.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#getOclQuery()"><B>getOclQuery()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A>
+<DD>Returns the meta object for class '<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><CODE><em>Ocl Query</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#getOclQuery_Context()"><B>getOclQuery_Context()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A>
+<DD>Returns the meta object for the reference '<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getContext()"><CODE><em>Context</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#getOclQuery_OclExpression()"><B>getOclQuery_OclExpression()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A>
+<DD>Returns the meta object for the attribute '<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getOclExpression()"><CODE><em>Ocl Expression</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#getOclQueryFactory()"><B>getOclQueryFactory()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A>
+<DD>Returns the factory that creates the instances of the model.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html#getOclQueryPackage()"><B>getOclQueryPackage()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryFactory</A>
+<DD>Returns the package supported by this factory.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getParent()"><B>getParent()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html#getPrefix()"><B>getPrefix()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page">IFacetSetPropertyWizardPage</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getProject()"><B>getProject()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getProperties()"><B>getProperties()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>This method return a singleton of the properties <CODE>WidgetProperties</CODE>
+ with the initialization of some standard properties as: </nl> The
+ query name : <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getQueryNameProperty()"><CODE>AbstractQueryDialogFactory.getQueryNameProperty()</CODE></A> If the query can be
+ cached : <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getCanBeCachedProperty()"><CODE>AbstractQueryDialogFactory.getCanBeCachedProperty()</CODE></A> If the query can have
+ side effects : <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getCanHaveSideEffects()"><CODE>AbstractQueryDialogFactory.getCanHaveSideEffects()</CODE></A> </nl>
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getQuery()"><B>getQuery()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html#getQuery()"><B>getQuery()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IDerivedTypedElementWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html#getQuery()"><B>getQuery()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryCreationResult</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>GetQueryDialog</B></A> - Class in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A><DD>This class provide the dialog for the creation of the specific dialog
+ according of the type of the query selected.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#GetQueryDialog(, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryDialogFactoryStrategy, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)"><B>GetQueryDialog(&lt;any&gt;, IQueryDialogFactoryStrategy, IQueryContext)</B></A> -
+Constructor for class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">GetQueryDialog</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html#getQueryDialogFactoryStrategy(java.lang.String)"><B>getQueryDialogFactoryStrategy(String)</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A>
+<DD>Return a registered <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>AbstractQueryDialogFactory</CODE></A> corresponding to
+ the given type name.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html#getQueryDialogFactoryStrategy(java.lang.String)"><B>getQueryDialogFactoryStrategy(String)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">QueryWidgetCompositeFactoryImpl</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getQueryNameProperty()"><B>getQueryNameProperty()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html#getQueryText()"><B>getQueryText()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IDerivedTypedElementWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getQueryTypeProperty()"><B>getQueryTypeProperty()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html#getRegisteredQueryWidgetsComposite()"><B>getRegisteredQueryWidgetsComposite()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A>
+<DD>Returns every registered <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>AbstractQueryDialogFactory</CODE></A> name.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html#getRegisteredQueryWidgetsComposite()"><B>getRegisteredQueryWidgetsComposite()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">QueryWidgetCompositeFactoryImpl</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getResource()"><B>getResource()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getReturnType()"><B>getReturnType()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html#getSelectSubTypingTypeWidget()"><B>getSelectSubTypingTypeWidget()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation">ICreateFacetInFacetSetWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html#getSubTypingFacet()"><B>getSubTypingFacet()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation">ICreateFacetInFacetSetWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html#getSubTypingFacet()"><B>getSubTypingFacet()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IFacetWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#getSyntaxHelp(EClassifier, java.lang.String)"><B>getSyntaxHelp(EClassifier, String)</B></A> -
+Static method in class org.eclipse.papyrus.emf.facet.query.ocl.core.util.<A HREF="../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util">OclQueryUtil</A>
+<DD>Return a list of syntax choice for the current expression.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#getText()"><B>getText()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">SelectQueryTypeWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getUpperBound()"><B>getUpperBound()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#getUpperBound()"><B>getUpperBound()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getWriter()"><B>getWriter()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A>
+<DD>Returns the value of the '<em><b>Writer</b></em>' reference.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getWriter()"><B>getWriter()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>Returns the meta object for class '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Writer</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getWriter_Library()"><B>getWriter_Library()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>Returns the meta object for the container reference '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getLibrary()"><CODE><em>Library</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getWriter_Name()"><B>getWriter_Name()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>Returns the meta object for the attribute '<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getName()"><CODE><em>Name</em></CODE></A>'.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getWriters()"><B>getWriters()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A>
+<DD>Returns the value of the '<em><b>Writers</b></em>' containment reference list.
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-5.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-7.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-6.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-6.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-7.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-7.html
new file mode 100644
index 00000000000..e7549617d71
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-7.html
@@ -0,0 +1,206 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+I-Index
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="I-Index";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-6.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-8.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-7.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-7.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+<A NAME="_I_"><!-- --></A><H2>
+<B>I</B></H2>
+<DL>
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>ICreateFacetInFacetSetWidget</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</A><DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page"><B>ICreateFacetSetWizardPage</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page</A><DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query"><B>ICreateQueryWidget</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query</A><DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IDerivedTypedElementWidget</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A><DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IENamedElementWidget</B></A>&lt;<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="type parameter in IENamedElementWidget">C</A> extends EObject,<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="type parameter in IENamedElementWidget">CW</A>&gt; - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A><DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IEStructuralFeatureWidget</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A><DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IETypedElementWidget</B></A>&lt;<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="type parameter in IETypedElementWidget">C</A> extends EObject,<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="type parameter in IETypedElementWidget">CW</A>&gt; - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A><DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog"><B>IFacetDialogFactory</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog</A><DD>Interface for the dialogs creation factory.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page"><B>IFacetSetPropertyWizardPage</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page</A><DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IFacetWidget</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A><DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass"><B>IGetExtendedMetaclassWidget</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass</A><DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate"><B>IGetOrCreateFacetSetWidget</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate</A><DD>Interface for <CODE>GetOrCreateFacetSetWidget</CODE>.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>IGetOrCreateFilteredFacetSetWidget</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</A><DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#INSTANCE"><B>INSTANCE</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A>
+<DD>Return a new instance of the concrete implementation of this interface.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html#INSTANCE"><B>INSTANCE</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard">IWizardFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html#INSTANCE"><B>INSTANCE</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A>
+<DD>Returns an instance of <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>QueryWidgetCompositeFactoryImpl</CODE></A>.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog"><B>IOclDialogFactory</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog</A><DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression"><B>IOCLExpressionWidget</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression</A><DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget"><B>IOclQueryWidget</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget</A><DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><B>IQueryContext</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</A><DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>IQueryCreationResult</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A><DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query"><B>IQueryDialogFactory</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query</A><DD>&nbsp;<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><B>IQueryDialogFactoryStrategy</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</A><DD>This class will be used for the creation of a java query.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>IQueryWidgetCompositeFactoryFactory</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A><DD>This interface provide to get all the plug-ins extending the extension point
+ and the lazy loading of this plug-ins.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html#isCanBeCached()"><B>isCanBeCached()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query">ICreateQueryWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#isCanBeCached()"><B>isCanBeCached()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">GetQueryDialog</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#isCanBeCachedPropertyValue()"><B>isCanBeCachedPropertyValue()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#isCanHaveSideEffectsValue()"><B>isCanHaveSideEffectsValue()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html#isChangeable()"><B>isChangeable()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IEStructuralFeatureWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html#isDerived()"><B>isDerived()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IEStructuralFeatureWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#isDialogValid()"><B>isDialogValid()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#isDialogValid()"><B>isDialogValid()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">GetQueryDialog</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html#isFactoryForType(java.lang.Object)"><B>isFactoryForType(Object)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util">LibraryAdapterFactory</A>
+<DD>Returns whether this factory is applicable for the type of the object.
+<DT><A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html#isFactoryForType(java.lang.Object)"><B>isFactoryForType(Object)</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.<A HREF="../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util">OclQueryAdapterFactory</A>
+<DD>Returns whether this factory is applicable for the type of the object.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html#isHasSideEffect()"><B>isHasSideEffect()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query">ICreateQueryWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#isHasSideEffect()"><B>isHasSideEffect()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">GetQueryDialog</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#isOrdered()"><B>isOrdered()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html#isQueryEnable()"><B>isQueryEnable()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IDerivedTypedElementWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#isSelectionEnabled()"><B>isSelectionEnabled()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">SelectQueryTypeWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html#isTransient()"><B>isTransient()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IEStructuralFeatureWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#isUnique()"><B>isUnique()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html#isVolatile()"><B>isVolatile()</B></A> -
+Method in interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IEStructuralFeatureWidget</A>
+<DD>&nbsp;
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard"><B>IWizardFactory</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard</A><DD>Factory for the wizards creation.</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-6.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-8.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-7.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-7.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-8.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-8.html
new file mode 100644
index 00000000000..35f932d7dc8
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-8.html
@@ -0,0 +1,182 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+L-Index
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="L-Index";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-7.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-9.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-8.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-8.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+<A NAME="_L_"><!-- --></A><H2>
+<B>L</B></H2>
+<DL>
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>Library</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A><DD>A representation of the model object '<em><b>Library</b></em>'.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#LIBRARY"><B>LIBRARY</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The meta object id for the '<CODE><em>Library</em></CODE>' class.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#LIBRARY"><B>LIBRARY</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage.Literals</A>
+<DD>The meta object literal for the '<CODE><em>Library</em></CODE>' class.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#LIBRARY__BOOKS"><B>LIBRARY__BOOKS</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The feature id for the '<em><b>Books</b></em>' containment reference list.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#LIBRARY__BOOKS"><B>LIBRARY__BOOKS</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage.Literals</A>
+<DD>The meta object literal for the '<em><b>Books</b></em>' containment reference list feature.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#LIBRARY__NAME"><B>LIBRARY__NAME</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The feature id for the '<em><b>Name</b></em>' attribute.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#LIBRARY__NAME"><B>LIBRARY__NAME</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage.Literals</A>
+<DD>The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#LIBRARY__WRITERS"><B>LIBRARY__WRITERS</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The feature id for the '<em><b>Writers</b></em>' containment reference list.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#LIBRARY__WRITERS"><B>LIBRARY__WRITERS</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage.Literals</A>
+<DD>The meta object literal for the '<em><b>Writers</b></em>' containment reference list feature.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#LIBRARY_FEATURE_COUNT"><B>LIBRARY_FEATURE_COUNT</B></A> -
+Static variable in interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A>
+<DD>The number of structural features of the '<em>Library</em>' class.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><B>LibraryAdapterFactory</B></A> - Class in <A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</A><DD>The <b>Adapter Factory</b> for the model.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html#LibraryAdapterFactory()"><B>LibraryAdapterFactory()</B></A> -
+Constructor for class org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util">LibraryAdapterFactory</A>
+<DD>Creates an instance of the adapter factory.
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>LibraryFactory</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A><DD>The <b>Factory</b> for the model.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>LibraryPackage</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A><DD>The <b>Package</b> for the model.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>LibraryPackage.Literals</B></A> - Interface in <A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A><DD>Defines literals for the meta objects that represent
+
+ each class,
+ each feature of each class,
+ each enum,
+ and each data type
+
+ <!-- end-user-doc --><DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><B>LibrarySwitch</B></A>&lt;<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="type parameter in LibrarySwitch">T</A>&gt; - Class in <A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</A><DD>The <b>Switch</b> for the model's inheritance hierarchy.<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html#LibrarySwitch()"><B>LibrarySwitch()</B></A> -
+Constructor for class org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.<A HREF="../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util">LibrarySwitch</A>
+<DD>Creates an instance of the switch.
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-7.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-9.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-8.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-8.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-9.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-9.html
new file mode 100644
index 00000000000..7fd14ba3ffd
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index-files/index-9.html
@@ -0,0 +1,145 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+N-Index
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="N-Index";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-8.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-10.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-9.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-9.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+<A NAME="_N_"><!-- --></A><H2>
+<B>N</B></H2>
+<DL>
+<DT><A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#notifyChanged()"><B>notifyChanged()</B></A> -
+Method in class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">SelectQueryTypeWidget</A>
+<DD>&nbsp;
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="index-8.html"><B>PREV LETTER</B></A>&nbsp;
+&nbsp;<A HREF="index-10.html"><B>NEXT LETTER</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../index.html?index-filesindex-9.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="index-9.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<A HREF="index-1.html">A</A> <A HREF="index-2.html">B</A> <A HREF="index-3.html">C</A> <A HREF="index-4.html">D</A> <A HREF="index-5.html">E</A> <A HREF="index-6.html">G</A> <A HREF="index-7.html">I</A> <A HREF="index-8.html">L</A> <A HREF="index-9.html">N</A> <A HREF="index-10.html">O</A> <A HREF="index-11.html">P</A> <A HREF="index-12.html">Q</A> <A HREF="index-13.html">S</A> <A HREF="index-14.html">T</A> <A HREF="index-15.html">W</A> <HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index.html
new file mode 100644
index 00000000000..be43ed8ce9e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/index.html
@@ -0,0 +1,39 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc on Mon Aug 19 04:53:35 EDT 2013-->
+<TITLE>
+Generated Documentation (Untitled)
+</TITLE>
+<SCRIPT type="text/javascript">
+ targetPage = "" + window.location.search;
+ if (targetPage != "" && targetPage != "undefined")
+ targetPage = targetPage.substring(1);
+ if (targetPage.indexOf(":") != -1)
+ targetPage = "undefined";
+ function loadFrames() {
+ if (targetPage != "" && targetPage != "undefined")
+ top.classFrame.location = top.targetPage;
+ }
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+</HEAD>
+<FRAMESET cols="20%,80%" title="" onLoad="top.loadFrames()">
+<FRAMESET rows="30%,70%" title="" onLoad="top.loadFrames()">
+<FRAME src="overview-frame.html" name="packageListFrame" title="All Packages">
+<FRAME src="allclasses-frame.html" name="packageFrame" title="All classes and interfaces (except non-static nested types)">
+</FRAMESET>
+<FRAME src="overview-summary.html" name="classFrame" title="Package, class and interface descriptions" scrolling="yes">
+<NOFRAMES>
+<H2>
+Frame Alert</H2>
+
+<P>
+This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client.
+<BR>
+Link to<A HREF="overview-summary.html">Non-frame version.</A>
+</NOFRAMES>
+</FRAMESET>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html
new file mode 100644
index 00000000000..6870ad7bff9
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html
@@ -0,0 +1,443 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Book
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Book";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/Book.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="Book.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</FONT>
+<BR>
+Interface Book</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>Book</B></DL>
+</PRE>
+
+<P>
+<!-- begin-user-doc -->
+ A representation of the model object '<em><b>Book</b></em>'.
+ <!-- end-user-doc -->
+
+ <p>
+ The following features are supported:
+ <ul>
+ <li><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getName()"><CODE><em>Name</em></CODE></A></li>
+ <li><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getISBN()"><CODE><em>ISBN</em></CODE></A></li>
+ <li><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getWriter()"><CODE><em>Writer</em></CODE></A></li>
+ <li><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getLibrary()"><CODE><em>Library</em></CODE></A></li>
+ </ul>
+ </p>
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook()"><CODE>LibraryPackage.getBook()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD></DD>
+</DL>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getISBN()">getISBN</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value of the '<em><b>ISBN</b></em>' attribute.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getLibrary()">getLibrary</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value of the '<em><b>Library</b></em>' container reference.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getName()">getName</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value of the '<em><b>Name</b></em>' attribute.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getWriter()">getWriter</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value of the '<em><b>Writer</b></em>' reference.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#setISBN(int)">setISBN</A></B>(int&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getISBN()"><CODE><em>ISBN</em></CODE></A>' attribute.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#setLibrary(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Library)">setLibrary</A></B>(<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A>&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getLibrary()"><CODE><em>Library</em></CODE></A>' container reference.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#setName(java.lang.String)">setName</A></B>(java.lang.String&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getName()"><CODE><em>Name</em></CODE></A>' attribute.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#setWriter(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Writer)">setWriter</A></B>(<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A>&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getWriter()"><CODE><em>Writer</em></CODE></A>' reference.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getName()"><!-- --></A><H3>
+getName</H3>
+<PRE>
+java.lang.String <B>getName</B>()</PRE>
+<DL>
+<DD>Returns the value of the '<em><b>Name</b></em>' attribute.
+ <!-- begin-user-doc -->
+ <p>
+ If the meaning of the '<em>Name</em>' attribute isn't clear,
+ there really should be more of a description here...
+ </p>
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the value of the '<em>Name</em>' attribute.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#setName(java.lang.String)"><CODE>setName(String)</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook_Name()"><CODE>LibraryPackage.getBook_Name()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setName(java.lang.String)"><!-- --></A><H3>
+setName</H3>
+<PRE>
+void <B>setName</B>(java.lang.String&nbsp;value)</PRE>
+<DL>
+<DD>Sets the value of the '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getName()"><CODE><em>Name</em></CODE></A>' attribute.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>value</CODE> - the new value of the '<em>Name</em>' attribute.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getName()"><CODE>getName()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getISBN()"><!-- --></A><H3>
+getISBN</H3>
+<PRE>
+int <B>getISBN</B>()</PRE>
+<DL>
+<DD>Returns the value of the '<em><b>ISBN</b></em>' attribute.
+ <!-- begin-user-doc -->
+ <p>
+ If the meaning of the '<em>ISBN</em>' attribute isn't clear,
+ there really should be more of a description here...
+ </p>
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the value of the '<em>ISBN</em>' attribute.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#setISBN(int)"><CODE>setISBN(int)</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook_ISBN()"><CODE>LibraryPackage.getBook_ISBN()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setISBN(int)"><!-- --></A><H3>
+setISBN</H3>
+<PRE>
+void <B>setISBN</B>(int&nbsp;value)</PRE>
+<DL>
+<DD>Sets the value of the '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getISBN()"><CODE><em>ISBN</em></CODE></A>' attribute.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>value</CODE> - the new value of the '<em>ISBN</em>' attribute.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getISBN()"><CODE>getISBN()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getWriter()"><!-- --></A><H3>
+getWriter</H3>
+<PRE>
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A> <B>getWriter</B>()</PRE>
+<DL>
+<DD>Returns the value of the '<em><b>Writer</b></em>' reference.
+ <!-- begin-user-doc -->
+ <p>
+ If the meaning of the '<em>Writer</em>' reference isn't clear,
+ there really should be more of a description here...
+ </p>
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the value of the '<em>Writer</em>' reference.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#setWriter(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Writer)"><CODE>setWriter(Writer)</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook_Writer()"><CODE>LibraryPackage.getBook_Writer()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setWriter(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Writer)"><!-- --></A><H3>
+setWriter</H3>
+<PRE>
+void <B>setWriter</B>(<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A>&nbsp;value)</PRE>
+<DL>
+<DD>Sets the value of the '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getWriter()"><CODE><em>Writer</em></CODE></A>' reference.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>value</CODE> - the new value of the '<em>Writer</em>' reference.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getWriter()"><CODE>getWriter()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getLibrary()"><!-- --></A><H3>
+getLibrary</H3>
+<PRE>
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A> <B>getLibrary</B>()</PRE>
+<DL>
+<DD>Returns the value of the '<em><b>Library</b></em>' container reference.
+ It is bidirectional and its opposite is '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getBooks()"><CODE><em>Books</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <p>
+ If the meaning of the '<em>Library</em>' container reference isn't clear,
+ there really should be more of a description here...
+ </p>
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the value of the '<em>Library</em>' container reference.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#setLibrary(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Library)"><CODE>setLibrary(Library)</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook_Library()"><CODE>LibraryPackage.getBook_Library()</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getBooks()"><CODE>Library.getBooks()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD>opposite="books" transient="false"</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setLibrary(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Library)"><!-- --></A><H3>
+setLibrary</H3>
+<PRE>
+void <B>setLibrary</B>(<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A>&nbsp;value)</PRE>
+<DL>
+<DD>Sets the value of the '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getLibrary()"><CODE><em>Library</em></CODE></A>' container reference.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>value</CODE> - the new value of the '<em>Library</em>' container reference.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getLibrary()"><CODE>getLibrary()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/Book.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="Book.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html
new file mode 100644
index 00000000000..bd27ae19942
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html
@@ -0,0 +1,336 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Library
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Library";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/Library.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="Library.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</FONT>
+<BR>
+Interface Library</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>Library</B></DL>
+</PRE>
+
+<P>
+<!-- begin-user-doc -->
+ A representation of the model object '<em><b>Library</b></em>'.
+ <!-- end-user-doc -->
+
+ <p>
+ The following features are supported:
+ <ul>
+ <li><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getName()"><CODE><em>Name</em></CODE></A></li>
+ <li><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getWriters()"><CODE><em>Writers</em></CODE></A></li>
+ <li><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getBooks()"><CODE><em>Books</em></CODE></A></li>
+ </ul>
+ </p>
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibrary()"><CODE>LibraryPackage.getLibrary()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD></DD>
+</DL>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getBooks()">getBooks</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value of the '<em><b>Books</b></em>' containment reference list.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getName()">getName</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value of the '<em><b>Name</b></em>' attribute.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getWriters()">getWriters</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value of the '<em><b>Writers</b></em>' containment reference list.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#setName(java.lang.String)">setName</A></B>(java.lang.String&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getName()"><CODE><em>Name</em></CODE></A>' attribute.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getName()"><!-- --></A><H3>
+getName</H3>
+<PRE>
+java.lang.String <B>getName</B>()</PRE>
+<DL>
+<DD>Returns the value of the '<em><b>Name</b></em>' attribute.
+ <!-- begin-user-doc -->
+ <p>
+ If the meaning of the '<em>Name</em>' attribute isn't clear,
+ there really should be more of a description here...
+ </p>
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the value of the '<em>Name</em>' attribute.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#setName(java.lang.String)"><CODE>setName(String)</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibrary_Name()"><CODE>LibraryPackage.getLibrary_Name()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setName(java.lang.String)"><!-- --></A><H3>
+setName</H3>
+<PRE>
+void <B>setName</B>(java.lang.String&nbsp;value)</PRE>
+<DL>
+<DD>Sets the value of the '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getName()"><CODE><em>Name</em></CODE></A>' attribute.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>value</CODE> - the new value of the '<em>Name</em>' attribute.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getName()"><CODE>getName()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getWriters()"><!-- --></A><H3>
+getWriters</H3>
+<PRE>
+<any> <B>getWriters</B>()</PRE>
+<DL>
+<DD>Returns the value of the '<em><b>Writers</b></em>' containment reference list.
+ The list contents are of type <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE>Writer</CODE></A>.
+ It is bidirectional and its opposite is '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getLibrary()"><CODE><em>Library</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <p>
+ If the meaning of the '<em>Writers</em>' containment reference list isn't clear,
+ there really should be more of a description here...
+ </p>
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the value of the '<em>Writers</em>' containment reference list.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibrary_Writers()"><CODE>LibraryPackage.getLibrary_Writers()</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getLibrary()"><CODE>Writer.getLibrary()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD>opposite="library" containment="true"</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getBooks()"><!-- --></A><H3>
+getBooks</H3>
+<PRE>
+<any> <B>getBooks</B>()</PRE>
+<DL>
+<DD>Returns the value of the '<em><b>Books</b></em>' containment reference list.
+ The list contents are of type <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE>Book</CODE></A>.
+ It is bidirectional and its opposite is '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getLibrary()"><CODE><em>Library</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <p>
+ If the meaning of the '<em>Books</em>' containment reference list isn't clear,
+ there really should be more of a description here...
+ </p>
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the value of the '<em>Books</em>' containment reference list.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibrary_Books()"><CODE>LibraryPackage.getLibrary_Books()</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getLibrary()"><CODE>Book.getLibrary()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD>opposite="library" containment="true"</DD>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/Library.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="Library.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html
new file mode 100644
index 00000000000..76bc5d52240
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html
@@ -0,0 +1,344 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+LibraryFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="LibraryFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LibraryFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibraryFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</FONT>
+<BR>
+Interface LibraryFactory</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>LibraryFactory</B></DL>
+</PRE>
+
+<P>
+<!-- begin-user-doc -->
+ The <b>Factory</b> for the model.
+ It provides a create method for each non-abstract class of the model.
+ <!-- end-user-doc -->
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE>LibraryPackage</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+<HR>
+
+<P>
+<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryFactory</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html#eINSTANCE">eINSTANCE</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The singleton instance of the factory.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html#createBook()">createBook</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new object of class '<em>Book</em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html#createLibrary()">createLibrary</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new object of class '<em>Library</em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html#createWriter()">createWriter</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new object of class '<em>Writer</em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html#getLibraryPackage()">getLibraryPackage</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the package supported by this factory.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="eINSTANCE"><!-- --></A><H3>
+eINSTANCE</H3>
+<PRE>
+static final <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryFactory</A> <B>eINSTANCE</B></PRE>
+<DL>
+<DD>The singleton instance of the factory.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="createLibrary()"><!-- --></A><H3>
+createLibrary</H3>
+<PRE>
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A> <B>createLibrary</B>()</PRE>
+<DL>
+<DD>Returns a new object of class '<em>Library</em>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>a new object of class '<em>Library</em>'.<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createWriter()"><!-- --></A><H3>
+createWriter</H3>
+<PRE>
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A> <B>createWriter</B>()</PRE>
+<DL>
+<DD>Returns a new object of class '<em>Writer</em>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>a new object of class '<em>Writer</em>'.<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createBook()"><!-- --></A><H3>
+createBook</H3>
+<PRE>
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A> <B>createBook</B>()</PRE>
+<DL>
+<DD>Returns a new object of class '<em>Book</em>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>a new object of class '<em>Book</em>'.<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getLibraryPackage()"><!-- --></A><H3>
+getLibraryPackage</H3>
+<PRE>
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A> <B>getLibraryPackage</B>()</PRE>
+<DL>
+<DD>Returns the package supported by this factory.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the package supported by this factory.<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LibraryFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibraryFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html
new file mode 100644
index 00000000000..7aae7323b98
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html
@@ -0,0 +1,496 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+LibraryPackage.Literals
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="LibraryPackage.Literals";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LibraryPackage.Literals.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibraryPackage.Literals.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;METHOD</FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;METHOD</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</FONT>
+<BR>
+Interface LibraryPackage.Literals</H2>
+<DL>
+<DT><B>Enclosing interface:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A></DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public static interface <B>LibraryPackage.Literals</B></DL>
+</PRE>
+
+<P>
+<!-- begin-user-doc -->
+ Defines literals for the meta objects that represent
+ <ul>
+ <li>each class,</li>
+ <li>each feature of each class,</li>
+ <li>each enum,</li>
+ <li>and each data type</li>
+ </ul>
+ <!-- end-user-doc -->
+<P>
+
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+<HR>
+
+<P>
+<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;EClass</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#BOOK">BOOK</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object literal for the '<CODE><em>Book</em></CODE>' class.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;EAttribute</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#BOOK__ISBN">BOOK__ISBN</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object literal for the '<em><b>ISBN</b></em>' attribute feature.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;EReference</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#BOOK__LIBRARY">BOOK__LIBRARY</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object literal for the '<em><b>Library</b></em>' container reference feature.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;EAttribute</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#BOOK__NAME">BOOK__NAME</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object literal for the '<em><b>Name</b></em>' attribute feature.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;EReference</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#BOOK__WRITER">BOOK__WRITER</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object literal for the '<em><b>Writer</b></em>' reference feature.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;EClass</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#LIBRARY">LIBRARY</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object literal for the '<CODE><em>Library</em></CODE>' class.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;EReference</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#LIBRARY__BOOKS">LIBRARY__BOOKS</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object literal for the '<em><b>Books</b></em>' containment reference list feature.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;EAttribute</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#LIBRARY__NAME">LIBRARY__NAME</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object literal for the '<em><b>Name</b></em>' attribute feature.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;EReference</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#LIBRARY__WRITERS">LIBRARY__WRITERS</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object literal for the '<em><b>Writers</b></em>' containment reference list feature.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;EClass</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#WRITER">WRITER</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object literal for the '<CODE><em>Writer</em></CODE>' class.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;EReference</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#WRITER__LIBRARY">WRITER__LIBRARY</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object literal for the '<em><b>Library</b></em>' container reference feature.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;EAttribute</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html#WRITER__NAME">WRITER__NAME</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object literal for the '<em><b>Name</b></em>' attribute feature.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="LIBRARY"><!-- --></A><H3>
+LIBRARY</H3>
+<PRE>
+static final EClass <B>LIBRARY</B></PRE>
+<DL>
+<DD>The meta object literal for the '<CODE><em>Library</em></CODE>' class.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.impl.LibraryImpl</CODE>,
+<CODE>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.impl.LibraryPackageImpl#getLibrary()</CODE><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="LIBRARY__NAME"><!-- --></A><H3>
+LIBRARY__NAME</H3>
+<PRE>
+static final EAttribute <B>LIBRARY__NAME</B></PRE>
+<DL>
+<DD>The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="LIBRARY__WRITERS"><!-- --></A><H3>
+LIBRARY__WRITERS</H3>
+<PRE>
+static final EReference <B>LIBRARY__WRITERS</B></PRE>
+<DL>
+<DD>The meta object literal for the '<em><b>Writers</b></em>' containment reference list feature.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="LIBRARY__BOOKS"><!-- --></A><H3>
+LIBRARY__BOOKS</H3>
+<PRE>
+static final EReference <B>LIBRARY__BOOKS</B></PRE>
+<DL>
+<DD>The meta object literal for the '<em><b>Books</b></em>' containment reference list feature.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="WRITER"><!-- --></A><H3>
+WRITER</H3>
+<PRE>
+static final EClass <B>WRITER</B></PRE>
+<DL>
+<DD>The meta object literal for the '<CODE><em>Writer</em></CODE>' class.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.impl.WriterImpl</CODE>,
+<CODE>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.impl.LibraryPackageImpl#getWriter()</CODE><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="WRITER__NAME"><!-- --></A><H3>
+WRITER__NAME</H3>
+<PRE>
+static final EAttribute <B>WRITER__NAME</B></PRE>
+<DL>
+<DD>The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="WRITER__LIBRARY"><!-- --></A><H3>
+WRITER__LIBRARY</H3>
+<PRE>
+static final EReference <B>WRITER__LIBRARY</B></PRE>
+<DL>
+<DD>The meta object literal for the '<em><b>Library</b></em>' container reference feature.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="BOOK"><!-- --></A><H3>
+BOOK</H3>
+<PRE>
+static final EClass <B>BOOK</B></PRE>
+<DL>
+<DD>The meta object literal for the '<CODE><em>Book</em></CODE>' class.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.impl.BookImpl</CODE>,
+<CODE>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.impl.LibraryPackageImpl#getBook()</CODE><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="BOOK__NAME"><!-- --></A><H3>
+BOOK__NAME</H3>
+<PRE>
+static final EAttribute <B>BOOK__NAME</B></PRE>
+<DL>
+<DD>The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="BOOK__ISBN"><!-- --></A><H3>
+BOOK__ISBN</H3>
+<PRE>
+static final EAttribute <B>BOOK__ISBN</B></PRE>
+<DL>
+<DD>The meta object literal for the '<em><b>ISBN</b></em>' attribute feature.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="BOOK__WRITER"><!-- --></A><H3>
+BOOK__WRITER</H3>
+<PRE>
+static final EReference <B>BOOK__WRITER</B></PRE>
+<DL>
+<DD>The meta object literal for the '<em><b>Writer</b></em>' reference feature.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="BOOK__LIBRARY"><!-- --></A><H3>
+BOOK__LIBRARY</H3>
+<PRE>
+static final EReference <B>BOOK__LIBRARY</B></PRE>
+<DL>
+<DD>The meta object literal for the '<em><b>Library</b></em>' container reference feature.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LibraryPackage.Literals.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibraryPackage.Literals.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;METHOD</FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;METHOD</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html
new file mode 100644
index 00000000000..39c51683516
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html
@@ -0,0 +1,1081 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+LibraryPackage
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="LibraryPackage";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LibraryPackage.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibraryPackage.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</FONT>
+<BR>
+Interface LibraryPackage</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>LibraryPackage</B></DL>
+</PRE>
+
+<P>
+<!-- begin-user-doc -->
+ The <b>Package</b> for the model.
+ It contains accessors for the meta objects to represent
+ <ul>
+ <li>each class,</li>
+ <li>each feature of each class,</li>
+ <li>each enum,</li>
+ <li>and each data type</li>
+ </ul>
+ <!-- end-user-doc -->
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE>LibraryFactory</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD>kind="package"</DD>
+</DL>
+<HR>
+
+<P>
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+
+<A NAME="nested_class_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Nested Class Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;interface</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage.Literals</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Defines literals for the meta objects that represent
+
+ each class,
+ each feature of each class,
+ each enum,
+ and each data type
+
+ <!-- end-user-doc --></TD>
+</TR>
+</TABLE>
+&nbsp;<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK">BOOK</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object id for the '<CODE><em>Book</em></CODE>' class.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK__ISBN">BOOK__ISBN</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The feature id for the '<em><b>ISBN</b></em>' attribute.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK__LIBRARY">BOOK__LIBRARY</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The feature id for the '<em><b>Library</b></em>' container reference.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK__NAME">BOOK__NAME</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The feature id for the '<em><b>Name</b></em>' attribute.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK__WRITER">BOOK__WRITER</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The feature id for the '<em><b>Writer</b></em>' reference.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#BOOK_FEATURE_COUNT">BOOK_FEATURE_COUNT</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The number of structural features of the '<em>Book</em>' class.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#eINSTANCE">eINSTANCE</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The singleton instance of the package.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#eNAME">eNAME</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The package name.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#eNS_PREFIX">eNS_PREFIX</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The package namespace name.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#eNS_URI">eNS_URI</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The package namespace URI.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#LIBRARY">LIBRARY</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object id for the '<CODE><em>Library</em></CODE>' class.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#LIBRARY__BOOKS">LIBRARY__BOOKS</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The feature id for the '<em><b>Books</b></em>' containment reference list.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#LIBRARY__NAME">LIBRARY__NAME</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The feature id for the '<em><b>Name</b></em>' attribute.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#LIBRARY__WRITERS">LIBRARY__WRITERS</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The feature id for the '<em><b>Writers</b></em>' containment reference list.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#LIBRARY_FEATURE_COUNT">LIBRARY_FEATURE_COUNT</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The number of structural features of the '<em>Library</em>' class.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#WRITER">WRITER</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object id for the '<CODE><em>Writer</em></CODE>' class.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#WRITER__LIBRARY">WRITER__LIBRARY</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The feature id for the '<em><b>Library</b></em>' container reference.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#WRITER__NAME">WRITER__NAME</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The feature id for the '<em><b>Name</b></em>' attribute.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#WRITER_FEATURE_COUNT">WRITER_FEATURE_COUNT</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The number of structural features of the '<em>Writer</em>' class.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EAttribute</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook_ISBN()">getBook_ISBN</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the meta object for the attribute '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getISBN()"><CODE><em>ISBN</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EReference</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook_Library()">getBook_Library</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the meta object for the container reference '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getLibrary()"><CODE><em>Library</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EAttribute</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook_Name()">getBook_Name</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the meta object for the attribute '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getName()"><CODE><em>Name</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EReference</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook_Writer()">getBook_Writer</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the meta object for the reference '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getWriter()"><CODE><em>Writer</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EClass</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook()">getBook</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the meta object for class '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Book</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EReference</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibrary_Books()">getLibrary_Books</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the meta object for the containment reference list '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getBooks()"><CODE><em>Books</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EAttribute</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibrary_Name()">getLibrary_Name</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the meta object for the attribute '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getName()"><CODE><em>Name</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EReference</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibrary_Writers()">getLibrary_Writers</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the meta object for the containment reference list '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getWriters()"><CODE><em>Writers</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EClass</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibrary()">getLibrary</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the meta object for class '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Library</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryFactory</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibraryFactory()">getLibraryFactory</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the factory that creates the instances of the model.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EReference</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getWriter_Library()">getWriter_Library</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the meta object for the container reference '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getLibrary()"><CODE><em>Library</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EAttribute</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getWriter_Name()">getWriter_Name</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the meta object for the attribute '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getName()"><CODE><em>Name</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EClass</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getWriter()">getWriter</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the meta object for class '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Writer</em></CODE></A>'.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="eNAME"><!-- --></A><H3>
+eNAME</H3>
+<PRE>
+static final java.lang.String <B>eNAME</B></PRE>
+<DL>
+<DD>The package name.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.eNAME">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="eNS_URI"><!-- --></A><H3>
+eNS_URI</H3>
+<PRE>
+static final java.lang.String <B>eNS_URI</B></PRE>
+<DL>
+<DD>The package namespace URI.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.eNS_URI">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="eNS_PREFIX"><!-- --></A><H3>
+eNS_PREFIX</H3>
+<PRE>
+static final java.lang.String <B>eNS_PREFIX</B></PRE>
+<DL>
+<DD>The package namespace name.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.eNS_PREFIX">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="eINSTANCE"><!-- --></A><H3>
+eINSTANCE</H3>
+<PRE>
+static final <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A> <B>eINSTANCE</B></PRE>
+<DL>
+<DD>The singleton instance of the package.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="LIBRARY"><!-- --></A><H3>
+LIBRARY</H3>
+<PRE>
+static final int <B>LIBRARY</B></PRE>
+<DL>
+<DD>The meta object id for the '<CODE><em>Library</em></CODE>' class.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.impl.LibraryImpl</CODE>,
+<CODE>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.impl.LibraryPackageImpl#getLibrary()</CODE>,
+<A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.LIBRARY">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="LIBRARY__NAME"><!-- --></A><H3>
+LIBRARY__NAME</H3>
+<PRE>
+static final int <B>LIBRARY__NAME</B></PRE>
+<DL>
+<DD>The feature id for the '<em><b>Name</b></em>' attribute.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.LIBRARY__NAME">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Ordered:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="LIBRARY__WRITERS"><!-- --></A><H3>
+LIBRARY__WRITERS</H3>
+<PRE>
+static final int <B>LIBRARY__WRITERS</B></PRE>
+<DL>
+<DD>The feature id for the '<em><b>Writers</b></em>' containment reference list.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.LIBRARY__WRITERS">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Ordered:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="LIBRARY__BOOKS"><!-- --></A><H3>
+LIBRARY__BOOKS</H3>
+<PRE>
+static final int <B>LIBRARY__BOOKS</B></PRE>
+<DL>
+<DD>The feature id for the '<em><b>Books</b></em>' containment reference list.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.LIBRARY__BOOKS">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Ordered:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="LIBRARY_FEATURE_COUNT"><!-- --></A><H3>
+LIBRARY_FEATURE_COUNT</H3>
+<PRE>
+static final int <B>LIBRARY_FEATURE_COUNT</B></PRE>
+<DL>
+<DD>The number of structural features of the '<em>Library</em>' class.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.LIBRARY_FEATURE_COUNT">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Ordered:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="WRITER"><!-- --></A><H3>
+WRITER</H3>
+<PRE>
+static final int <B>WRITER</B></PRE>
+<DL>
+<DD>The meta object id for the '<CODE><em>Writer</em></CODE>' class.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.impl.WriterImpl</CODE>,
+<CODE>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.impl.LibraryPackageImpl#getWriter()</CODE>,
+<A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.WRITER">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="WRITER__NAME"><!-- --></A><H3>
+WRITER__NAME</H3>
+<PRE>
+static final int <B>WRITER__NAME</B></PRE>
+<DL>
+<DD>The feature id for the '<em><b>Name</b></em>' attribute.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.WRITER__NAME">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Ordered:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="WRITER__LIBRARY"><!-- --></A><H3>
+WRITER__LIBRARY</H3>
+<PRE>
+static final int <B>WRITER__LIBRARY</B></PRE>
+<DL>
+<DD>The feature id for the '<em><b>Library</b></em>' container reference.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.WRITER__LIBRARY">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Ordered:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="WRITER_FEATURE_COUNT"><!-- --></A><H3>
+WRITER_FEATURE_COUNT</H3>
+<PRE>
+static final int <B>WRITER_FEATURE_COUNT</B></PRE>
+<DL>
+<DD>The number of structural features of the '<em>Writer</em>' class.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.WRITER_FEATURE_COUNT">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Ordered:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="BOOK"><!-- --></A><H3>
+BOOK</H3>
+<PRE>
+static final int <B>BOOK</B></PRE>
+<DL>
+<DD>The meta object id for the '<CODE><em>Book</em></CODE>' class.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.impl.BookImpl</CODE>,
+<CODE>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.impl.LibraryPackageImpl#getBook()</CODE>,
+<A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.BOOK">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="BOOK__NAME"><!-- --></A><H3>
+BOOK__NAME</H3>
+<PRE>
+static final int <B>BOOK__NAME</B></PRE>
+<DL>
+<DD>The feature id for the '<em><b>Name</b></em>' attribute.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.BOOK__NAME">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Ordered:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="BOOK__ISBN"><!-- --></A><H3>
+BOOK__ISBN</H3>
+<PRE>
+static final int <B>BOOK__ISBN</B></PRE>
+<DL>
+<DD>The feature id for the '<em><b>ISBN</b></em>' attribute.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.BOOK__ISBN">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Ordered:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="BOOK__WRITER"><!-- --></A><H3>
+BOOK__WRITER</H3>
+<PRE>
+static final int <B>BOOK__WRITER</B></PRE>
+<DL>
+<DD>The feature id for the '<em><b>Writer</b></em>' reference.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.BOOK__WRITER">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Ordered:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="BOOK__LIBRARY"><!-- --></A><H3>
+BOOK__LIBRARY</H3>
+<PRE>
+static final int <B>BOOK__LIBRARY</B></PRE>
+<DL>
+<DD>The feature id for the '<em><b>Library</b></em>' container reference.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.BOOK__LIBRARY">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Ordered:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="BOOK_FEATURE_COUNT"><!-- --></A><H3>
+BOOK_FEATURE_COUNT</H3>
+<PRE>
+static final int <B>BOOK_FEATURE_COUNT</B></PRE>
+<DL>
+<DD>The number of structural features of the '<em>Book</em>' class.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.BOOK_FEATURE_COUNT">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Ordered:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getLibrary()"><!-- --></A><H3>
+getLibrary</H3>
+<PRE>
+EClass <B>getLibrary</B>()</PRE>
+<DL>
+<DD>Returns the meta object for class '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Library</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the meta object for class '<em>Library</em>'.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE>Library</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getLibrary_Name()"><!-- --></A><H3>
+getLibrary_Name</H3>
+<PRE>
+EAttribute <B>getLibrary_Name</B>()</PRE>
+<DL>
+<DD>Returns the meta object for the attribute '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getName()"><CODE><em>Name</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the meta object for the attribute '<em>Name</em>'.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getName()"><CODE>Library.getName()</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibrary()"><CODE>getLibrary()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getLibrary_Writers()"><!-- --></A><H3>
+getLibrary_Writers</H3>
+<PRE>
+EReference <B>getLibrary_Writers</B>()</PRE>
+<DL>
+<DD>Returns the meta object for the containment reference list '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getWriters()"><CODE><em>Writers</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the meta object for the containment reference list '<em>Writers</em>'.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getWriters()"><CODE>Library.getWriters()</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibrary()"><CODE>getLibrary()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getLibrary_Books()"><!-- --></A><H3>
+getLibrary_Books</H3>
+<PRE>
+EReference <B>getLibrary_Books</B>()</PRE>
+<DL>
+<DD>Returns the meta object for the containment reference list '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getBooks()"><CODE><em>Books</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the meta object for the containment reference list '<em>Books</em>'.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getBooks()"><CODE>Library.getBooks()</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibrary()"><CODE>getLibrary()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getWriter()"><!-- --></A><H3>
+getWriter</H3>
+<PRE>
+EClass <B>getWriter</B>()</PRE>
+<DL>
+<DD>Returns the meta object for class '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Writer</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the meta object for class '<em>Writer</em>'.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE>Writer</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getWriter_Name()"><!-- --></A><H3>
+getWriter_Name</H3>
+<PRE>
+EAttribute <B>getWriter_Name</B>()</PRE>
+<DL>
+<DD>Returns the meta object for the attribute '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getName()"><CODE><em>Name</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the meta object for the attribute '<em>Name</em>'.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getName()"><CODE>Writer.getName()</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getWriter()"><CODE>getWriter()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getWriter_Library()"><!-- --></A><H3>
+getWriter_Library</H3>
+<PRE>
+EReference <B>getWriter_Library</B>()</PRE>
+<DL>
+<DD>Returns the meta object for the container reference '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getLibrary()"><CODE><em>Library</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the meta object for the container reference '<em>Library</em>'.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getLibrary()"><CODE>Writer.getLibrary()</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getWriter()"><CODE>getWriter()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getBook()"><!-- --></A><H3>
+getBook</H3>
+<PRE>
+EClass <B>getBook</B>()</PRE>
+<DL>
+<DD>Returns the meta object for class '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Book</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the meta object for class '<em>Book</em>'.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE>Book</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getBook_Name()"><!-- --></A><H3>
+getBook_Name</H3>
+<PRE>
+EAttribute <B>getBook_Name</B>()</PRE>
+<DL>
+<DD>Returns the meta object for the attribute '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getName()"><CODE><em>Name</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the meta object for the attribute '<em>Name</em>'.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getName()"><CODE>Book.getName()</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook()"><CODE>getBook()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getBook_ISBN()"><!-- --></A><H3>
+getBook_ISBN</H3>
+<PRE>
+EAttribute <B>getBook_ISBN</B>()</PRE>
+<DL>
+<DD>Returns the meta object for the attribute '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getISBN()"><CODE><em>ISBN</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the meta object for the attribute '<em>ISBN</em>'.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getISBN()"><CODE>Book.getISBN()</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook()"><CODE>getBook()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getBook_Writer()"><!-- --></A><H3>
+getBook_Writer</H3>
+<PRE>
+EReference <B>getBook_Writer</B>()</PRE>
+<DL>
+<DD>Returns the meta object for the reference '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getWriter()"><CODE><em>Writer</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the meta object for the reference '<em>Writer</em>'.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getWriter()"><CODE>Book.getWriter()</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook()"><CODE>getBook()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getBook_Library()"><!-- --></A><H3>
+getBook_Library</H3>
+<PRE>
+EReference <B>getBook_Library</B>()</PRE>
+<DL>
+<DD>Returns the meta object for the container reference '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getLibrary()"><CODE><em>Library</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the meta object for the container reference '<em>Library</em>'.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getLibrary()"><CODE>Book.getLibrary()</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getBook()"><CODE>getBook()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getLibraryFactory()"><!-- --></A><H3>
+getLibraryFactory</H3>
+<PRE>
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryFactory</A> <B>getLibraryFactory</B>()</PRE>
+<DL>
+<DD>Returns the factory that creates the instances of the model.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the factory that creates the instances of the model.<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LibraryPackage.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibraryPackage.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html
new file mode 100644
index 00000000000..f15f3e1ad59
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html
@@ -0,0 +1,325 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Writer
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Writer";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/Writer.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="Writer.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</FONT>
+<BR>
+Interface Writer</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>Writer</B></DL>
+</PRE>
+
+<P>
+<!-- begin-user-doc -->
+ A representation of the model object '<em><b>Writer</b></em>'.
+ <!-- end-user-doc -->
+
+ <p>
+ The following features are supported:
+ <ul>
+ <li><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getName()"><CODE><em>Name</em></CODE></A></li>
+ <li><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getLibrary()"><CODE><em>Library</em></CODE></A></li>
+ </ul>
+ </p>
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getWriter()"><CODE>LibraryPackage.getWriter()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD></DD>
+</DL>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getLibrary()">getLibrary</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value of the '<em><b>Library</b></em>' container reference.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getName()">getName</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value of the '<em><b>Name</b></em>' attribute.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#setLibrary(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Library)">setLibrary</A></B>(<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A>&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getLibrary()"><CODE><em>Library</em></CODE></A>' container reference.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#setName(java.lang.String)">setName</A></B>(java.lang.String&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getName()"><CODE><em>Name</em></CODE></A>' attribute.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getName()"><!-- --></A><H3>
+getName</H3>
+<PRE>
+java.lang.String <B>getName</B>()</PRE>
+<DL>
+<DD>Returns the value of the '<em><b>Name</b></em>' attribute.
+ <!-- begin-user-doc -->
+ <p>
+ If the meaning of the '<em>Name</em>' attribute isn't clear,
+ there really should be more of a description here...
+ </p>
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the value of the '<em>Name</em>' attribute.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#setName(java.lang.String)"><CODE>setName(String)</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getWriter_Name()"><CODE>LibraryPackage.getWriter_Name()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setName(java.lang.String)"><!-- --></A><H3>
+setName</H3>
+<PRE>
+void <B>setName</B>(java.lang.String&nbsp;value)</PRE>
+<DL>
+<DD>Sets the value of the '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getName()"><CODE><em>Name</em></CODE></A>' attribute.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>value</CODE> - the new value of the '<em>Name</em>' attribute.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getName()"><CODE>getName()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getLibrary()"><!-- --></A><H3>
+getLibrary</H3>
+<PRE>
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A> <B>getLibrary</B>()</PRE>
+<DL>
+<DD>Returns the value of the '<em><b>Library</b></em>' container reference.
+ It is bidirectional and its opposite is '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getWriters()"><CODE><em>Writers</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <p>
+ If the meaning of the '<em>Library</em>' container reference isn't clear,
+ there really should be more of a description here...
+ </p>
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the value of the '<em>Library</em>' container reference.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#setLibrary(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Library)"><CODE>setLibrary(Library)</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getWriter_Library()"><CODE>LibraryPackage.getWriter_Library()</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html#getWriters()"><CODE>Library.getWriters()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD>opposite="writers" transient="false"</DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setLibrary(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Library)"><!-- --></A><H3>
+setLibrary</H3>
+<PRE>
+void <B>setLibrary</B>(<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A>&nbsp;value)</PRE>
+<DL>
+<DD>Sets the value of the '<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getLibrary()"><CODE><em>Library</em></CODE></A>' container reference.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>value</CODE> - the new value of the '<em>Library</em>' container reference.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getLibrary()"><CODE>getLibrary()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/Writer.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="Writer.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Book.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Book.html
new file mode 100644
index 00000000000..cd854e084eb
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Book.html
@@ -0,0 +1,209 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Book
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Book";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library//class-useBook.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="Book.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Book</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A> in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A> that return <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A></CODE></FONT></TD>
+<TD><CODE><B>LibraryFactory.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html#createBook()">createBook</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new object of class '<em>Book</em>'.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A> in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</A> with parameters of type <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="type parameter in LibrarySwitch">T</A></CODE></FONT></TD>
+<TD><CODE><B>LibrarySwitch.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html#caseBook(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Book)">caseBook</A></B>(<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A>&nbsp;object)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the result of interpreting the object as an instance of '<em>Book</em>'.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library//class-useBook.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="Book.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Library.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Library.html
new file mode 100644
index 00000000000..7b3e689dc8f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Library.html
@@ -0,0 +1,249 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Library
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Library";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library//class-useLibrary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="Library.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Library</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A> in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A> that return <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A></CODE></FONT></TD>
+<TD><CODE><B>LibraryFactory.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html#createLibrary()">createLibrary</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new object of class '<em>Library</em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A></CODE></FONT></TD>
+<TD><CODE><B>Book.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getLibrary()">getLibrary</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value of the '<em><b>Library</b></em>' container reference.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A></CODE></FONT></TD>
+<TD><CODE><B>Writer.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getLibrary()">getLibrary</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value of the '<em><b>Library</b></em>' container reference.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A> with parameters of type <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B>Book.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#setLibrary(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Library)">setLibrary</A></B>(<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A>&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the '<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getLibrary()"><CODE><em>Library</em></CODE></A>' container reference.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B>Writer.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#setLibrary(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Library)">setLibrary</A></B>(<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A>&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the '<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html#getLibrary()"><CODE><em>Library</em></CODE></A>' container reference.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A> in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</A> with parameters of type <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="type parameter in LibrarySwitch">T</A></CODE></FONT></TD>
+<TD><CODE><B>LibrarySwitch.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html#caseLibrary(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Library)">caseLibrary</A></B>(<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A>&nbsp;object)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the result of interpreting the object as an instance of '<em>Library</em>'.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library//class-useLibrary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="Library.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/LibraryFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/LibraryFactory.html
new file mode 100644
index 00000000000..6ad8cc2e762
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/LibraryFactory.html
@@ -0,0 +1,196 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library//class-useLibraryFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibraryFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryFactory</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryFactory</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryFactory</A> in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Fields in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A> declared as <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryFactory</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryFactory</A></CODE></FONT></TD>
+<TD><CODE><B>LibraryFactory.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html#eINSTANCE">eINSTANCE</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The singleton instance of the factory.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A> that return <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryFactory</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryFactory</A></CODE></FONT></TD>
+<TD><CODE><B>LibraryPackage.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#getLibraryFactory()">getLibraryFactory</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the factory that creates the instances of the model.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library//class-useLibraryFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibraryFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/LibraryPackage.Literals.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/LibraryPackage.Literals.html
new file mode 100644
index 00000000000..98429eb7255
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/LibraryPackage.Literals.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.Literals
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.Literals";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library//class-useLibraryPackage.Literals.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibraryPackage.Literals.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.Literals</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage.Literals
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library//class-useLibraryPackage.Literals.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibraryPackage.Literals.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/LibraryPackage.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/LibraryPackage.html
new file mode 100644
index 00000000000..4963d511bcb
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/LibraryPackage.html
@@ -0,0 +1,196 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library//class-useLibraryPackage.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibraryPackage.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.LibraryPackage</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A> in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Fields in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A> declared as <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A></CODE></FONT></TD>
+<TD><CODE><B>LibraryPackage.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html#eINSTANCE">eINSTANCE</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The singleton instance of the package.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A> that return <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A></CODE></FONT></TD>
+<TD><CODE><B>LibraryFactory.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html#getLibraryPackage()">getLibraryPackage</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the package supported by this factory.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library//class-useLibraryPackage.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibraryPackage.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Writer.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Writer.html
new file mode 100644
index 00000000000..48a52312892
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Writer.html
@@ -0,0 +1,233 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Writer
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Writer";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library//class-useWriter.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="Writer.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Writer</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A> in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A> that return <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A></CODE></FONT></TD>
+<TD><CODE><B>LibraryFactory.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html#createWriter()">createWriter</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new object of class '<em>Writer</em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A></CODE></FONT></TD>
+<TD><CODE><B>Book.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getWriter()">getWriter</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value of the '<em><b>Writer</b></em>' reference.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A> with parameters of type <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B>Book.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#setWriter(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Writer)">setWriter</A></B>(<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A>&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the '<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html#getWriter()"><CODE><em>Writer</em></CODE></A>' reference.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A> in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</A> with parameters of type <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="type parameter in LibrarySwitch">T</A></CODE></FONT></TD>
+<TD><CODE><B>LibrarySwitch.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html#caseWriter(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Writer)">caseWriter</A></B>(<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A>&nbsp;object)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the result of interpreting the object as an instance of '<em>Writer</em>'.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library//class-useWriter.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="Writer.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-frame.html
new file mode 100644
index 00000000000..c322fc1c02b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-frame.html
@@ -0,0 +1,42 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Interfaces</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library" target="classFrame"><I>Book</I></A>
+<BR>
+<A HREF="Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library" target="classFrame"><I>Library</I></A>
+<BR>
+<A HREF="LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library" target="classFrame"><I>LibraryFactory</I></A>
+<BR>
+<A HREF="LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library" target="classFrame"><I>LibraryPackage</I></A>
+<BR>
+<A HREF="LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library" target="classFrame"><I>LibraryPackage.Literals</I></A>
+<BR>
+<A HREF="Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library" target="classFrame"><I>Writer</I></A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html
new file mode 100644
index 00000000000..73e1374e7b9
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html
@@ -0,0 +1,184 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV PACKAGE&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Interface Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A></B></TD>
+<TD>A representation of the model object '<em><b>Book</b></em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A></B></TD>
+<TD>A representation of the model object '<em><b>Library</b></em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryFactory</A></B></TD>
+<TD>The <b>Factory</b> for the model.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage</A></B></TD>
+<TD>The <b>Package</b> for the model.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">LibraryPackage.Literals</A></B></TD>
+<TD>Defines literals for the meta objects that represent
+
+ each class,
+ each feature of each class,
+ each enum,
+ and each data type
+
+ <!-- end-user-doc --></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A></B></TD>
+<TD>A representation of the model object '<em><b>Writer</b></em>'.</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV PACKAGE&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-tree.html
new file mode 100644
index 00000000000..1f3b72c1a61
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-tree.html
@@ -0,0 +1,151 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Interface Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>Book</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>Library</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>LibraryFactory</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>LibraryPackage</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>LibraryPackage.Literals</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>Writer</B></A></UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-use.html
new file mode 100644
index 00000000000..77cdbf6c99a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-use.html
@@ -0,0 +1,225 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Classes in <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A> used by <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Book.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>Book</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A representation of the model object '<em><b>Book</b></em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Library.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>Library</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A representation of the model object '<em><b>Library</b></em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/LibraryFactory.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>LibraryFactory</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The <b>Factory</b> for the model.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/LibraryPackage.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>LibraryPackage</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The <b>Package</b> for the model.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Writer.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>Writer</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A representation of the model object '<em><b>Writer</b></em>'.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Classes in <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A> used by <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Book.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><B>Book</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A representation of the model object '<em><b>Book</b></em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Library.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><B>Library</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A representation of the model object '<em><b>Library</b></em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/class-use/Writer.html#org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><B>Writer</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A representation of the model object '<em><b>Writer</b></em>'.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html
new file mode 100644
index 00000000000..3fa398c963f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html
@@ -0,0 +1,417 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:33 EDT 2013 -->
+<TITLE>
+LibraryAdapterFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="LibraryAdapterFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LibraryAdapterFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibraryAdapterFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</FONT>
+<BR>
+Class LibraryAdapterFactory</H2>
+<PRE>
+java.lang.Object
+ <IMG SRC="../../../../../../../../../../resources/inherit.gif" ALT="extended by ">AdapterFactoryImpl
+ <IMG SRC="../../../../../../../../../../resources/inherit.gif" ALT="extended by "><B>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.LibraryAdapterFactory</B>
+</PRE>
+<HR>
+<DL>
+<DT><PRE>public class <B>LibraryAdapterFactory</B><DT>extends AdapterFactoryImpl</DL>
+</PRE>
+
+<P>
+<!-- begin-user-doc -->
+ The <b>Adapter Factory</b> for the model.
+ It provides an adapter <code>createXXX</code> method for each class of the model.
+ <!-- end-user-doc -->
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE>LibraryPackage</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+<HR>
+
+<P>
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html#LibraryAdapterFactory()">LibraryAdapterFactory</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates an instance of the adapter factory.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;Adapter</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html#createAdapter(Notifier)">createAdapter</A></B>(Notifier&nbsp;target)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates an adapter for the <code>target</code>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;Adapter</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html#createBookAdapter()">createBookAdapter</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a new adapter for an object of class '<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Book</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;Adapter</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html#createEObjectAdapter()">createEObjectAdapter</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a new adapter for the default case.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;Adapter</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html#createLibraryAdapter()">createLibraryAdapter</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a new adapter for an object of class '<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Library</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;Adapter</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html#createWriterAdapter()">createWriterAdapter</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a new adapter for an object of class '<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Writer</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html#isFactoryForType(java.lang.Object)">isFactoryForType</A></B>(java.lang.Object&nbsp;object)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns whether this factory is applicable for the type of the object.</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="LibraryAdapterFactory()"><!-- --></A><H3>
+LibraryAdapterFactory</H3>
+<PRE>
+public <B>LibraryAdapterFactory</B>()</PRE>
+<DL>
+<DD>Creates an instance of the adapter factory.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="isFactoryForType(java.lang.Object)"><!-- --></A><H3>
+isFactoryForType</H3>
+<PRE>
+public boolean <B>isFactoryForType</B>(java.lang.Object&nbsp;object)</PRE>
+<DL>
+<DD>Returns whether this factory is applicable for the type of the object.
+ <!-- begin-user-doc -->
+ This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>whether this factory is applicable for the type of the object.<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createAdapter(Notifier)"><!-- --></A><H3>
+createAdapter</H3>
+<PRE>
+public Adapter <B>createAdapter</B>(Notifier&nbsp;target)</PRE>
+<DL>
+<DD>Creates an adapter for the <code>target</code>.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>target</CODE> - the object to adapt.
+<DT><B>Returns:</B><DD>the adapter for the <code>target</code>.<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createLibraryAdapter()"><!-- --></A><H3>
+createLibraryAdapter</H3>
+<PRE>
+public Adapter <B>createLibraryAdapter</B>()</PRE>
+<DL>
+<DD>Creates a new adapter for an object of class '<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Library</em></CODE></A>'.
+ <!-- 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 -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the new adapter.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE>Library</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createWriterAdapter()"><!-- --></A><H3>
+createWriterAdapter</H3>
+<PRE>
+public Adapter <B>createWriterAdapter</B>()</PRE>
+<DL>
+<DD>Creates a new adapter for an object of class '<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Writer</em></CODE></A>'.
+ <!-- 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 -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the new adapter.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE>Writer</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createBookAdapter()"><!-- --></A><H3>
+createBookAdapter</H3>
+<PRE>
+public Adapter <B>createBookAdapter</B>()</PRE>
+<DL>
+<DD>Creates a new adapter for an object of class '<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE><em>Book</em></CODE></A>'.
+ <!-- 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 -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the new adapter.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE>Book</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createEObjectAdapter()"><!-- --></A><H3>
+createEObjectAdapter</H3>
+<PRE>
+public Adapter <B>createEObjectAdapter</B>()</PRE>
+<DL>
+<DD>Creates a new adapter for the default case.
+ <!-- begin-user-doc -->
+ This default implementation returns null.
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the new adapter.<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LibraryAdapterFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibraryAdapterFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html
new file mode 100644
index 00000000000..53bae99a3ef
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html
@@ -0,0 +1,395 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:33 EDT 2013 -->
+<TITLE>
+LibrarySwitch
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="LibrarySwitch";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LibrarySwitch.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibrarySwitch.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</FONT>
+<BR>
+Class LibrarySwitch&lt;T&gt;</H2>
+<PRE>
+java.lang.Object
+ <IMG SRC="../../../../../../../../../../resources/inherit.gif" ALT="extended by "><B>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.LibrarySwitch&lt;T&gt;</B>
+</PRE>
+<HR>
+<DL>
+<DT><PRE>public class <B>LibrarySwitch&lt;T&gt;</B><DT>extends java.lang.Object</DL>
+</PRE>
+
+<P>
+<!-- begin-user-doc -->
+ The <b>Switch</b> for the model's inheritance hierarchy.
+ It supports the call <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html#doSwitch(EObject)"><CODE>doSwitch(object)</CODE></A>
+ to invoke the <code>caseXXX</code> method for each class of the model,
+ starting with the actual class of the object
+ and proceeding up the inheritance hierarchy
+ until a non-null result is returned,
+ which is the result of the switch.
+ <!-- end-user-doc -->
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><CODE>LibraryPackage</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+<HR>
+
+<P>
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html#LibrarySwitch()">LibrarySwitch</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates an instance of the switch.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="type parameter in LibrarySwitch">T</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html#caseBook(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Book)">caseBook</A></B>(<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A>&nbsp;object)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the result of interpreting the object as an instance of '<em>Book</em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="type parameter in LibrarySwitch">T</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html#caseLibrary(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Library)">caseLibrary</A></B>(<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A>&nbsp;object)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the result of interpreting the object as an instance of '<em>Library</em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="type parameter in LibrarySwitch">T</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html#caseWriter(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Writer)">caseWriter</A></B>(<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A>&nbsp;object)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the result of interpreting the object as an instance of '<em>Writer</em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="type parameter in LibrarySwitch">T</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html#defaultCase(EObject)">defaultCase</A></B>(EObject&nbsp;object)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the result of interpreting the object as an instance of '<em>EObject</em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="type parameter in LibrarySwitch">T</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html#doSwitch(EObject)">doSwitch</A></B>(EObject&nbsp;theEObject)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="LibrarySwitch()"><!-- --></A><H3>
+LibrarySwitch</H3>
+<PRE>
+public <B>LibrarySwitch</B>()</PRE>
+<DL>
+<DD>Creates an instance of the switch.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="doSwitch(EObject)"><!-- --></A><H3>
+doSwitch</H3>
+<PRE>
+public <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="type parameter in LibrarySwitch">T</A> <B>doSwitch</B>(EObject&nbsp;theEObject)</PRE>
+<DL>
+<DD>Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the first non-null result returned by a <code>caseXXX</code> call.<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="caseLibrary(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Library)"><!-- --></A><H3>
+caseLibrary</H3>
+<PRE>
+public <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="type parameter in LibrarySwitch">T</A> <B>caseLibrary</B>(<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Library</A>&nbsp;object)</PRE>
+<DL>
+<DD>Returns the result of interpreting the object as an instance of '<em>Library</em>'.
+ <!-- begin-user-doc -->
+ This implementation returns null;
+ returning a non-null result will terminate the switch.
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>object</CODE> - the target of the switch.
+<DT><B>Returns:</B><DD>the result of interpreting the object as an instance of '<em>Library</em>'.<DT><B>See Also:</B><DD><CODE>doSwitch(EObject)</CODE><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="caseWriter(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Writer)"><!-- --></A><H3>
+caseWriter</H3>
+<PRE>
+public <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="type parameter in LibrarySwitch">T</A> <B>caseWriter</B>(<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Writer</A>&nbsp;object)</PRE>
+<DL>
+<DD>Returns the result of interpreting the object as an instance of '<em>Writer</em>'.
+ <!-- begin-user-doc -->
+ This implementation returns null;
+ returning a non-null result will terminate the switch.
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>object</CODE> - the target of the switch.
+<DT><B>Returns:</B><DD>the result of interpreting the object as an instance of '<em>Writer</em>'.<DT><B>See Also:</B><DD><CODE>doSwitch(EObject)</CODE><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="caseBook(org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.Book)"><!-- --></A><H3>
+caseBook</H3>
+<PRE>
+public <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="type parameter in LibrarySwitch">T</A> <B>caseBook</B>(<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library">Book</A>&nbsp;object)</PRE>
+<DL>
+<DD>Returns the result of interpreting the object as an instance of '<em>Book</em>'.
+ <!-- begin-user-doc -->
+ This implementation returns null;
+ returning a non-null result will terminate the switch.
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>object</CODE> - the target of the switch.
+<DT><B>Returns:</B><DD>the result of interpreting the object as an instance of '<em>Book</em>'.<DT><B>See Also:</B><DD><CODE>doSwitch(EObject)</CODE><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="defaultCase(EObject)"><!-- --></A><H3>
+defaultCase</H3>
+<PRE>
+public <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="type parameter in LibrarySwitch">T</A> <B>defaultCase</B>(EObject&nbsp;object)</PRE>
+<DL>
+<DD>Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ <!-- begin-user-doc -->
+ This implementation returns null;
+ returning a non-null result will terminate the switch, but this is the last case anyway.
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>object</CODE> - the target of the switch.
+<DT><B>Returns:</B><DD>the result of interpreting the object as an instance of '<em>EObject</em>'.<DT><B>See Also:</B><DD><CODE>#doSwitch(org.eclipse.emf.ecore.EObject)</CODE><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LibrarySwitch.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibrarySwitch.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/class-use/LibraryAdapterFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/class-use/LibraryAdapterFactory.html
new file mode 100644
index 00000000000..96712bba0b9
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/class-use/LibraryAdapterFactory.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.LibraryAdapterFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.LibraryAdapterFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util//class-useLibraryAdapterFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibraryAdapterFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Class<br>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.LibraryAdapterFactory</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.LibraryAdapterFactory
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util//class-useLibraryAdapterFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibraryAdapterFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/class-use/LibrarySwitch.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/class-use/LibrarySwitch.html
new file mode 100644
index 00000000000..c0eda406547
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/class-use/LibrarySwitch.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.LibrarySwitch
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.LibrarySwitch";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util//class-useLibrarySwitch.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibrarySwitch.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Class<br>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.LibrarySwitch</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.LibrarySwitch
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util//class-useLibrarySwitch.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="LibrarySwitch.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-frame.html
new file mode 100644
index 00000000000..d8f97695ea0
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-frame.html
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Classes</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util" target="classFrame">LibraryAdapterFactory</A>
+<BR>
+<A HREF="LibrarySwitch.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util" target="classFrame">LibrarySwitch</A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html
new file mode 100644
index 00000000000..e5d997cd503
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html
@@ -0,0 +1,161 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Class Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util">LibraryAdapterFactory</A></B></TD>
+<TD>The <b>Adapter Factory</b> for the model.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util">LibrarySwitch&lt;T&gt;</A></B></TD>
+<TD>The <b>Switch</b> for the model's inheritance hierarchy.</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-tree.html
new file mode 100644
index 00000000000..bd19bbb802f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-tree.html
@@ -0,0 +1,155 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Class Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">java.lang.Object<UL>
+<LI TYPE="circle">AdapterFactoryImpl<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><B>LibraryAdapterFactory</B></A></UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><B>LibrarySwitch</B></A>&lt;T&gt;</UL>
+</UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-use.html
new file mode 100644
index 00000000000..a53a170e73c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-use.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html
new file mode 100644
index 00000000000..ae7f33079df
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html
@@ -0,0 +1,495 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+IFacetDialogFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IFacetDialogFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IFacetDialogFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IFacetDialogFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog</FONT>
+<BR>
+Interface IFacetDialogFactory</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IFacetDialogFactory</B></DL>
+</PRE>
+
+<P>
+Interface for the dialogs creation factory.
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>FacetDialogFactoryImpl</CODE></DL>
+<HR>
+
+<P>
+<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#INSTANCE">INSTANCE</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a new instance of the concrete implementation of this interface.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openAddAttributeInFacetDialog()">openAddAttributeInFacetDialog</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create an new Dialog for the creation of an Attribute in a Facet.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openAddOperationInFacetDialog()">openAddOperationInFacetDialog</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create an new Dialog for the creation of an Operation in a Facet.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openAddParameterInOperationDialog()">openAddParameterInOperationDialog</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create an new Dialog for the creation of a Parameter in an Operation.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openAddReferenceInFacetDialog()">openAddReferenceInFacetDialog</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create an new Dialog for the creation of an Reference in a Facet.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openCreateFacetInFacetSetDialog()">openCreateFacetInFacetSetDialog</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create an new Dialog for the creation of a Facet in a FacetSet.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openCreateFacetSetInFacetSetDialog()">openCreateFacetSetInFacetSetDialog</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create an new Dialog for the creation of a FacetSet in a FacetSet.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openEditFacetAttributeDialog()">openEditFacetAttributeDialog</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create an new Dialog for the edition of an Attribute.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openEditFacetDialog()">openEditFacetDialog</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create an new Dialog for the edition of a Facet.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openEditFacetOperationDialog()">openEditFacetOperationDialog</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create an new Dialog for the edition of an Operation.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openEditFacetOperationParameterDialog()">openEditFacetOperationParameterDialog</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create an new Dialog for the edition of a Parameter.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openEditFacetReferenceDialog()">openEditFacetReferenceDialog</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create an new Dialog for the edition of an Reference.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#openEditFacetSetDialog()">openEditFacetSetDialog</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create an new Dialog for the edition of a FacetSet.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="INSTANCE"><!-- --></A><H3>
+INSTANCE</H3>
+<PRE>
+static final <A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A> <B>INSTANCE</B></PRE>
+<DL>
+<DD>Return a new instance of the concrete implementation of this interface.
+<P>
+<DL>
+</DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="openCreateFacetSetInFacetSetDialog()"><!-- --></A><H3>
+openCreateFacetSetInFacetSetDialog</H3>
+<PRE>
+<any> <B>openCreateFacetSetInFacetSetDialog</B>()</PRE>
+<DL>
+<DD>Create an new Dialog for the creation of a FacetSet in a FacetSet.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the dialog.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="openCreateFacetInFacetSetDialog()"><!-- --></A><H3>
+openCreateFacetInFacetSetDialog</H3>
+<PRE>
+<any> <B>openCreateFacetInFacetSetDialog</B>()</PRE>
+<DL>
+<DD>Create an new Dialog for the creation of a Facet in a FacetSet.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the dialog.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="openAddAttributeInFacetDialog()"><!-- --></A><H3>
+openAddAttributeInFacetDialog</H3>
+<PRE>
+<any> <B>openAddAttributeInFacetDialog</B>()</PRE>
+<DL>
+<DD>Create an new Dialog for the creation of an Attribute in a Facet.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the dialog.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="openAddReferenceInFacetDialog()"><!-- --></A><H3>
+openAddReferenceInFacetDialog</H3>
+<PRE>
+<any> <B>openAddReferenceInFacetDialog</B>()</PRE>
+<DL>
+<DD>Create an new Dialog for the creation of an Reference in a Facet.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the dialog.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="openAddOperationInFacetDialog()"><!-- --></A><H3>
+openAddOperationInFacetDialog</H3>
+<PRE>
+<any> <B>openAddOperationInFacetDialog</B>()</PRE>
+<DL>
+<DD>Create an new Dialog for the creation of an Operation in a Facet.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the dialog.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="openAddParameterInOperationDialog()"><!-- --></A><H3>
+openAddParameterInOperationDialog</H3>
+<PRE>
+<any> <B>openAddParameterInOperationDialog</B>()</PRE>
+<DL>
+<DD>Create an new Dialog for the creation of a Parameter in an Operation.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the dialog.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="openEditFacetSetDialog()"><!-- --></A><H3>
+openEditFacetSetDialog</H3>
+<PRE>
+<any> <B>openEditFacetSetDialog</B>()</PRE>
+<DL>
+<DD>Create an new Dialog for the edition of a FacetSet.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the dialog.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="openEditFacetDialog()"><!-- --></A><H3>
+openEditFacetDialog</H3>
+<PRE>
+<any> <B>openEditFacetDialog</B>()</PRE>
+<DL>
+<DD>Create an new Dialog for the edition of a Facet.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the dialog.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="openEditFacetAttributeDialog()"><!-- --></A><H3>
+openEditFacetAttributeDialog</H3>
+<PRE>
+<any> <B>openEditFacetAttributeDialog</B>()</PRE>
+<DL>
+<DD>Create an new Dialog for the edition of an Attribute.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the dialog.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="openEditFacetReferenceDialog()"><!-- --></A><H3>
+openEditFacetReferenceDialog</H3>
+<PRE>
+<any> <B>openEditFacetReferenceDialog</B>()</PRE>
+<DL>
+<DD>Create an new Dialog for the edition of an Reference.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the dialog.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="openEditFacetOperationDialog()"><!-- --></A><H3>
+openEditFacetOperationDialog</H3>
+<PRE>
+<any> <B>openEditFacetOperationDialog</B>()</PRE>
+<DL>
+<DD>Create an new Dialog for the edition of an Operation.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the dialog.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="openEditFacetOperationParameterDialog()"><!-- --></A><H3>
+openEditFacetOperationParameterDialog</H3>
+<PRE>
+<any> <B>openEditFacetOperationParameterDialog</B>()</PRE>
+<DL>
+<DD>Create an new Dialog for the edition of a Parameter.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the dialog.</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IFacetDialogFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IFacetDialogFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/class-use/IFacetDialogFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/class-use/IFacetDialogFactory.html
new file mode 100644
index 00000000000..90a161c02bb
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/class-use/IFacetDialogFactory.html
@@ -0,0 +1,180 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/dialog//class-useIFacetDialogFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IFacetDialogFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A> in <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Fields in <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog</A> declared as <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A></CODE></FONT></TD>
+<TD><CODE><B>IFacetDialogFactory.</B><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html#INSTANCE">INSTANCE</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a new instance of the concrete implementation of this interface.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/dialog//class-useIFacetDialogFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IFacetDialogFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-frame.html
new file mode 100644
index 00000000000..91886449fee
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-frame.html
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Interfaces</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog" target="classFrame"><I>IFacetDialogFactory</I></A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html
new file mode 100644
index 00000000000..b6d796362c6
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Interface Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog">IFacetDialogFactory</A></B></TD>
+<TD>Interface for the dialogs creation factory.</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-tree.html
new file mode 100644
index 00000000000..96483b39925
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-tree.html
@@ -0,0 +1,151 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Interface Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.<A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog"><B>IFacetDialogFactory</B></A></UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-use.html
new file mode 100644
index 00000000000..0f553e34ea2
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-use.html
@@ -0,0 +1,170 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Classes in <A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog</A> used by <A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/class-use/IFacetDialogFactory.html#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog"><B>IFacetDialogFactory</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Interface for the dialogs creation factory.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html
new file mode 100644
index 00000000000..496c4e3209d
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html
@@ -0,0 +1,358 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+IQueryContext
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IQueryContext";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IQueryContext.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryContext.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</FONT>
+<BR>
+Interface IQueryContext</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IQueryContext</B></DL>
+</PRE>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getDerivedTypedElementName()">getDerivedTypedElementName</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EClassifier</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getExtendedEClass()">getExtendedEClass</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;Facet</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getFacet()">getFacet</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EObject</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getIntermediateEObject()">getIntermediateEObject</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;IProject</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getProject()">getProject</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;Query</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getQuery()">getQuery</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;Resource</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getResource()">getResource</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EClassifier</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getReturnType()">getReturnType</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html#getUpperBound()">getUpperBound</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getResource()"><!-- --></A><H3>
+getResource</H3>
+<PRE>
+Resource <B>getResource</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getFacet()"><!-- --></A><H3>
+getFacet</H3>
+<PRE>
+Facet <B>getFacet</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getDerivedTypedElementName()"><!-- --></A><H3>
+getDerivedTypedElementName</H3>
+<PRE>
+java.lang.String <B>getDerivedTypedElementName</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getIntermediateEObject()"><!-- --></A><H3>
+getIntermediateEObject</H3>
+<PRE>
+EObject <B>getIntermediateEObject</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getProject()"><!-- --></A><H3>
+getProject</H3>
+<PRE>
+IProject <B>getProject</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getReturnType()"><!-- --></A><H3>
+getReturnType</H3>
+<PRE>
+EClassifier <B>getReturnType</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getUpperBound()"><!-- --></A><H3>
+getUpperBound</H3>
+<PRE>
+int <B>getUpperBound</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getExtendedEClass()"><!-- --></A><H3>
+getExtendedEClass</H3>
+<PRE>
+EClassifier <B>getExtendedEClass</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getQuery()"><!-- --></A><H3>
+getQuery</H3>
+<PRE>
+Query <B>getQuery</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IQueryContext.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryContext.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html
new file mode 100644
index 00000000000..19df034d539
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html
@@ -0,0 +1,294 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+IQueryDialogFactoryStrategy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IQueryDialogFactoryStrategy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IQueryDialogFactoryStrategy.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryDialogFactoryStrategy.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</FONT>
+<BR>
+Interface IQueryDialogFactoryStrategy</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IQueryDialogFactoryStrategy</B></DL>
+</PRE>
+
+<P>
+This class will be used for the creation of a java query.
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>JavaQueryWidget</CODE></DL>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;Query</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html#createQuery(boolean, boolean, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)">createQuery</A></B>(boolean&nbsp;canBeCached,
+ boolean&nbsp;sideEffects,
+ <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>&nbsp;queryContext)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;IAbstractWidget</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html#createWidget(Composite, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)">createWidget</A></B>(Composite&nbsp;parent,
+ <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>&nbsp;queryContext)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html#getConclusionText()">getConclusionText</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html#getDialogMessage()">getDialogMessage</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html#getDialogTitle()">getDialogTitle</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="createWidget(Composite, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)"><!-- --></A><H3>
+createWidget</H3>
+<PRE>
+IAbstractWidget <B>createWidget</B>(Composite&nbsp;parent,
+ <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>&nbsp;queryContext)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createQuery(boolean, boolean, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)"><!-- --></A><H3>
+createQuery</H3>
+<PRE>
+Query <B>createQuery</B>(boolean&nbsp;canBeCached,
+ boolean&nbsp;sideEffects,
+ <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>&nbsp;queryContext)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getDialogMessage()"><!-- --></A><H3>
+getDialogMessage</H3>
+<PRE>
+java.lang.String <B>getDialogMessage</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getDialogTitle()"><!-- --></A><H3>
+getDialogTitle</H3>
+<PRE>
+java.lang.String <B>getDialogTitle</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getConclusionText()"><!-- --></A><H3>
+getConclusionText</H3>
+<PRE>
+java.lang.String <B>getConclusionText</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IQueryDialogFactoryStrategy.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryDialogFactoryStrategy.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/class-use/IQueryContext.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/class-use/IQueryContext.html
new file mode 100644
index 00000000000..f52cdfb63f7
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/class-use/IQueryContext.html
@@ -0,0 +1,237 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported//class-useIQueryContext.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryContext.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A> in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</A> with parameters of type <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;Query</CODE></FONT></TD>
+<TD><CODE><B>IQueryDialogFactoryStrategy.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html#createQuery(boolean, boolean, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)">createQuery</A></B>(boolean&nbsp;canBeCached,
+ boolean&nbsp;sideEffects,
+ <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>&nbsp;queryContext)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;IAbstractWidget</CODE></FONT></TD>
+<TD><CODE><B>IQueryDialogFactoryStrategy.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html#createWidget(Composite, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)">createWidget</A></B>(Composite&nbsp;parent,
+ <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>&nbsp;queryContext)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A> in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Constructors in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A> with parameters of type <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#GetQueryDialog(, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryDialogFactoryStrategy, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)">GetQueryDialog</A></B>(<any>&nbsp;callback,
+ <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A>&nbsp;strategy,
+ <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>&nbsp;queryContext)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#SelectQueryTypeWidget(Composite, PropertyElement, boolean, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)">SelectQueryTypeWidget</A></B>(Composite&nbsp;parent,
+ PropertyElement&nbsp;queryProperty,
+ boolean&nbsp;comboboxEnabled,
+ <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>&nbsp;queryContext)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructor.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#SelectQueryTypeWidget(Composite, PropertyElement, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)">SelectQueryTypeWidget</A></B>(Composite&nbsp;parent,
+ PropertyElement&nbsp;propertyElement,
+ <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>&nbsp;queryContext)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructor.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported//class-useIQueryContext.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryContext.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/class-use/IQueryDialogFactoryStrategy.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/class-use/IQueryDialogFactoryStrategy.html
new file mode 100644
index 00000000000..ac93f8c362e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/class-use/IQueryDialogFactoryStrategy.html
@@ -0,0 +1,205 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryDialogFactoryStrategy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryDialogFactoryStrategy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported//class-useIQueryDialogFactoryStrategy.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryDialogFactoryStrategy.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryDialogFactoryStrategy</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A> in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A> that return <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A></CODE></FONT></TD>
+<TD><CODE><B>IQueryWidgetCompositeFactoryFactory.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html#getQueryDialogFactoryStrategy(java.lang.String)">getQueryDialogFactoryStrategy</A></B>(java.lang.String&nbsp;managedTypeName)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a registered <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>AbstractQueryDialogFactory</CODE></A> corresponding to
+ the given type name.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A></CODE></FONT></TD>
+<TD><CODE><B>QueryWidgetCompositeFactoryImpl.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html#getQueryDialogFactoryStrategy(java.lang.String)">getQueryDialogFactoryStrategy</A></B>(java.lang.String&nbsp;managedTypeName)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Constructors in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A> with parameters of type <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#GetQueryDialog(, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryDialogFactoryStrategy, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)">GetQueryDialog</A></B>(<any>&nbsp;callback,
+ <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A>&nbsp;strategy,
+ <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>&nbsp;queryContext)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported//class-useIQueryDialogFactoryStrategy.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryDialogFactoryStrategy.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html
new file mode 100644
index 00000000000..1dff534df41
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html
@@ -0,0 +1,231 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+IQueryDialogFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IQueryDialogFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IQueryDialogFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryDialogFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query</FONT>
+<BR>
+Interface IQueryDialogFactory</H2>
+<DL>
+<DT><B>All Known Subinterfaces:</B> <DD><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog">IOclDialogFactory</A></DD>
+</DL>
+<DL>
+<DT><B>All Known Implementing Classes:</B> <DD><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory</A></DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IQueryDialogFactory</B></DL>
+</PRE>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;Query</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html#createQuery()">createQuery</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html#getConclusionText()">getConclusionText</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="createQuery()"><!-- --></A><H3>
+createQuery</H3>
+<PRE>
+Query <B>createQuery</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getConclusionText()"><!-- --></A><H3>
+getConclusionText</H3>
+<PRE>
+java.lang.String <B>getConclusionText</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IQueryDialogFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryDialogFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/class-use/IQueryDialogFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/class-use/IQueryDialogFactory.html
new file mode 100644
index 00000000000..ac7b0e16ce6
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/class-use/IQueryDialogFactory.html
@@ -0,0 +1,210 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query.IQueryDialogFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query.IQueryDialogFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query//class-useIQueryDialogFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryDialogFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query.IQueryDialogFactory</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query">IQueryDialogFactory</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog"><B>org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query">IQueryDialogFactory</A> in <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Classes in <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A> that implement <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query">IQueryDialogFactory</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;class</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory&lt;Q extends Query&gt;</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This abstract class must be extended by the plug-in which has to extend this
+ plug-in.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query">IQueryDialogFactory</A> in <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Subinterfaces of <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query">IQueryDialogFactory</A> in <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;interface</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog">IOclDialogFactory</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query//class-useIQueryDialogFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryDialogFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-frame.html
new file mode 100644
index 00000000000..fad9f0f353c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-frame.html
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Interfaces</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query" target="classFrame"><I>IQueryDialogFactory</I></A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html
new file mode 100644
index 00000000000..d4516208722
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Interface Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query">IQueryDialogFactory</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-tree.html
new file mode 100644
index 00000000000..907d70bc2ff
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-tree.html
@@ -0,0 +1,151 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Interface Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query.<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query"><B>IQueryDialogFactory</B></A></UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-use.html
new file mode 100644
index 00000000000..6b0864b3721
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-use.html
@@ -0,0 +1,189 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog"><B>org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Classes in <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query</A> used by <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/class-use/IQueryDialogFactory.html#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>IQueryDialogFactory</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Classes in <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query</A> used by <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/class-use/IQueryDialogFactory.html#org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog"><B>IQueryDialogFactory</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-frame.html
new file mode 100644
index 00000000000..11ed3b6eeb6
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-frame.html
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Interfaces</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported" target="classFrame"><I>IQueryContext</I></A>
+<BR>
+<A HREF="IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported" target="classFrame"><I>IQueryDialogFactoryStrategy</I></A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html
new file mode 100644
index 00000000000..b6f07d02ac1
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html
@@ -0,0 +1,161 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Interface Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A></B></TD>
+<TD>This class will be used for the creation of a java query.</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-tree.html
new file mode 100644
index 00000000000..4713ed2584a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-tree.html
@@ -0,0 +1,151 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Interface Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><B>IQueryContext</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><B>IQueryDialogFactoryStrategy</B></A></UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-use.html
new file mode 100644
index 00000000000..03b83e853bc
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-use.html
@@ -0,0 +1,195 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Classes in <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</A> used by <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/class-use/IQueryContext.html#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><B>IQueryContext</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Classes in <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</A> used by <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/class-use/IQueryContext.html#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>IQueryContext</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/class-use/IQueryDialogFactoryStrategy.html#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>IQueryDialogFactoryStrategy</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This class will be used for the creation of a java query.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html
new file mode 100644
index 00000000000..20d7ef21f16
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html
@@ -0,0 +1,325 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:33 EDT 2013 -->
+<TITLE>
+IDerivedTypedElementWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IDerivedTypedElementWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IDerivedTypedElementWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IDerivedTypedElementWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</FONT>
+<BR>
+Interface IDerivedTypedElementWidget</H2>
+<DL>
+<DT><B>All Superinterfaces:</B> <DD><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A>&lt;Facet,<any>&gt;, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A>&lt;Facet,<any>&gt;</DD>
+</DL>
+<DL>
+<DT><B>All Known Subinterfaces:</B> <DD><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IEStructuralFeatureWidget</A></DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IDerivedTypedElementWidget</B><DT>extends <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A>&lt;Facet,<any>&gt;</DL>
+</PRE>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;Query</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html#getQuery()">getQuery</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html#getQueryText()">getQueryText</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html#isQueryEnable()">isQueryEnable</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html#selectQueryType(java.lang.String)">selectQueryType</A></B>(java.lang.String&nbsp;queryName)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Select the query with the name in parameter.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html#setQuery(Query)">setQuery</A></B>(Query&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IETypedElementWidget"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A></B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#getElementTypeName()">getElementTypeName</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#getEType()">getEType</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#getLowerBound()">getLowerBound</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#getUpperBound()">getUpperBound</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#isOrdered()">isOrdered</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#isUnique()">isUnique</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#pressTypeButton()">pressTypeButton</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setEType(EClassifier)">setEType</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setLowerBound(int)">setLowerBound</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setOrdered(boolean)">setOrdered</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setUnique(boolean)">setUnique</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setUpperBound(int)">setUpperBound</A></CODE></TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A></B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#getContainer()">getContainer</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#getElementName()">getElementName</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#pressParentButton()">pressParentButton</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#setName(java.lang.String)">setName</A></CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getQuery()"><!-- --></A><H3>
+getQuery</H3>
+<PRE>
+Query <B>getQuery</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setQuery(Query)"><!-- --></A><H3>
+setQuery</H3>
+<PRE>
+void <B>setQuery</B>(Query&nbsp;value)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="selectQueryType(java.lang.String)"><!-- --></A><H3>
+selectQueryType</H3>
+<PRE>
+<any> <B>selectQueryType</B>(java.lang.String&nbsp;queryName)</PRE>
+<DL>
+<DD>Select the query with the name in parameter.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>queryName</CODE> - the name of the query to select.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isQueryEnable()"><!-- --></A><H3>
+isQueryEnable</H3>
+<PRE>
+boolean <B>isQueryEnable</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>true if the query is enable.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getQueryText()"><!-- --></A><H3>
+getQueryText</H3>
+<PRE>
+java.lang.String <B>getQueryText</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the text displayed with the query.</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IDerivedTypedElementWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IDerivedTypedElementWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html
new file mode 100644
index 00000000000..acbccc29d36
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html
@@ -0,0 +1,272 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:33 EDT 2013 -->
+<TITLE>
+IENamedElementWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IENamedElementWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IENamedElementWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IENamedElementWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</FONT>
+<BR>
+Interface IENamedElementWidget&lt;C extends EObject,CW&gt;</H2>
+<DL>
+<DT><B>All Known Subinterfaces:</B> <DD><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation">ICreateFacetInFacetSetWidget</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IDerivedTypedElementWidget</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IEStructuralFeatureWidget</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A>&lt;C,CW&gt;, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IFacetWidget</A></DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IENamedElementWidget&lt;C extends EObject,CW&gt;</B></DL>
+</PRE>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="type parameter in IENamedElementWidget">C</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#getContainer()">getContainer</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#getElementName()">getElementName</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#pressParentButton()">pressParentButton</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Press the get or create parent button.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#setName(java.lang.String)">setName</A></B>(java.lang.String&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the name of the element.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="pressParentButton()"><!-- --></A><H3>
+pressParentButton</H3>
+<PRE>
+<any> <B>pressParentButton</B>()</PRE>
+<DL>
+<DD>Press the get or create parent button.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the dialog open when the button is pressed.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getElementName()"><!-- --></A><H3>
+getElementName</H3>
+<PRE>
+java.lang.String <B>getElementName</B>()</PRE>
+<DL>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the name of the element.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setName(java.lang.String)"><!-- --></A><H3>
+setName</H3>
+<PRE>
+void <B>setName</B>(java.lang.String&nbsp;value)</PRE>
+<DL>
+<DD>Set the name of the element.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>value</CODE> - the name.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getContainer()"><!-- --></A><H3>
+getContainer</H3>
+<PRE>
+<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="type parameter in IENamedElementWidget">C</A> <B>getContainer</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IENamedElementWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IENamedElementWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html
new file mode 100644
index 00000000000..e16f7147ccc
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html
@@ -0,0 +1,393 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:33 EDT 2013 -->
+<TITLE>
+IEStructuralFeatureWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IEStructuralFeatureWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IEStructuralFeatureWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IEStructuralFeatureWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</FONT>
+<BR>
+Interface IEStructuralFeatureWidget</H2>
+<DL>
+<DT><B>All Superinterfaces:</B> <DD><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IDerivedTypedElementWidget</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A>&lt;Facet,<any>&gt;, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A>&lt;Facet,<any>&gt;</DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IEStructuralFeatureWidget</B><DT>extends <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IDerivedTypedElementWidget</A></DL>
+</PRE>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html#isChangeable()">isChangeable</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html#isDerived()">isDerived</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html#isTransient()">isTransient</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html#isVolatile()">isVolatile</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html#setChangeable(boolean)">setChangeable</A></B>(boolean&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html#setDerived(boolean)">setDerived</A></B>(boolean&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html#setTransient(boolean)">setTransient</A></B>(boolean&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html#setVolatile(boolean)">setVolatile</A></B>(boolean&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IDerivedTypedElementWidget</A></B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html#getQuery()">getQuery</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html#getQueryText()">getQueryText</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html#isQueryEnable()">isQueryEnable</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html#selectQueryType(java.lang.String)">selectQueryType</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html#setQuery(Query)">setQuery</A></CODE></TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IETypedElementWidget"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A></B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#getElementTypeName()">getElementTypeName</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#getEType()">getEType</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#getLowerBound()">getLowerBound</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#getUpperBound()">getUpperBound</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#isOrdered()">isOrdered</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#isUnique()">isUnique</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#pressTypeButton()">pressTypeButton</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setEType(EClassifier)">setEType</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setLowerBound(int)">setLowerBound</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setOrdered(boolean)">setOrdered</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setUnique(boolean)">setUnique</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setUpperBound(int)">setUpperBound</A></CODE></TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A></B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#getContainer()">getContainer</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#getElementName()">getElementName</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#pressParentButton()">pressParentButton</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#setName(java.lang.String)">setName</A></CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="isTransient()"><!-- --></A><H3>
+isTransient</H3>
+<PRE>
+boolean <B>isTransient</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setTransient(boolean)"><!-- --></A><H3>
+setTransient</H3>
+<PRE>
+void <B>setTransient</B>(boolean&nbsp;value)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isVolatile()"><!-- --></A><H3>
+isVolatile</H3>
+<PRE>
+boolean <B>isVolatile</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setVolatile(boolean)"><!-- --></A><H3>
+setVolatile</H3>
+<PRE>
+void <B>setVolatile</B>(boolean&nbsp;value)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isChangeable()"><!-- --></A><H3>
+isChangeable</H3>
+<PRE>
+boolean <B>isChangeable</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setChangeable(boolean)"><!-- --></A><H3>
+setChangeable</H3>
+<PRE>
+void <B>setChangeable</B>(boolean&nbsp;value)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isDerived()"><!-- --></A><H3>
+isDerived</H3>
+<PRE>
+boolean <B>isDerived</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setDerived(boolean)"><!-- --></A><H3>
+setDerived</H3>
+<PRE>
+void <B>setDerived</B>(boolean&nbsp;value)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IEStructuralFeatureWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IEStructuralFeatureWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html
new file mode 100644
index 00000000000..8682a1c296a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html
@@ -0,0 +1,469 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:33 EDT 2013 -->
+<TITLE>
+IETypedElementWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IETypedElementWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IETypedElementWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IETypedElementWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</FONT>
+<BR>
+Interface IETypedElementWidget&lt;C extends EObject,CW&gt;</H2>
+<DL>
+<DT><B>All Superinterfaces:</B> <DD><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A>&lt;C,CW&gt;</DD>
+</DL>
+<DL>
+<DT><B>All Known Subinterfaces:</B> <DD><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IDerivedTypedElementWidget</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IEStructuralFeatureWidget</A></DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IETypedElementWidget&lt;C extends EObject,CW&gt;</B><DT>extends <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A>&lt;C,CW&gt;</DL>
+</PRE>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#getElementTypeName()">getElementTypeName</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EClassifier</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#getEType()">getEType</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#getLowerBound()">getLowerBound</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#getUpperBound()">getUpperBound</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#isOrdered()">isOrdered</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#isUnique()">isUnique</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#pressTypeButton()">pressTypeButton</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Press the button to select the type.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setEType(EClassifier)">setEType</A></B>(EClassifier&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setLowerBound(int)">setLowerBound</A></B>(int&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setOrdered(boolean)">setOrdered</A></B>(boolean&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setUnique(boolean)">setUnique</A></B>(boolean&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html#setUpperBound(int)">setUpperBound</A></B>(int&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A></B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#getContainer()">getContainer</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#getElementName()">getElementName</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#pressParentButton()">pressParentButton</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#setName(java.lang.String)">setName</A></CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="isOrdered()"><!-- --></A><H3>
+isOrdered</H3>
+<PRE>
+boolean <B>isOrdered</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setOrdered(boolean)"><!-- --></A><H3>
+setOrdered</H3>
+<PRE>
+void <B>setOrdered</B>(boolean&nbsp;value)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isUnique()"><!-- --></A><H3>
+isUnique</H3>
+<PRE>
+boolean <B>isUnique</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setUnique(boolean)"><!-- --></A><H3>
+setUnique</H3>
+<PRE>
+void <B>setUnique</B>(boolean&nbsp;value)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getLowerBound()"><!-- --></A><H3>
+getLowerBound</H3>
+<PRE>
+int <B>getLowerBound</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setLowerBound(int)"><!-- --></A><H3>
+setLowerBound</H3>
+<PRE>
+void <B>setLowerBound</B>(int&nbsp;value)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getUpperBound()"><!-- --></A><H3>
+getUpperBound</H3>
+<PRE>
+int <B>getUpperBound</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setUpperBound(int)"><!-- --></A><H3>
+setUpperBound</H3>
+<PRE>
+void <B>setUpperBound</B>(int&nbsp;value)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getEType()"><!-- --></A><H3>
+getEType</H3>
+<PRE>
+EClassifier <B>getEType</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setEType(EClassifier)"><!-- --></A><H3>
+setEType</H3>
+<PRE>
+void <B>setEType</B>(EClassifier&nbsp;value)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="pressTypeButton()"><!-- --></A><H3>
+pressTypeButton</H3>
+<PRE>
+<any> <B>pressTypeButton</B>()</PRE>
+<DL>
+<DD>Press the button to select the type.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getElementTypeName()"><!-- --></A><H3>
+getElementTypeName</H3>
+<PRE>
+java.lang.String <B>getElementTypeName</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the type of the element.</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IETypedElementWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IETypedElementWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html
new file mode 100644
index 00000000000..50399d3a3d5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html
@@ -0,0 +1,287 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:33 EDT 2013 -->
+<TITLE>
+IFacetWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IFacetWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IFacetWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IFacetWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</FONT>
+<BR>
+Interface IFacetWidget</H2>
+<DL>
+<DT><B>All Superinterfaces:</B> <DD><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A>&lt;FacetSet,<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation">IGetOrCreateFilteredFacetSetWidget</A>&gt;</DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IFacetWidget</B><DT>extends <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A>&lt;FacetSet,<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation">IGetOrCreateFilteredFacetSetWidget</A>&gt;</DL>
+</PRE>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass">IGetExtendedMetaclassWidget</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html#getGetExtendedMetaclassWidget()">getGetExtendedMetaclassWidget</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html#getSubTypingFacet()">getSubTypingFacet</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html#pressSubTypingButton()">pressSubTypingButton</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html#setSubTypingFacetSelection(boolean)">setSubTypingFacetSelection</A></B>(boolean&nbsp;enable)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A></B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#getContainer()">getContainer</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#getElementName()">getElementName</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#pressParentButton()">pressParentButton</A>, <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#setName(java.lang.String)">setName</A></CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="setSubTypingFacetSelection(boolean)"><!-- --></A><H3>
+setSubTypingFacetSelection</H3>
+<PRE>
+void <B>setSubTypingFacetSelection</B>(boolean&nbsp;enable)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="pressSubTypingButton()"><!-- --></A><H3>
+pressSubTypingButton</H3>
+<PRE>
+<any> <B>pressSubTypingButton</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getSubTypingFacet()"><!-- --></A><H3>
+getSubTypingFacet</H3>
+<PRE>
+java.lang.String <B>getSubTypingFacet</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getGetExtendedMetaclassWidget()"><!-- --></A><H3>
+getGetExtendedMetaclassWidget</H3>
+<PRE>
+<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass">IGetExtendedMetaclassWidget</A> <B>getGetExtendedMetaclassWidget</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IFacetWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IFacetWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IDerivedTypedElementWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IDerivedTypedElementWidget.html
new file mode 100644
index 00000000000..dd93bd01234
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IDerivedTypedElementWidget.html
@@ -0,0 +1,180 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget//class-useIDerivedTypedElementWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IDerivedTypedElementWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IDerivedTypedElementWidget</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IDerivedTypedElementWidget</A> in <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Subinterfaces of <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IDerivedTypedElementWidget</A> in <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;interface</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IEStructuralFeatureWidget</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget//class-useIDerivedTypedElementWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IDerivedTypedElementWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IENamedElementWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IENamedElementWidget.html
new file mode 100644
index 00000000000..a9c36c64ead
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IENamedElementWidget.html
@@ -0,0 +1,233 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget//class-useIENamedElementWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IENamedElementWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A> in <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Subinterfaces of <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A> in <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;interface</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IDerivedTypedElementWidget</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;interface</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IEStructuralFeatureWidget</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;interface</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget&lt;C extends EObject,CW&gt;</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;interface</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IFacetWidget</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A> in <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Subinterfaces of <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A> in <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;interface</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation">ICreateFacetInFacetSetWidget</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget//class-useIENamedElementWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IENamedElementWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IEStructuralFeatureWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IEStructuralFeatureWidget.html
new file mode 100644
index 00000000000..93eae0144b5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IEStructuralFeatureWidget.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IEStructuralFeatureWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IEStructuralFeatureWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget//class-useIEStructuralFeatureWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IEStructuralFeatureWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IEStructuralFeatureWidget</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IEStructuralFeatureWidget
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget//class-useIEStructuralFeatureWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IEStructuralFeatureWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IETypedElementWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IETypedElementWidget.html
new file mode 100644
index 00000000000..170ff0afc78
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IETypedElementWidget.html
@@ -0,0 +1,188 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IETypedElementWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IETypedElementWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget//class-useIETypedElementWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IETypedElementWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IETypedElementWidget</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A> in <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Subinterfaces of <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget</A> in <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;interface</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IDerivedTypedElementWidget</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;interface</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IEStructuralFeatureWidget</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget//class-useIETypedElementWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IETypedElementWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IFacetWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IFacetWidget.html
new file mode 100644
index 00000000000..263b1c0efd4
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IFacetWidget.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget//class-useIFacetWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IFacetWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget//class-useIFacetWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IFacetWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html
new file mode 100644
index 00000000000..f735f60d406
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html
@@ -0,0 +1,213 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+IGetOrCreateFacetSetWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IGetOrCreateFacetSetWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IGetOrCreateFacetSetWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IGetOrCreateFacetSetWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate</FONT>
+<BR>
+Interface IGetOrCreateFacetSetWidget</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IGetOrCreateFacetSetWidget</B></DL>
+</PRE>
+
+<P>
+Interface for <CODE>GetOrCreateFacetSetWidget</CODE>.
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>GetOrCreateFacetSetWidget</CODE></DL>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;FacetSet</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html#getFacetSet()">getFacetSet</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getFacetSet()"><!-- --></A><H3>
+getFacetSet</H3>
+<PRE>
+FacetSet <B>getFacetSet</B>()</PRE>
+<DL>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the <CODE>FacetSet</CODE> selected.</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IGetOrCreateFacetSetWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IGetOrCreateFacetSetWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/class-use/IGetOrCreateFacetSetWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/class-use/IGetOrCreateFacetSetWidget.html
new file mode 100644
index 00000000000..22576077656
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/class-use/IGetOrCreateFacetSetWidget.html
@@ -0,0 +1,180 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate.IGetOrCreateFacetSetWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate.IGetOrCreateFacetSetWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate//class-useIGetOrCreateFacetSetWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IGetOrCreateFacetSetWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate.IGetOrCreateFacetSetWidget</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate">IGetOrCreateFacetSetWidget</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate">IGetOrCreateFacetSetWidget</A> in <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</A> that return <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate">IGetOrCreateFacetSetWidget</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate">IGetOrCreateFacetSetWidget</A></CODE></FONT></TD>
+<TD><CODE><B>ICreateFacetInFacetSetWidget.</B><B><A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html#getGetOrCreateFacetSetWidget()">getGetOrCreateFacetSetWidget</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate//class-useIGetOrCreateFacetSetWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IGetOrCreateFacetSetWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-frame.html
new file mode 100644
index 00000000000..56f98109887
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-frame.html
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Interfaces</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="IGetOrCreateFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate" target="classFrame"><I>IGetOrCreateFacetSetWidget</I></A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-summary.html
new file mode 100644
index 00000000000..85893b6bc33
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-summary.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Interface Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate">IGetOrCreateFacetSetWidget</A></B></TD>
+<TD>Interface for <CODE>GetOrCreateFacetSetWidget</CODE>.</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-tree.html
new file mode 100644
index 00000000000..3a5feec5cca
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-tree.html
@@ -0,0 +1,151 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Interface Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate.<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate"><B>IGetOrCreateFacetSetWidget</B></A></UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-use.html
new file mode 100644
index 00000000000..f33e2c462c9
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-use.html
@@ -0,0 +1,170 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Classes in <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate</A> used by <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/class-use/IGetOrCreateFacetSetWidget.html#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>IGetOrCreateFacetSetWidget</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Interface for <CODE>GetOrCreateFacetSetWidget</CODE>.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html
new file mode 100644
index 00000000000..11602933864
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html
@@ -0,0 +1,168 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+IGetExtendedMetaclassWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IGetExtendedMetaclassWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IGetExtendedMetaclassWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IGetExtendedMetaclassWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;METHOD</FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;METHOD</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass</FONT>
+<BR>
+Interface IGetExtendedMetaclassWidget</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IGetExtendedMetaclassWidget</B></DL>
+</PRE>
+
+<P>
+<HR>
+
+<P>
+
+<P>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IGetExtendedMetaclassWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IGetExtendedMetaclassWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;METHOD</FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;METHOD</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/class-use/IGetExtendedMetaclassWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/class-use/IGetExtendedMetaclassWidget.html
new file mode 100644
index 00000000000..0b74e02efa8
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/class-use/IGetExtendedMetaclassWidget.html
@@ -0,0 +1,209 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass.IGetExtendedMetaclassWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass.IGetExtendedMetaclassWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass//class-useIGetExtendedMetaclassWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IGetExtendedMetaclassWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass.IGetExtendedMetaclassWidget</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass">IGetExtendedMetaclassWidget</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass">IGetExtendedMetaclassWidget</A> in <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A> that return <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass">IGetExtendedMetaclassWidget</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass">IGetExtendedMetaclassWidget</A></CODE></FONT></TD>
+<TD><CODE><B>IFacetWidget.</B><B><A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html#getGetExtendedMetaclassWidget()">getGetExtendedMetaclassWidget</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass">IGetExtendedMetaclassWidget</A> in <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</A> that return <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass">IGetExtendedMetaclassWidget</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass">IGetExtendedMetaclassWidget</A></CODE></FONT></TD>
+<TD><CODE><B>ICreateFacetInFacetSetWidget.</B><B><A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html#getGetExtendedMetaclassWidget()">getGetExtendedMetaclassWidget</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass//class-useIGetExtendedMetaclassWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IGetExtendedMetaclassWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-frame.html
new file mode 100644
index 00000000000..8b7004e91d4
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-frame.html
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Interfaces</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass" target="classFrame"><I>IGetExtendedMetaclassWidget</I></A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html
new file mode 100644
index 00000000000..d6debd25aa9
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Interface Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass">IGetExtendedMetaclassWidget</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-tree.html
new file mode 100644
index 00000000000..3c44e42f813
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-tree.html
@@ -0,0 +1,151 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Interface Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass.<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass"><B>IGetExtendedMetaclassWidget</B></A></UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-use.html
new file mode 100644
index 00000000000..7a0000090ad
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-use.html
@@ -0,0 +1,189 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Classes in <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass</A> used by <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/class-use/IGetExtendedMetaclassWidget.html#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IGetExtendedMetaclassWidget</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Classes in <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass</A> used by <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/class-use/IGetExtendedMetaclassWidget.html#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>IGetExtendedMetaclassWidget</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html
new file mode 100644
index 00000000000..257de5acc32
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html
@@ -0,0 +1,246 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+ICreateQueryWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="ICreateQueryWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/ICreateQueryWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="ICreateQueryWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query</FONT>
+<BR>
+Interface ICreateQueryWidget</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>ICreateQueryWidget</B></DL>
+</PRE>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>CreateQueryWidget</CODE></DL>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.Object</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html#getCreateQueryWidget()">getCreateQueryWidget</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html#isCanBeCached()">isCanBeCached</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html#isHasSideEffect()">isHasSideEffect</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getCreateQueryWidget()"><!-- --></A><H3>
+getCreateQueryWidget</H3>
+<PRE>
+java.lang.Object <B>getCreateQueryWidget</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isCanBeCached()"><!-- --></A><H3>
+isCanBeCached</H3>
+<PRE>
+boolean <B>isCanBeCached</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isHasSideEffect()"><!-- --></A><H3>
+isHasSideEffect</H3>
+<PRE>
+boolean <B>isHasSideEffect</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/ICreateQueryWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="ICreateQueryWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/class-use/ICreateQueryWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/class-use/ICreateQueryWidget.html
new file mode 100644
index 00000000000..708e6b7cf8d
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/class-use/ICreateQueryWidget.html
@@ -0,0 +1,180 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.ICreateQueryWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.ICreateQueryWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query//class-useICreateQueryWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="ICreateQueryWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.ICreateQueryWidget</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query">ICreateQueryWidget</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query">ICreateQueryWidget</A> in <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A> that return <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query">ICreateQueryWidget</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query">ICreateQueryWidget</A></CODE></FONT></TD>
+<TD><CODE><B>GetQueryDialog.</B><B><A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#createWidget()">createWidget</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query//class-useICreateQueryWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="ICreateQueryWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-frame.html
new file mode 100644
index 00000000000..e496b89452d
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-frame.html
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Interfaces</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query" target="classFrame"><I>ICreateQueryWidget</I></A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-summary.html
new file mode 100644
index 00000000000..bb3a074aec6
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-summary.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Interface Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query">ICreateQueryWidget</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-tree.html
new file mode 100644
index 00000000000..6e43ee9d6f4
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-tree.html
@@ -0,0 +1,151 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Interface Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query"><B>ICreateQueryWidget</B></A></UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-use.html
new file mode 100644
index 00000000000..2ec72ec78d6
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-use.html
@@ -0,0 +1,170 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Classes in <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query</A> used by <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/class-use/ICreateQueryWidget.html#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>ICreateQueryWidget</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html
new file mode 100644
index 00000000000..0d7dbb00f96
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html
@@ -0,0 +1,360 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+ICreateFacetInFacetSetWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="ICreateFacetInFacetSetWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/ICreateFacetInFacetSetWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="ICreateFacetInFacetSetWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</FONT>
+<BR>
+Interface ICreateFacetInFacetSetWidget</H2>
+<DL>
+<DT><B>All Superinterfaces:</B> <DD><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A>&lt;FacetSet,<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation">IGetOrCreateFilteredFacetSetWidget</A>&gt;</DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public interface <B>ICreateFacetInFacetSetWidget</B><DT>extends <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A>&lt;FacetSet,<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation">IGetOrCreateFilteredFacetSetWidget</A>&gt;</DL>
+</PRE>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>CreateFacetInFacetSetWidget</CODE></DL>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass">IGetExtendedMetaclassWidget</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html#getGetExtendedMetaclassWidget()">getGetExtendedMetaclassWidget</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;AbstractGetElementNameWidget</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html#getGetFacetNameWidget()">getGetFacetNameWidget</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate">IGetOrCreateFacetSetWidget</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html#getGetOrCreateFacetSetWidget()">getGetOrCreateFacetSetWidget</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;IAbstractWidget</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html#getSelectSubTypingTypeWidget()">getSelectSubTypingTypeWidget</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html#getSubTypingFacet()">getSubTypingFacet</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html#pressSubTypingButton()">pressSubTypingButton</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html#setSubTypingFacetSelection(boolean)">setSubTypingFacetSelection</A></B>(boolean&nbsp;enable)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget</A></B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#getContainer()">getContainer</A>, <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#getElementName()">getElementName</A>, <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#pressParentButton()">pressParentButton</A>, <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html#setName(java.lang.String)">setName</A></CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getGetOrCreateFacetSetWidget()"><!-- --></A><H3>
+getGetOrCreateFacetSetWidget</H3>
+<PRE>
+<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate">IGetOrCreateFacetSetWidget</A> <B>getGetOrCreateFacetSetWidget</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the getOrCreateFacetSetWidget</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getSelectSubTypingTypeWidget()"><!-- --></A><H3>
+getSelectSubTypingTypeWidget</H3>
+<PRE>
+IAbstractWidget <B>getSelectSubTypingTypeWidget</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the selectSubTypingTypeWidget</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getGetFacetNameWidget()"><!-- --></A><H3>
+getGetFacetNameWidget</H3>
+<PRE>
+AbstractGetElementNameWidget <B>getGetFacetNameWidget</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the getFacetNameWidget</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getGetExtendedMetaclassWidget()"><!-- --></A><H3>
+getGetExtendedMetaclassWidget</H3>
+<PRE>
+<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass">IGetExtendedMetaclassWidget</A> <B>getGetExtendedMetaclassWidget</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the getExtendedMetaclassWidget</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getSubTypingFacet()"><!-- --></A><H3>
+getSubTypingFacet</H3>
+<PRE>
+java.lang.String <B>getSubTypingFacet</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the name of the sub-typing widget.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="pressSubTypingButton()"><!-- --></A><H3>
+pressSubTypingButton</H3>
+<PRE>
+<any> <B>pressSubTypingButton</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setSubTypingFacetSelection(boolean)"><!-- --></A><H3>
+setSubTypingFacetSelection</H3>
+<PRE>
+void <B>setSubTypingFacetSelection</B>(boolean&nbsp;enable)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/ICreateFacetInFacetSetWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="ICreateFacetInFacetSetWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html
new file mode 100644
index 00000000000..eb7e27a047f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html
@@ -0,0 +1,168 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+IGetOrCreateFilteredFacetSetWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IGetOrCreateFilteredFacetSetWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IGetOrCreateFilteredFacetSetWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IGetOrCreateFilteredFacetSetWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;METHOD</FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;METHOD</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</FONT>
+<BR>
+Interface IGetOrCreateFilteredFacetSetWidget</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IGetOrCreateFilteredFacetSetWidget</B></DL>
+</PRE>
+
+<P>
+<HR>
+
+<P>
+
+<P>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IGetOrCreateFilteredFacetSetWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IGetOrCreateFilteredFacetSetWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;METHOD</FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;METHOD</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/class-use/ICreateFacetInFacetSetWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/class-use/ICreateFacetInFacetSetWidget.html
new file mode 100644
index 00000000000..a08cc99d282
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/class-use/ICreateFacetInFacetSetWidget.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.ICreateFacetInFacetSetWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.ICreateFacetInFacetSetWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation//class-useICreateFacetInFacetSetWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="ICreateFacetInFacetSetWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.ICreateFacetInFacetSetWidget</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.ICreateFacetInFacetSetWidget
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation//class-useICreateFacetInFacetSetWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="ICreateFacetInFacetSetWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/class-use/IGetOrCreateFilteredFacetSetWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/class-use/IGetOrCreateFilteredFacetSetWidget.html
new file mode 100644
index 00000000000..3f8ad21360b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/class-use/IGetOrCreateFilteredFacetSetWidget.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation//class-useIGetOrCreateFilteredFacetSetWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IGetOrCreateFilteredFacetSetWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation//class-useIGetOrCreateFilteredFacetSetWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IGetOrCreateFilteredFacetSetWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-frame.html
new file mode 100644
index 00000000000..52c7bab5393
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-frame.html
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Interfaces</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation" target="classFrame"><I>ICreateFacetInFacetSetWidget</I></A>
+<BR>
+<A HREF="IGetOrCreateFilteredFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation" target="classFrame"><I>IGetOrCreateFilteredFacetSetWidget</I></A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html
new file mode 100644
index 00000000000..42402a10f90
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html
@@ -0,0 +1,161 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Interface Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation">ICreateFacetInFacetSetWidget</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation">IGetOrCreateFilteredFacetSetWidget</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-tree.html
new file mode 100644
index 00000000000..e32b9a7e66a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-tree.html
@@ -0,0 +1,153 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Interface Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IENamedElementWidget</B></A>&lt;C,CW&gt;<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>ICreateFacetInFacetSetWidget</B></A></UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>IGetOrCreateFilteredFacetSetWidget</B></A></UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-use.html
new file mode 100644
index 00000000000..5149c9630d2
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-use.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-frame.html
new file mode 100644
index 00000000000..4faab8c3ac7
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-frame.html
@@ -0,0 +1,40 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Interfaces</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget" target="classFrame"><I>IDerivedTypedElementWidget</I></A>
+<BR>
+<A HREF="IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget" target="classFrame"><I>IENamedElementWidget</I></A>
+<BR>
+<A HREF="IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget" target="classFrame"><I>IEStructuralFeatureWidget</I></A>
+<BR>
+<A HREF="IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget" target="classFrame"><I>IETypedElementWidget</I></A>
+<BR>
+<A HREF="IFacetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget" target="classFrame"><I>IFacetWidget</I></A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html
new file mode 100644
index 00000000000..e9cba6b9f04
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html
@@ -0,0 +1,173 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Interface Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IDerivedTypedElementWidget</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IENamedElementWidget&lt;C extends EObject,CW&gt;</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IEStructuralFeatureWidget</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IETypedElementWidget&lt;C extends EObject,CW&gt;</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget">IFacetWidget</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-tree.html
new file mode 100644
index 00000000000..e2b3cd515c0
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-tree.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Interface Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IENamedElementWidget</B></A>&lt;C,CW&gt;<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IETypedElementWidget</B></A>&lt;C,CW&gt;<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IDerivedTypedElementWidget</B></A><UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IEStructuralFeatureWidget</B></A></UL>
+</UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IFacetWidget</B></A></UL>
+</UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-use.html
new file mode 100644
index 00000000000..39a45448497
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-use.html
@@ -0,0 +1,201 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Classes in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A> used by <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IDerivedTypedElementWidget.html#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IDerivedTypedElementWidget</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IENamedElementWidget.html#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IENamedElementWidget</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IETypedElementWidget.html#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IETypedElementWidget</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Classes in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A> used by <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/class-use/IENamedElementWidget.html#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>IENamedElementWidget</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html
new file mode 100644
index 00000000000..6e331e0db85
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html
@@ -0,0 +1,249 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+IWizardFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IWizardFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IWizardFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IWizardFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard</FONT>
+<BR>
+Interface IWizardFactory</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IWizardFactory</B></DL>
+</PRE>
+
+<P>
+Factory for the wizards creation.
+<P>
+
+<P>
+<HR>
+
+<P>
+<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard">IWizardFactory</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html#INSTANCE">INSTANCE</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;IExtendedWizard</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html#createCreateFacetSetWizard(ISelection)">createCreateFacetSetWizard</A></B>(ISelection&nbsp;selection)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a concrete instance of <CODE>ICreateFacetSetWizard</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="INSTANCE"><!-- --></A><H3>
+INSTANCE</H3>
+<PRE>
+static final <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard">IWizardFactory</A> <B>INSTANCE</B></PRE>
+<DL>
+<DL>
+</DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="createCreateFacetSetWizard(ISelection)"><!-- --></A><H3>
+createCreateFacetSetWizard</H3>
+<PRE>
+IExtendedWizard <B>createCreateFacetSetWizard</B>(ISelection&nbsp;selection)</PRE>
+<DL>
+<DD>Create a concrete instance of <CODE>ICreateFacetSetWizard</CODE>
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>selection</CODE> - the original selection for the wizard.
+<DT><B>Returns:</B><DD>a new instance of <CODE>ICreateFacetSetWizard</CODE></DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IWizardFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IWizardFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/class-use/IWizardFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/class-use/IWizardFactory.html
new file mode 100644
index 00000000000..8a1f50a9e6d
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/class-use/IWizardFactory.html
@@ -0,0 +1,180 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.IWizardFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.IWizardFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard//class-useIWizardFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IWizardFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.IWizardFactory</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard">IWizardFactory</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard">IWizardFactory</A> in <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Fields in <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard</A> declared as <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard">IWizardFactory</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard">IWizardFactory</A></CODE></FONT></TD>
+<TD><CODE><B>IWizardFactory.</B><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html#INSTANCE">INSTANCE</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard//class-useIWizardFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IWizardFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-frame.html
new file mode 100644
index 00000000000..f73563939ad
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-frame.html
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Interfaces</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="IWizardFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard" target="classFrame"><I>IWizardFactory</I></A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html
new file mode 100644
index 00000000000..cf0c0ec6836
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Interface Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard">IWizardFactory</A></B></TD>
+<TD>Factory for the wizards creation.</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-tree.html
new file mode 100644
index 00000000000..97fb2b548eb
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-tree.html
@@ -0,0 +1,151 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Interface Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard"><B>IWizardFactory</B></A></UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-use.html
new file mode 100644
index 00000000000..269ff461d2c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-use.html
@@ -0,0 +1,170 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Classes in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard</A> used by <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/class-use/IWizardFactory.html#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard"><B>IWizardFactory</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Factory for the wizards creation.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html
new file mode 100644
index 00000000000..0ea9df8fa97
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html
@@ -0,0 +1,248 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+ICreateFacetSetWizardPage
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="ICreateFacetSetWizardPage";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/ICreateFacetSetWizardPage.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="ICreateFacetSetWizardPage.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page</FONT>
+<BR>
+Interface ICreateFacetSetWizardPage</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>ICreateFacetSetWizardPage</B></DL>
+</PRE>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>CreateFacetSetWizardPage</CODE></DL>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html#getFileName()">getFileName</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;IFile</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html#getModelFile()">getModelFile</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html#setFileName(java.lang.String)">setFileName</A></B>(java.lang.String&nbsp;fileName)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getModelFile()"><!-- --></A><H3>
+getModelFile</H3>
+<PRE>
+IFile <B>getModelFile</B>()</PRE>
+<DL>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the model file.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getFileName()"><!-- --></A><H3>
+getFileName</H3>
+<PRE>
+java.lang.String <B>getFileName</B>()</PRE>
+<DL>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the model file name.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setFileName(java.lang.String)"><!-- --></A><H3>
+setFileName</H3>
+<PRE>
+void <B>setFileName</B>(java.lang.String&nbsp;fileName)</PRE>
+<DL>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>fileName</CODE> - </DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/ICreateFacetSetWizardPage.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="ICreateFacetSetWizardPage.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html
new file mode 100644
index 00000000000..ca308461812
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html
@@ -0,0 +1,271 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+IFacetSetPropertyWizardPage
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IFacetSetPropertyWizardPage";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IFacetSetPropertyWizardPage.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IFacetSetPropertyWizardPage.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page</FONT>
+<BR>
+Interface IFacetSetPropertyWizardPage</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IFacetSetPropertyWizardPage</B></DL>
+</PRE>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>FacetSetPropertyWizardPage</CODE></DL>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html#getNsUri()">getNsUri</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html#getPrefix()">getPrefix</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html#setNsUri(java.lang.String)">setNsUri</A></B>(java.lang.String&nbsp;nsUri)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the nsURI.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html#setPrefix(java.lang.String)">setPrefix</A></B>(java.lang.String&nbsp;prefix)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the prefix.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getNsUri()"><!-- --></A><H3>
+getNsUri</H3>
+<PRE>
+java.lang.String <B>getNsUri</B>()</PRE>
+<DL>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the nsURI.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setNsUri(java.lang.String)"><!-- --></A><H3>
+setNsUri</H3>
+<PRE>
+void <B>setNsUri</B>(java.lang.String&nbsp;nsUri)</PRE>
+<DL>
+<DD>Set the nsURI.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>nsUri</CODE> - the nsURI to set.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getPrefix()"><!-- --></A><H3>
+getPrefix</H3>
+<PRE>
+java.lang.String <B>getPrefix</B>()</PRE>
+<DL>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the prefix.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setPrefix(java.lang.String)"><!-- --></A><H3>
+setPrefix</H3>
+<PRE>
+void <B>setPrefix</B>(java.lang.String&nbsp;prefix)</PRE>
+<DL>
+<DD>Set the prefix.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>prefix</CODE> - the prefix to set.</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IFacetSetPropertyWizardPage.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IFacetSetPropertyWizardPage.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/class-use/ICreateFacetSetWizardPage.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/class-use/ICreateFacetSetWizardPage.html
new file mode 100644
index 00000000000..701d5e36bfd
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/class-use/ICreateFacetSetWizardPage.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.ICreateFacetSetWizardPage
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.ICreateFacetSetWizardPage";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page//class-useICreateFacetSetWizardPage.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="ICreateFacetSetWizardPage.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.ICreateFacetSetWizardPage</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.ICreateFacetSetWizardPage
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page//class-useICreateFacetSetWizardPage.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="ICreateFacetSetWizardPage.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/class-use/IFacetSetPropertyWizardPage.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/class-use/IFacetSetPropertyWizardPage.html
new file mode 100644
index 00000000000..083bfb1e84f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/class-use/IFacetSetPropertyWizardPage.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.IFacetSetPropertyWizardPage
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.IFacetSetPropertyWizardPage";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page//class-useIFacetSetPropertyWizardPage.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IFacetSetPropertyWizardPage.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.IFacetSetPropertyWizardPage</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.IFacetSetPropertyWizardPage
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page//class-useIFacetSetPropertyWizardPage.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IFacetSetPropertyWizardPage.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-frame.html
new file mode 100644
index 00000000000..defab37c943
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-frame.html
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Interfaces</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="ICreateFacetSetWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page" target="classFrame"><I>ICreateFacetSetWizardPage</I></A>
+<BR>
+<A HREF="IFacetSetPropertyWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page" target="classFrame"><I>IFacetSetPropertyWizardPage</I></A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-summary.html
new file mode 100644
index 00000000000..59281ceec90
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-summary.html
@@ -0,0 +1,161 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Interface Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page">ICreateFacetSetWizardPage</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page">IFacetSetPropertyWizardPage</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-tree.html
new file mode 100644
index 00000000000..62517cb3bd4
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-tree.html
@@ -0,0 +1,151 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Interface Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page"><B>ICreateFacetSetWizardPage</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page"><B>IFacetSetPropertyWizardPage</B></A></UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-use.html
new file mode 100644
index 00000000000..af82ce0e001
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-use.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html
new file mode 100644
index 00000000000..a1f7cc47e69
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html
@@ -0,0 +1,257 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+AddAttributeInFacetHandler
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="AddAttributeInFacetHandler";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AddAttributeInFacetHandler.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AddAttributeInFacetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</FONT>
+<BR>
+Class AddAttributeInFacetHandler</H2>
+<PRE>
+java.lang.Object
+ <IMG SRC="../../../../../../../../../../resources/inherit.gif" ALT="extended by ">AbstractSelectionExpectedTypeHandler
+ <IMG SRC="../../../../../../../../../../resources/inherit.gif" ALT="extended by "><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddAttributeInFacetHandler</B>
+</PRE>
+<HR>
+<DL>
+<DT><PRE>public class <B>AddAttributeInFacetHandler</B><DT>extends AbstractSelectionExpectedTypeHandler</DL>
+</PRE>
+
+<P>
+Handler for the creation of an Attribute in a Facet.
+<P>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html#AddAttributeInFacetHandler()">AddAttributeInFacetHandler</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.Object</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html#execute(ExecutionEvent)">execute</A></B>(ExecutionEvent&nbsp;event)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="AddAttributeInFacetHandler()"><!-- --></A><H3>
+AddAttributeInFacetHandler</H3>
+<PRE>
+public <B>AddAttributeInFacetHandler</B>()</PRE>
+<DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="execute(ExecutionEvent)"><!-- --></A><H3>
+execute</H3>
+<PRE>
+public java.lang.Object <B>execute</B>(ExecutionEvent&nbsp;event)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AddAttributeInFacetHandler.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AddAttributeInFacetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html
new file mode 100644
index 00000000000..5344f3770f5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html
@@ -0,0 +1,257 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+AddOperationInFacetHandler
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="AddOperationInFacetHandler";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AddOperationInFacetHandler.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AddOperationInFacetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</FONT>
+<BR>
+Class AddOperationInFacetHandler</H2>
+<PRE>
+java.lang.Object
+ <IMG SRC="../../../../../../../../../../resources/inherit.gif" ALT="extended by ">AbstractSelectionExpectedTypeHandler
+ <IMG SRC="../../../../../../../../../../resources/inherit.gif" ALT="extended by "><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddOperationInFacetHandler</B>
+</PRE>
+<HR>
+<DL>
+<DT><PRE>public class <B>AddOperationInFacetHandler</B><DT>extends AbstractSelectionExpectedTypeHandler</DL>
+</PRE>
+
+<P>
+Handler for the creation of an Operation in a Facet.
+<P>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html#AddOperationInFacetHandler()">AddOperationInFacetHandler</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.Object</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html#execute(ExecutionEvent)">execute</A></B>(ExecutionEvent&nbsp;event)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="AddOperationInFacetHandler()"><!-- --></A><H3>
+AddOperationInFacetHandler</H3>
+<PRE>
+public <B>AddOperationInFacetHandler</B>()</PRE>
+<DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="execute(ExecutionEvent)"><!-- --></A><H3>
+execute</H3>
+<PRE>
+public java.lang.Object <B>execute</B>(ExecutionEvent&nbsp;event)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AddOperationInFacetHandler.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AddOperationInFacetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html
new file mode 100644
index 00000000000..9e2efa6fd01
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html
@@ -0,0 +1,257 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+AddParameterInOperationHandler
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="AddParameterInOperationHandler";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AddParameterInOperationHandler.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AddParameterInOperationHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</FONT>
+<BR>
+Class AddParameterInOperationHandler</H2>
+<PRE>
+java.lang.Object
+ <IMG SRC="../../../../../../../../../../resources/inherit.gif" ALT="extended by ">AbstractSelectionExpectedTypeHandler
+ <IMG SRC="../../../../../../../../../../resources/inherit.gif" ALT="extended by "><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddParameterInOperationHandler</B>
+</PRE>
+<HR>
+<DL>
+<DT><PRE>public class <B>AddParameterInOperationHandler</B><DT>extends AbstractSelectionExpectedTypeHandler</DL>
+</PRE>
+
+<P>
+Handler for the creation of a Parameter in an Operation.
+<P>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html#AddParameterInOperationHandler()">AddParameterInOperationHandler</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.Object</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html#execute(ExecutionEvent)">execute</A></B>(ExecutionEvent&nbsp;event)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="AddParameterInOperationHandler()"><!-- --></A><H3>
+AddParameterInOperationHandler</H3>
+<PRE>
+public <B>AddParameterInOperationHandler</B>()</PRE>
+<DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="execute(ExecutionEvent)"><!-- --></A><H3>
+execute</H3>
+<PRE>
+public java.lang.Object <B>execute</B>(ExecutionEvent&nbsp;event)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AddParameterInOperationHandler.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AddParameterInOperationHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html
new file mode 100644
index 00000000000..bc431bd3749
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html
@@ -0,0 +1,257 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+AddReferenceInFacetHandler
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="AddReferenceInFacetHandler";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AddReferenceInFacetHandler.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AddReferenceInFacetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</FONT>
+<BR>
+Class AddReferenceInFacetHandler</H2>
+<PRE>
+java.lang.Object
+ <IMG SRC="../../../../../../../../../../resources/inherit.gif" ALT="extended by ">AbstractSelectionExpectedTypeHandler
+ <IMG SRC="../../../../../../../../../../resources/inherit.gif" ALT="extended by "><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddReferenceInFacetHandler</B>
+</PRE>
+<HR>
+<DL>
+<DT><PRE>public class <B>AddReferenceInFacetHandler</B><DT>extends AbstractSelectionExpectedTypeHandler</DL>
+</PRE>
+
+<P>
+Handler for the creation of a Reference in a Facet.
+<P>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html#AddReferenceInFacetHandler()">AddReferenceInFacetHandler</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.Object</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html#execute(ExecutionEvent)">execute</A></B>(ExecutionEvent&nbsp;event)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="AddReferenceInFacetHandler()"><!-- --></A><H3>
+AddReferenceInFacetHandler</H3>
+<PRE>
+public <B>AddReferenceInFacetHandler</B>()</PRE>
+<DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="execute(ExecutionEvent)"><!-- --></A><H3>
+execute</H3>
+<PRE>
+public java.lang.Object <B>execute</B>(ExecutionEvent&nbsp;event)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AddReferenceInFacetHandler.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AddReferenceInFacetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html
new file mode 100644
index 00000000000..67df4bc2f7f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html
@@ -0,0 +1,257 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+CreateFacetInFacetSetHandler
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="CreateFacetInFacetSetHandler";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/CreateFacetInFacetSetHandler.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="CreateFacetInFacetSetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</FONT>
+<BR>
+Class CreateFacetInFacetSetHandler</H2>
+<PRE>
+java.lang.Object
+ <IMG SRC="../../../../../../../../../../resources/inherit.gif" ALT="extended by ">AbstractSelectionExpectedTypeHandler
+ <IMG SRC="../../../../../../../../../../resources/inherit.gif" ALT="extended by "><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.CreateFacetInFacetSetHandler</B>
+</PRE>
+<HR>
+<DL>
+<DT><PRE>public class <B>CreateFacetInFacetSetHandler</B><DT>extends AbstractSelectionExpectedTypeHandler</DL>
+</PRE>
+
+<P>
+Handler for the creation of an Facet in a FacetSet.
+<P>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html#CreateFacetInFacetSetHandler()">CreateFacetInFacetSetHandler</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.Object</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html#execute(ExecutionEvent)">execute</A></B>(ExecutionEvent&nbsp;event)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="CreateFacetInFacetSetHandler()"><!-- --></A><H3>
+CreateFacetInFacetSetHandler</H3>
+<PRE>
+public <B>CreateFacetInFacetSetHandler</B>()</PRE>
+<DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="execute(ExecutionEvent)"><!-- --></A><H3>
+execute</H3>
+<PRE>
+public java.lang.Object <B>execute</B>(ExecutionEvent&nbsp;event)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/CreateFacetInFacetSetHandler.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="CreateFacetInFacetSetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html
new file mode 100644
index 00000000000..e1627ee33fd
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html
@@ -0,0 +1,257 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+CreateFacetSetInFacetSetHandler
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="CreateFacetSetInFacetSetHandler";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/CreateFacetSetInFacetSetHandler.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="CreateFacetSetInFacetSetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</FONT>
+<BR>
+Class CreateFacetSetInFacetSetHandler</H2>
+<PRE>
+java.lang.Object
+ <IMG SRC="../../../../../../../../../../resources/inherit.gif" ALT="extended by ">AbstractSelectionExpectedTypeHandler
+ <IMG SRC="../../../../../../../../../../resources/inherit.gif" ALT="extended by "><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.CreateFacetSetInFacetSetHandler</B>
+</PRE>
+<HR>
+<DL>
+<DT><PRE>public class <B>CreateFacetSetInFacetSetHandler</B><DT>extends AbstractSelectionExpectedTypeHandler</DL>
+</PRE>
+
+<P>
+The concrete handler for the creation of a FacetSet in a FacetSet.
+<P>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html#CreateFacetSetInFacetSetHandler()">CreateFacetSetInFacetSetHandler</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.Object</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html#execute(ExecutionEvent)">execute</A></B>(ExecutionEvent&nbsp;event)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="CreateFacetSetInFacetSetHandler()"><!-- --></A><H3>
+CreateFacetSetInFacetSetHandler</H3>
+<PRE>
+public <B>CreateFacetSetInFacetSetHandler</B>()</PRE>
+<DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="execute(ExecutionEvent)"><!-- --></A><H3>
+execute</H3>
+<PRE>
+public java.lang.Object <B>execute</B>(ExecutionEvent&nbsp;event)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/CreateFacetSetInFacetSetHandler.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="CreateFacetSetInFacetSetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddAttributeInFacetHandler.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddAttributeInFacetHandler.html
new file mode 100644
index 00000000000..4aba8bb6db5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddAttributeInFacetHandler.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddAttributeInFacetHandler
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddAttributeInFacetHandler";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation//class-useAddAttributeInFacetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AddAttributeInFacetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Class<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddAttributeInFacetHandler</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddAttributeInFacetHandler
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation//class-useAddAttributeInFacetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AddAttributeInFacetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddOperationInFacetHandler.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddOperationInFacetHandler.html
new file mode 100644
index 00000000000..c75ba4fb318
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddOperationInFacetHandler.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddOperationInFacetHandler
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddOperationInFacetHandler";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation//class-useAddOperationInFacetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AddOperationInFacetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Class<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddOperationInFacetHandler</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddOperationInFacetHandler
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation//class-useAddOperationInFacetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AddOperationInFacetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddParameterInOperationHandler.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddParameterInOperationHandler.html
new file mode 100644
index 00000000000..36ca65db305
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddParameterInOperationHandler.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddParameterInOperationHandler
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddParameterInOperationHandler";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation//class-useAddParameterInOperationHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AddParameterInOperationHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Class<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddParameterInOperationHandler</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddParameterInOperationHandler
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation//class-useAddParameterInOperationHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AddParameterInOperationHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddReferenceInFacetHandler.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddReferenceInFacetHandler.html
new file mode 100644
index 00000000000..56801efec0b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/AddReferenceInFacetHandler.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddReferenceInFacetHandler
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddReferenceInFacetHandler";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation//class-useAddReferenceInFacetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AddReferenceInFacetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Class<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddReferenceInFacetHandler</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddReferenceInFacetHandler
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation//class-useAddReferenceInFacetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AddReferenceInFacetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/CreateFacetInFacetSetHandler.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/CreateFacetInFacetSetHandler.html
new file mode 100644
index 00000000000..41deab9b111
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/CreateFacetInFacetSetHandler.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.CreateFacetInFacetSetHandler
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.CreateFacetInFacetSetHandler";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation//class-useCreateFacetInFacetSetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="CreateFacetInFacetSetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Class<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.CreateFacetInFacetSetHandler</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.CreateFacetInFacetSetHandler
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation//class-useCreateFacetInFacetSetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="CreateFacetInFacetSetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/CreateFacetSetInFacetSetHandler.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/CreateFacetSetInFacetSetHandler.html
new file mode 100644
index 00000000000..f90f376f307
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/class-use/CreateFacetSetInFacetSetHandler.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.CreateFacetSetInFacetSetHandler
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.CreateFacetSetInFacetSetHandler";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation//class-useCreateFacetSetInFacetSetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="CreateFacetSetInFacetSetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Class<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.CreateFacetSetInFacetSetHandler</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.CreateFacetSetInFacetSetHandler
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation//class-useCreateFacetSetInFacetSetHandler.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="CreateFacetSetInFacetSetHandler.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-frame.html
new file mode 100644
index 00000000000..5237e115fbd
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-frame.html
@@ -0,0 +1,42 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Classes</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="AddAttributeInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation" target="classFrame">AddAttributeInFacetHandler</A>
+<BR>
+<A HREF="AddOperationInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation" target="classFrame">AddOperationInFacetHandler</A>
+<BR>
+<A HREF="AddParameterInOperationHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation" target="classFrame">AddParameterInOperationHandler</A>
+<BR>
+<A HREF="AddReferenceInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation" target="classFrame">AddReferenceInFacetHandler</A>
+<BR>
+<A HREF="CreateFacetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation" target="classFrame">CreateFacetInFacetSetHandler</A>
+<BR>
+<A HREF="CreateFacetSetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation" target="classFrame">CreateFacetSetInFacetSetHandler</A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html
new file mode 100644
index 00000000000..23277f36538
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html
@@ -0,0 +1,177 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Class Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">AddAttributeInFacetHandler</A></B></TD>
+<TD>Handler for the creation of an Attribute in a Facet.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">AddOperationInFacetHandler</A></B></TD>
+<TD>Handler for the creation of an Operation in a Facet.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">AddParameterInOperationHandler</A></B></TD>
+<TD>Handler for the creation of a Parameter in an Operation.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">AddReferenceInFacetHandler</A></B></TD>
+<TD>Handler for the creation of a Reference in a Facet.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">CreateFacetInFacetSetHandler</A></B></TD>
+<TD>Handler for the creation of an Facet in a FacetSet.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation">CreateFacetSetInFacetSetHandler</A></B></TD>
+<TD>The concrete handler for the creation of a FacetSet in a FacetSet.</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-tree.html
new file mode 100644
index 00000000000..8dcd6c08d23
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-tree.html
@@ -0,0 +1,165 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Class Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">java.lang.Object<UL>
+<LI TYPE="circle">AbstractSelectionExpectedTypeHandler<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>CreateFacetSetInFacetSetHandler</B></A></UL>
+<LI TYPE="circle">AbstractSelectionExpectedTypeHandler<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>AddReferenceInFacetHandler</B></A></UL>
+<LI TYPE="circle">AbstractSelectionExpectedTypeHandler<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>AddAttributeInFacetHandler</B></A></UL>
+<LI TYPE="circle">AbstractSelectionExpectedTypeHandler<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>CreateFacetInFacetSetHandler</B></A></UL>
+<LI TYPE="circle">AbstractSelectionExpectedTypeHandler<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>AddOperationInFacetHandler</B></A></UL>
+<LI TYPE="circle">AbstractSelectionExpectedTypeHandler<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>AddParameterInOperationHandler</B></A></UL>
+</UL>
+</UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-use.html
new file mode 100644
index 00000000000..83dd7aa3bf3
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-use.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html
new file mode 100644
index 00000000000..8302c36f5ef
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html
@@ -0,0 +1,907 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+AbstractQueryDialogFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="AbstractQueryDialogFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AbstractQueryDialogFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AbstractQueryDialogFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</FONT>
+<BR>
+Class AbstractQueryDialogFactory&lt;Q extends Query&gt;</H2>
+<PRE>
+java.lang.Object
+ <IMG SRC="../../../../../../../../../resources/inherit.gif" ALT="extended by "><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.AbstractQueryDialogFactory&lt;Q&gt;</B>
+</PRE>
+<DL>
+<DT><B>All Implemented Interfaces:</B> <DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query">IQueryDialogFactory</A></DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public abstract class <B>AbstractQueryDialogFactory&lt;Q extends Query&gt;</B><DT>extends java.lang.Object<DT>implements <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query">IQueryDialogFactory</A></DL>
+</PRE>
+
+<P>
+This abstract class must be extended by the plug-in which has to extend this
+ plug-in. This abstract class must provide a simple way to create an dialog
+ for the creation of the query</p>
+
+ The <CODE>#createWidget()</CODE> method must return a widget that extends
+ <CODE>AbstractQueryWidget</CODE> class add provide a widget for the edition of the
+ query.</p>
+
+ The <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#createQuery()"><CODE>createQuery()</CODE></A> method must return the final query created. The query
+ must be a subclass of <CODE>Query</CODE>.</p>
+
+ The <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getDialogMessage()"><CODE>getDialogMessage()</CODE></A> method must return a simple text that will
+ notice the user that he successfully create the query.
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>WidgetProperties</CODE>,
+<CODE>PropertyElement</CODE>,
+<CODE>AbstractQueryWidget</CODE>,
+<CODE>Query</CODE></DL>
+<HR>
+
+<P>
+<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;ETypedElement</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#CAN_BE_CACHED">CAN_BE_CACHED</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;ETypedElement</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#QUERY_NAME">QUERY_NAME</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;ETypedElement</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#QUERY_TYPE">QUERY_TYPE</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;ETypedElement</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#SIDE_EFFECTS">SIDE_EFFECTS</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#AbstractQueryDialogFactory()">AbstractQueryDialogFactory</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#addSpecificProperties()">addSpecificProperties</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The the specific properties to the existing properties.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#cancel()">cancel</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#commit()">commit</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>abstract &nbsp;Query</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#createQuery()">createQuery</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>abstract &nbsp;java.util.Map&lt;ETypedElement,PropertyElement&gt;</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#createSpecificProperties()">createSpecificProperties</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a map with the specific properties of the query.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>abstract &nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#createWidget(Composite)">createWidget</A></B>(Composite&nbsp;parent)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;PropertyElement</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getCanBeCachedProperty()">getCanBeCachedProperty</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;PropertyElement</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getCanHaveSideEffects()">getCanHaveSideEffects</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>abstract &nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getConclusionText()">getConclusionText</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;DerivedTypedElement</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getDerivedTypedElement()">getDerivedTypedElement</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>abstract &nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getDialogMessage()">getDialogMessage</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>abstract &nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getDialogTitle()">getDialogTitle</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="type parameter in AbstractQueryDialogFactory">Q</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getInitialQuery()">getInitialQuery</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getParent()">getParent</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getProperties()">getProperties</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This method return a singleton of the properties <CODE>WidgetProperties</CODE>
+ with the initialization of some standard properties as: </nl> The
+ query name : <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getQueryNameProperty()"><CODE>getQueryNameProperty()</CODE></A> If the query can be
+ cached : <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getCanBeCachedProperty()"><CODE>getCanBeCachedProperty()</CODE></A> If the query can have
+ side effects : <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getCanHaveSideEffects()"><CODE>getCanHaveSideEffects()</CODE></A> </nl></TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;PropertyElement</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getQueryNameProperty()">getQueryNameProperty</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;PropertyElement</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getQueryTypeProperty()">getQueryTypeProperty</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#isCanBeCachedPropertyValue()">isCanBeCachedPropertyValue</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#isCanHaveSideEffectsValue()">isCanHaveSideEffectsValue</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#isDialogValid()">isDialogValid</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#open()">open</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#setInitialQuery(Q)">setInitialQuery</A></B>(<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="type parameter in AbstractQueryDialogFactory">Q</A>&nbsp;initialQuery)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#setQueryName(java.lang.String)">setQueryName</A></B>(java.lang.String&nbsp;queryName)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#setQueryType(EClassifier)">setQueryType</A></B>(EClassifier&nbsp;queryType)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="QUERY_NAME"><!-- --></A><H3>
+QUERY_NAME</H3>
+<PRE>
+public static final ETypedElement <B>QUERY_NAME</B></PRE>
+<DL>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="QUERY_TYPE"><!-- --></A><H3>
+QUERY_TYPE</H3>
+<PRE>
+public static final ETypedElement <B>QUERY_TYPE</B></PRE>
+<DL>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="CAN_BE_CACHED"><!-- --></A><H3>
+CAN_BE_CACHED</H3>
+<PRE>
+public static final ETypedElement <B>CAN_BE_CACHED</B></PRE>
+<DL>
+<DL>
+</DL>
+</DL>
+<HR>
+
+<A NAME="SIDE_EFFECTS"><!-- --></A><H3>
+SIDE_EFFECTS</H3>
+<PRE>
+public static final ETypedElement <B>SIDE_EFFECTS</B></PRE>
+<DL>
+<DL>
+</DL>
+</DL>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="AbstractQueryDialogFactory()"><!-- --></A><H3>
+AbstractQueryDialogFactory</H3>
+<PRE>
+public <B>AbstractQueryDialogFactory</B>()</PRE>
+<DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="createWidget(Composite)"><!-- --></A><H3>
+createWidget</H3>
+<PRE>
+public abstract <any> <B>createWidget</B>(Composite&nbsp;parent)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the widget associated to the dialog. The widget will contain all
+ the necessaries <CODE>AbstractWidget</CODE> for the creation of the
+ query.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createSpecificProperties()"><!-- --></A><H3>
+createSpecificProperties</H3>
+<PRE>
+public abstract java.util.Map&lt;ETypedElement,PropertyElement&gt; <B>createSpecificProperties</B>()</PRE>
+<DL>
+<DD>Return a map with the specific properties of the query.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the properties</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createQuery()"><!-- --></A><H3>
+createQuery</H3>
+<PRE>
+public abstract Query <B>createQuery</B>()</PRE>
+<DL>
+<DD><DL>
+<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html#createQuery()">createQuery</A></CODE> in interface <CODE><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query">IQueryDialogFactory</A></CODE></DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the query created by this widget. Null if no query have been
+ created.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getDialogMessage()"><!-- --></A><H3>
+getDialogMessage</H3>
+<PRE>
+public abstract java.lang.String <B>getDialogMessage</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the message description of the dialog.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getDialogTitle()"><!-- --></A><H3>
+getDialogTitle</H3>
+<PRE>
+public abstract java.lang.String <B>getDialogTitle</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the title of the dialog.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getConclusionText()"><!-- --></A><H3>
+getConclusionText</H3>
+<PRE>
+public abstract java.lang.String <B>getConclusionText</B>()</PRE>
+<DL>
+<DD><DL>
+<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html#getConclusionText()">getConclusionText</A></CODE> in interface <CODE><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query">IQueryDialogFactory</A></CODE></DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>a text that the extension must set for the main dialog (to let
+ the user know that he create the query).</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getParent()"><!-- --></A><H3>
+getParent</H3>
+<PRE>
+public <any> <B>getParent</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the parentDialog</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setQueryName(java.lang.String)"><!-- --></A><H3>
+setQueryName</H3>
+<PRE>
+public void <B>setQueryName</B>(java.lang.String&nbsp;queryName)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>queryName</CODE> - the queryName to set</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getDerivedTypedElement()"><!-- --></A><H3>
+getDerivedTypedElement</H3>
+<PRE>
+public DerivedTypedElement <B>getDerivedTypedElement</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the facetset</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setQueryType(EClassifier)"><!-- --></A><H3>
+setQueryType</H3>
+<PRE>
+public void <B>setQueryType</B>(EClassifier&nbsp;queryType)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>queryName</CODE> - the queryName to set</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getQueryTypeProperty()"><!-- --></A><H3>
+getQueryTypeProperty</H3>
+<PRE>
+public PropertyElement <B>getQueryTypeProperty</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the query type.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getProperties()"><!-- --></A><H3>
+getProperties</H3>
+<PRE>
+public <any> <B>getProperties</B>()</PRE>
+<DL>
+<DD>This method return a singleton of the properties <CODE>WidgetProperties</CODE>
+ with the initialization of some standard properties as: </nl> <li>The
+ query name : <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getQueryNameProperty()"><CODE>getQueryNameProperty()</CODE></A></li> <li>If the query can be
+ cached : <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getCanBeCachedProperty()"><CODE>getCanBeCachedProperty()</CODE></A></li> <li>If the query can have
+ side effects : <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html#getCanHaveSideEffects()"><CODE>getCanHaveSideEffects()</CODE></A></li> </nl>
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the properties</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="addSpecificProperties()"><!-- --></A><H3>
+addSpecificProperties</H3>
+<PRE>
+public void <B>addSpecificProperties</B>()</PRE>
+<DL>
+<DD>The the specific properties to the existing properties.
+<P>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getQueryNameProperty()"><!-- --></A><H3>
+getQueryNameProperty</H3>
+<PRE>
+public PropertyElement <B>getQueryNameProperty</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the queryNameProperty</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getCanBeCachedProperty()"><!-- --></A><H3>
+getCanBeCachedProperty</H3>
+<PRE>
+public PropertyElement <B>getCanBeCachedProperty</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the CanBeCachedProperty</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isCanBeCachedPropertyValue()"><!-- --></A><H3>
+isCanBeCachedPropertyValue</H3>
+<PRE>
+public boolean <B>isCanBeCachedPropertyValue</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getCanHaveSideEffects()"><!-- --></A><H3>
+getCanHaveSideEffects</H3>
+<PRE>
+public PropertyElement <B>getCanHaveSideEffects</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the CanHaveSideEffects</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isCanHaveSideEffectsValue()"><!-- --></A><H3>
+isCanHaveSideEffectsValue</H3>
+<PRE>
+public boolean <B>isCanHaveSideEffectsValue</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getInitialQuery()"><!-- --></A><H3>
+getInitialQuery</H3>
+<PRE>
+public <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="type parameter in AbstractQueryDialogFactory">Q</A> <B>getInitialQuery</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the initialQuery</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setInitialQuery(Query)"><!-- --></A><A NAME="setInitialQuery(Q)"><!-- --></A><H3>
+setInitialQuery</H3>
+<PRE>
+public void <B>setInitialQuery</B>(<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="type parameter in AbstractQueryDialogFactory">Q</A>&nbsp;initialQuery)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>initialQuery</CODE> - the initialQuery to set</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="commit()"><!-- --></A><H3>
+commit</H3>
+<PRE>
+public void <B>commit</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="cancel()"><!-- --></A><H3>
+cancel</H3>
+<PRE>
+public void <B>cancel</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="open()"><!-- --></A><H3>
+open</H3>
+<PRE>
+public int <B>open</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isDialogValid()"><!-- --></A><H3>
+isDialogValid</H3>
+<PRE>
+public boolean <B>isDialogValid</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AbstractQueryDialogFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AbstractQueryDialogFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html
new file mode 100644
index 00000000000..45608410841
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html
@@ -0,0 +1,389 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+GetQueryDialog
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="GetQueryDialog";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/GetQueryDialog.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="GetQueryDialog.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</FONT>
+<BR>
+Class GetQueryDialog</H2>
+<PRE>
+java.lang.Object
+ <IMG SRC="../../../../../../../../../resources/inherit.gif" ALT="extended by "><any>
+ <IMG SRC="../../../../../../../../../resources/inherit.gif" ALT="extended by "><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.GetQueryDialog</B>
+</PRE>
+<HR>
+<DL>
+<DT><PRE>public class <B>GetQueryDialog</B><DT>extends <any></DL>
+</PRE>
+
+<P>
+This class provide the dialog for the creation of the specific dialog
+ according of the type of the query selected.
+
+ To run, this class needs to have into the properties pass in the constructor:
+ <p>
+ <li>The <CODE>PropertyElement</CODE> <code>name</code> with the key
+ <code>EcorePackage.eINSTANCE.getENamedElement_Name()</code></li>
+ </p>
+ <li>The <CODE>PropertyElement</CODE> <code>type</code> with the key
+ <code>EcorePackage.eINSTANCE.getETypedElement_EType()</code></li> </p> <li>
+ The <CODE>PropertyElement</CODE> <code>parent</code> (a <CODE>Facet</CODE>) with the
+ key <code>EcorePackage.eINSTANCE.getEObject__EContainer()</code></li> </p>
+<P>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#GetQueryDialog(, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryDialogFactoryStrategy, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)">GetQueryDialog</A></B>(<any>&nbsp;callback,
+ <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A>&nbsp;strategy,
+ <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>&nbsp;queryContext)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;IAbstractWidget</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#createSubWidget()">createSubWidget</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query">ICreateQueryWidget</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#createWidget()">createWidget</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#getConclusionText()">getConclusionText</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;IAbstractWidget</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#getCreateQueryWidget()">getCreateQueryWidget</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#isCanBeCached()">isCanBeCached</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#isDialogValid()">isDialogValid</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html#isHasSideEffect()">isHasSideEffect</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="GetQueryDialog(, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryDialogFactoryStrategy, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)"><!-- --></A><H3>
+GetQueryDialog</H3>
+<PRE>
+public <B>GetQueryDialog</B>(<any>&nbsp;callback,
+ <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A>&nbsp;strategy,
+ <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>&nbsp;queryContext)</PRE>
+<DL>
+<DL>
+<DT><B>Parameters:</B><DD><CODE>callback</CODE> - the callback.<DD><CODE>properties</CODE> - properties that parent widget had.<DD><CODE>propertyElement</CODE> - the <CODE>PropertyElement</CODE> containing the query<DD><CODE>qDialogFactoryStrategiy</CODE> - an instance of <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>AbstractQueryDialogFactory</CODE></A> needed to
+ create the dialog<DD><CODE>query</CODE> - </DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="createWidget()"><!-- --></A><H3>
+createWidget</H3>
+<PRE>
+public <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query">ICreateQueryWidget</A> <B>createWidget</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isDialogValid()"><!-- --></A><H3>
+isDialogValid</H3>
+<PRE>
+public boolean <B>isDialogValid</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getConclusionText()"><!-- --></A><H3>
+getConclusionText</H3>
+<PRE>
+public java.lang.String <B>getConclusionText</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isCanBeCached()"><!-- --></A><H3>
+isCanBeCached</H3>
+<PRE>
+public boolean <B>isCanBeCached</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isHasSideEffect()"><!-- --></A><H3>
+isHasSideEffect</H3>
+<PRE>
+public boolean <B>isHasSideEffect</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getCreateQueryWidget()"><!-- --></A><H3>
+getCreateQueryWidget</H3>
+<PRE>
+public IAbstractWidget <B>getCreateQueryWidget</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createSubWidget()"><!-- --></A><H3>
+createSubWidget</H3>
+<PRE>
+public IAbstractWidget <B>createSubWidget</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/GetQueryDialog.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="GetQueryDialog.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html
new file mode 100644
index 00000000000..4111a9294e3
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html
@@ -0,0 +1,225 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+IQueryCreationResult
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IQueryCreationResult";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IQueryCreationResult.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryCreationResult.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</FONT>
+<BR>
+Interface IQueryCreationResult</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IQueryCreationResult</B></DL>
+</PRE>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html#getLabel()">getLabel</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;Query</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html#getQuery()">getQuery</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getQuery()"><!-- --></A><H3>
+getQuery</H3>
+<PRE>
+Query <B>getQuery</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getLabel()"><!-- --></A><H3>
+getLabel</H3>
+<PRE>
+java.lang.String <B>getLabel</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IQueryCreationResult.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryCreationResult.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html
new file mode 100644
index 00000000000..9b92a830fda
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html
@@ -0,0 +1,282 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+IQueryWidgetCompositeFactoryFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IQueryWidgetCompositeFactoryFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IQueryWidgetCompositeFactoryFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryWidgetCompositeFactoryFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</FONT>
+<BR>
+Interface IQueryWidgetCompositeFactoryFactory</H2>
+<DL>
+<DT><B>All Known Implementing Classes:</B> <DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">QueryWidgetCompositeFactoryImpl</A></DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IQueryWidgetCompositeFactoryFactory</B></DL>
+</PRE>
+
+<P>
+This interface provide to get all the plug-ins extending the extension point
+ and the lazy loading of this plug-ins.
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>QueryWidgetCompositeFactoryImpl</CODE></A></DL>
+<HR>
+
+<P>
+<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html#INSTANCE">INSTANCE</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns an instance of <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>QueryWidgetCompositeFactoryImpl</CODE></A>.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html#getQueryDialogFactoryStrategy(java.lang.String)">getQueryDialogFactoryStrategy</A></B>(java.lang.String&nbsp;managedTypeName)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a registered <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>AbstractQueryDialogFactory</CODE></A> corresponding to
+ the given type name.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.util.List&lt;java.lang.String&gt;</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html#getRegisteredQueryWidgetsComposite()">getRegisteredQueryWidgetsComposite</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns every registered <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>AbstractQueryDialogFactory</CODE></A> name.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="INSTANCE"><!-- --></A><H3>
+INSTANCE</H3>
+<PRE>
+static final <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A> <B>INSTANCE</B></PRE>
+<DL>
+<DD>Returns an instance of <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>QueryWidgetCompositeFactoryImpl</CODE></A>.
+<P>
+<DL>
+</DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getQueryDialogFactoryStrategy(java.lang.String)"><!-- --></A><H3>
+getQueryDialogFactoryStrategy</H3>
+<PRE>
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A> <B>getQueryDialogFactoryStrategy</B>(java.lang.String&nbsp;managedTypeName)</PRE>
+<DL>
+<DD>Return a registered <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>AbstractQueryDialogFactory</CODE></A> corresponding to
+ the given type name.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>managedTypeName</CODE> - the <i>managedQueryTypeName</i> extension attribute.
+<DT><B>Returns:</B><DD>an instance of the class which implements
+ <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>AbstractQueryDialogFactory</CODE></A>.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getRegisteredQueryWidgetsComposite()"><!-- --></A><H3>
+getRegisteredQueryWidgetsComposite</H3>
+<PRE>
+java.util.List&lt;java.lang.String&gt; <B>getRegisteredQueryWidgetsComposite</B>()</PRE>
+<DL>
+<DD>Returns every registered <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>AbstractQueryDialogFactory</CODE></A> name.
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>a list containing the <i>managedQueryTypeName</i>.</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IQueryWidgetCompositeFactoryFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryWidgetCompositeFactoryFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html
new file mode 100644
index 00000000000..8a4d41efd27
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html
@@ -0,0 +1,313 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+QueryWidgetCompositeFactoryImpl
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="QueryWidgetCompositeFactoryImpl";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/QueryWidgetCompositeFactoryImpl.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="QueryWidgetCompositeFactoryImpl.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</FONT>
+<BR>
+Class QueryWidgetCompositeFactoryImpl</H2>
+<PRE>
+java.lang.Object
+ <IMG SRC="../../../../../../../../../resources/inherit.gif" ALT="extended by "><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.QueryWidgetCompositeFactoryImpl</B>
+</PRE>
+<DL>
+<DT><B>All Implemented Interfaces:</B> <DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A></DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public class <B>QueryWidgetCompositeFactoryImpl</B><DT>extends java.lang.Object<DT>implements <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A></DL>
+</PRE>
+
+<P>
+Implementation of the <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>IQueryWidgetCompositeFactoryFactory</CODE></A>.
+<P>
+
+<P>
+<HR>
+
+<P>
+<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;<A NAME="fields_inherited_from_class_org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.IQueryWidgetCompositeFactoryFactory"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Fields inherited from interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A></B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html#INSTANCE">INSTANCE</A></CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html#QueryWidgetCompositeFactoryImpl()">QueryWidgetCompositeFactoryImpl</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html#getQueryDialogFactoryStrategy(java.lang.String)">getQueryDialogFactoryStrategy</A></B>(java.lang.String&nbsp;managedTypeName)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a registered <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>AbstractQueryDialogFactory</CODE></A> corresponding to
+ the given type name.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.util.List&lt;java.lang.String&gt;</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html#getRegisteredQueryWidgetsComposite()">getRegisteredQueryWidgetsComposite</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns every registered <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>AbstractQueryDialogFactory</CODE></A> name.</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="QueryWidgetCompositeFactoryImpl()"><!-- --></A><H3>
+QueryWidgetCompositeFactoryImpl</H3>
+<PRE>
+public <B>QueryWidgetCompositeFactoryImpl</B>()</PRE>
+<DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getQueryDialogFactoryStrategy(java.lang.String)"><!-- --></A><H3>
+getQueryDialogFactoryStrategy</H3>
+<PRE>
+public <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryDialogFactoryStrategy</A> <B>getQueryDialogFactoryStrategy</B>(java.lang.String&nbsp;managedTypeName)</PRE>
+<DL>
+<DD><B>Description copied from interface: <CODE><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html#getQueryDialogFactoryStrategy(java.lang.String)">IQueryWidgetCompositeFactoryFactory</A></CODE></B></DD>
+<DD>Return a registered <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>AbstractQueryDialogFactory</CODE></A> corresponding to
+ the given type name.
+<P>
+<DD><DL>
+<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html#getQueryDialogFactoryStrategy(java.lang.String)">getQueryDialogFactoryStrategy</A></CODE> in interface <CODE><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A></CODE></DL>
+</DD>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>managedTypeName</CODE> - the <i>managedQueryTypeName</i> extension attribute.
+<DT><B>Returns:</B><DD>an instance of the class which implements
+ <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>AbstractQueryDialogFactory</CODE></A>.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getRegisteredQueryWidgetsComposite()"><!-- --></A><H3>
+getRegisteredQueryWidgetsComposite</H3>
+<PRE>
+public java.util.List&lt;java.lang.String&gt; <B>getRegisteredQueryWidgetsComposite</B>()</PRE>
+<DL>
+<DD><B>Description copied from interface: <CODE><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html#getRegisteredQueryWidgetsComposite()">IQueryWidgetCompositeFactoryFactory</A></CODE></B></DD>
+<DD>Returns every registered <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>AbstractQueryDialogFactory</CODE></A> name.
+<P>
+<DD><DL>
+<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html#getRegisteredQueryWidgetsComposite()">getRegisteredQueryWidgetsComposite</A></CODE> in interface <CODE><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A></CODE></DL>
+</DD>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>a list containing the <i>managedQueryTypeName</i>.</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/QueryWidgetCompositeFactoryImpl.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="QueryWidgetCompositeFactoryImpl.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html
new file mode 100644
index 00000000000..fede210aec3
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html
@@ -0,0 +1,422 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+SelectQueryTypeWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="SelectQueryTypeWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/SelectQueryTypeWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="SelectQueryTypeWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</FONT>
+<BR>
+Class SelectQueryTypeWidget</H2>
+<PRE>
+java.lang.Object
+ <IMG SRC="../../../../../../../../../resources/inherit.gif" ALT="extended by ">AbstractWidget
+ <IMG SRC="../../../../../../../../../resources/inherit.gif" ALT="extended by "><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.SelectQueryTypeWidget</B>
+</PRE>
+<HR>
+<DL>
+<DT><PRE>public class <B>SelectQueryTypeWidget</B><DT>extends AbstractWidget</DL>
+</PRE>
+
+<P>
+Provide the composite for the query type selection.</p>
+
+ Label : [ combobox ] [ TextField ]
+
+ When the user select a <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>AbstractQueryDialogFactory</CODE></A>, the associated
+ dialog <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>GetQueryDialog</CODE></A> is created (with the method
+ <CODE>#createQueryWidgetDialog(AbstractQueryDialogFactory)</CODE> using the
+ attributes of the query type) and displayed.
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>Query</CODE>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>AbstractQueryDialogFactory</CODE></A>,
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>GetQueryDialog</CODE></A></DL>
+<HR>
+
+<P>
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#SelectQueryTypeWidget(Composite, PropertyElement, boolean, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)">SelectQueryTypeWidget</A></B>(Composite&nbsp;parent,
+ PropertyElement&nbsp;queryProperty,
+ boolean&nbsp;comboboxEnabled,
+ <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>&nbsp;queryContext)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructor.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#SelectQueryTypeWidget(Composite, PropertyElement, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)">SelectQueryTypeWidget</A></B>(Composite&nbsp;parent,
+ PropertyElement&nbsp;propertyElement,
+ <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>&nbsp;queryContext)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructor.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#getError()">getError</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#getText()">getText</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#isSelectionEnabled()">isSelectionEnabled</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#notifyChanged()">notifyChanged</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#selectQueryType(java.lang.String)">selectQueryType</A></B>(java.lang.String&nbsp;selection)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Select the item in the combobox with the name in parameter.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#setAlertMessage(java.lang.String)">setAlertMessage</A></B>(java.lang.String&nbsp;alertMessage)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the alert message that will be displayed if the checkbox is not
+ checked.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html#setSelectionEnabled(boolean)">setSelectionEnabled</A></B>(boolean&nbsp;enabled)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="SelectQueryTypeWidget(Composite, PropertyElement, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)"><!-- --></A><H3>
+SelectQueryTypeWidget</H3>
+<PRE>
+public <B>SelectQueryTypeWidget</B>(Composite&nbsp;parent,
+ PropertyElement&nbsp;propertyElement,
+ <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>&nbsp;queryContext)</PRE>
+<DL>
+<DD>Constructor.
+<P>
+<DL>
+<DT><B>Parameters:</B><DD><CODE>parent</CODE> - the parent of the composite.<DD><CODE>properties</CODE> - the <CODE>WidgetProperties</CODE> of the parent.<DD><CODE>queryProp</CODE> - the property element that this composite will edit.</DL>
+</DL>
+<HR>
+
+<A NAME="SelectQueryTypeWidget(Composite, PropertyElement, boolean, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext)"><!-- --></A><H3>
+SelectQueryTypeWidget</H3>
+<PRE>
+public <B>SelectQueryTypeWidget</B>(Composite&nbsp;parent,
+ PropertyElement&nbsp;queryProperty,
+ boolean&nbsp;comboboxEnabled,
+ <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported">IQueryContext</A>&nbsp;queryContext)</PRE>
+<DL>
+<DD>Constructor.
+<P>
+<DL>
+<DT><B>Parameters:</B><DD><CODE>parent</CODE> - the parent of the composite.<DD><CODE>properties</CODE> - the <CODE>WidgetProperties</CODE> of the parent.<DD><CODE>queryProp</CODE> - the property element that this composite will edit.</DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="selectQueryType(java.lang.String)"><!-- --></A><H3>
+selectQueryType</H3>
+<PRE>
+public <any> <B>selectQueryType</B>(java.lang.String&nbsp;selection)</PRE>
+<DL>
+<DD>Select the item in the combobox with the name in parameter.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>selection</CODE> - the name of the selection.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getError()"><!-- --></A><H3>
+getError</H3>
+<PRE>
+public java.lang.String <B>getError</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setSelectionEnabled(boolean)"><!-- --></A><H3>
+setSelectionEnabled</H3>
+<PRE>
+public void <B>setSelectionEnabled</B>(boolean&nbsp;enabled)</PRE>
+<DL>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>enabled</CODE> - set if the selection combobox is enabled or not.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="isSelectionEnabled()"><!-- --></A><H3>
+isSelectionEnabled</H3>
+<PRE>
+public boolean <B>isSelectionEnabled</B>()</PRE>
+<DL>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>if the combobox is enabled or not.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setAlertMessage(java.lang.String)"><!-- --></A><H3>
+setAlertMessage</H3>
+<PRE>
+public void <B>setAlertMessage</B>(java.lang.String&nbsp;alertMessage)</PRE>
+<DL>
+<DD>Set the alert message that will be displayed if the checkbox is not
+ checked.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>alertMessage</CODE> - the alertMessage to set</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="notifyChanged()"><!-- --></A><H3>
+notifyChanged</H3>
+<PRE>
+public void <B>notifyChanged</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getText()"><!-- --></A><H3>
+getText</H3>
+<PRE>
+public java.lang.String <B>getText</B>()</PRE>
+<DL>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the text of the text associated with the query.</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/SelectQueryTypeWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="SelectQueryTypeWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/AbstractQueryDialogFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/AbstractQueryDialogFactory.html
new file mode 100644
index 00000000000..e36cc88d9e6
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/AbstractQueryDialogFactory.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.AbstractQueryDialogFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.AbstractQueryDialogFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query//class-useAbstractQueryDialogFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AbstractQueryDialogFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Class<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.AbstractQueryDialogFactory</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.AbstractQueryDialogFactory
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query//class-useAbstractQueryDialogFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="AbstractQueryDialogFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/GetQueryDialog.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/GetQueryDialog.html
new file mode 100644
index 00000000000..4af321ae65e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/GetQueryDialog.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.GetQueryDialog
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.GetQueryDialog";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query//class-useGetQueryDialog.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="GetQueryDialog.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Class<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.GetQueryDialog</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.GetQueryDialog
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query//class-useGetQueryDialog.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="GetQueryDialog.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/IQueryCreationResult.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/IQueryCreationResult.html
new file mode 100644
index 00000000000..53fba93fc7f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/IQueryCreationResult.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.IQueryCreationResult
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.IQueryCreationResult";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query//class-useIQueryCreationResult.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryCreationResult.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.IQueryCreationResult</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.IQueryCreationResult
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query//class-useIQueryCreationResult.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryCreationResult.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/IQueryWidgetCompositeFactoryFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/IQueryWidgetCompositeFactoryFactory.html
new file mode 100644
index 00000000000..0d54f6904d0
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/IQueryWidgetCompositeFactoryFactory.html
@@ -0,0 +1,196 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.IQueryWidgetCompositeFactoryFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.IQueryWidgetCompositeFactoryFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query//class-useIQueryWidgetCompositeFactoryFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryWidgetCompositeFactoryFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.IQueryWidgetCompositeFactoryFactory</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A> in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Classes in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A> that implement <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;class</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">QueryWidgetCompositeFactoryImpl</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Implementation of the <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>IQueryWidgetCompositeFactoryFactory</CODE></A>.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Fields in <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A> declared as <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A></CODE></FONT></TD>
+<TD><CODE><B>IQueryWidgetCompositeFactoryFactory.</B><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html#INSTANCE">INSTANCE</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns an instance of <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>QueryWidgetCompositeFactoryImpl</CODE></A>.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query//class-useIQueryWidgetCompositeFactoryFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IQueryWidgetCompositeFactoryFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/QueryWidgetCompositeFactoryImpl.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/QueryWidgetCompositeFactoryImpl.html
new file mode 100644
index 00000000000..db2f59403c6
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/QueryWidgetCompositeFactoryImpl.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.QueryWidgetCompositeFactoryImpl
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.QueryWidgetCompositeFactoryImpl";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query//class-useQueryWidgetCompositeFactoryImpl.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="QueryWidgetCompositeFactoryImpl.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Class<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.QueryWidgetCompositeFactoryImpl</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.QueryWidgetCompositeFactoryImpl
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query//class-useQueryWidgetCompositeFactoryImpl.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="QueryWidgetCompositeFactoryImpl.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/SelectQueryTypeWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/SelectQueryTypeWidget.html
new file mode 100644
index 00000000000..b4c9fe88886
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/SelectQueryTypeWidget.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.SelectQueryTypeWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Class org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.SelectQueryTypeWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query//class-useSelectQueryTypeWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="SelectQueryTypeWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Class<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.SelectQueryTypeWidget</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.SelectQueryTypeWidget
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query//class-useSelectQueryTypeWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="SelectQueryTypeWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-frame.html
new file mode 100644
index 00000000000..2d53ffd9137
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-frame.html
@@ -0,0 +1,51 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Interfaces</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="IQueryCreationResult.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query" target="classFrame"><I>IQueryCreationResult</I></A>
+<BR>
+<A HREF="IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query" target="classFrame"><I>IQueryWidgetCompositeFactoryFactory</I></A></FONT></TD>
+</TR>
+</TABLE>
+
+
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Classes</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query" target="classFrame">AbstractQueryDialogFactory</A>
+<BR>
+<A HREF="GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query" target="classFrame">GetQueryDialog</A>
+<BR>
+<A HREF="QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query" target="classFrame">QueryWidgetCompositeFactoryImpl</A>
+<BR>
+<A HREF="SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query" target="classFrame">SelectQueryTypeWidget</A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html
new file mode 100644
index 00000000000..c4bbbda1891
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html
@@ -0,0 +1,190 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Interface Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryCreationResult</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A></B></TD>
+<TD>This interface provide to get all the plug-ins extending the extension point
+ and the lazy loading of this plug-ins.</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Class Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">AbstractQueryDialogFactory&lt;Q extends Query&gt;</A></B></TD>
+<TD>This abstract class must be extended by the plug-in which has to extend this
+ plug-in.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">GetQueryDialog</A></B></TD>
+<TD>This class provide the dialog for the creation of the specific dialog
+ according of the type of the query selected.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">QueryWidgetCompositeFactoryImpl</A></B></TD>
+<TD>Implementation of the <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><CODE>IQueryWidgetCompositeFactoryFactory</CODE></A>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">SelectQueryTypeWidget</A></B></TD>
+<TD>Provide the composite for the query type selection.</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-tree.html
new file mode 100644
index 00000000000..d0958727e63
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-tree.html
@@ -0,0 +1,164 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Class Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">java.lang.Object<UL>
+<LI TYPE="circle"><any><UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>GetQueryDialog</B></A></UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>AbstractQueryDialogFactory</B></A>&lt;Q&gt; (implements org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query">IQueryDialogFactory</A>)
+<LI TYPE="circle">AbstractWidget<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>SelectQueryTypeWidget</B></A></UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>QueryWidgetCompositeFactoryImpl</B></A> (implements org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A>)
+</UL>
+</UL>
+<H2>
+Interface Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>IQueryCreationResult</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>IQueryWidgetCompositeFactoryFactory</B></A></UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-use.html
new file mode 100644
index 00000000000..cded32ab64d
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-use.html
@@ -0,0 +1,171 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Classes in <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A> used by <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/class-use/IQueryWidgetCompositeFactoryFactory.html#org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>IQueryWidgetCompositeFactoryFactory</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This interface provide to get all the plug-ins extending the extension point
+ and the lazy loading of this plug-ins.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html
new file mode 100644
index 00000000000..311f5a1792e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html
@@ -0,0 +1,441 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+OclQueryUtil
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="OclQueryUtil";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/OclQueryUtil.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryUtil.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.query.ocl.core.util</FONT>
+<BR>
+Class OclQueryUtil</H2>
+<PRE>
+java.lang.Object
+ <IMG SRC="../../../../../../../../resources/inherit.gif" ALT="extended by "><B>org.eclipse.papyrus.emf.facet.query.ocl.core.util.OclQueryUtil</B>
+</PRE>
+<HR>
+<DL>
+<DT><PRE>public final class <B>OclQueryUtil</B><DT>extends java.lang.Object</DL>
+</PRE>
+
+<P>
+All necessary methods for the creation and evaluation of OCL expressions.
+<P>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#compareClassifierTypes(EClassifier, EClassifier)">compareClassifierTypes</A></B>(EClassifier&nbsp;firstType,
+ EClassifier&nbsp;secondType)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Compare the two types and return if they are equivalents.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#createOCLExpression(EClassifier, java.lang.String)">createOCLExpression</A></B>(EClassifier&nbsp;context,
+ java.lang.String&nbsp;expression)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create an OCLExpression according to a string.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;java.lang.Object</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#evaluateQuery(EClassifier, )">evaluateQuery</A></B>(EClassifier&nbsp;context,
+ <any>&nbsp;oclExpression)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Evaluate the expression in parameter.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;java.lang.Object</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#evaluateQuery(EClassifier, , java.util.List)">evaluateQuery</A></B>(EClassifier&nbsp;context,
+ <any>&nbsp;oclExpression,
+ java.util.List&lt;?&gt;&nbsp;objectsSource)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Evaluate the expression in parameter on the specifics objects.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;java.lang.Object</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#evaluateQuery(EClassifier, , java.lang.Object)">evaluateQuery</A></B>(EClassifier&nbsp;context,
+ <any>&nbsp;oclExpression,
+ java.lang.Object&nbsp;objectSource)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Evaluate the expression in parameter on the specific object.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;EClassifier</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#getEClassifier(EClassifier, java.lang.Object)">getEClassifier</A></B>(EClassifier&nbsp;context,
+ java.lang.Object&nbsp;type)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the <CODE>EClassifier</CODE> associated to the <code>type</code> in
+ parameter.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<any></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#getEvaluationEvironment()">getEvaluationEvironment</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;java.lang.Object</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#getExpressionType()">getExpressionType</A></B>(<any>&nbsp;expression)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;java.util.List&lt;Choice&gt;</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#getSyntaxHelp(EClassifier, java.lang.String)">getSyntaxHelp</A></B>(EClassifier&nbsp;context,
+ java.lang.String&nbsp;expression)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return a list of syntax choice for the current expression.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html#setHelperInstanceContext(java.lang.Object)">setHelperInstanceContext</A></B>(java.lang.Object&nbsp;context)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the helper context.</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getEvaluationEvironment()"><!-- --></A><H3>
+getEvaluationEvironment</H3>
+<PRE>
+public static <any> <B>getEvaluationEvironment</B>()</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setHelperInstanceContext(java.lang.Object)"><!-- --></A><H3>
+setHelperInstanceContext</H3>
+<PRE>
+public static void <B>setHelperInstanceContext</B>(java.lang.Object&nbsp;context)</PRE>
+<DL>
+<DD>Set the helper context.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>context</CODE> - the context of the helper.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createOCLExpression(EClassifier, java.lang.String)"><!-- --></A><H3>
+createOCLExpression</H3>
+<PRE>
+public static <any> <B>createOCLExpression</B>(EClassifier&nbsp;context,
+ java.lang.String&nbsp;expression)
+ throws ParserException</PRE>
+<DL>
+<DD>Create an OCLExpression according to a string.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>expression</CODE> - the expression to create.
+<DT><B>Returns:</B><DD>the expression.
+<DT><B>Throws:</B>
+<DD><CODE>ParserException</CODE> - if the string expression isn't well formed.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="evaluateQuery(EClassifier, )"><!-- --></A><H3>
+evaluateQuery</H3>
+<PRE>
+public static java.lang.Object <B>evaluateQuery</B>(EClassifier&nbsp;context,
+ <any>&nbsp;oclExpression)</PRE>
+<DL>
+<DD>Evaluate the expression in parameter.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>oclExpression</CODE> - the expression to evaluate.
+<DT><B>Returns:</B><DD>the result of the expression.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="evaluateQuery(EClassifier, , java.lang.Object)"><!-- --></A><H3>
+evaluateQuery</H3>
+<PRE>
+public static java.lang.Object <B>evaluateQuery</B>(EClassifier&nbsp;context,
+ <any>&nbsp;oclExpression,
+ java.lang.Object&nbsp;objectSource)</PRE>
+<DL>
+<DD>Evaluate the expression in parameter on the specific object.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>oclExpression</CODE> - the expression to evaluate.<DD><CODE>objectSource</CODE> - the object on which evaluate the expression.
+<DT><B>Returns:</B><DD>the result of the query.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="evaluateQuery(EClassifier, , java.util.List)"><!-- --></A><H3>
+evaluateQuery</H3>
+<PRE>
+public static java.lang.Object <B>evaluateQuery</B>(EClassifier&nbsp;context,
+ <any>&nbsp;oclExpression,
+ java.util.List&lt;?&gt;&nbsp;objectsSource)</PRE>
+<DL>
+<DD>Evaluate the expression in parameter on the specifics objects.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>oclExpression</CODE> - the expression to evaluate.<DD><CODE>objectsSource</CODE> - the objects on which evaluate the expression.
+<DT><B>Returns:</B><DD>the result of the query.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getSyntaxHelp(EClassifier, java.lang.String)"><!-- --></A><H3>
+getSyntaxHelp</H3>
+<PRE>
+public static java.util.List&lt;Choice&gt; <B>getSyntaxHelp</B>(EClassifier&nbsp;context,
+ java.lang.String&nbsp;expression)</PRE>
+<DL>
+<DD>Return a list of syntax choice for the current expression.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>expression</CODE> - the expression.
+<DT><B>Returns:</B><DD>the different choices.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getEClassifier(EClassifier, java.lang.Object)"><!-- --></A><H3>
+getEClassifier</H3>
+<PRE>
+public static EClassifier <B>getEClassifier</B>(EClassifier&nbsp;context,
+ java.lang.Object&nbsp;type)</PRE>
+<DL>
+<DD>Return the <CODE>EClassifier</CODE> associated to the <code>type</code> in
+ parameter.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>context</CODE> - the context of the environment.<DD><CODE>type</CODE> - the type to find.
+<DT><B>Returns:</B><DD>the <CODE>EClassifier</CODE> associated. Null if not.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="compareClassifierTypes(EClassifier, EClassifier)"><!-- --></A><H3>
+compareClassifierTypes</H3>
+<PRE>
+public static boolean <B>compareClassifierTypes</B>(EClassifier&nbsp;firstType,
+ EClassifier&nbsp;secondType)</PRE>
+<DL>
+<DD>Compare the two types and return if they are equivalents.
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>firstType</CODE> - the first <CODE>EClassifier</CODE> to compare.<DD><CODE>secondType</CODE> - the second <CODE>EClassifier</CODE> to compare.
+<DT><B>Returns:</B><DD>true if they are equivalents.</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getExpressionType()"><!-- --></A><H3>
+getExpressionType</H3>
+<PRE>
+public static java.lang.Object <B>getExpressionType</B>(<any>&nbsp;expression)</PRE>
+<DL>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>exp</CODE> -
+<DT><B>Returns:</B><DD></DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/OclQueryUtil.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryUtil.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/class-use/OclQueryUtil.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/class-use/OclQueryUtil.html
new file mode 100644
index 00000000000..14741e6c7d5
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/class-use/OclQueryUtil.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Class org.eclipse.papyrus.emf.facet.query.ocl.core.util.OclQueryUtil
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Class org.eclipse.papyrus.emf.facet.query.ocl.core.util.OclQueryUtil";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/core/util//class-useOclQueryUtil.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryUtil.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Class<br>org.eclipse.papyrus.emf.facet.query.ocl.core.util.OclQueryUtil</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.query.ocl.core.util.OclQueryUtil
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/core/util//class-useOclQueryUtil.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryUtil.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-frame.html
new file mode 100644
index 00000000000..4b66b01002e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-frame.html
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.core.util
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.query.ocl.core.util</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Classes</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util" target="classFrame">OclQueryUtil</A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-summary.html
new file mode 100644
index 00000000000..fea3595c7b2
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-summary.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.core.util
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.query.ocl.core.util";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/core/util/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.query.ocl.core.util
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Class Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util">OclQueryUtil</A></B></TD>
+<TD>All necessary methods for the creation and evaluation of OCL expressions.</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/core/util/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-tree.html
new file mode 100644
index 00000000000..21bcb512d4a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-tree.html
@@ -0,0 +1,153 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.core.util Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.query.ocl.core.util Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/core/util/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.query.ocl.core.util
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Class Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">java.lang.Object<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.core.util.<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util"><B>OclQueryUtil</B></A></UL>
+</UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/core/util/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-use.html
new file mode 100644
index 00000000000..0c62ce31025
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/core/util/package-use.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.query.ocl.core.util
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.query.ocl.core.util";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/core/util/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.query.ocl.core.util</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.query.ocl.core.util
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/core/util/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html
new file mode 100644
index 00000000000..a201e3179f2
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html
@@ -0,0 +1,352 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+OclQuery
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="OclQuery";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/OclQuery.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQuery.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</FONT>
+<BR>
+Interface OclQuery</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>OclQuery</B></DL>
+</PRE>
+
+<P>
+<!-- begin-user-doc -->
+ A representation of the model object '<em><b>Ocl Query</b></em>'.
+ <!-- end-user-doc -->
+
+ <p>
+ The following features are supported:
+ <ul>
+ <li><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getContext()"><CODE><em>Context</em></CODE></A></li>
+ <li><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getOclExpression()"><CODE><em>Ocl Expression</em></CODE></A></li>
+ </ul>
+ </p>
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#getOclQuery()"><CODE>OclQueryPackage.getOclQuery()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD></DD>
+</DL>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EClassifier</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getContext()">getContext</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value of the '<em><b>Context</b></em>' reference.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getOclExpression()">getOclExpression</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the value of the '<em><b>Ocl Expression</b></em>' attribute.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#setContext(EClassifier)">setContext</A></B>(EClassifier&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the '<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getContext()"><CODE><em>Context</em></CODE></A>' reference.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#setOclExpression(java.lang.String)">setOclExpression</A></B>(java.lang.String&nbsp;value)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the value of the '<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getOclExpression()"><CODE><em>Ocl Expression</em></CODE></A>' attribute.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#toString()">toString</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getContext()"><!-- --></A><H3>
+getContext</H3>
+<PRE>
+EClassifier <B>getContext</B>()</PRE>
+<DL>
+<DD>Returns the value of the '<em><b>Context</b></em>' reference.
+ <!-- begin-user-doc -->
+ <p>
+ If the meaning of the '<em>Context</em>' reference isn't clear,
+ there really should be more of a description here...
+ </p>
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the value of the '<em>Context</em>' reference.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#setContext(EClassifier)"><CODE>setContext(EClassifier)</CODE></A>,
+<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#getOclQuery_Context()"><CODE>OclQueryPackage.getOclQuery_Context()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setContext(EClassifier)"><!-- --></A><H3>
+setContext</H3>
+<PRE>
+void <B>setContext</B>(EClassifier&nbsp;value)</PRE>
+<DL>
+<DD>Sets the value of the '<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getContext()"><CODE><em>Context</em></CODE></A>' reference.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>value</CODE> - the new value of the '<em>Context</em>' reference.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getContext()"><CODE>getContext()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getOclExpression()"><!-- --></A><H3>
+getOclExpression</H3>
+<PRE>
+java.lang.String <B>getOclExpression</B>()</PRE>
+<DL>
+<DD>Returns the value of the '<em><b>Ocl Expression</b></em>' attribute.
+ <!-- begin-user-doc -->
+ <p>
+ If the meaning of the '<em>Ocl Expression</em>' attribute isn't clear,
+ there really should be more of a description here...
+ </p>
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the value of the '<em>Ocl Expression</em>' attribute.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#setOclExpression(java.lang.String)"><CODE>setOclExpression(String)</CODE></A>,
+<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#getOclQuery_OclExpression()"><CODE>OclQueryPackage.getOclQuery_OclExpression()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="setOclExpression(java.lang.String)"><!-- --></A><H3>
+setOclExpression</H3>
+<PRE>
+void <B>setOclExpression</B>(java.lang.String&nbsp;value)</PRE>
+<DL>
+<DD>Sets the value of the '<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getOclExpression()"><CODE><em>Ocl Expression</em></CODE></A>' attribute.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>value</CODE> - the new value of the '<em>Ocl Expression</em>' attribute.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getOclExpression()"><CODE>getOclExpression()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="toString()"><!-- --></A><H3>
+toString</H3>
+<PRE>
+java.lang.String <B>toString</B>()</PRE>
+<DL>
+<DD><!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Overrides:</B><DD><CODE>toString</CODE> in class <CODE>java.lang.Object</CODE></DL>
+</DD>
+<DD><DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD>annotation="http://www.eclipse.org/emf/2002/GenModel body='return getOclExpression();'"</DD>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/OclQuery.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQuery.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html
new file mode 100644
index 00000000000..47279b3103d
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html
@@ -0,0 +1,292 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+OclQueryFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="OclQueryFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/OclQueryFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</FONT>
+<BR>
+Interface OclQueryFactory</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>OclQueryFactory</B></DL>
+</PRE>
+
+<P>
+<!-- begin-user-doc -->
+ The <b>Factory</b> for the model.
+ It provides a create method for each non-abstract class of the model.
+ <!-- end-user-doc -->
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><CODE>OclQueryPackage</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+<HR>
+
+<P>
+<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryFactory</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html#eINSTANCE">eINSTANCE</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The singleton instance of the factory.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQuery</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html#createOclQuery()">createOclQuery</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new object of class '<em>Ocl Query</em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html#getOclQueryPackage()">getOclQueryPackage</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the package supported by this factory.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="eINSTANCE"><!-- --></A><H3>
+eINSTANCE</H3>
+<PRE>
+static final <A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryFactory</A> <B>eINSTANCE</B></PRE>
+<DL>
+<DD>The singleton instance of the factory.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="createOclQuery()"><!-- --></A><H3>
+createOclQuery</H3>
+<PRE>
+<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQuery</A> <B>createOclQuery</B>()</PRE>
+<DL>
+<DD>Returns a new object of class '<em>Ocl Query</em>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>a new object of class '<em>Ocl Query</em>'.<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getOclQueryPackage()"><!-- --></A><H3>
+getOclQueryPackage</H3>
+<PRE>
+<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A> <B>getOclQueryPackage</B>()</PRE>
+<DL>
+<DD>Returns the package supported by this factory.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the package supported by this factory.<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/OclQueryFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html
new file mode 100644
index 00000000000..a9baffc44ba
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html
@@ -0,0 +1,278 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+OclQueryPackage.Literals
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="OclQueryPackage.Literals";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/OclQueryPackage.Literals.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryPackage.Literals.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;METHOD</FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;METHOD</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</FONT>
+<BR>
+Interface OclQueryPackage.Literals</H2>
+<DL>
+<DT><B>Enclosing interface:</B><DD><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A></DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public static interface <B>OclQueryPackage.Literals</B></DL>
+</PRE>
+
+<P>
+<!-- begin-user-doc -->
+ Defines literals for the meta objects that represent
+ <ul>
+ <li>each class,</li>
+ <li>each feature of each class,</li>
+ <li>each enum,</li>
+ <li>and each data type</li>
+ </ul>
+ <!-- end-user-doc -->
+<P>
+
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+<HR>
+
+<P>
+<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;EClass</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html#OCL_QUERY">OCL_QUERY</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object literal for the '<CODE><em>Ocl Query</em></CODE>' class.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;EReference</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html#OCL_QUERY__CONTEXT">OCL_QUERY__CONTEXT</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object literal for the '<em><b>Context</b></em>' reference feature.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;EAttribute</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html#OCL_QUERY__OCL_EXPRESSION">OCL_QUERY__OCL_EXPRESSION</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object literal for the '<em><b>Ocl Expression</b></em>' attribute feature.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="OCL_QUERY"><!-- --></A><H3>
+OCL_QUERY</H3>
+<PRE>
+static final EClass <B>OCL_QUERY</B></PRE>
+<DL>
+<DD>The meta object literal for the '<CODE><em>Ocl Query</em></CODE>' class.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl.OclQueryImpl</CODE>,
+<CODE>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl.OclQueryPackageImpl#getOclQuery()</CODE><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="OCL_QUERY__CONTEXT"><!-- --></A><H3>
+OCL_QUERY__CONTEXT</H3>
+<PRE>
+static final EReference <B>OCL_QUERY__CONTEXT</B></PRE>
+<DL>
+<DD>The meta object literal for the '<em><b>Context</b></em>' reference feature.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="OCL_QUERY__OCL_EXPRESSION"><!-- --></A><H3>
+OCL_QUERY__OCL_EXPRESSION</H3>
+<PRE>
+static final EAttribute <B>OCL_QUERY__OCL_EXPRESSION</B></PRE>
+<DL>
+<DD>The meta object literal for the '<em><b>Ocl Expression</b></em>' attribute feature.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/OclQueryPackage.Literals.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryPackage.Literals.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;METHOD</FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;METHOD</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html
new file mode 100644
index 00000000000..877ee73d261
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html
@@ -0,0 +1,606 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+OclQueryPackage
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="OclQueryPackage";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/OclQueryPackage.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryPackage.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</FONT>
+<BR>
+Interface OclQueryPackage</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>OclQueryPackage</B></DL>
+</PRE>
+
+<P>
+<!-- begin-user-doc -->
+ The <b>Package</b> for the model.
+ It contains accessors for the meta objects to represent
+ <ul>
+ <li>each class,</li>
+ <li>each feature of each class,</li>
+ <li>each enum,</li>
+ <li>and each data type</li>
+ </ul>
+ <!-- end-user-doc -->
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><CODE>OclQueryFactory</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Model:</B></DT>
+ <DD>kind="package"</DD>
+</DL>
+<HR>
+
+<P>
+<!-- ======== NESTED CLASS SUMMARY ======== -->
+
+<A NAME="nested_class_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Nested Class Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;interface</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage.Literals</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Defines literals for the meta objects that represent
+
+ each class,
+ each feature of each class,
+ each enum,
+ and each data type
+
+ <!-- end-user-doc --></TD>
+</TR>
+</TABLE>
+&nbsp;<!-- =========== FIELD SUMMARY =========== -->
+
+<A NAME="field_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Field Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#eINSTANCE">eINSTANCE</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The singleton instance of the package.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#eNAME">eNAME</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The package name.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#eNS_PREFIX">eNS_PREFIX</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The package namespace name.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#eNS_URI">eNS_URI</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The package namespace URI.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#OCL_QUERY">OCL_QUERY</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The meta object id for the '<CODE><em>Ocl Query</em></CODE>' class.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#OCL_QUERY__CAN_BE_CACHED">OCL_QUERY__CAN_BE_CACHED</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The feature id for the '<em><b>Can Be Cached</b></em>' attribute.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#OCL_QUERY__CAN_HAVE_SIDE_EFFECTS">OCL_QUERY__CAN_HAVE_SIDE_EFFECTS</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#OCL_QUERY__CONTEXT">OCL_QUERY__CONTEXT</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The feature id for the '<em><b>Context</b></em>' reference.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#OCL_QUERY__OCL_EXPRESSION">OCL_QUERY__OCL_EXPRESSION</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The feature id for the '<em><b>Ocl Expression</b></em>' attribute.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;int</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#OCL_QUERY_FEATURE_COUNT">OCL_QUERY_FEATURE_COUNT</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The number of structural features of the '<em>Ocl Query</em>' class.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EReference</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#getOclQuery_Context()">getOclQuery_Context</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the meta object for the reference '<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getContext()"><CODE><em>Context</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EAttribute</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#getOclQuery_OclExpression()">getOclQuery_OclExpression</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the meta object for the attribute '<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getOclExpression()"><CODE><em>Ocl Expression</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;EClass</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#getOclQuery()">getOclQuery</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the meta object for class '<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><CODE><em>Ocl Query</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryFactory</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#getOclQueryFactory()">getOclQueryFactory</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the factory that creates the instances of the model.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ FIELD DETAIL =========== -->
+
+<A NAME="field_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Field Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="eNAME"><!-- --></A><H3>
+eNAME</H3>
+<PRE>
+static final java.lang.String <B>eNAME</B></PRE>
+<DL>
+<DD>The package name.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage.eNAME">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="eNS_URI"><!-- --></A><H3>
+eNS_URI</H3>
+<PRE>
+static final java.lang.String <B>eNS_URI</B></PRE>
+<DL>
+<DD>The package namespace URI.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage.eNS_URI">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="eNS_PREFIX"><!-- --></A><H3>
+eNS_PREFIX</H3>
+<PRE>
+static final java.lang.String <B>eNS_PREFIX</B></PRE>
+<DL>
+<DD>The package namespace name.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage.eNS_PREFIX">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="eINSTANCE"><!-- --></A><H3>
+eINSTANCE</H3>
+<PRE>
+static final <A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A> <B>eINSTANCE</B></PRE>
+<DL>
+<DD>The singleton instance of the package.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="OCL_QUERY"><!-- --></A><H3>
+OCL_QUERY</H3>
+<PRE>
+static final int <B>OCL_QUERY</B></PRE>
+<DL>
+<DD>The meta object id for the '<CODE><em>Ocl Query</em></CODE>' class.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl.OclQueryImpl</CODE>,
+<CODE>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl.OclQueryPackageImpl#getOclQuery()</CODE>,
+<A HREF="../../../../../../../../constant-values.html#org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage.OCL_QUERY">Constant Field Values</A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="OCL_QUERY__CAN_HAVE_SIDE_EFFECTS"><!-- --></A><H3>
+OCL_QUERY__CAN_HAVE_SIDE_EFFECTS</H3>
+<PRE>
+static final int <B>OCL_QUERY__CAN_HAVE_SIDE_EFFECTS</B></PRE>
+<DL>
+<DD>The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Ordered:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="OCL_QUERY__CAN_BE_CACHED"><!-- --></A><H3>
+OCL_QUERY__CAN_BE_CACHED</H3>
+<PRE>
+static final int <B>OCL_QUERY__CAN_BE_CACHED</B></PRE>
+<DL>
+<DD>The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Ordered:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="OCL_QUERY__CONTEXT"><!-- --></A><H3>
+OCL_QUERY__CONTEXT</H3>
+<PRE>
+static final int <B>OCL_QUERY__CONTEXT</B></PRE>
+<DL>
+<DD>The feature id for the '<em><b>Context</b></em>' reference.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Ordered:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="OCL_QUERY__OCL_EXPRESSION"><!-- --></A><H3>
+OCL_QUERY__OCL_EXPRESSION</H3>
+<PRE>
+static final int <B>OCL_QUERY__OCL_EXPRESSION</B></PRE>
+<DL>
+<DD>The feature id for the '<em><b>Ocl Expression</b></em>' attribute.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Ordered:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+<HR>
+
+<A NAME="OCL_QUERY_FEATURE_COUNT"><!-- --></A><H3>
+OCL_QUERY_FEATURE_COUNT</H3>
+<PRE>
+static final int <B>OCL_QUERY_FEATURE_COUNT</B></PRE>
+<DL>
+<DD>The number of structural features of the '<em>Ocl Query</em>' class.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+<DT><B>Ordered:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="getOclQuery()"><!-- --></A><H3>
+getOclQuery</H3>
+<PRE>
+EClass <B>getOclQuery</B>()</PRE>
+<DL>
+<DD>Returns the meta object for class '<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><CODE><em>Ocl Query</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the meta object for class '<em>Ocl Query</em>'.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><CODE>OclQuery</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getOclQuery_Context()"><!-- --></A><H3>
+getOclQuery_Context</H3>
+<PRE>
+EReference <B>getOclQuery_Context</B>()</PRE>
+<DL>
+<DD>Returns the meta object for the reference '<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getContext()"><CODE><em>Context</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the meta object for the reference '<em>Context</em>'.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getContext()"><CODE>OclQuery.getContext()</CODE></A>,
+<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#getOclQuery()"><CODE>getOclQuery()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getOclQuery_OclExpression()"><!-- --></A><H3>
+getOclQuery_OclExpression</H3>
+<PRE>
+EAttribute <B>getOclQuery_OclExpression</B>()</PRE>
+<DL>
+<DD>Returns the meta object for the attribute '<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getOclExpression()"><CODE><em>Ocl Expression</em></CODE></A>'.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the meta object for the attribute '<em>Ocl Expression</em>'.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html#getOclExpression()"><CODE>OclQuery.getOclExpression()</CODE></A>,
+<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#getOclQuery()"><CODE>getOclQuery()</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="getOclQueryFactory()"><!-- --></A><H3>
+getOclQueryFactory</H3>
+<PRE>
+<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryFactory</A> <B>getOclQueryFactory</B>()</PRE>
+<DL>
+<DD>Returns the factory that creates the instances of the model.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the factory that creates the instances of the model.<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/OclQueryPackage.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryPackage.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;<A HREF="#nested_class_summary">NESTED</A>&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQuery.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQuery.html
new file mode 100644
index 00000000000..048e1d1a144
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQuery.html
@@ -0,0 +1,209 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery//class-useOclQuery.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQuery.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQuery</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><B>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQuery</A> in <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A> that return <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQuery</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQuery</A></CODE></FONT></TD>
+<TD><CODE><B>OclQueryFactory.</B><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html#createOclQuery()">createOclQuery</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns a new object of class '<em>Ocl Query</em>'.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQuery</A> in <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util</A> with parameters of type <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQuery</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="type parameter in OclQuerySwitch">T</A></CODE></FONT></TD>
+<TD><CODE><B>OclQuerySwitch.</B><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html#caseOclQuery(org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery)">caseOclQuery</A></B>(<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQuery</A>&nbsp;object)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the result of interpreting the object as an instance of '<em>Ocl Query</em>'.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery//class-useOclQuery.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQuery.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQueryFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQueryFactory.html
new file mode 100644
index 00000000000..06f4657d752
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQueryFactory.html
@@ -0,0 +1,196 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery//class-useOclQueryFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryFactory</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryFactory</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryFactory</A> in <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Fields in <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A> declared as <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryFactory</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryFactory</A></CODE></FONT></TD>
+<TD><CODE><B>OclQueryFactory.</B><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html#eINSTANCE">eINSTANCE</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The singleton instance of the factory.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A> that return <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryFactory</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryFactory</A></CODE></FONT></TD>
+<TD><CODE><B>OclQueryPackage.</B><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#getOclQueryFactory()">getOclQueryFactory</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the factory that creates the instances of the model.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery//class-useOclQueryFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQueryPackage.Literals.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQueryPackage.Literals.html
new file mode 100644
index 00000000000..02ddbd97b28
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQueryPackage.Literals.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage.Literals
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage.Literals";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery//class-useOclQueryPackage.Literals.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryPackage.Literals.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage.Literals</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage.Literals
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery//class-useOclQueryPackage.Literals.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryPackage.Literals.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQueryPackage.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQueryPackage.html
new file mode 100644
index 00000000000..67f6cf5cc05
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQueryPackage.html
@@ -0,0 +1,196 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery//class-useOclQueryPackage.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryPackage.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Uses of <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A> in <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A></FONT></TH>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Fields in <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A> declared as <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>static&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A></CODE></FONT></TD>
+<TD><CODE><B>OclQueryPackage.</B><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html#eINSTANCE">eINSTANCE</A></B></CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The singleton instance of the package.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left" COLSPAN="2">Methods in <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A> that return <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A></CODE></FONT></TD>
+<TD><CODE><B>OclQueryFactory.</B><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html#getOclQueryPackage()">getOclQueryPackage</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the package supported by this factory.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery//class-useOclQueryPackage.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryPackage.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-frame.html
new file mode 100644
index 00000000000..ace0a1710a3
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-frame.html
@@ -0,0 +1,38 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Interfaces</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery" target="classFrame"><I>OclQuery</I></A>
+<BR>
+<A HREF="OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery" target="classFrame"><I>OclQueryFactory</I></A>
+<BR>
+<A HREF="OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery" target="classFrame"><I>OclQueryPackage</I></A>
+<BR>
+<A HREF="OclQueryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery" target="classFrame"><I>OclQueryPackage.Literals</I></A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html
new file mode 100644
index 00000000000..8aaf88f0fbe
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html
@@ -0,0 +1,176 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Interface Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQuery</A></B></TD>
+<TD>A representation of the model object '<em><b>Ocl Query</b></em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryFactory</A></B></TD>
+<TD>The <b>Factory</b> for the model.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage</A></B></TD>
+<TD>The <b>Package</b> for the model.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQueryPackage.Literals</A></B></TD>
+<TD>Defines literals for the meta objects that represent
+
+ each class,
+ each feature of each class,
+ each enum,
+ and each data type
+
+ <!-- end-user-doc --></TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-tree.html
new file mode 100644
index 00000000000..ac1ba556b25
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-tree.html
@@ -0,0 +1,151 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Interface Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>OclQuery</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>OclQueryFactory</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>OclQueryPackage</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>OclQueryPackage.Literals</B></A></UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/core/util/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-use.html
new file mode 100644
index 00000000000..9b908a86565
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-use.html
@@ -0,0 +1,201 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</B></H2>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Packages that use <A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><A HREF="#org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><B>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util</B></A></TD>
+<TD>&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Classes in <A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A> used by <A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQuery.html#org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>OclQuery</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A representation of the model object '<em><b>Ocl Query</b></em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQueryFactory.html#org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>OclQueryFactory</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The <b>Factory</b> for the model.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQueryPackage.html#org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>OclQueryPackage</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The <b>Package</b> for the model.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<A NAME="org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+Classes in <A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A> used by <A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util</A></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><B><A HREF="../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/class-use/OclQuery.html#org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><B>OclQuery</B></A></B>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A representation of the model object '<em><b>Ocl Query</b></em>'.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html
new file mode 100644
index 00000000000..17f3a6c0ef7
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html
@@ -0,0 +1,389 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+OclQueryAdapterFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="OclQueryAdapterFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/OclQueryAdapterFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryAdapterFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util</FONT>
+<BR>
+Class OclQueryAdapterFactory</H2>
+<PRE>
+java.lang.Object
+ <IMG SRC="../../../../../../../../../resources/inherit.gif" ALT="extended by ">AdapterFactoryImpl
+ <IMG SRC="../../../../../../../../../resources/inherit.gif" ALT="extended by "><B>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.OclQueryAdapterFactory</B>
+</PRE>
+<HR>
+<DL>
+<DT><PRE>public class <B>OclQueryAdapterFactory</B><DT>extends AdapterFactoryImpl</DL>
+</PRE>
+
+<P>
+<!-- begin-user-doc -->
+ The <b>Adapter Factory</b> for the model.
+ It provides an adapter <code>createXXX</code> method for each class of the model.
+ <!-- end-user-doc -->
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><CODE>OclQueryPackage</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+<HR>
+
+<P>
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html#OclQueryAdapterFactory()">OclQueryAdapterFactory</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates an instance of the adapter factory.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;Adapter</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html#createAdapter(Notifier)">createAdapter</A></B>(Notifier&nbsp;target)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates an adapter for the <code>target</code>.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;Adapter</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html#createEObjectAdapter()">createEObjectAdapter</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a new adapter for the default case.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;Adapter</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html#createOclQueryAdapter()">createOclQueryAdapter</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a new adapter for an object of class '<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><CODE><em>Ocl Query</em></CODE></A>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;Adapter</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html#createQueryAdapter()">createQueryAdapter</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a new adapter for an object of class '<CODE><em>Query</em></CODE>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;boolean</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html#isFactoryForType(java.lang.Object)">isFactoryForType</A></B>(java.lang.Object&nbsp;object)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns whether this factory is applicable for the type of the object.</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="OclQueryAdapterFactory()"><!-- --></A><H3>
+OclQueryAdapterFactory</H3>
+<PRE>
+public <B>OclQueryAdapterFactory</B>()</PRE>
+<DL>
+<DD>Creates an instance of the adapter factory.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="isFactoryForType(java.lang.Object)"><!-- --></A><H3>
+isFactoryForType</H3>
+<PRE>
+public boolean <B>isFactoryForType</B>(java.lang.Object&nbsp;object)</PRE>
+<DL>
+<DD>Returns whether this factory is applicable for the type of the object.
+ <!-- begin-user-doc -->
+ This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>whether this factory is applicable for the type of the object.<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createAdapter(Notifier)"><!-- --></A><H3>
+createAdapter</H3>
+<PRE>
+public Adapter <B>createAdapter</B>(Notifier&nbsp;target)</PRE>
+<DL>
+<DD>Creates an adapter for the <code>target</code>.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>target</CODE> - the object to adapt.
+<DT><B>Returns:</B><DD>the adapter for the <code>target</code>.<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createOclQueryAdapter()"><!-- --></A><H3>
+createOclQueryAdapter</H3>
+<PRE>
+public Adapter <B>createOclQueryAdapter</B>()</PRE>
+<DL>
+<DD>Creates a new adapter for an object of class '<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><CODE><em>Ocl Query</em></CODE></A>'.
+ <!-- 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 -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the new adapter.<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><CODE>OclQuery</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createQueryAdapter()"><!-- --></A><H3>
+createQueryAdapter</H3>
+<PRE>
+public Adapter <B>createQueryAdapter</B>()</PRE>
+<DL>
+<DD>Creates a new adapter for an object of class '<CODE><em>Query</em></CODE>'.
+ <!-- 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 -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the new adapter.<DT><B>See Also:</B><DD><CODE>org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query</CODE><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="createEObjectAdapter()"><!-- --></A><H3>
+createEObjectAdapter</H3>
+<PRE>
+public Adapter <B>createEObjectAdapter</B>()</PRE>
+<DL>
+<DD>Creates a new adapter for the default case.
+ <!-- begin-user-doc -->
+ This default implementation returns null.
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the new adapter.<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/OclQueryAdapterFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><B>NEXT CLASS</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryAdapterFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html
new file mode 100644
index 00000000000..5ea84a37b16
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html
@@ -0,0 +1,367 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+OclQuerySwitch
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="OclQuerySwitch";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/OclQuerySwitch.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQuerySwitch.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util</FONT>
+<BR>
+Class OclQuerySwitch&lt;T&gt;</H2>
+<PRE>
+java.lang.Object
+ <IMG SRC="../../../../../../../../../resources/inherit.gif" ALT="extended by "><B>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.OclQuerySwitch&lt;T&gt;</B>
+</PRE>
+<HR>
+<DL>
+<DT><PRE>public class <B>OclQuerySwitch&lt;T&gt;</B><DT>extends java.lang.Object</DL>
+</PRE>
+
+<P>
+<!-- begin-user-doc -->
+ The <b>Switch</b> for the model's inheritance hierarchy.
+ It supports the call <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html#doSwitch(EObject)"><CODE>doSwitch(object)</CODE></A>
+ to invoke the <code>caseXXX</code> method for each class of the model,
+ starting with the actual class of the object
+ and proceeding up the inheritance hierarchy
+ until a non-null result is returned,
+ which is the result of the switch.
+ <!-- end-user-doc -->
+<P>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><CODE>OclQueryPackage</CODE></A><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+<HR>
+
+<P>
+
+<!-- ======== CONSTRUCTOR SUMMARY ======== -->
+
+<A NAME="constructor_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Constructor Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html#OclQuerySwitch()">OclQuerySwitch</A></B>()</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates an instance of the switch.</TD>
+</TR>
+</TABLE>
+&nbsp;
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="type parameter in OclQuerySwitch">T</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html#caseOclQuery(org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery)">caseOclQuery</A></B>(<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQuery</A>&nbsp;object)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the result of interpreting the object as an instance of '<em>Ocl Query</em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="type parameter in OclQuerySwitch">T</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html#caseQuery(Query)">caseQuery</A></B>(Query&nbsp;object)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the result of interpreting the object as an instance of '<em>Query</em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="type parameter in OclQuerySwitch">T</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html#defaultCase(EObject)">defaultCase</A></B>(EObject&nbsp;object)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the result of interpreting the object as an instance of '<em>EObject</em>'.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="type parameter in OclQuerySwitch">T</A></CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html#doSwitch(EObject)">doSwitch</A></B>(EObject&nbsp;theEObject)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ========= CONSTRUCTOR DETAIL ======== -->
+
+<A NAME="constructor_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Constructor Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="OclQuerySwitch()"><!-- --></A><H3>
+OclQuerySwitch</H3>
+<PRE>
+public <B>OclQuerySwitch</B>()</PRE>
+<DL>
+<DD>Creates an instance of the switch.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DL>
+<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DL>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="doSwitch(EObject)"><!-- --></A><H3>
+doSwitch</H3>
+<PRE>
+public <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="type parameter in OclQuerySwitch">T</A> <B>doSwitch</B>(EObject&nbsp;theEObject)</PRE>
+<DL>
+<DD>Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ <!-- begin-user-doc -->
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+
+<DT><B>Returns:</B><DD>the first non-null result returned by a <code>caseXXX</code> call.<DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="caseOclQuery(org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery)"><!-- --></A><H3>
+caseOclQuery</H3>
+<PRE>
+public <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="type parameter in OclQuerySwitch">T</A> <B>caseOclQuery</B>(<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery">OclQuery</A>&nbsp;object)</PRE>
+<DL>
+<DD>Returns the result of interpreting the object as an instance of '<em>Ocl Query</em>'.
+ <!-- begin-user-doc -->
+ This implementation returns null;
+ returning a non-null result will terminate the switch.
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>object</CODE> - the target of the switch.
+<DT><B>Returns:</B><DD>the result of interpreting the object as an instance of '<em>Ocl Query</em>'.<DT><B>See Also:</B><DD><CODE>doSwitch(EObject)</CODE><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="caseQuery(Query)"><!-- --></A><H3>
+caseQuery</H3>
+<PRE>
+public <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="type parameter in OclQuerySwitch">T</A> <B>caseQuery</B>(Query&nbsp;object)</PRE>
+<DL>
+<DD>Returns the result of interpreting the object as an instance of '<em>Query</em>'.
+ <!-- begin-user-doc -->
+ This implementation returns null;
+ returning a non-null result will terminate the switch.
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>object</CODE> - the target of the switch.
+<DT><B>Returns:</B><DD>the result of interpreting the object as an instance of '<em>Query</em>'.<DT><B>See Also:</B><DD><CODE>doSwitch(EObject)</CODE><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<HR>
+
+<A NAME="defaultCase(EObject)"><!-- --></A><H3>
+defaultCase</H3>
+<PRE>
+public <A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="type parameter in OclQuerySwitch">T</A> <B>defaultCase</B>(EObject&nbsp;object)</PRE>
+<DL>
+<DD>Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ <!-- begin-user-doc -->
+ This implementation returns null;
+ returning a non-null result will terminate the switch, but this is the last case anyway.
+ <!-- end-user-doc -->
+<P>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>object</CODE> - the target of the switch.
+<DT><B>Returns:</B><DD>the result of interpreting the object as an instance of '<em>EObject</em>'.<DT><B>See Also:</B><DD><CODE>#doSwitch(org.eclipse.emf.ecore.EObject)</CODE><DT><B>Generated:</B></DT>
+ <DD></DD>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/OclQuerySwitch.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><B>PREV CLASS</B></A>&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQuerySwitch.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/class-use/OclQueryAdapterFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/class-use/OclQueryAdapterFactory.html
new file mode 100644
index 00000000000..9ba806fa9b1
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/class-use/OclQueryAdapterFactory.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Class org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.OclQueryAdapterFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Class org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.OclQueryAdapterFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util//class-useOclQueryAdapterFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryAdapterFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Class<br>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.OclQueryAdapterFactory</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.OclQueryAdapterFactory
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util//class-useOclQueryAdapterFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQueryAdapterFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/class-use/OclQuerySwitch.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/class-use/OclQuerySwitch.html
new file mode 100644
index 00000000000..9db3adbf786
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/class-use/OclQuerySwitch.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Class org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.OclQuerySwitch
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Class org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.OclQuerySwitch";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util//class-useOclQuerySwitch.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQuerySwitch.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Class<br>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.OclQuerySwitch</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.OclQuerySwitch
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util//class-useOclQuerySwitch.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="OclQuerySwitch.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-frame.html
new file mode 100644
index 00000000000..81a5d0a03ce
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-frame.html
@@ -0,0 +1,34 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Classes</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="OclQueryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util" target="classFrame">OclQueryAdapterFactory</A>
+<BR>
+<A HREF="OclQuerySwitch.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util" target="classFrame">OclQuerySwitch</A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html
new file mode 100644
index 00000000000..0b5f70a231f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html
@@ -0,0 +1,161 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Class Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util">OclQueryAdapterFactory</A></B></TD>
+<TD>The <b>Adapter Factory</b> for the model.</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util">OclQuerySwitch&lt;T&gt;</A></B></TD>
+<TD>The <b>Switch</b> for the model's inheritance hierarchy.</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-tree.html
new file mode 100644
index 00000000000..6223c30decd
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-tree.html
@@ -0,0 +1,155 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Class Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">java.lang.Object<UL>
+<LI TYPE="circle">AdapterFactoryImpl<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><B>OclQueryAdapterFactory</B></A></UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><B>OclQuerySwitch</B></A>&lt;T&gt;</UL>
+</UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-use.html
new file mode 100644
index 00000000000..daaa9171217
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-use.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html
new file mode 100644
index 00000000000..d35c4c1a75c
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html
@@ -0,0 +1,221 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+IOclDialogFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IOclDialogFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IOclDialogFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IOclDialogFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog</FONT>
+<BR>
+Interface IOclDialogFactory</H2>
+<DL>
+<DT><B>All Superinterfaces:</B> <DD><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query">IQueryDialogFactory</A></DD>
+</DL>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IOclDialogFactory</B><DT>extends <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query">IQueryDialogFactory</A></DL>
+</PRE>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html#setExpression(java.lang.String)">setExpression</A></B>(java.lang.String&nbsp;expression)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;<A NAME="methods_inherited_from_class_org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query.IQueryDialogFactory"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
+<TH ALIGN="left"><B>Methods inherited from interface org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query">IQueryDialogFactory</A></B></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD><CODE><A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html#createQuery()">createQuery</A>, <A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html#getConclusionText()">getConclusionText</A></CODE></TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="setExpression(java.lang.String)"><!-- --></A><H3>
+setExpression</H3>
+<PRE>
+void <B>setExpression</B>(java.lang.String&nbsp;expression)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IOclDialogFactory.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IOclDialogFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/class-use/IOclDialogFactory.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/class-use/IOclDialogFactory.html
new file mode 100644
index 00000000000..86393571de2
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/class-use/IOclDialogFactory.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog.IOclDialogFactory
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog.IOclDialogFactory";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/dialog//class-useIOclDialogFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IOclDialogFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog.IOclDialogFactory</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog.IOclDialogFactory
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/dialog//class-useIOclDialogFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IOclDialogFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-frame.html
new file mode 100644
index 00000000000..6afaad2238d
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-frame.html
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Interfaces</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="IOclDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog" target="classFrame"><I>IOclDialogFactory</I></A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html
new file mode 100644
index 00000000000..d50f6e2c180
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Interface Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog">IOclDialogFactory</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-tree.html
new file mode 100644
index 00000000000..0b8f05a59eb
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-tree.html
@@ -0,0 +1,153 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Interface Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query.<A HREF="../../../../../../../../../org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query"><B>IQueryDialogFactory</B></A><UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog.<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog"><B>IOclDialogFactory</B></A></UL>
+</UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-use.html
new file mode 100644
index 00000000000..9e03bfdd022
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-use.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html
new file mode 100644
index 00000000000..46a353f6314
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html
@@ -0,0 +1,206 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+IOclQueryWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IOclQueryWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IOclQueryWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IOclQueryWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget</FONT>
+<BR>
+Interface IOclQueryWidget</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IOclQueryWidget</B></DL>
+</PRE>
+
+<P>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html#setExpression(java.lang.String)">setExpression</A></B>(java.lang.String&nbsp;expression)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="setExpression(java.lang.String)"><!-- --></A><H3>
+setExpression</H3>
+<PRE>
+void <B>setExpression</B>(java.lang.String&nbsp;expression)</PRE>
+<DL>
+<DD><DL>
+</DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IOclQueryWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IOclQueryWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/class-use/IOclQueryWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/class-use/IOclQueryWidget.html
new file mode 100644
index 00000000000..d13140abc9a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/class-use/IOclQueryWidget.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.IOclQueryWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.IOclQueryWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget//class-useIOclQueryWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IOclQueryWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.IOclQueryWidget</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.IOclQueryWidget
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget//class-useIOclQueryWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IOclQueryWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html
new file mode 100644
index 00000000000..7bf1b224dbc
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html
@@ -0,0 +1,208 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+IOCLExpressionWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="IOCLExpressionWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IOCLExpressionWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IOCLExpressionWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<!-- ======== START OF CLASS DATA ======== -->
+<H2>
+<FONT SIZE="-1">
+org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression</FONT>
+<BR>
+Interface IOCLExpressionWidget</H2>
+<HR>
+<DL>
+<DT><PRE>public interface <B>IOCLExpressionWidget</B></DL>
+</PRE>
+
+<P>
+<DL>
+<DT><B>See Also:</B><DD><CODE>OCLExpressionWidget</CODE></DL>
+<HR>
+
+<P>
+
+<!-- ========== METHOD SUMMARY =========== -->
+
+<A NAME="method_summary"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Method Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
+<CODE>&nbsp;void</CODE></FONT></TD>
+<TD><CODE><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html#setExpression(java.lang.String)">setExpression</A></B>(java.lang.String&nbsp;expression)</CODE>
+
+<BR>
+&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+<P>
+
+<!-- ============ METHOD DETAIL ========== -->
+
+<A NAME="method_detail"><!-- --></A>
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
+<B>Method Detail</B></FONT></TH>
+</TR>
+</TABLE>
+
+<A NAME="setExpression(java.lang.String)"><!-- --></A><H3>
+setExpression</H3>
+<PRE>
+void <B>setExpression</B>(java.lang.String&nbsp;expression)</PRE>
+<DL>
+<DD><DL>
+<DT><B>Parameters:</B><DD><CODE>expression</CODE> - </DL>
+</DD>
+</DL>
+<!-- ========= END OF CLASS DATA ========= -->
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/IOCLExpressionWidget.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV CLASS&nbsp;
+&nbsp;NEXT CLASS</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IOCLExpressionWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+<TR>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+ SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
+<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
+DETAIL:&nbsp;FIELD&nbsp;|&nbsp;CONSTR&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/class-use/IOCLExpressionWidget.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/class-use/IOCLExpressionWidget.html
new file mode 100644
index 00000000000..bb5974848ba
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/class-use/IOCLExpressionWidget.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Interface org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression.IOCLExpressionWidget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Interface org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression.IOCLExpressionWidget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression//class-useIOCLExpressionWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IOCLExpressionWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Interface<br>org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression.IOCLExpressionWidget</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression.IOCLExpressionWidget
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression//class-useIOCLExpressionWidget.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="IOCLExpressionWidget.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-frame.html
new file mode 100644
index 00000000000..79efcb29a69
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-frame.html
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Interfaces</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="IOCLExpressionWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression" target="classFrame"><I>IOCLExpressionWidget</I></A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-summary.html
new file mode 100644
index 00000000000..d3cc56e6cc1
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-summary.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;NEXT PACKAGE</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Interface Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression">IOCLExpressionWidget</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;NEXT PACKAGE</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-tree.html
new file mode 100644
index 00000000000..323cf884e63
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-tree.html
@@ -0,0 +1,151 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Interface Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression.<A HREF="../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression"><B>IOCLExpressionWidget</B></A></UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-use.html
new file mode 100644
index 00000000000..72aa2d9f3a8
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-use.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-frame.html
new file mode 100644
index 00000000000..26798115f14
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-frame.html
@@ -0,0 +1,32 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+<FONT size="+1" CLASS="FrameTitleFont">
+<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-summary.html" target="classFrame">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget</A></FONT>
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
+Interfaces</FONT>&nbsp;
+<FONT CLASS="FrameItemFont">
+<BR>
+<A HREF="IOclQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget" target="classFrame"><I>IOclQueryWidget</I></A></FONT></TD>
+</TR>
+</TABLE>
+
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-summary.html
new file mode 100644
index 00000000000..97df4fde542
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-summary.html
@@ -0,0 +1,157 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<H2>
+Package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget
+</H2>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Interface Summary</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="15%"><B><A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget">IOclQueryWidget</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+</TABLE>
+&nbsp;
+
+<P>
+<DL>
+</DL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-tree.html
new file mode 100644
index 00000000000..ac76e45ee65
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-tree.html
@@ -0,0 +1,151 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For Package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget
+</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../../../../../../overview-tree.html">All Packages</A></DL>
+<HR>
+<H2>
+Interface Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget"><B>IOclQueryWidget</B></A></UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-tree.html"><B>PREV</B></A>&nbsp;
+&nbsp;<A HREF="../../../../../../../../../org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-tree.html"><B>NEXT</B></A></FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-use.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-use.html
new file mode 100644
index 00000000000..430576d3a59
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-use.html
@@ -0,0 +1,144 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Uses of Package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../../../../stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Uses of Package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+<B>Uses of Package<br>org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget</B></H2>
+</CENTER>
+No usage of org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget
+<P>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="../../../../../../../../../index.html?org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-use.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="../../../../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/overview-frame.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/overview-frame.html
new file mode 100644
index 00000000000..2da8c8e7929
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/overview-frame.html
@@ -0,0 +1,80 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Overview List
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+
+
+</HEAD>
+
+<BODY BGCOLOR="white">
+
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TH ALIGN="left" NOWRAP><FONT size="+1" CLASS="FrameTitleFont">
+<B></B></FONT></TH>
+</TR>
+</TABLE>
+
+<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
+<TR>
+<TD NOWRAP><FONT CLASS="FrameItemFont"><A HREF="allclasses-frame.html" target="packageFrame">All Classes</A></FONT>
+<P>
+<FONT size="+1" CLASS="FrameHeadingFont">
+Packages</FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/query/ocl/core/util/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.query.ocl.core.util</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget</A></FONT>
+<BR>
+<FONT CLASS="FrameItemFont"><A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-frame.html" target="packageFrame">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression</A></FONT>
+<BR>
+</TD>
+</TR>
+</TABLE>
+
+<P>
+&nbsp;
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/overview-summary.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/overview-summary.html
new file mode 100644
index 00000000000..3bf71627606
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/overview-summary.html
@@ -0,0 +1,232 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:35 EDT 2013 -->
+<TITLE>
+Overview
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Overview";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Overview</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="index.html?overview-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="overview-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H1>
+Javadoc
+</H1>
+</CENTER>
+
+<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
+<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
+<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
+<B>Packages</B></FONT></TH>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-summary.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/query/ocl/core/util/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.core.util</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+<TR BGCOLOR="white" CLASS="TableRowColor">
+<TD WIDTH="20%"><B><A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-summary.html">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression</A></B></TD>
+<TD>&nbsp;</TD>
+</TR>
+</TABLE>
+
+<P>
+&nbsp;<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Overview</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="index.html?overview-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="overview-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/overview-tree.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/overview-tree.html
new file mode 100644
index 00000000000..2817c2a47ee
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/overview-tree.html
@@ -0,0 +1,189 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<!--NewPage-->
+<HTML>
+<HEAD>
+<!-- Generated by javadoc (build 1.6.0_27) on Mon Aug 19 04:53:34 EDT 2013 -->
+<TITLE>
+Class Hierarchy
+</TITLE>
+
+<META NAME="date" CONTENT="2013-08-19">
+
+<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
+
+<SCRIPT type="text/javascript">
+function windowTitle()
+{
+ if (location.href.indexOf('is-external=true') == -1) {
+ parent.document.title="Class Hierarchy";
+ }
+}
+</SCRIPT>
+<NOSCRIPT>
+</NOSCRIPT>
+
+</HEAD>
+
+<BODY BGCOLOR="white" onload="windowTitle();">
+<HR>
+
+
+<!-- ========= START OF TOP NAVBAR ======= -->
+<A NAME="navbar_top"><!-- --></A>
+<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_top_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="index.html?overview-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="overview-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_top"></A>
+<!-- ========= END OF TOP NAVBAR ========= -->
+
+<HR>
+<CENTER>
+<H2>
+Hierarchy For All Packages</H2>
+</CENTER>
+<DL>
+<DT><B>Package Hierarchies:</B><DD><A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/package-tree.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library</A>, <A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/package-tree.html">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util</A>, <A HREF="org/eclipse/emf/facet/efacet/sdk/ui/dialog/package-tree.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog</A>, <A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/package-tree.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported</A>, <A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/package-tree.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query</A>, <A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/package-tree.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget</A>, <A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/package-tree.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate</A>, <A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/package-tree.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass</A>, <A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/package-tree.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query</A>, <A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/package-tree.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation</A>, <A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/package-tree.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard</A>, <A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/package-tree.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page</A>, <A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/package-tree.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation</A>, <A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/package-tree.html">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query</A>, <A HREF="org/eclipse/emf/facet/query/ocl/core/util/package-tree.html">org.eclipse.papyrus.emf.facet.query.ocl.core.util</A>, <A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/package-tree.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery</A>, <A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/package-tree.html">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util</A>, <A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/package-tree.html">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog</A>, <A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/widget/package-tree.html">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget</A>, <A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/package-tree.html">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression</A></DL>
+<HR>
+<H2>
+Class Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">java.lang.Object<UL>
+<LI TYPE="circle"><any><UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>GetQueryDialog</B></A></UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>AbstractQueryDialogFactory</B></A>&lt;Q&gt; (implements org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query">IQueryDialogFactory</A>)
+<LI TYPE="circle">AbstractSelectionExpectedTypeHandler<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>AddAttributeInFacetHandler</B></A></UL>
+<LI TYPE="circle">AbstractSelectionExpectedTypeHandler<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>AddOperationInFacetHandler</B></A></UL>
+<LI TYPE="circle">AbstractSelectionExpectedTypeHandler<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>AddParameterInOperationHandler</B></A></UL>
+<LI TYPE="circle">AbstractSelectionExpectedTypeHandler<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>AddReferenceInFacetHandler</B></A></UL>
+<LI TYPE="circle">AbstractSelectionExpectedTypeHandler<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>CreateFacetInFacetSetHandler</B></A></UL>
+<LI TYPE="circle">AbstractSelectionExpectedTypeHandler<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation"><B>CreateFacetSetInFacetSetHandler</B></A></UL>
+<LI TYPE="circle">AbstractWidget<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>SelectQueryTypeWidget</B></A></UL>
+<LI TYPE="circle">AdapterFactoryImpl<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><B>OclQueryAdapterFactory</B></A></UL>
+<LI TYPE="circle">AdapterFactoryImpl<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibraryAdapterFactory.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><B>LibraryAdapterFactory</B></A></UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util.<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/util/LibrarySwitch.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.util"><B>LibrarySwitch</B></A>&lt;T&gt;<LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util.<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util"><B>OclQuerySwitch</B></A>&lt;T&gt;<LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.core.util.<A HREF="org/eclipse/emf/facet/query/ocl/core/util/OclQueryUtil.html" title="class in org.eclipse.papyrus.emf.facet.query.ocl.core.util"><B>OclQueryUtil</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.html" title="class in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>QueryWidgetCompositeFactoryImpl</B></A> (implements org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query">IQueryWidgetCompositeFactoryFactory</A>)
+</UL>
+</UL>
+<H2>
+Interface Hierarchy
+</H2>
+<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Book.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>Book</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page"><B>ICreateFacetSetWizardPage</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query"><B>ICreateQueryWidget</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IENamedElementWidget</B></A>&lt;C,CW&gt;<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>ICreateFacetInFacetSetWidget</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IDerivedTypedElementWidget</B></A><UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IEStructuralFeatureWidget</B></A></UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IEStructuralFeatureWidget</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IETypedElementWidget</B></A>&lt;C,CW&gt;<UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IDerivedTypedElementWidget</B></A><UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IEStructuralFeatureWidget</B></A></UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IEStructuralFeatureWidget</B></A></UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget"><B>IFacetWidget</B></A></UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog"><B>IFacetDialogFactory</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page"><B>IFacetSetPropertyWizardPage</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass"><B>IGetExtendedMetaclassWidget</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate"><B>IGetOrCreateFacetSetWidget</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation"><B>IGetOrCreateFilteredFacetSetWidget</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression.<A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression"><B>IOCLExpressionWidget</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.<A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget"><B>IOclQueryWidget</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><B>IQueryContext</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>IQueryCreationResult</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query"><B>IQueryDialogFactory</B></A><UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog.<A HREF="org/eclipse/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog"><B>IOclDialogFactory</B></A></UL>
+<LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported"><B>IQueryDialogFactoryStrategy</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query"><B>IQueryWidgetCompositeFactoryFactory</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.<A HREF="org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard"><B>IWizardFactory</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Library.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>Library</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>LibraryFactory</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>LibraryPackage</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/LibraryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>LibraryPackage.Literals</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQuery.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>OclQuery</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>OclQueryFactory</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>OclQueryPackage</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.<A HREF="org/eclipse/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.Literals.html" title="interface in org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery"><B>OclQueryPackage.Literals</B></A><LI TYPE="circle">org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library.<A HREF="org/eclipse/emf/facet/efacet/sdk/tests/metamodel/library/Writer.html" title="interface in org.eclipse.papyrus.emf.facet.efacet.sdk.tests.metamodel.library"><B>Writer</B></A></UL>
+<HR>
+
+
+<!-- ======= START OF BOTTOM NAVBAR ====== -->
+<A NAME="navbar_bottom"><!-- --></A>
+<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
+<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
+<TR>
+<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
+<A NAME="navbar_bottom_firstrow"><!-- --></A>
+<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
+ <TR ALIGN="center" VALIGN="top">
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT>&nbsp;</TD>
+ <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-files/index-1.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
+ <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
+ </TR>
+</TABLE>
+</TD>
+<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
+</EM>
+</TD>
+</TR>
+
+<TR>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+&nbsp;PREV&nbsp;
+&nbsp;NEXT</FONT></TD>
+<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
+ <A HREF="index.html?overview-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
+&nbsp;<A HREF="overview-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
+&nbsp;<SCRIPT type="text/javascript">
+ <!--
+ if(window==top) {
+ document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
+ }
+ //-->
+</SCRIPT>
+<NOSCRIPT>
+ <A HREF="allclasses-noframe.html"><B>All Classes</B></A>
+</NOSCRIPT>
+
+
+</FONT></TD>
+</TR>
+</TABLE>
+<A NAME="skip-navbar_bottom"></A>
+<!-- ======== END OF BOTTOM NAVBAR ======= -->
+
+<HR>
+
+</BODY>
+</HTML>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/package-list b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/package-list
new file mode 100644
index 00000000000..1eec087dd0a
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/package-list
@@ -0,0 +1,20 @@
+org.eclipse.emf.facet.efacet.sdk.tests.metamodel.library
+org.eclipse.emf.facet.efacet.sdk.tests.metamodel.library.util
+org.eclipse.emf.facet.efacet.sdk.ui.dialog
+org.eclipse.emf.facet.efacet.sdk.ui.internal.exported
+org.eclipse.emf.facet.efacet.sdk.ui.internal.exported.dialog.query
+org.eclipse.emf.facet.efacet.sdk.ui.internal.exported.widget
+org.eclipse.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate
+org.eclipse.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass
+org.eclipse.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query
+org.eclipse.emf.facet.efacet.sdk.ui.internal.exported.widget.creation
+org.eclipse.emf.facet.efacet.sdk.ui.internal.exported.wizard
+org.eclipse.emf.facet.efacet.sdk.ui.internal.exported.wizard.page
+org.eclipse.emf.facet.efacet.sdk.ui.internal.handler.creation
+org.eclipse.emf.facet.efacet.sdk.ui.internal.query
+org.eclipse.emf.facet.query.ocl.core.util
+org.eclipse.emf.facet.query.ocl.metamodel.oclquery
+org.eclipse.emf.facet.query.ocl.metamodel.oclquery.util
+org.eclipse.emf.facet.query.ocl.sdk.ui.dialog
+org.eclipse.emf.facet.query.ocl.sdk.ui.widget
+org.eclipse.emf.facet.query.ocl.sdk.ui.widget.oclexpression
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/resources/inherit.gif b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/resources/inherit.gif
new file mode 100644
index 00000000000..c814867a13d
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/resources/inherit.gif
Binary files differ
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/stylesheet.css b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/stylesheet.css
new file mode 100644
index 00000000000..6ea9e516161
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/javadoc/stylesheet.css
@@ -0,0 +1,29 @@
+/* Javadoc style sheet */
+
+/* Define colors, fonts and other style attributes here to override the defaults */
+
+/* Page background color */
+body { background-color: #FFFFFF; color:#000000 }
+
+/* Headings */
+h1 { font-size: 145% }
+
+/* Table colors */
+.TableHeadingColor { background: #CCCCFF; color:#000000 } /* Dark mauve */
+.TableSubHeadingColor { background: #EEEEFF; color:#000000 } /* Light mauve */
+.TableRowColor { background: #FFFFFF; color:#000000 } /* White */
+
+/* Font used in left-hand frame lists */
+.FrameTitleFont { font-size: 100%; font-family: Helvetica, Arial, sans-serif; color:#000000 }
+.FrameHeadingFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif; color:#000000 }
+.FrameItemFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif; color:#000000 }
+
+/* Navigation bar fonts and colors */
+.NavBarCell1 { background-color:#EEEEFF; color:#000000} /* Light mauve */
+.NavBarCell1Rev { background-color:#00008B; color:#FFFFFF} /* Dark Blue */
+.NavBarFont1 { font-family: Arial, Helvetica, sans-serif; color:#000000;color:#000000;}
+.NavBarFont1Rev { font-family: Arial, Helvetica, sans-serif; color:#FFFFFF;color:#FFFFFF;}
+
+.NavBarCell2 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF; color:#000000}
+.NavBarCell3 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF; color:#000000}
+
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/maintoc.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/maintoc.xml
new file mode 100644
index 00000000000..77429a05243
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/maintoc.xml
@@ -0,0 +1,65 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?NLS TYPE="org.eclipse.help.toc"?>
+<!--
+Copyright (c) 2011 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Gregoire Dupe (Mia-Software) - Bug 337584 - Documentation set up
+ Nicolas Bros (Mia-Software) - Bug 375789 - Documentation
+-->
+<toc label="EMF Facet Documentation">
+ <topic label="User Guide">
+ <anchor id="user.anchor.1"/>
+ <anchor id="user.anchor.2"/>
+ <anchor id="user.anchor.3"/>
+ <anchor id="user.anchor.4"/>
+ <anchor id="user.anchor.5"/>
+ <anchor id="user.anchor.6"/>
+ <anchor id="user.anchor.7"/>
+ <anchor id="user.anchor.8"/>
+ <anchor id="user.anchor.9"/>
+ <topic label="Deprecated Components">
+ <anchor id="user.deprecated.anchor.1"/>
+ <anchor id="user.deprecated.anchor.2"/>
+ <anchor id="user.deprecated.anchor.3"/>
+ </topic>
+ </topic>
+
+ <topic label="Developer Guide">
+ <anchor id="dev.anchor.1"/>
+ <anchor id="dev.anchor.2"/>
+ <anchor id="dev.anchor.3"/>
+ <anchor id="dev.anchor.4"/>
+ <anchor id="dev.anchor.5"/>
+ <anchor id="dev.anchor.6"/>
+ <anchor id="dev.anchor.7"/>
+ <anchor id="dev.anchor.8"/>
+ <anchor id="dev.anchor.9"/>
+ <topic href="javadoc/index.html" label="API Reference"/>
+ <topic label="Deprecated Components">
+ <anchor id="dev.deprecated.anchor.1"/>
+ <anchor id="dev.deprecated.anchor.2"/>
+ <anchor id="dev.deprecated.anchor.3"/>
+ </topic>
+ </topic>
+
+ <topic label="Project Documents">
+ <topic href="mediawiki/new_and_noteworthy.html" label="New and Noteworthy"/>
+ <topic label="API use report">
+ <anchor id="api_report"/>
+ </topic>
+ <topic label="Simultaneous Release Tracker Required Documents">
+ <topic href="mediawiki/API_Policy.html" label="API Policy"/>
+ <topic href="mediawiki/capabilities.html" label="Capabilities"/>
+ <topic href="mediawiki/checking_BREE.html" label="Checking the Bundle-RequiredExecutionEnvironment"/>
+ <topic href="mediawiki/ramp_down.html" label="Ramp Down Policy"/>
+ <topic href="mediawiki/retention_policy.html" label="Retention Policy"/>
+ <topic href="mediawiki/running_tests.html" label="Running Tests"/>
+ <anchor id="releaseDocuments.anchor.1"/>
+ </topic>
+ </topic>
+</toc>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/API_Policy-toc.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/API_Policy-toc.xml
new file mode 100644
index 00000000000..4ff17b26712
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/API_Policy-toc.xml
@@ -0,0 +1,11 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<toc topic="mediawiki/API_Policy.html" label="API_Policy">
+ <topic href="mediawiki/API_Policy.html" label="API Policy">
+ <topic href="mediawiki/API_Policy.html#Declared_API" label="Declared API"></topic>
+ <topic href="mediawiki/API_Policy.html#Provisional_API" label="Provisional API"></topic>
+ <topic href="mediawiki/API_Policy.html#Examples_API" label="Examples API"></topic>
+ <topic href="mediawiki/API_Policy.html#Test_API" label="Test API"></topic>
+ <topic href="mediawiki/API_Policy.html#Internal_Use" label="Internal Use"></topic>
+ <topic href="mediawiki/API_Policy.html#Deprecated_API_declaration" label="Deprecated API declaration"></topic>
+ </topic>
+</toc> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/API_Policy.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/API_Policy.html
new file mode 100644
index 00000000000..24c8fa35c70
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/API_Policy.html
@@ -0,0 +1,76 @@
+<?xml version='1.0' encoding='utf-8' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+ <title>API_Policy</title>
+ </head>
+ <body>
+ <h1 id="API_Policy">API Policy</h1>
+ <p>This policy defines rules which give some guarantees to adopters about the EMF Facet API stability. </p>
+ <p>We consider EMF Facet API as the union of Java API, Eclipse Extension points, and also Models. </p>
+ <p>Indeed, since the EMF Facet project addresses Model-Driven Reverse Engineering, it proposes various metamodels definitions and conforming models to support the end-user use cases. </p>
+ <h2 id="Declared_API">Declared API</h2>
+ <p>Declared API is public API that EMF Facet has committed to supporting for several releases. It should be clean and contain adequate javadoc. Declared API may evolve in the first few milestones, but it must be frozen by the release API freeze date and will not change throughout the remainder of the release or the corresponding maintenance releases. </p>
+ <p>In following releases, API may sometimes be deprecated due to the normal evolution of EMF Facet. Deprecations must contain information on a migration path for existing adopters. Deprecated API may not be removed for at least 1 major release (and preferably longer), and after notifying the community.</p>
+ <h2 id="Provisional_API">Provisional API</h2>
+ <p>Provisional API is a work in progress towards fully Declared API and can be used when committers want to gather community feedback before declaring API, or when there are known problems with a new API that cannot be addressed by API freeze date. Provisional API status is meant to be a temporary state and API should not remain provisional for an undue length of time. </p>
+ <p>Provisional Java API should be marked at the class or member level with the following javadoc comment: </p>
+ <pre>/** Provisional API: This class/interface is part of an interim API
+* that is still under development and expected to
+* change before reaching stability.
+*/
+</pre>
+ <p>
+ Provisional Model API should be marked at the ecore level with a metamodel identifier mentioning "incubation" (e.g. "
+ <a href="http://www.eclipse.org/MoDisco/Java/0.2.incubation/java">http://www.eclipse.org/MoDisco/Java/0.2.incubation/java</a>" as nsURI identifier of an ecore definition). Java model API, because it is generated from ecore model, shouldn't have to be marked as provisional accordingly to the ecore definition.
+ </p>
+ <p>Provisional Extension Point API should be marked as "incubation" in extension point naming.</p>
+ <h2 id="Examples_API">Examples API</h2>
+ <p>The project delivers some examples plugins for various EMF Facet features. It includes some models conforming to EMF Facet infrastructure and technologies layers, and some Java API. Those components might be used as a starting point for the end-user reverse engineering process. But Examples API is not as stable as declared API and is expected to change. </p>
+ <p>Any resource included in a plugin whose name indicates 'examples' should be considered of Internal API kind.</p>
+ <p>The examples APIs are not stable. They can change without any notice (including in a service release).</p>
+ <h2 id="Test_API">Test API</h2>
+ <p>In addition the project delivers some tests plugins for various EMF Facet features. It also includes some models and Java classes, which are not as stable as declared API.</p>
+ <p>Any resource included in a plugin whose name indicates 'test' should be also considered of Internal API kind.</p>
+ <p>The test APIs are not stable. They can change without any notice (including in a service release).</p>
+ <h2 id="Internal_Use">Internal Use</h2>
+ <p>Internal code is everything else. EMF Facet reserves the right to change internal code at any time (including in a service release). </p>
+ <p>The internal packages should contain 'internal' in the package name.
+ The internal packages should not appear in "Exported Packages" in manifest file.
+ <i>Note : within EMF Facet components, x-friends|x-internal can be used in the manifest to give 'internal' access to any plugin from the same layer that requires it, in such a case it is accurate to write a API.readme.txt file at the top level of the project to justify why one of its internal package is exposed.</i>
+ </p>
+ <p>Internal extension points should be indicated by 'internal' in the extension point name. </p>
+ <p>Internal model API (rare) should be indicated by 'internal' in the identifier. </p>
+ <p>If adopters require the use of internal code and do not want to be continually broken, they should open bugzilla enhancement requests for API. These bugs will be triaged and will help drive the creation of new declared or provisional API.</p>
+ <h2 id="Deprecated_API_declaration">Deprecated API declaration</h2>
+ <p>When an API need to be declared deprecated, the contributor has to:</p>
+ <ul>
+ <li>Add the @Deprecated tag in the Java code.</li>
+ <li>Open a bug:
+ <ul>
+ <li>having a summary starting with
+ <a href="Deprecated">Deprecated</a>,
+ </li>
+ <li>specifying in which version the API will be removed.</li>
+ </ul>
+ </li>
+ <li>Copy the bug URL in the Java code of the deprecated API.</li>
+ <li>Add in the Javadoc comment using the @deprecated tag:
+ <ul>
+ <li>an explanation of what to do when we are using the deprecated API,</li>
+ <li>the version number of the deprecation,</li>
+ <li>the bug URL.</li>
+ </ul>
+ </li>
+ </ul>
+ <p><font size="-2">
+ Copyright &#169; 2012 Mia-Software.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+
+ <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+</font>
+ </p>
+ </body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/API_Policy.mediawiki b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/API_Policy.mediawiki
new file mode 100644
index 00000000000..4ddc52551a7
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/API_Policy.mediawiki
@@ -0,0 +1,77 @@
+=API Policy=
+
+This policy defines rules which give some guarantees to adopters about the EMF Facet API stability.
+
+We consider EMF Facet API as the union of Java API, Eclipse Extension points, and also Models.
+
+Indeed, since the EMF Facet project addresses Model-Driven Reverse Engineering, it proposes various metamodels definitions and conforming models to support the end-user use cases.
+
+== Declared API ==
+
+Declared API is public API that EMF Facet has committed to supporting for several releases. It should be clean and contain adequate javadoc. Declared API may evolve in the first few milestones, but it must be frozen by the release API freeze date and will not change throughout the remainder of the release or the corresponding maintenance releases.
+
+In following releases, API may sometimes be deprecated due to the normal evolution of EMF Facet. Deprecations must contain information on a migration path for existing adopters. Deprecated API may not be removed for at least 1 major release (and preferably longer), and after notifying the community.
+
+== Provisional API ==
+
+Provisional API is a work in progress towards fully Declared API and can be used when committers want to gather community feedback before declaring API, or when there are known problems with a new API that cannot be addressed by API freeze date. Provisional API status is meant to be a temporary state and API should not remain provisional for an undue length of time.
+
+Provisional Java API should be marked at the class or member level with the following javadoc comment:
+<pre>/** Provisional API: This class/interface is part of an interim API
+* that is still under development and expected to
+* change before reaching stability.
+*/
+</pre>
+Provisional Model API should be marked at the ecore level with a metamodel identifier mentioning "incubation" (e.g. "http://www.eclipse.org/MoDisco/Java/0.2.incubation/java" as nsURI identifier of an ecore definition). Java model API, because it is generated from ecore model, shouldn't have to be marked as provisional accordingly to the ecore definition.
+
+Provisional Extension Point API should be marked as "incubation" in extension point naming.
+
+== Examples API ==
+
+The project delivers some examples plugins for various EMF Facet features. It includes some models conforming to EMF Facet infrastructure and technologies layers, and some Java API. Those components might be used as a starting point for the end-user reverse engineering process. But Examples API is not as stable as declared API and is expected to change.
+
+Any resource included in a plugin whose name indicates 'examples' should be considered of Internal API kind.
+
+The examples APIs are not stable. They can change without any notice (including in a service release).
+
+== Test API ==
+
+In addition the project delivers some tests plugins for various EMF Facet features. It also includes some models and Java classes, which are not as stable as declared API.
+
+Any resource included in a plugin whose name indicates 'test' should be also considered of Internal API kind.
+
+The test APIs are not stable. They can change without any notice (including in a service release).
+
+== Internal Use ==
+
+Internal code is everything else. EMF Facet reserves the right to change internal code at any time (including in a service release).
+
+The internal packages should contain 'internal' in the package name.
+The internal packages should not appear in "Exported Packages" in manifest file. ''Note : within EMF Facet components, x-friends|x-internal can be used in the manifest to give 'internal' access to any plugin from the same layer that requires it, in such a case it is accurate to write a API.readme.txt file at the top level of the project to justify why one of its internal package is exposed.''
+
+Internal extension points should be indicated by 'internal' in the extension point name.
+
+Internal model API (rare) should be indicated by 'internal' in the identifier.
+
+If adopters require the use of internal code and do not want to be continually broken, they should open bugzilla enhancement requests for API. These bugs will be triaged and will help drive the creation of new declared or provisional API.
+
+== Deprecated API declaration ==
+
+When an API need to be declared deprecated, the contributor has to:
+* Add the @Deprecated tag in the Java code.
+* Open a bug:
+** having a summary starting with [Deprecated],
+** specifying in which version the API will be removed.
+* Copy the bug URL in the Java code of the deprecated API.
+* Add in the Javadoc comment using the @deprecated tag:
+** an explanation of what to do when we are using the deprecated API,
+** the version number of the deprecation,
+** the bug URL.
+
+<font size="-2">
+Copyright (c) 2012 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html.
+</font>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/capabilities-toc.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/capabilities-toc.xml
new file mode 100644
index 00000000000..fec6c8dd06b
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/capabilities-toc.xml
@@ -0,0 +1,5 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<toc topic="mediawiki/capabilities.html" label="capabilities">
+ <topic href="mediawiki/capabilities.html" label="Definition"></topic>
+ <topic href="mediawiki/capabilities.html#Selective_Capabilities" label="Selective Capabilities"></topic>
+</toc> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/capabilities.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/capabilities.html
new file mode 100644
index 00000000000..217531c778d
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/capabilities.html
@@ -0,0 +1,58 @@
+<?xml version='1.0' encoding='utf-8' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+ <title>capabilities</title>
+ </head>
+ <body>
+ <h2 id="Definition">Definition</h2>
+ <p>EMF Facet currently defines an
+ <b>Activity</b> (aka
+ <b>Capability</b> in the UI) that allows enabling or disabling all of EMF Facet UI contributions:
+ </p>
+ <pre> &lt;extension point="org.eclipse.ui.activities"&gt;
+ &lt;activity
+ description="%activity.description"
+ id="org.eclipse.papyrus.emf.facet.capabilities.activity"
+ name="%activity.name"&gt;
+ &lt;/activity&gt;
+ &lt;category
+ description="%category.description"
+ id="org.eclipse.papyrus.emf.facet.capabilities.category"
+ name="%category.name"&gt;
+ &lt;/category&gt;
+ &lt;categoryActivityBinding
+ activityId="org.eclipse.papyrus.emf.facet.capabilities.activity"
+ categoryId="org.eclipse.papyrus.emf.facet.capabilities.category"&gt;
+ &lt;/categoryActivityBinding&gt;
+ &lt;activityPatternBinding
+ activityId="org.eclipse.papyrus.emf.facet.capabilities.activity"
+ isEqualityPattern="false"
+ pattern="org\.eclipse\.emf\.facet\..*/.*"&gt;
+ &lt;/activityPatternBinding&gt;
+ &lt;defaultEnablement id="org.eclipse.papyrus.emf.facet.capabilities.activity"/&gt;
+ &lt;/extension&gt;
+</pre>
+ <p>(in plug-in
+ <a href="https://dev.eclipse.org/svnroot/modeling/org.eclipse.emft.facet/trunk/plugins/org.eclipse.papyrus.emf.facet.capabilities">https://dev.eclipse.org/svnroot/modeling/org.eclipse.emft.facet/trunk/plugins/org.eclipse.papyrus.emf.facet.capabilities</a>)
+ </p>
+ <p>Product maintainers can use this definition as a starting point for customizing their product.</p>
+ <h2 id="Selective_Capabilities">Selective Capabilities</h2>
+ <p>Capabilities can be as selective as you want. For example, you can choose to disable certain EMF Facet views. For example, this disables the "new project" wizard:</p>
+ <pre> &lt;activityPatternBinding
+ activityId="com.example.myActivity"
+ isEqualityPattern="true"
+ pattern="org.eclipse.papyrus.emf.facet.infra.common.ui/org.eclipse.papyrus.emf.facet.NewProjectWizard"&gt;
+ &lt;/activityPatternBinding&gt;
+</pre>
+ <p><font size="-2">
+ Copyright &#169; 2012 Mia-Software.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+
+ <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+</font>
+ </p>
+ </body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/capabilities.mediawiki b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/capabilities.mediawiki
new file mode 100644
index 00000000000..b8f9cddc1c2
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/capabilities.mediawiki
@@ -0,0 +1,44 @@
+== Definition ==
+EMF Facet currently defines an '''Activity''' (aka '''Capability''' in the UI) that allows enabling or disabling all of EMF Facet UI contributions:
+ <extension point="org.eclipse.ui.activities">
+ <activity
+ description="%activity.description"
+ id="org.eclipse.papyrus.emf.facet.capabilities.activity"
+ name="%activity.name">
+ </activity>
+ <category
+ description="%category.description"
+ id="org.eclipse.papyrus.emf.facet.capabilities.category"
+ name="%category.name">
+ </category>
+ <categoryActivityBinding
+ activityId="org.eclipse.papyrus.emf.facet.capabilities.activity"
+ categoryId="org.eclipse.papyrus.emf.facet.capabilities.category">
+ </categoryActivityBinding>
+ <activityPatternBinding
+ activityId="org.eclipse.papyrus.emf.facet.capabilities.activity"
+ isEqualityPattern="false"
+ pattern="org\.eclipse\.emf\.facet\..*/.*">
+ </activityPatternBinding>
+ <defaultEnablement id="org.eclipse.papyrus.emf.facet.capabilities.activity"/>
+ </extension>
+
+(in plug-in https://dev.eclipse.org/svnroot/modeling/org.eclipse.emft.facet/trunk/plugins/org.eclipse.papyrus.emf.facet.capabilities)
+
+Product maintainers can use this definition as a starting point for customizing their product.
+
+== Selective Capabilities ==
+Capabilities can be as selective as you want. For example, you can choose to disable certain EMF Facet views. For example, this disables the "new project" wizard:
+ <activityPatternBinding
+ activityId="com.example.myActivity"
+ isEqualityPattern="true"
+ pattern="org.eclipse.papyrus.emf.facet.infra.common.ui/org.eclipse.papyrus.emf.facet.NewProjectWizard">
+ </activityPatternBinding>
+
+<font size="-2">
+Copyright (c) 2012 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html.
+</font>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/checking_BREE-toc.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/checking_BREE-toc.xml
new file mode 100644
index 00000000000..85a8ab6b1b1
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/checking_BREE-toc.xml
@@ -0,0 +1,2 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<toc topic="mediawiki/checking_BREE.html" label="checking_BREE"></toc> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/checking_BREE.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/checking_BREE.html
new file mode 100644
index 00000000000..83f7d1767f6
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/checking_BREE.html
@@ -0,0 +1,37 @@
+<?xml version='1.0' encoding='utf-8' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+ <title>checking_BREE</title>
+ </head>
+ <body>
+ <p>One of the requirements for the simultaneous release is "All plug-ins must correctly list their Bundle Required Execution Environment (BREE)".</p>
+ <p>To satisfy this requirement, we check conformance thusly:</p>
+ <ul>
+ <li>Checkout all EMF Facet plug-ins in the workspace</li>
+ <li>In the
+ <b>Problems</b> view, open the view menu and select
+ <b>Configure Contents...</b>, and create a new configuration with:
+ <ul>
+ <li>Scope = on any element</li>
+ <li>Severity = Error, Warning, Info</li>
+ <li>Text contains = "execution environment"</li>
+ <li>Types: check all</li>
+ </ul>
+ </li>
+ <li>Rebuild the whole workspace, and check that the
+ <b>Problems</b> view is empty
+ </li>
+ <li>Search the workspace in plain text for "JavaSE" in files named "Manifest.MF" : the search should return no results</li>
+ </ul>
+ <p><font size="-2">
+ Copyright &#169; 2012 Mia-Software.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+
+ <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+</font>
+ </p>
+ </body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/checking_BREE.mediawiki b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/checking_BREE.mediawiki
new file mode 100644
index 00000000000..5c105dbc329
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/checking_BREE.mediawiki
@@ -0,0 +1,19 @@
+One of the requirements for the simultaneous release is "All plug-ins must correctly list their Bundle Required Execution Environment (BREE)".
+
+To satisfy this requirement, we check conformance thusly:
+* Checkout all EMF Facet plug-ins in the workspace
+* In the '''Problems''' view, open the view menu and select '''Configure Contents...''', and create a new configuration with:
+** Scope = on any element
+** Severity = Error, Warning, Info
+** Text contains = "execution environment"
+** Types: check all
+* Rebuild the whole workspace, and check that the '''Problems''' view is empty
+* Search the workspace in plain text for "JavaSE" in files named "Manifest.MF" : the search should return no results
+
+<font size="-2">
+Copyright (c) 2012 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html.
+</font>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/new_and_noteworthy-toc.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/new_and_noteworthy-toc.xml
new file mode 100644
index 00000000000..d215da0b13f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/new_and_noteworthy-toc.xml
@@ -0,0 +1,10 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<toc topic="mediawiki/new_and_noteworthy.html" label="new_and_noteworthy">
+ <topic href="mediawiki/new_and_noteworthy.html" label="New and Noteworthy">
+ <topic href="mediawiki/new_and_noteworthy.html#0.1" label="0.1">
+ <topic href="mediawiki/new_and_noteworthy.html#Table_Model_Editor" label="Table Model Editor"></topic>
+ <topic href="mediawiki/new_and_noteworthy.html#Generic_EMF_serialization_mechanism" label="Generic EMF serialization mechanism"></topic>
+ </topic>
+ <topic href="mediawiki/new_and_noteworthy.html#0.3" label="0.3"></topic>
+ </topic>
+</toc> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/new_and_noteworthy.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/new_and_noteworthy.html
new file mode 100644
index 00000000000..d8fcb9e00d3
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/new_and_noteworthy.html
@@ -0,0 +1,58 @@
+<?xml version='1.0' encoding='utf-8' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+ <title>new_and_noteworthy</title>
+ </head>
+ <body>
+ <h1 id="New_and_Noteworthy">New and Noteworthy</h1>
+ <h2 id="0.1">0.1</h2>
+ <p>EMF Facet 0.1 is the first release from EMF Facet, with the initial contribution coming from the MoDisco project.</p>
+ <h3 id="Table_Model_Editor">Table Model Editor</h3>
+ <p>There is a new table editor for models. </p>
+ <p>
+ <img align="middle" title="EMF Facet Table Editor" alt="EMF Facet Table Editor" border="1" src="../img/EMFFacet_NatTable_QueryColumn.png"/>
+ </p>
+ <p>It supports the following functionalities:</p>
+ <ul>
+ <li>The table can be opened from any selection of model elements. </li>
+ <li>The user can add and remove model elements from the table.</li>
+ <li>The table can display the results of queries in additional columns.</li>
+ <li>The user can edit values of the model elements attributes.</li>
+ <li>The user can set unary features (through a cell editor or drag &amp; drop).</li>
+ <li>The user can set n-ary features with a dialog.</li>
+ <li>The table can be used to delete model elements.</li>
+ <li>The table provide a full support of undo/redo.</li>
+ <li>An extension point allow to provide new cell editors for any EType.</li>
+ <li>The table is automatically refreshed the model is modified.</li>
+ <li>The user/integrator can declare types of tables, which can be constrained to a specific type of element.</li>
+ <li>The use can copy a selection as text to paste it into a spreadsheet, text editor, etc.</li>
+ <li>The cells and column headers can be customized through the generic EMF Facet customization mechanism inherited from MoDisco (with .uiCustom files): label, colors, icons, fonts, struckthrough, etc.</li>
+ <li>The tables can be saved to a file and re-opened later.</li>
+ <li>The tables can display Facet attributes and references in additional columns.</li>
+ <li>Columns can be hidden/shown selectively with a dialog.</li>
+ </ul>
+ <p>
+ <img align="middle" title="Customization of the table model editor" alt="Customization of the table model editor" border="1" src="../img/EMFFacet_NatTable_CustomizationExample.png"/>
+ </p>
+ <h3 id="Generic_EMF_serialization_mechanism">Generic EMF serialization mechanism</h3>
+ <p>EMF Facet now defines an extension point and registry to specify serializers for specific types, through a generic serializable EDataType (see ISerializationService).</p>
+ <h2 id="0.3">0.3</h2>
+ <ul>
+ <li>FacetSet and Customization editor.</li>
+ </ul>
+ <p><font size="-2">
+ Copyright &#169; 2012 Mia-Software.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+
+ <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+ Contibutors:
+ Grégoire Dupé - Bug 387470 -
+ <a href="EFacet">EFacet</a>
+ <a href="Custom">Custom</a> Editors
+</font>
+ </p>
+ </body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/new_and_noteworthy.mediawiki b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/new_and_noteworthy.mediawiki
new file mode 100644
index 00000000000..0e581f0707f
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/new_and_noteworthy.mediawiki
@@ -0,0 +1,45 @@
+= New and Noteworthy =
+== 0.1 ==
+EMF Facet 0.1 is the first release from EMF Facet, with the initial contribution coming from the MoDisco project.
+
+=== Table Model Editor ===
+There is a new table editor for models.
+
+[[Image:../img/EMFFacet_NatTable_QueryColumn.png|frame|center|EMF Facet Table Editor]]
+
+It supports the following functionalities:
+* The table can be opened from any selection of model elements.
+* The user can add and remove model elements from the table.
+* The table can display the results of queries in additional columns.
+* The user can edit values of the model elements attributes.
+* The user can set unary features (through a cell editor or drag & drop).
+* The user can set n-ary features with a dialog.
+* The table can be used to delete model elements.
+* The table provide a full support of undo/redo.
+* An extension point allow to provide new cell editors for any EType.
+* The table is automatically refreshed the model is modified.
+* The user/integrator can declare types of tables, which can be constrained to a specific type of element.
+* The use can copy a selection as text to paste it into a spreadsheet, text editor, etc.
+* The cells and column headers can be customized through the generic EMF Facet customization mechanism inherited from MoDisco (with .uiCustom files): label, colors, icons, fonts, struckthrough, etc.
+* The tables can be saved to a file and re-opened later.
+* The tables can display Facet attributes and references in additional columns.
+* Columns can be hidden/shown selectively with a dialog.
+
+[[Image:../img/EMFFacet_NatTable_CustomizationExample.png|frame|center|Customization of the table model editor]]
+
+=== Generic EMF serialization mechanism ===
+EMF Facet now defines an extension point and registry to specify serializers for specific types, through a generic serializable EDataType (see ISerializationService).
+
+== 0.3 ==
+
+* FacetSet and Customization editor.
+
+<font size="-2">
+Copyright (c) 2012 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html.
+Contibutors:
+ Grégoire Dupé - Bug 387470 - [EFacet][Custom] Editors
+</font>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/ramp_down-toc.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/ramp_down-toc.xml
new file mode 100644
index 00000000000..79504e0f945
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/ramp_down-toc.xml
@@ -0,0 +1,2 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<toc topic="mediawiki/ramp_down.html" label="ramp_down"></toc> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/ramp_down.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/ramp_down.html
new file mode 100644
index 00000000000..fb13ff9f049
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/ramp_down.html
@@ -0,0 +1,24 @@
+<?xml version='1.0' encoding='utf-8' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+ <title>ramp_down</title>
+ </head>
+ <body>
+ <p>Projects must have a written ramp down policy by M6, at the latest, and provide link. The plan should describe when the project plans to be feature complete, have API frozen, and similar. The EMF Facet Ramp Down conforms to the
+ <a href="http://wiki.eclipse.org/Modeling_Project_Ramp_Down_Policy">Modeling Project Ramp Down Policy</a>
+ </p>
+ <p>The EMF Facet Ramp Down is described in the
+ <a href="http://www.eclipse.org/projects/project-plan.php?projectid=modeling.emft.emf-facet#release_milestones">Project Plan</a>.
+ </p>
+ <p><font size="-2">
+ Copyright &#169; 2012 Mia-Software.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+
+ <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+</font>
+ </p>
+ </body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/ramp_down.mediawiki b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/ramp_down.mediawiki
new file mode 100644
index 00000000000..55317d213f2
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/ramp_down.mediawiki
@@ -0,0 +1,11 @@
+Projects must have a written ramp down policy by M6, at the latest, and provide link. The plan should describe when the project plans to be feature complete, have API frozen, and similar. The EMF Facet Ramp Down conforms to the [http://wiki.eclipse.org/Modeling_Project_Ramp_Down_Policy|Modeling Project Ramp Down Policy]
+
+The EMF Facet Ramp Down is described in the [http://www.eclipse.org/projects/project-plan.php?projectid=modeling.emft.emf-facet#release_milestones|Project Plan].
+
+<font size="-2">
+Copyright (c) 2012 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html.
+</font>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/retention_policy-toc.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/retention_policy-toc.xml
new file mode 100644
index 00000000000..a0f35758426
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/retention_policy-toc.xml
@@ -0,0 +1,9 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<toc topic="mediawiki/retention_policy.html" label="retention_policy">
+ <topic href="mediawiki/retention_policy.html" label="Retention Policy for EMF Facet builds (Draft)">
+ <topic href="mediawiki/retention_policy.html#Code_in_SVN" label="Code in SVN"></topic>
+ <topic href="mediawiki/retention_policy.html#Distributions_in_zip_files" label="Distributions in zip files"></topic>
+ <topic href="mediawiki/retention_policy.html#Features_in_update_site_repository" label="Features in update site repository"></topic>
+ <topic href="mediawiki/retention_policy.html#What_if_these_policies_don.27t_work_for_you.3F" label="What if these policies don't work for you?"></topic>
+ </topic>
+</toc> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/retention_policy.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/retention_policy.html
new file mode 100644
index 00000000000..1dcd56c15ff
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/retention_policy.html
@@ -0,0 +1,34 @@
+<?xml version='1.0' encoding='utf-8' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+ <title>retention_policy</title>
+ </head>
+ <body>
+ <h2 id="Retention_Policy_for_EMF_Facet_builds_.28Draft.29">Retention Policy for EMF Facet builds (Draft)</h2>
+ <h3 id="Code_in_SVN">Code in SVN</h3>
+ <p>Any code that was included in a Release, is left in SVN forever. The version of a module that is included in a release will typically have a convenience version tag on the module, such as "R3_1_2".</p>
+ <h3 id="Distributions_in_zip_files">Distributions in zip files</h3>
+ <p>Formal releases are kept forever, but only the most recent release is kept on the
+ <a href="http://www.eclipse.org/modeling/emft/facet/downloads/">main download page</a>. Other, older distributions can be found on the
+ <a href="http://archive.eclipse.org/facet/downloads/">archive site</a>.
+ </p>
+ <p>While developing a new release, milestone builds are kept until the release, at which point they are deleted. </p>
+ <p>Similarly, while developing a milestone, weekly integration builds are kept until the milestone is available, and then they are deleted.</p>
+ <h3 id="Features_in_update_site_repository">Features in update site repository</h3>
+ <p>The update site repository will be treated as a persistent repository of content. Once something is installable from a release repository URL, it will always be installable from that repository URL. Note that the efficiency of installing old releases may not be maintained. Also, the "categories" that display the features in Eclipse 'Install New Software' dialog will change over time, but the underlying features and bundles will be there, even if not displayed in a category.</p>
+ <h3 id="What_if_these_policies_don.27t_work_for_you.3F">What if these policies don't work for you?</h3>
+ <p>Just ask. Open a bug and request what you need.
+ For example, an adopter might be building against an I-build, and isn't ready to move up to a particular milestone build for a few more weeks, so they'd prefer some I-build to not be removed at the end of the milestone. </p>
+ <p>In other words, we are glad to be accommodating, but don't want to accommodate every hypothetical combination, since it's more work for us, we don't test it, and requires higher disk and bandwidth on the Eclipse mirroring system. So, open a bug if something special is required.</p>
+ <p><font size="-2">
+ Copyright &#169; 2012 Mia-Software.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+
+ <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+</font>
+ </p>
+ </body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/retention_policy.mediawiki b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/retention_policy.mediawiki
new file mode 100644
index 00000000000..05673195711
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/retention_policy.mediawiki
@@ -0,0 +1,32 @@
+== Retention Policy for EMF Facet builds (Draft) ==
+
+=== Code in SVN ===
+
+Any code that was included in a Release, is left in SVN forever. The version of a module that is included in a release will typically have a convenience version tag on the module, such as "R3_1_2".
+
+=== Distributions in zip files ===
+
+Formal releases are kept forever, but only the most recent release is kept on the [http://www.eclipse.org/modeling/emft/facet/downloads/ main download page]. Other, older distributions can be found on the [http://archive.eclipse.org/facet/downloads/ archive site].
+
+While developing a new release, milestone builds are kept until the release, at which point they are deleted.
+
+Similarly, while developing a milestone, weekly integration builds are kept until the milestone is available, and then they are deleted.
+
+=== Features in update site repository ===
+
+The update site repository will be treated as a persistent repository of content. Once something is installable from a release repository URL, it will always be installable from that repository URL. Note that the efficiency of installing old releases may not be maintained. Also, the "categories" that display the features in Eclipse 'Install New Software' dialog will change over time, but the underlying features and bundles will be there, even if not displayed in a category.
+
+=== What if these policies don't work for you? ===
+
+Just ask. Open a bug and request what you need.
+For example, an adopter might be building against an I-build, and isn't ready to move up to a particular milestone build for a few more weeks, so they'd prefer some I-build to not be removed at the end of the milestone.
+
+In other words, we are glad to be accommodating, but don't want to accommodate every hypothetical combination, since it's more work for us, we don't test it, and requires higher disk and bandwidth on the Eclipse mirroring system. So, open a bug if something special is required.
+
+<font size="-2">
+Copyright (c) 2012 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html.
+</font>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/running_tests-toc.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/running_tests-toc.xml
new file mode 100644
index 00000000000..64b81c657a8
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/running_tests-toc.xml
@@ -0,0 +1,2 @@
+<?xml version='1.0' encoding='utf-8' ?>
+<toc topic="mediawiki/running_tests.html" label="running_tests"></toc> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/running_tests.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/running_tests.html
new file mode 100644
index 00000000000..fe5446fff99
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/running_tests.html
@@ -0,0 +1,34 @@
+<?xml version='1.0' encoding='utf-8' ?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
+ <title>running_tests</title>
+ </head>
+ <body>
+ <p>To run the EMF Facet tests, you must:</p>
+ <ul>
+ <li>install EMF Facet, or checkout all EMF Facet plug-ins in your workspace (from
+ <a href="https://dev.eclipse.org/svnroot/modeling/org.eclipse.emft.facet/trunk/plugins/">https://dev.eclipse.org/svnroot/modeling/org.eclipse.emft.facet/trunk/plugins/</a>)
+ </li>
+ <li>check-out everything from
+ <a href="https://dev.eclipse.org/svnroot/modeling/org.eclipse.emft.facet/trunk/tests/">https://dev.eclipse.org/svnroot/modeling/org.eclipse.emft.facet/trunk/tests/</a>
+ </li>
+ <li>run org.eclipse.papyrus.emf.facet.tests.AllTests as a
+ <b>JUnit Plug-in Test</b>
+ </li>
+ <li>run org.eclipse.papyrus.emf.facet.tests.AllUITests as a
+ <b>JUnit Plug-in Test</b>, with
+ <b>Run in UI thread</b> unchecked in the launch configuration
+ </li>
+ </ul>
+ <p><font size="-2">
+ Copyright &#169; 2012 Mia-Software.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+
+ <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+</font>
+ </p>
+ </body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/running_tests.mediawiki b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/running_tests.mediawiki
new file mode 100644
index 00000000000..67222deb6b1
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/mediawiki/running_tests.mediawiki
@@ -0,0 +1,13 @@
+To run the EMF Facet tests, you must:
+* install EMF Facet, or checkout all EMF Facet plug-ins in your workspace (from https://dev.eclipse.org/svnroot/modeling/org.eclipse.emft.facet/trunk/plugins/)
+* check-out everything from https://dev.eclipse.org/svnroot/modeling/org.eclipse.emft.facet/trunk/tests/
+* run org.eclipse.papyrus.emf.facet.tests.AllTests as a '''JUnit Plug-in Test'''
+* run org.eclipse.papyrus.emf.facet.tests.AllUITests as a '''JUnit Plug-in Test''', with '''Run in UI thread''' unchecked in the launch configuration
+
+<font size="-2">
+Copyright (c) 2012 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html.
+</font>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/plugin.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/plugin.xml
new file mode 100644
index 00000000000..16059fa8cef
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/plugin.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<!--
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Gregoire Dupe (Mia-Software) - Bug 337584 - Documentation set up
+ Nicolas Bros (Mia-Software) - Bug 375789 - Documentation
+-->
+<plugin>
+
+ <extension
+ point="org.eclipse.help.toc">
+ <toc
+ file="maintoc.xml"
+ primary="true">
+ </toc>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/src/org/eclipse/papyrus/emf/facet/doc/tasks/GenerateApiJavadocTask.java b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/src/org/eclipse/papyrus/emf/facet/doc/tasks/GenerateApiJavadocTask.java
new file mode 100644
index 00000000000..5c2993e992e
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/src/org/eclipse/papyrus/emf/facet/doc/tasks/GenerateApiJavadocTask.java
@@ -0,0 +1,140 @@
+/*******************************************************************************
+ * Copyright (c) 2011, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.doc.tasks;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map.Entry;
+import java.util.jar.Attributes;
+import java.util.jar.Manifest;
+import java.util.regex.Pattern;
+
+import org.apache.tools.ant.BuildException;
+import org.apache.tools.ant.Project;
+import org.apache.tools.ant.taskdefs.Javadoc;
+import org.apache.tools.ant.types.FileSet;
+
+public class GenerateApiJavadocTask extends Javadoc {
+
+ private String sourceTreePath = null;
+ private Pattern pattern = Pattern.compile(".*"); //$NON-NLS-1$
+
+ public void setSourceTreePath(final String path) {
+ this.sourceTreePath = path;
+ }
+
+ public void setPattern(final String pattern) {
+ this.pattern = Pattern.compile(pattern);
+ }
+
+ @Override
+ public void execute() throws BuildException {
+ if (this.sourceTreePath == null) {
+ throw new BuildException("sourceTreePath must be set"); //$NON-NLS-1$
+ }
+
+ getProject().log("sourceTreePath = " + this.sourceTreePath, Project.MSG_DEBUG); //$NON-NLS-1$
+
+ final List<File> apiPackages = new ArrayList<File>();
+
+ File root = new File(this.sourceTreePath);
+ if (!root.isAbsolute()) {
+ root = new File(getProject().getBaseDir(), this.sourceTreePath);
+ }
+ if (!root.exists()) {
+ throw new BuildException("root path doesn't exist: " + root.getPath()); //$NON-NLS-1$
+ }
+ try {
+ for (final String childPath : root.list()) {
+ final boolean matches = this.pattern.matcher(childPath).matches();
+ if (matches) {
+ getProject().log("pattern matches: " + childPath, Project.MSG_DEBUG); //$NON-NLS-1$
+ } else {
+ getProject().log("pattern rejects: " + childPath, Project.MSG_DEBUG); //$NON-NLS-1$
+ }
+ if (matches) {
+ final File file = new File(root, childPath);
+ if (file.isDirectory()) {
+ final File manifestFile = new File(file, "META-INF/MANIFEST.MF"); //$NON-NLS-1$
+ if (manifestFile.exists()) {
+ FileInputStream fileInputStream;
+ fileInputStream = new FileInputStream(manifestFile);
+ final Manifest manifest = new Manifest(fileInputStream);
+
+ final Attributes mainAttributes = manifest.getMainAttributes();
+ for (final Entry<Object, Object> entry : mainAttributes.entrySet()) {
+ final String name = entry.getKey().toString();
+ if ("Export-Package".equals(name)) { //$NON-NLS-1$
+ final String value = (String) entry.getValue();
+ final String[] packageEntries = value.split(","); //$NON-NLS-1$
+ for (final String packageEntry : packageEntries) {
+ final String[] parts = packageEntry.split(";"); //$NON-NLS-1$
+ final String packageName = parts[0];
+ boolean internal = false;
+ for (int i = 1; i < parts.length; i++) {
+ if (parts[i].contains("x-internal") || parts[i].contains("x-friends")) { //$NON-NLS-1$ //$NON-NLS-2$
+ internal = true;
+ }
+ }
+ if (!internal) {
+ final File packageDir = new File(file.getPath(), "src/" + packageName.replace('.', '/')); //$NON-NLS-1$
+ if (packageDir.exists()) {
+ apiPackages.add(packageDir);
+ }
+ }
+ }
+ }
+ }
+ fileInputStream.close();
+ }
+ }
+ }
+ }
+ } catch (final Exception e) {
+ throw new BuildException("Error reading manifests", e); //$NON-NLS-1$
+ }
+
+ for (final File apiPackage : apiPackages) {
+ final String[] children = apiPackage.list();
+ boolean packageImpl = false;
+ boolean factoryImpl = false;
+ for (final String child : children) {
+ if (child.endsWith("PackageImpl.java")) { //$NON-NLS-1$
+ packageImpl = true;
+ }
+ if (child.endsWith("FactoryImpl.java")) { //$NON-NLS-1$
+ factoryImpl = true;
+ }
+ }
+ if (packageImpl && factoryImpl) {
+ getProject().log("excluding metamodel implementation package: " + apiPackage.getPath(), Project.MSG_INFO); //$NON-NLS-1$
+ continue;
+ }
+
+ if (apiPackage.exists()) {
+ System.out.println(apiPackage);
+
+ final FileSet fileSet = new FileSet();
+ fileSet.setProject(getProject());
+ fileSet.setDir(apiPackage);
+ fileSet.setIncludes("*.java"); //$NON-NLS-1$
+ System.out.println(fileSet);
+ addFileset(fileSet);
+ } else {
+ getProject().log("package doesn't exist: " + apiPackage, Project.MSG_ERR); //$NON-NLS-1$
+ }
+ }
+
+ super.execute();
+ }
+}
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/toc-full.xml b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/toc-full.xml
new file mode 100644
index 00000000000..1c9434312e1
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/toc-full.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ Copyright (c) 2012 CEA LIST.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Nicolas Bros (Mia-Software) - Bug 375789 - Documentation
+-->
+
+<!-- This is the full table of contents, only used by the XSLT transformation -->
+<!-- When changing the table of contents of a documentation plug-in, copy&paste the changes here -->
+<!-- Then resolve the plugin-relative references by search&replace: "mediawiki/" to "../<plugin>/mediawiki/" -->
+
+<toc label="EMF Facet Documentation">
+ <topic label="User Guide">
+ <topic label="EFacet" href="../org.eclipse.papyrus.emf.facet.efacet.doc/mediawiki/user.html"/>
+ <topic label="Customization" href="../org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/user.html"/>
+ <topic label="Aggregates" href="../org.eclipse.papyrus.emf.facet.aggregate.doc/mediawiki/user.html"/>
+ <topic label="Table Widget" href="../org.eclipse.papyrus.emf.facet.widgets.table.doc/mediawiki/user.html"/>
+ <topic label="General EMF Utilities" href="../org.eclipse.papyrus.emf.facet.util.emf.doc/mediawiki/user.html"/>
+ <topic label="Deprecated Components">
+ <topic label="NatTable Widget (previous version)" href="../org.eclipse.papyrus.emf.facet.widgets.nattable.doc/mediawiki/user.html"/>
+ </topic>
+ </topic>
+
+ <topic label="Developer Guide">
+ <topic label="EFacet" href="../org.eclipse.papyrus.emf.facet.efacet.doc/mediawiki/plugin_dev.html"/>
+ <topic label="Customization" href="../org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/plugin_dev.html"/>
+ <topic label="Aggregates" href="../org.eclipse.papyrus.emf.facet.aggregate.doc/mediawiki/plugin_dev.html"/>
+ <topic label="Table Widget" href="../org.eclipse.papyrus.emf.facet.widgets.table.doc/mediawiki/plugin_dev.html"/>
+ <topic label="General EMF Utilities" href="../org.eclipse.papyrus.emf.facet.util.emf.doc/mediawiki/plugin_dev.html"/>
+ <topic href="javadoc/index.html" label="API Reference"/>
+ <topic label="Deprecated Components">
+ <topic label="Model Browser" href="../org.eclipse.papyrus.emf.facet.infra.browser.doc/mediawiki/plugin_dev.html"/>
+ <topic label="NatTable Widget (previous version)" href="../org.eclipse.papyrus.emf.facet.widgets.nattable.doc/mediawiki/plugin_dev.html"/>
+ </topic>
+ </topic>
+
+ <topic label="Project Documents">
+ <topic href="mediawiki/new_and_noteworthy.html" label="New and Noteworthy"/>
+ <topic label="API use report">
+ <anchor id="api_report"/>
+ </topic>
+ <topic label="Simultaneous Release Tracker Required Documents">
+ <topic href="mediawiki/API_Policy.html" label="API Policy"/>
+ <topic href="mediawiki/capabilities.html" label="Capabilities"/>
+ <topic href="mediawiki/checking_BREE.html" label="Checking the Bundle-RequiredExecutionEnvironment"/>
+ <topic href="mediawiki/ramp_down.html" label="Ramp Down Policy"/>
+ <topic href="mediawiki/retention_policy.html" label="Retention Policy"/>
+ <topic href="mediawiki/running_tests.html" label="Running Tests"/>
+ </topic>
+ </topic>
+</toc>
diff --git a/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/toc.html b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/toc.html
new file mode 100644
index 00000000000..0d469835ba8
--- /dev/null
+++ b/plugins/facet/editor/org.eclipse.papyrus.emf.facet.doc/toc.html
@@ -0,0 +1,109 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE html
+ PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
+<html>
+ <head>
+ <style type="text/css">
+ a { text-decoration:none; color:#000099;}
+ ul { list-style-type:square; margin-left: 0.75em; padding-left: 0.75em; }
+ ul ul { list-style-type:square; margin-left: 0.75em; padding-left: 0.75em; }
+ </style>
+ <title>EMF Facet Documentation - table of contents</title>
+ </head>
+ <body>
+ <h1>EMF Facet Documentation</h1>
+ <h2>User Guide</h2>
+ <ul>
+ <li>
+ <a href="../org.eclipse.papyrus.emf.facet.efacet.doc/mediawiki/user.html" target="content">EFacet</a>
+ </li>
+ <li>
+ <a href="../org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/user.html" target="content">Customization</a>
+ </li>
+ <li>
+ <a href="../org.eclipse.papyrus.emf.facet.aggregate.doc/mediawiki/user.html"
+ target="content">Aggregates</a>
+ </li>
+ <li>
+ <a href="../org.eclipse.papyrus.emf.facet.widgets.table.doc/mediawiki/user.html"
+ target="content">Table Widget</a>
+ </li>
+ <li>
+ <a href="../org.eclipse.papyrus.emf.facet.util.emf.doc/mediawiki/user.html"
+ target="content">General EMF Utilities</a>
+ </li>
+ <h2>Deprecated Components</h2>
+ <ul>
+ <li>
+ <a href="../org.eclipse.papyrus.emf.facet.widgets.nattable.doc/mediawiki/user.html"
+ target="content">NatTable Widget (previous version)</a>
+ </li>
+ </ul>
+ </ul>
+ <h2>Developer Guide</h2>
+ <ul>
+ <li>
+ <a href="../org.eclipse.papyrus.emf.facet.efacet.doc/mediawiki/plugin_dev.html"
+ target="content">EFacet</a>
+ </li>
+ <li>
+ <a href="../org.eclipse.papyrus.emf.facet.custom.doc/mediawiki/plugin_dev.html"
+ target="content">Customization</a>
+ </li>
+ <li>
+ <a href="../org.eclipse.papyrus.emf.facet.aggregate.doc/mediawiki/plugin_dev.html"
+ target="content">Aggregates</a>
+ </li>
+ <li>
+ <a href="../org.eclipse.papyrus.emf.facet.widgets.table.doc/mediawiki/plugin_dev.html"
+ target="content">Table Widget</a>
+ </li>
+ <li>
+ <a href="../org.eclipse.papyrus.emf.facet.util.emf.doc/mediawiki/plugin_dev.html"
+ target="content">General EMF Utilities</a>
+ </li>
+ <li>
+ <a href="javadoc/index.html" target="content">API Reference</a>
+ </li>
+ <h2>Deprecated Components</h2>
+ <ul>
+ <li>
+ <a href="../org.eclipse.papyrus.emf.facet.infra.browser.doc/mediawiki/plugin_dev.html"
+ target="content">Model Browser</a>
+ </li>
+ <li>
+ <a href="../org.eclipse.papyrus.emf.facet.widgets.nattable.doc/mediawiki/plugin_dev.html"
+ target="content">NatTable Widget (previous version)</a>
+ </li>
+ </ul>
+ </ul>
+ <h2>Project Documents</h2>
+ <ul>
+ <li>
+ <a href="mediawiki/new_and_noteworthy.html" target="content">New and Noteworthy</a>
+ </li>
+ <h2>API use report</h2>
+ <h2>Simultaneous Release Tracker Required Documents</h2>
+ <ul>
+ <li>
+ <a href="mediawiki/API_Policy.html" target="content">API Policy</a>
+ </li>
+ <li>
+ <a href="mediawiki/capabilities.html" target="content">Capabilities</a>
+ </li>
+ <li>
+ <a href="mediawiki/checking_BREE.html" target="content">Checking the Bundle-RequiredExecutionEnvironment</a>
+ </li>
+ <li>
+ <a href="mediawiki/ramp_down.html" target="content">Ramp Down Policy</a>
+ </li>
+ <li>
+ <a href="mediawiki/retention_policy.html" target="content">Retention Policy</a>
+ </li>
+ <li>
+ <a href="mediawiki/running_tests.html" target="content">Running Tests</a>
+ </li>
+ </ul>
+ </ul>
+ </body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.checkstyle
new file mode 100644
index 00000000000..32718848b88
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.checkstyle
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2010 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Bros (Mia-Software) - initial API and implementation
+-->
+<fileset-config file-format-version="1.2.0" simple-config="true">
+ <local-check-config name="EmfFacet" location="../org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.project
new file mode 100644
index 00000000000..661dff5f089
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.common.core</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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..4824b802631
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.settings/org.eclipse.core.runtime.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.settings/org.eclipse.core.runtime.prefs
new file mode 100644
index 00000000000..c522e1f4ae2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+line.separator=\n
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..060c5ee3d2e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,11 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+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.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..6b8c8305854
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/META-INF/MANIFEST.MF
@@ -0,0 +1,14 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.common.core;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.common.core.internal.Activator
+Bundle-Vendor: %Bundle-Vendor
+Require-Bundle: org.eclipse.core.runtime;bundle-version="3.6.0",
+ com.ibm.icu;bundle-version="4.2.1"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.common.core.internal,
+ org.eclipse.papyrus.emf.facet.common.core.internal.utils
+
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..64056c9123b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,16 @@
+###############################################################################
+# Copyright (c) 2011 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+# Nicolas Guyomar (Mia-Software) - Bug 334000 Simple catalog manager
+###############################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.common.core
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Common Core (Incubation)
+extension-point.name = catalogManager
+extension-point.name.0 = modeldeclaration \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/README.txt b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/README.txt
new file mode 100644
index 00000000000..deddc589e7d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/README.txt
@@ -0,0 +1,3 @@
+This plug-in contains classes common to other EMF Facet plug-ins.
+These classes implement functionality that deal with EMF Facet concepts.
+Utility classes not linked to EMF Facet concepts must go in this project instead: org.eclipse.papyrus.emf.facet.util.core
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/about.html
new file mode 100644
index 00000000000..d1714826b27
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/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>January 4, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/build.properties
new file mode 100644
index 00000000000..8de8d60add3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/build.properties
@@ -0,0 +1,19 @@
+###############################################################################
+# Copyright (c) 2011 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+# Nicolas Guyomar (Mia-Software) - Bug 334000 Simple catalog manager
+# Gregoire Dupe (Mia-Software) - Bug 334000 Simple catalog manager
+###############################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ about.html,\
+ OSGI-INF/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/src/org/eclipse/papyrus/emf/facet/common/core/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/src/org/eclipse/papyrus/emf/facet/common/core/internal/Activator.java
new file mode 100644
index 00000000000..30d7f7a67b5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/src/org/eclipse/papyrus/emf/facet/common/core/internal/Activator.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ * Nicolas Guyomar (Mia-Software) - Bug 334000 Simple catalog manager
+ */
+package org.eclipse.papyrus.emf.facet.common.core.internal;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+public class Activator extends Plugin {
+
+ private static BundleContext context;
+
+ // The shared instance
+ private static Activator plugin;
+
+ public static Plugin getDefault() {
+ return Activator.plugin;
+ }
+
+ static BundleContext getContext() {
+ return Activator.context;
+ }
+
+ @Override
+ public void start(final BundleContext bundleContext) throws Exception {
+ super.start(bundleContext);
+ Activator.context = bundleContext;
+ Activator.plugin = this;
+ }
+
+ @Override
+ public void stop(final BundleContext bundleContext) throws Exception {
+ Activator.context = null;
+ Activator.plugin = null;
+ super.stop(bundleContext);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/src/org/eclipse/papyrus/emf/facet/common/core/internal/utils/StringMatcher.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/src/org/eclipse/papyrus/emf/facet/common/core/internal/utils/StringMatcher.java
new file mode 100644
index 00000000000..b3c13c83a69
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.core/src/org/eclipse/papyrus/emf/facet/common/core/internal/utils/StringMatcher.java
@@ -0,0 +1,500 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2010 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.core.internal.utils;
+
+import java.util.Vector;
+
+import com.ibm.icu.lang.UCharacter;
+
+/**
+ * A string pattern matcher. Supports '*' and '?' wildcards.
+ *
+ * FIXME yet another duplicated version of StringMatcher (Bug 269424)
+ */
+public class StringMatcher {
+ private final String fPattern;
+
+ private final int fLength; // pattern length
+
+ private final boolean fIgnoreWildCards;
+
+ private final boolean fIgnoreCase;
+
+ private boolean fHasLeadingStar;
+
+ private boolean fHasTrailingStar;
+
+ private String[] fSegments; // the given pattern is split into * separated
+ // segments
+
+ /* boundary value beyond which we don't need to search in the text */
+ private int fBound = 0;
+
+ private static final char SINGLE_WILD_CARD = '\u0000';
+
+ public static class Position {
+ private final int start; // inclusive
+ private final int end; // exclusive
+
+ public Position(final int start, final int end) {
+ this.start = start;
+ this.end = end;
+ }
+
+ public int getStart() {
+ return this.start;
+ }
+
+ public int getEnd() {
+ return this.end;
+ }
+ }
+
+ /**
+ * StringMatcher constructor takes in a String object that is a simple
+ * pattern which may contain '*' for 0 and many characters and '?' for
+ * exactly one character.
+ *
+ * Literal '*' and '?' characters must be escaped in the pattern e.g.,
+ * "\*" means literal "*", etc.
+ *
+ * Escaping any other character (including the escape character itself),
+ * just results in that character in the pattern. e.g., "\a" means "a" and
+ * "\\" means "\"
+ *
+ * If invoking the StringMatcher with string literals in Java, don't forget
+ * escape characters are represented by "\\".
+ *
+ * @param pattern
+ * the pattern to match text against
+ * @param ignoreCase
+ * if true, case is ignored
+ * @param ignoreWildCards
+ * if true, wild cards and their escape sequences are ignored
+ * (everything is taken literally).
+ */
+ public StringMatcher(final String pattern, final boolean ignoreCase,
+ final boolean ignoreWildCards) {
+ if (pattern == null) {
+ throw new IllegalArgumentException();
+ }
+ this.fIgnoreCase = ignoreCase;
+ this.fIgnoreWildCards = ignoreWildCards;
+ this.fPattern = pattern;
+ this.fLength = pattern.length();
+
+ if (this.fIgnoreWildCards) {
+ parseNoWildCards();
+ } else {
+ parseWildCards();
+ }
+ }
+
+ /**
+ * Find the first occurrence of the pattern between <code>start</code>
+ * )(inclusive) and <code>end</code>(exclusive).
+ *
+ * @param text
+ * the String object to search in
+ * @param start
+ * the starting index of the search range, inclusive
+ * @param end
+ * the ending index of the search range, exclusive
+ * @return a <code>StringMatcher.Position</code> object that keeps the
+ * starting (inclusive) and ending positions (exclusive) of the
+ * first occurrence of the pattern in the specified range of the
+ * text; return null if not found or subtext is empty (start==end).
+ * A pair of zeros is returned if pattern is empty string Note that
+ * for pattern like "*abc*" with leading and trailing stars,
+ * position of "abc" is returned. For a pattern like"*??*" in text
+ * "abcdf", (1,3) is returned
+ */
+ public StringMatcher.Position find(final String text, final int start,
+ final int end) {
+ int newStart = start;
+ int newEnd = end;
+
+ if (text == null) {
+ throw new IllegalArgumentException();
+ }
+
+ int tlen = text.length();
+ if (newStart < 0) {
+ newStart = 0;
+ }
+ if (newEnd > tlen) {
+ newEnd = tlen;
+ }
+ if (newEnd < 0 || newStart >= newEnd) {
+ return null;
+ }
+ if (this.fLength == 0) {
+ return new Position(newStart, newStart);
+ }
+ if (this.fIgnoreWildCards) {
+ int x = posIn(text, newStart, newEnd);
+ if (x < 0) {
+ return null;
+ }
+ return new Position(x, x + this.fLength);
+ }
+
+ int segCount = this.fSegments.length;
+ if (segCount == 0) {
+ // pattern contains only '*'(s)
+ return new Position(newStart, newEnd);
+ }
+
+ int curPos = newStart;
+ int matchStart = -1;
+ int i;
+ for (i = 0; i < segCount && curPos < newEnd; ++i) {
+ String current = this.fSegments[i];
+ int nextMatch = regExpPosIn(text, curPos, newEnd, current);
+ if (nextMatch < 0) {
+ return null;
+ }
+ if (i == 0) {
+ matchStart = nextMatch;
+ }
+ curPos = nextMatch + current.length();
+ }
+ if (i < segCount) {
+ return null;
+ }
+ return new Position(matchStart, curPos);
+ }
+
+ /**
+ * match the given <code>text</code> with the pattern
+ *
+ * @return true if matched otherwise false
+ * @param text
+ * a String object
+ */
+ public boolean match(final String text) {
+ return match(text, 0, text.length());
+ }
+
+ /**
+ * Given the starting (inclusive) and the ending (exclusive) positions in
+ * the <code>text</code>, determine if the given substring matches with
+ * aPattern
+ *
+ * @return true if the specified portion of the text matches the pattern
+ * @param text
+ * a String object that contains the substring to match
+ * @param start
+ * marks the starting position (inclusive) of the substring
+ * @param end
+ * marks the ending index (exclusive) of the substring
+ */
+ public boolean match(final String text, final int start, final int end) {
+ int newStart = start;
+ int newEnd = end;
+
+ if (null == text) {
+ throw new IllegalArgumentException();
+ }
+
+ if (newStart > newEnd) {
+ return false;
+ }
+
+ if (this.fIgnoreWildCards) {
+ return (newEnd - newStart == this.fLength)
+ && this.fPattern.regionMatches(this.fIgnoreCase, 0, text,
+ newStart, this.fLength);
+ }
+ int segCount = this.fSegments.length;
+ if (segCount == 0 && (this.fHasLeadingStar || this.fHasTrailingStar)) {
+ // pattern contains only '*'(s)
+ return true;
+ }
+ if (newStart == newEnd) {
+ return this.fLength == 0;
+ }
+ if (this.fLength == 0) {
+ return newStart == newEnd;
+ }
+
+ int tlen = text.length();
+ if (newStart < 0) {
+ newStart = 0;
+ }
+ if (newEnd > tlen) {
+ newEnd = tlen;
+ }
+
+ int tCurPos = newStart;
+ int bound = newEnd - this.fBound;
+ if (bound < 0) {
+ return false;
+ }
+ int i = 0;
+ String current = this.fSegments[i];
+ int segLength = current.length();
+
+ /* process first segment */
+ if (!this.fHasLeadingStar) {
+ if (!regExpRegionMatches(text, newStart, current, 0, segLength)) {
+ return false;
+ }
+ ++i;
+ tCurPos = tCurPos + segLength;
+ }
+ if ((this.fSegments.length == 1) && (!this.fHasLeadingStar)
+ && (!this.fHasTrailingStar)) {
+ // only one segment to match, no wildcards specified
+ return tCurPos == newEnd;
+ }
+ /* process middle segments */
+ for (; i < segCount && tCurPos <= bound; ++i) {
+ current = this.fSegments[i];
+ int currentMatch;
+ int k = current.indexOf(StringMatcher.SINGLE_WILD_CARD);
+ if (k < 0) {
+ currentMatch = textPosIn(text, tCurPos, newEnd, current);
+ if (currentMatch < 0) {
+ return false;
+ }
+ } else {
+ currentMatch = regExpPosIn(text, tCurPos, newEnd, current);
+ if (currentMatch < 0) {
+ return false;
+ }
+ }
+ tCurPos = currentMatch + current.length();
+ }
+
+ /* process final segment */
+ if (!this.fHasTrailingStar && tCurPos != newEnd) {
+ int clen = current.length();
+ return regExpRegionMatches(text, newEnd - clen, current, 0, clen);
+ }
+ return i == segCount;
+ }
+
+ /**
+ * This method parses the given pattern into segments seperated by wildcard
+ * '*' characters. Since wildcards are not being used in this case, the
+ * pattern consists of a single segment.
+ */
+ private void parseNoWildCards() {
+ this.fSegments = new String[1];
+ this.fSegments[0] = this.fPattern;
+ this.fBound = this.fLength;
+ }
+
+ /**
+ * Parses the given pattern into segments separated by wildcard '*'
+ * characters.
+ */
+ private void parseWildCards() {
+ if (this.fPattern.startsWith("*")) { //$NON-NLS-1$
+ this.fHasLeadingStar = true;
+ }
+ if (this.fPattern.endsWith("*")) { //$NON-NLS-1$
+ /* make sure it's not an escaped wildcard */
+ if (this.fLength > 1
+ && this.fPattern.charAt(this.fLength - 2) != '\\') {
+ this.fHasTrailingStar = true;
+ }
+ }
+
+ Vector<String> temp = new Vector<String>();
+
+ int pos = 0;
+ StringBuffer buf = new StringBuffer();
+ while (pos < this.fLength) {
+ char c = this.fPattern.charAt(pos++);
+ switch (c) {
+ case '\\':
+ if (pos >= this.fLength) {
+ buf.append(c);
+ } else {
+ char next = this.fPattern.charAt(pos++);
+ /* if it's an escape sequence */
+ if (next == '*' || next == '?' || next == '\\') {
+ buf.append(next);
+ } else {
+ /* not an escape sequence, just insert literally */
+ buf.append(c);
+ buf.append(next);
+ }
+ }
+ break;
+ case '*':
+ if (buf.length() > 0) {
+ /* new segment */
+ temp.addElement(buf.toString());
+ this.fBound += buf.length();
+ buf.setLength(0);
+ }
+ break;
+ case '?':
+ /* append special character representing single match wildcard */
+ buf.append(StringMatcher.SINGLE_WILD_CARD);
+ break;
+ default:
+ buf.append(c);
+ }
+ }
+
+ /* add last buffer to segment list */
+ if (buf.length() > 0) {
+ temp.addElement(buf.toString());
+ this.fBound += buf.length();
+ }
+
+ this.fSegments = new String[temp.size()];
+ temp.copyInto(this.fSegments);
+ }
+
+ /**
+ * @param text
+ * a string which contains no wildcard
+ * @param start
+ * the starting index in the text for search, inclusive
+ * @param end
+ * the stopping point of search, exclusive
+ * @return the starting index in the text of the pattern , or -1 if not
+ * found
+ */
+ protected int posIn(final String text, final int start, final int end) {
+ int max = end - this.fLength;
+
+ if (!this.fIgnoreCase) {
+ int i = text.indexOf(this.fPattern, start);
+ if (i == -1 || i > max) {
+ return -1;
+ }
+ return i;
+ }
+
+ for (int i = start; i <= max; ++i) {
+ if (text.regionMatches(true, i, this.fPattern, 0, this.fLength)) {
+ return i;
+ }
+ }
+
+ return -1;
+ }
+
+ /**
+ * @param text
+ * a simple regular expression that may only contain '?'(s)
+ * @param start
+ * the starting index in the text for search, inclusive
+ * @param end
+ * the stopping point of search, exclusive
+ * @param p
+ * a simple regular expression that may contains '?'
+ * @return the starting index in the text of the pattern , or -1 if not
+ * found
+ */
+ protected int regExpPosIn(final String text, final int start,
+ final int end, final String p) {
+ int plen = p.length();
+
+ int max = end - plen;
+ for (int i = start; i <= max; ++i) {
+ if (regExpRegionMatches(text, i, p, 0, plen)) {
+ return i;
+ }
+ }
+ return -1;
+ }
+
+ /**
+ *
+ * @return boolean
+ * @param text
+ * a String to match
+ * @param tStart
+ * indicates the starting index of match, inclusive
+ * @param p
+ * a simple regular expression that may contain '?'
+ */
+ protected boolean regExpRegionMatches(final String text, final int tStart,
+ final String p, final int pStart, final int plen) {
+ int curTStart = tStart;
+ int curPStart = pStart;
+ int curPlen = plen;
+
+ while (curPlen-- > 0) {
+ char tchar = text.charAt(curTStart++);
+ char pchar = p.charAt(curPStart++);
+
+ /* process wild cards */
+ if (!this.fIgnoreWildCards) {
+ /* skip single wild cards */
+ if (pchar == StringMatcher.SINGLE_WILD_CARD) {
+ continue;
+ }
+ }
+ if (pchar == tchar) {
+ continue;
+ }
+ if (this.fIgnoreCase) {
+ if (UCharacter.toUpperCase(tchar) == UCharacter
+ .toUpperCase(pchar)) {
+ continue;
+ }
+ // comparing after converting to upper case doesn't handle all
+ // cases;
+ // also compare after converting to lower case
+ if (UCharacter.toLowerCase(tchar) == UCharacter
+ .toLowerCase(pchar)) {
+ continue;
+ }
+ }
+ return false;
+ }
+ return true;
+ }
+
+ /**
+ * @param text
+ * the string to match
+ * @param start
+ * the starting index in the text for search, inclusive
+ * @param end
+ * the stopping point of search, exclusive
+ * @param p
+ * a string that has no wildcard
+ * @return the starting index in the text of the pattern , or -1 if not
+ * found
+ */
+ protected int textPosIn(final String text, final int start, final int end,
+ final String p) {
+
+ int plen = p.length();
+ int max = end - plen;
+
+ if (!this.fIgnoreCase) {
+ int i = text.indexOf(p, start);
+ if (i == -1 || i > max) {
+ return -1;
+ }
+ return i;
+ }
+
+ for (int i = start; i <= max; ++i) {
+ if (text.regionMatches(true, i, p, 0, plen)) {
+ return i;
+ }
+ }
+
+ return -1;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.checkstyle
new file mode 100644
index 00000000000..d058aea5b90
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.checkstyle
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2010 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Bros (Mia-Software) - initial API and implementation
+-->
+<fileset-config file-format-version="1.2.0" simple-config="true">
+ <local-check-config name="EmfFacet" location="/org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.project
new file mode 100644
index 00000000000..bd536308433
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.project
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.common.sdk.core</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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..010b8eb87b7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,3 @@
+eclipse.preferences.version=1
+encoding//src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/messages.properties=ISO-8859-1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.settings/org.eclipse.core.runtime.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.settings/org.eclipse.core.runtime.prefs
new file mode 100644
index 00000000000..dea8d10ff97
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,3 @@
+#Tue Dec 13 09:46:07 CET 2011
+eclipse.preferences.version=1
+line.separator=\n
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..060c5ee3d2e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,11 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+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.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..51b717f169a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/META-INF/MANIFEST.MF
@@ -0,0 +1,20 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.common.sdk.core;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.common.sdk.core.internal.Activator
+Bundle-Vendor: %Bundle-Vendor
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore;bundle-version="2.6.0",
+ org.eclipse.papyrus.emf.facet.util.emf.catalog;bundle-version="0.1.0",
+ org.eclipse.pde.core;bundle-version="3.6.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.1.0",
+ com.ibm.icu;bundle-version="4.2.1",
+ org.eclipse.core.resources;bundle-version="3.6.0",
+ org.eclipse.jdt.core;bundle-version="3.6.0",
+ org.eclipse.jdt.launching;bundle-version="3.5.100"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.common.sdk.core.internal.exported;x-friends:="org.eclipse.papyrus.emf.facet.common.sdk.ui,org.eclipse.papyrus.emf.facet.custom.sdk.core",
+ org.eclipse.papyrus.emf.facet.common.sdk.core.internal.exported.utils
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..e49444d65bd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,13 @@
+###############################################################################
+# Copyright (c) 2012 CEA LIST.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+###############################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.common.sdk.core
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Common SDK Core (Incubation)
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/about.html
new file mode 100644
index 00000000000..3019b95b9cf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/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>December 22, 2008</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/build.properties
new file mode 100644
index 00000000000..72f52df4e79
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/build.properties
@@ -0,0 +1,20 @@
+###############################################################################
+# Copyright (c) 2012 CEA LIST.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+###############################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ about.html,\
+ OSGI-INF/,\
+ plugin.xml,\
+ schema/,\
+ resources/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/plugin.xml
new file mode 100644
index 00000000000..ffbad6a912f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/plugin.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+ <extension-point id="builderRegistration" name="EMF Facet Builder registration" schema="schema/builderRegistration.exsd"/>
+ <extension
+ id="org.eclipse.papyrus.emf.facet.common.sdk.core.projectBuilder"
+ name="EMF Facet project builder"
+ point="org.eclipse.core.resources.builders">
+ <builder
+ callOnEmptyDelta="true"
+ hasNature="true"
+ isConfigurable="false">
+ <run
+ class="org.eclipse.papyrus.emf.facet.common.sdk.core.internal.EmfFacetProjectBuilder">
+ </run>
+ </builder>
+ </extension>
+ <extension
+ id="org.eclipse.papyrus.emf.facet.common.sdk.core.ProjectNature"
+ name="EMF Facet"
+ point="org.eclipse.core.resources.natures">
+ <runtime>
+ <run
+ class="org.eclipse.papyrus.emf.facet.common.sdk.core.internal.EmfFacetProjectNature">
+ </run>
+ </runtime>
+ <builder id="org.eclipse.papyrus.emf.facet.common.sdk.core.projectBuilder"/>
+ <requires-nature id="org.eclipse.jdt.core.javanature"/>
+ <requires-nature id="org.eclipse.pde.PluginNature"/>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/resources/Activator.java.template b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/resources/Activator.java.template
new file mode 100644
index 00000000000..59aa1af9ba6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/resources/Activator.java.template
@@ -0,0 +1,32 @@
+package {0};
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+/** The activator class controls the plug-in life cycle */
+public class Activator extends Plugin {
+
+ // The shared instance
+ private static Activator plugin;
+
+ @Override
+ public void start(final BundleContext context) throws Exception {
+ super.start(context);
+ Activator.plugin = this;
+ }
+
+ @Override
+ public void stop(final BundleContext context) throws Exception {
+ Activator.plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return Activator.plugin;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/schema/builderRegistration.exsd b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/schema/builderRegistration.exsd
new file mode 100644
index 00000000000..3e019b24c0f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/schema/builderRegistration.exsd
@@ -0,0 +1,138 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.papyrus.emf.facet.common.core" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appinfo>
+ <meta.schema plugin="org.eclipse.papyrus.emf.facet.common.core" id="builderRegistration" name="EMF Facet Builder Registration"/>
+ </appinfo>
+ <documentation>
+ This extension point allows to register builders that will be run when the main EMF Facet builder is run.
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appinfo>
+ <meta.element />
+ </appinfo>
+ </annotation>
+ <complexType>
+ <choice>
+ <element ref="builder"/>
+ </choice>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute translatable="true"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="builder">
+ <complexType>
+ <choice minOccurs="0" maxOccurs="unbounded">
+ <element ref="depends"/>
+ </choice>
+ <attribute name="class" type="string" use="required">
+ <annotation>
+ <documentation>
+ A class that implements org.eclipse.papyrus.emf.facet.common.sdk.core.internal.exported.IEmfFacetProjectBuilder.
+ </documentation>
+ <appinfo>
+ <meta.attribute kind="java" basedOn=":org.eclipse.papyrus.emf.facet.common.sdk.core.internal.exported.IEmfFacetProjectBuilder"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="depends">
+ <complexType>
+ <attribute name="builder" type="string" use="required">
+ <annotation>
+ <documentation>
+ ID of an EMF Facet builder on which this EMF Facet builder depends.
+ </documentation>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="since"/>
+ </appinfo>
+ <documentation>
+ 0.2.0
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="examples"/>
+ </appinfo>
+ <documentation>
+ &lt;pre&gt;
+ &lt;extension point=&quot;org.eclipse.papyrus.emf.facet.common.sdk.core.builderRegistration&quot;&gt;
+ &lt;builder class=&quot;org.eclipse.papyrus.emf.facet.custom.sdk.core.internal.validation.CustomizationValidationBuilder&quot;/&gt;
+ &lt;/extension&gt;
+&lt;/pre&gt;
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="apiinfo"/>
+ </appinfo>
+ <documentation>
+ The builder must implement org.eclipse.papyrus.emf.facet.common.sdk.core.internal.exported.IEmfFacetProjectBuilder
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="implementation"/>
+ </appinfo>
+ <documentation>
+ For an example, see the customization validation builder in org.eclipse.papyrus.emf.facet.custom.sdk.core:&lt;br/&gt;
+org.eclipse.papyrus.emf.facet.custom.sdk.core.internal.validation.CustomizationValidationBuilder
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="copyright"/>
+ </appinfo>
+ <documentation>
+ Copyright (c) 2009-2012 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+&lt;a
+href=&quot;http://www.eclipse.org/legal/epl-v10.html&quot;&gt;http://www.eclipse.org/legal/epl-v10.html&lt;/a&gt;
+Contributors:
+ Grégoire Dupé (Mia-Software)
+ Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+ </documentation>
+ </annotation>
+
+</schema>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/Activator.java
new file mode 100644
index 00000000000..7105000da48
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/Activator.java
@@ -0,0 +1,42 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.sdk.core.internal;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+/** The activator class controls the plug-in life cycle */
+public class Activator extends Plugin {
+
+ // The shared instance
+ private static Activator plugin;
+
+ @Override
+ public void start(final BundleContext context) throws Exception {
+ super.start(context);
+ Activator.plugin = this;
+ }
+
+ @Override
+ public void stop(final BundleContext context) throws Exception {
+ Activator.plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return Activator.plugin;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/EmfFacetProjectBuilder.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/EmfFacetProjectBuilder.java
new file mode 100644
index 00000000000..bc320211f9e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/EmfFacetProjectBuilder.java
@@ -0,0 +1,203 @@
+/*******************************************************************************
+ * Copyright (c) 2009-2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software)
+ * Nicolas Bros (Mia-Software)
+ * Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.sdk.core.internal;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.ListIterator;
+import java.util.Map;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IncrementalProjectBuilder;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.common.sdk.core.internal.exported.CommonConstants;
+import org.eclipse.papyrus.emf.facet.common.sdk.core.internal.exported.IEmfFacetProjectBuilder;
+
+/**
+ * A builder for EMF Facet projects, that delegates to children builders provided by the extension point
+ * "builderRegistration".
+ *
+ * @author Gregoire Dupe (Mia-Software)
+ */
+public class EmfFacetProjectBuilder extends IncrementalProjectBuilder {
+
+ private static ArrayList<BuilderDescriptor> emffacetBuilders = null;
+
+ public EmfFacetProjectBuilder() {
+ super();
+ if (EmfFacetProjectBuilder.emffacetBuilders == null) {
+ EmfFacetProjectBuilder.emffacetBuilders = new ArrayList<BuilderDescriptor>();
+ synchronized (EmfFacetProjectBuilder.emffacetBuilders) {
+ final IConfigurationElement[] configs = Platform.getExtensionRegistry()
+ .getConfigurationElementsFor(CommonConstants.BUILDER_EXTENSION_POINT_ID);
+ for (final IConfigurationElement config : configs) {
+ try {
+ final String id = config.getDeclaringExtension().getUniqueIdentifier();
+ final IEmfFacetProjectBuilder builderInst = (IEmfFacetProjectBuilder) config
+ .createExecutableExtension("class"); //$NON-NLS-1$
+ final BuilderDescriptor builderDescriptor = new BuilderDescriptor(
+ builderInst, id);
+ EmfFacetProjectBuilder.emffacetBuilders.add(builderDescriptor);
+ for (final IConfigurationElement depends : config.getChildren("depends")) { //$NON-NLS-1$
+ builderDescriptor.getDependsOn().add(depends.getAttribute("builder")); //$NON-NLS-1$
+ }
+ } catch (final Exception e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+ EmfFacetProjectBuilder.emffacetBuilders = sortBuilders(EmfFacetProjectBuilder.emffacetBuilders);
+ }
+ }
+ validateBuilderDependencies();
+ }
+
+ /**
+ * Sort builders by dependencies : first those that depend on nothing, then those that depend on those already in
+ * the list, etc.
+ */
+ private static ArrayList<BuilderDescriptor> sortBuilders(final ArrayList<BuilderDescriptor> builders) {
+ final ArrayList<BuilderDescriptor> result = new ArrayList<EmfFacetProjectBuilder.BuilderDescriptor>();
+ final List<BuilderDescriptor> remaining = new LinkedList<EmfFacetProjectBuilder.BuilderDescriptor>();
+ remaining.addAll(builders);
+
+ while (!remaining.isEmpty()) {
+ boolean stuck = true;
+ final ListIterator<BuilderDescriptor> listIterator = remaining.listIterator();
+ while (listIterator.hasNext()) {
+ final BuilderDescriptor builder = listIterator.next();
+ // if it depends only on builders that are already in the list
+ // before it, then add it here
+ if (dependendsOnlyOn(builder, result)) {
+ result.add(builder);
+ listIterator.remove();
+ stuck = false;
+ }
+ }
+ if (stuck) {
+ throw new RuntimeException("Cannot order builders due to incoherent dependencies"); //$NON-NLS-1$
+ }
+ }
+
+ return result;
+ }
+
+ /** Whether the given builder only depends on those in the list. */
+ private static boolean dependendsOnlyOn(final BuilderDescriptor builder, final ArrayList<BuilderDescriptor> list) {
+ final List<String> dependsOn = builder.getDependsOn();
+ for (final String dep : dependsOn) {
+ boolean found = false;
+ for (final BuilderDescriptor prev : list) {
+ if (prev.getId().equals(dep)) {
+ found = true;
+ break;
+ }
+ }
+ if (!found) {
+ return false;
+ }
+ }
+ return true;
+ }
+
+ private static void validateBuilderDependencies() {
+ final List<String> idList = new ArrayList<String>();
+ for (final BuilderDescriptor descriptor : EmfFacetProjectBuilder.emffacetBuilders) {
+ idList.add(descriptor.getId());
+ }
+ for (final BuilderDescriptor descriptor : EmfFacetProjectBuilder.emffacetBuilders) {
+ for (final String dependsOn : descriptor.getDependsOn()) {
+ if (!idList.contains(dependsOn)) {
+ Logger.logWarning("The builder " + descriptor.getId() + " depends on " //$NON-NLS-1$//$NON-NLS-2$
+ + dependsOn + " which does not exist.", Activator //$NON-NLS-1$
+ .getDefault());
+ }
+ }
+ }
+
+ }
+
+ @Override
+ protected void clean(final IProgressMonitor monitor) throws CoreException {
+ synchronized (EmfFacetProjectBuilder.emffacetBuilders) {
+ final Iterator<BuilderDescriptor> builders = EmfFacetProjectBuilder.emffacetBuilders
+ .iterator();
+ while (builders.hasNext()) {
+ final BuilderDescriptor builder = builders.next();
+ builder.getBuilderInst().clean(this, monitor);
+ }
+ }
+ }
+
+ @Override
+ protected IProject[] build(final int kind, @SuppressWarnings("rawtypes") final Map args, final IProgressMonitor monitor)
+ throws CoreException {
+ synchronized (EmfFacetProjectBuilder.emffacetBuilders) {
+ final Iterator<BuilderDescriptor> builders = EmfFacetProjectBuilder.emffacetBuilders
+ .iterator();
+ while (builders.hasNext()) {
+ final BuilderDescriptor builder = builders.next();
+ builder.getBuilderInst().build(this, kind, args, monitor);
+ }
+ }
+ return null;
+ }
+
+ /**
+ * This class is used to hold the builder id, the builder instance and the builder dependencies in a single
+ * structure.
+ */
+ private class BuilderDescriptor {
+ private final IEmfFacetProjectBuilder builderInst;
+
+ private final List<String> dependsOn = new ArrayList<String>();
+
+ private final String id;
+
+ /**
+ * @param builderInst
+ * an instance of the described builder
+ * @param id
+ * the id of the described builder
+ */
+ public BuilderDescriptor(final IEmfFacetProjectBuilder builderInst, final String id) {
+ this.builderInst = builderInst;
+ this.id = id;
+ }
+
+ public String getId() {
+ return this.id;
+ }
+
+ /** @return the list of dependencies on other EmfFacet builders. */
+ public List<String> getDependsOn() {
+ return this.dependsOn;
+ }
+
+ /** @return the instance of the described builder */
+ public IEmfFacetProjectBuilder getBuilderInst() {
+ return this.builderInst;
+ }
+
+ @Override
+ public String toString() {
+ return this.id + "(" + this.builderInst.getClass().getName() + ")"; //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/EmfFacetProjectNature.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/EmfFacetProjectNature.java
new file mode 100644
index 00000000000..6f5be62ae47
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/EmfFacetProjectNature.java
@@ -0,0 +1,59 @@
+/*******************************************************************************
+ * Copyright (c) 2009-2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Giquel (Mia-Software)
+ * Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.sdk.core.internal;
+
+import org.eclipse.core.resources.ICommand;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IProjectDescription;
+import org.eclipse.core.resources.IProjectNature;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.papyrus.emf.facet.common.sdk.core.internal.exported.CommonConstants;
+
+/** The implementation of the EMF Facet project nature. */
+public class EmfFacetProjectNature implements IProjectNature {
+
+ /** The platform project this <code>IJavaProject</code> is based on */
+ private IProject project;
+
+ /** @see org.eclipse.core.resources.IProjectNature#configure() */
+ public void configure() throws CoreException {
+ // Add nature-specific information
+ // for the project, such as adding a builder
+ // to a project's build spec.
+ final IProjectDescription projectDescription = this.project.getDescription();
+ final ICommand[] oldBuildSpec = this.project.getDescription().getBuildSpec();
+ final ICommand[] newBuildSpec = new ICommand[oldBuildSpec.length + 1];
+ System.arraycopy(oldBuildSpec, 0, newBuildSpec, 0, oldBuildSpec.length);
+ final ICommand command = this.project.getDescription().newCommand();
+ command.setBuilderName(CommonConstants.BUILDER_NAME);
+ newBuildSpec[oldBuildSpec.length] = command;
+ projectDescription.setBuildSpec(newBuildSpec);
+ this.project.setDescription(projectDescription, new NullProgressMonitor());
+ }
+
+ /** @see org.eclipse.core.resources.IProjectNature#deconfigure() */
+ public void deconfigure() throws CoreException {
+ // Remove the nature-specific information here.
+ }
+
+ /** @see org.eclipse.core.resources.IProjectNature#getProject() */
+ public IProject getProject() {
+ return this.project;
+ }
+
+ /** @see org.eclipse.core.resources.IProjectNature#setProject(org.eclipse.core.resources.IProject) */
+ public void setProject(final IProject value) {
+ this.project = value;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/Messages.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/Messages.java
new file mode 100644
index 00000000000..104fe4fbbda
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/Messages.java
@@ -0,0 +1,26 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.sdk.core.internal;
+
+import org.eclipse.osgi.util.NLS;
+
+public class Messages extends NLS {
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.emf.facet.common.sdk.core.internal.messages"; //$NON-NLS-1$
+ public static String ProjectUtils_createEMFFacetProject;
+ public static String ProjectUtils_createPluginProject;
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/exported/CommonConstants.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/exported/CommonConstants.java
new file mode 100644
index 00000000000..4b1437cb577
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/exported/CommonConstants.java
@@ -0,0 +1,25 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.sdk.core.internal.exported;
+
+public final class CommonConstants {
+ private CommonConstants() {
+ // not instantiable
+ }
+
+ public static final String BUILDER_EXTENSION_POINT_ID = "org.eclipse.papyrus.emf.facet.common.sdk.core.builderRegistration"; //$NON-NLS-1$
+
+ /** The builder of EMF Facet projects */
+ public static final String BUILDER_NAME = "org.eclipse.papyrus.emf.facet.common.sdk.core.projectBuilder"; //$NON-NLS-1$
+
+ /** The nature of EMF Facet projects */
+ public static final String NATURE_ID = "org.eclipse.papyrus.emf.facet.common.sdk.core.ProjectNature"; //$NON-NLS-1$
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/exported/IEmfFacetProjectBuilder.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/exported/IEmfFacetProjectBuilder.java
new file mode 100644
index 00000000000..6f094a19aa7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/exported/IEmfFacetProjectBuilder.java
@@ -0,0 +1,51 @@
+/*******************************************************************************
+ * Copyright (c) 2009-2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Initial API
+ * Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.sdk.core.internal.exported;
+
+import java.util.Map;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IncrementalProjectBuilder;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IProgressMonitor;
+
+/**
+ * The EMF Facet project builder delegates its build behavior to a set of classes
+ * implementing this interface. This set of classes is defined through the use of
+ * the <tt>org.eclipse.papyrus.emf.facet.common.sdk.core.builderRegistration</tt> extension
+ * point.
+ *
+ * @author Grégoire Dupé (Mia-Software)
+ *
+ */
+public interface IEmfFacetProjectBuilder {
+
+ /**
+ * @param builder
+ * The EMF Facet builder which delegates its build behavior to the
+ * classes that implement {@link IEmfFacetProjectBuilder}.
+ * @throws CoreException
+ */
+ IProject[] build(IncrementalProjectBuilder builder, int kind, Map<?, ?> args, IProgressMonitor monitor)
+ throws CoreException;
+
+ /**
+ * @see IncrementalProjectBuilder#clean(IProgressMonitor)
+ * @param builder
+ * The EmfFacet builder which delegates the build behavior to the
+ * classes that implement {@link IEmfFacetProjectBuilder}.
+ * @param monitor
+ * @throws CoreException
+ */
+ void clean(IncrementalProjectBuilder builder, IProgressMonitor monitor)
+ throws CoreException;
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/exported/utils/ProjectUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/exported/utils/ProjectUtils.java
new file mode 100644
index 00000000000..d3f8f9ecc6d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/exported/utils/ProjectUtils.java
@@ -0,0 +1,355 @@
+/*******************************************************************************
+ * Copyright (c) 2010, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software)
+ * Fabien Giquel (Mia-Software)
+ * Nicolas Bros (Mia-Software)
+ * Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.sdk.core.internal.exported.utils;
+
+import java.io.ByteArrayInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+import org.eclipse.core.resources.ICommand;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IProjectDescription;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.core.internal.exported.FileUtils;
+import org.eclipse.papyrus.emf.facet.util.core.internal.exported.FolderUtils;
+import org.eclipse.jdt.core.IClasspathEntry;
+import org.eclipse.jdt.core.IJavaProject;
+import org.eclipse.jdt.core.JavaConventions;
+import org.eclipse.jdt.core.JavaCore;
+import org.eclipse.jdt.core.JavaModelException;
+import org.eclipse.jdt.launching.JavaRuntime;
+import org.eclipse.papyrus.emf.facet.common.sdk.core.internal.Activator;
+import org.eclipse.papyrus.emf.facet.common.sdk.core.internal.Messages;
+import org.eclipse.papyrus.emf.facet.common.sdk.core.internal.exported.CommonConstants;
+
+import com.ibm.icu.lang.UCharacter;
+
+/**
+ * @author Gregoire Dupe (Mia-Software), Fabien Giquel (Mia-Software)
+ *
+ */
+public final class ProjectUtils {
+
+ private ProjectUtils() {
+ // Nothing
+ }
+
+ private static final String JAVA_VERSION = "J2SE-1.5"; //$NON-NLS-1$
+
+ public static void addPdeClassPath(final IProject project) throws JavaModelException {
+ final IJavaProject javaProject = JavaCore.create(project);
+ final IClasspathEntry[] oldClassPath = javaProject.getRawClasspath();
+ for (final IClasspathEntry classpathEntry : oldClassPath) {
+ if (classpathEntry.getPath().equals(new Path("org.eclipse.pde.core.requiredPlugins"))) { //$NON-NLS-1$
+ return;
+ }
+ }
+ final IClasspathEntry[] newClassPath = new IClasspathEntry[oldClassPath.length + 1];
+ System.arraycopy(oldClassPath, 0, newClassPath, 0, oldClassPath.length);
+ newClassPath[oldClassPath.length] = JavaCore.newContainerEntry(new Path("org.eclipse.pde.core.requiredPlugins")); //$NON-NLS-1$
+ javaProject.setRawClasspath(newClassPath, new NullProgressMonitor());
+ }
+
+ /**
+ * @author Gregoire Dupe (Mia-Software) - Removing "Require-Bundle" statement
+ */
+ public static void createManifest(final IProject project) throws CoreException {
+ final IFolder folder = project.getFolder("META-INF"); //$NON-NLS-1$
+ if (!folder.exists()) {
+ folder.create(true, true, new NullProgressMonitor());
+ }
+ final IFile manifestFile = folder.getFile("MANIFEST.MF"); //$NON-NLS-1$
+ if (!manifestFile.exists()) {
+ final StringBuffer manifestSB = new StringBuffer();
+ manifestSB.append("Manifest-Version: 1.0\n"); //$NON-NLS-1$
+ manifestSB.append("Bundle-ManifestVersion: 2\n"); //$NON-NLS-1$
+ manifestSB.append("Bundle-Name: " + project.getName() + "\n"); //$NON-NLS-1$ //$NON-NLS-2$
+ final String packageName = ProjectUtils.packageName(project.getName());
+ manifestSB.append("Bundle-SymbolicName: " + packageName //$NON-NLS-1$
+ + ";singleton:=true\n"); //$NON-NLS-1$
+ manifestSB.append("Bundle-Version: 0.0.1.qualifier\n"); //$NON-NLS-1$
+ manifestSB
+ .append("Bundle-Activator: " + ProjectUtils.bundleActivatorQualifiedName(packageName) + "\n"); //$NON-NLS-1$ //$NON-NLS-2$
+ //manifestSB.append("Bundle-Vendor: bundle vendor\n"); //$NON-NLS-1$
+ manifestSB.append("Require-Bundle: org.eclipse.core.runtime,\n"); //$NON-NLS-1$
+ manifestSB.append(" org.eclipse.papyrus.emf.facet.util.core\n"); //$NON-NLS-1$
+ manifestSB.append("Bundle-RequiredExecutionEnvironment: " //$NON-NLS-1$
+ + ProjectUtils.JAVA_VERSION + "\n"); //$NON-NLS-1$
+ manifestSB.append("Bundle-ActivationPolicy: lazy\n"); //$NON-NLS-1$
+ manifestSB.append("Bundle-ClassPath: .,bin\n"); //$NON-NLS-1$
+ final InputStream source = new ByteArrayInputStream(manifestSB.toString().getBytes());
+ manifestFile.create(source, true, new NullProgressMonitor());
+ }
+ }
+
+ private static String bundleActivatorQualifiedName(final String packageName) {
+ return packageName + ".Activator"; //$NON-NLS-1$
+ }
+
+ private static void createActivator(final IProject project) throws CoreException {
+ final String packageName = ProjectUtils.packageName(project.getName());
+ final String qualifiedName = ProjectUtils.bundleActivatorQualifiedName(packageName);
+ final String path = qualifiedName.replaceAll("\\.", "/"); //$NON-NLS-1$ //$NON-NLS-2$
+ final IFile activatorFile = project
+ .getFile(new Path("src").append(path).addFileExtension("java")); //$NON-NLS-1$ //$NON-NLS-2$
+ FolderUtils.createFolder((IFolder) activatorFile.getParent());
+ if (!activatorFile.exists()) {
+ try {
+ final String template = FileUtils.getFileContents(Activator.getDefault()
+ .getBundle(), "resources/Activator.java.template"); //$NON-NLS-1$
+ final String activatorContents = template.replace("{0}", packageName); //$NON-NLS-1$
+ final InputStream source = new ByteArrayInputStream(activatorContents.getBytes());
+ activatorFile.create(source, true, new NullProgressMonitor());
+ } catch (final IOException e) {
+ Logger.logError(e, "Couldn't create Activator", Activator //$NON-NLS-1$
+ .getDefault());
+ }
+ }
+ }
+
+ /** Transform the given name into a valid package and bundle name */
+ public static String packageName(final String name) {
+ final StringBuilder builder = new StringBuilder();
+ char prev = ' ';
+ for (int i = 0; i < name.length(); i++) {
+ final char c = name.charAt(i);
+ if (c >= 'a' && c <= 'z' || c >= 'A' && c <= 'Z' || c == '_') {
+ builder.append(c);
+ prev = c;
+ } else if (c >= '0' && c <= '9') {
+ if (builder.length() == 0 || prev == '.') {
+ builder.append("_"); //$NON-NLS-1$
+ }
+ builder.append(c);
+ prev = c;
+ } else if (c == '.') {
+ if (prev == '.') {
+ continue;
+ }
+ if (builder.length() == 0 || prev >= '0' && prev <= '9') {
+ builder.append("_"); //$NON-NLS-1$
+ }
+ builder.append(c);
+ prev = c;
+ } else {
+ builder.append("_"); //$NON-NLS-1$
+ }
+ }
+
+ String result = builder.toString();
+ // first letter to lowercase
+ if (result.length() > 0 && UCharacter.isUpperCase(result.charAt(0))) {
+ result = UCharacter.toLowerCase(result.charAt(0)) + result.substring(1);
+ }
+
+ final IStatus status = JavaConventions.validatePackageName(result, JavaCore.VERSION_1_5,
+ JavaCore.VERSION_1_5);
+ if (!status.isOK()) {
+ Logger.logWarning("Couldn't make valid package name from project name: " //$NON-NLS-1$
+ + status.getMessage(), Activator.getDefault());
+ return name;
+ }
+ return result;
+ }
+
+ public static void addPdeNature(final IProject project) throws CoreException {
+ final String pluginNature = "org.eclipse.pde.PluginNature"; //$NON-NLS-1$
+ final IProjectDescription description = project.getDescription();
+ final String[] natures = description.getNatureIds();
+ if (!Arrays.asList(natures).contains(pluginNature)) {
+ final String[] newNatures = new String[natures.length + 1];
+ System.arraycopy(natures, 0, newNatures, 0, natures.length);
+ newNatures[natures.length] = pluginNature;
+ description.setNatureIds(newNatures);
+ project.setDescription(description, new NullProgressMonitor());
+ }
+ }
+
+ public static void addPdeBuilder(final IProject project) throws CoreException {
+ final IProjectDescription projectDescription = project.getDescription();
+ final ICommand[] oldBuildSpec = project.getDescription().getBuildSpec();
+ for (final ICommand command : oldBuildSpec) {
+ if ("org.eclipse.pde.ManifestBuilder".equals(command.getBuilderName())) { //$NON-NLS-1$
+ return;
+ }
+ }
+ final ICommand[] newBuildSpec = new ICommand[oldBuildSpec.length + 2];
+ System.arraycopy(oldBuildSpec, 0, newBuildSpec, 0, oldBuildSpec.length);
+ final ICommand command1 = project.getDescription().newCommand();
+ command1.setBuilderName("org.eclipse.pde.ManifestBuilder"); //$NON-NLS-1$
+ final ICommand command2 = project.getDescription().newCommand();
+ command2.setBuilderName("org.eclipse.pde.SchemaBuilder"); //$NON-NLS-1$
+ newBuildSpec[oldBuildSpec.length] = command1;
+ newBuildSpec[oldBuildSpec.length + 1] = command2;
+ projectDescription.setBuildSpec(newBuildSpec);
+ project.setDescription(projectDescription, new NullProgressMonitor());
+ }
+
+ /**
+ * @author Gregoire Dupe (Mia-Software) - classpath entries modification
+ */
+ public static void configureAsJavaProject(final IProject project, final IProgressMonitor monitor)
+ throws CoreException {
+ ProjectUtils.addNature(project, monitor, JavaCore.NATURE_ID);
+ final IJavaProject javaProject = JavaCore.create(project);
+ // Set output folder
+ final IPath path = project.getFullPath().append("bin"); //$NON-NLS-1$
+ javaProject.setOutputLocation(path, null);
+ final List<IClasspathEntry> classpathEntries = new ArrayList<IClasspathEntry>();
+ // Set source folder
+ final IFolder sourceFolder = project.getFolder("src"); //$NON-NLS-1$
+ if (!sourceFolder.exists()) {
+ sourceFolder.create(false, true, monitor);
+ classpathEntries.add(JavaCore.newSourceEntry(javaProject.getPath().append(
+ new Path("src")))); //$NON-NLS-1$
+ }
+ final Path jrePath = new Path(JavaRuntime.JRE_CONTAINER
+ + "/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/" //$NON-NLS-1$
+ + ProjectUtils.JAVA_VERSION);
+ boolean hasJrePath = false;
+ final IClasspathEntry[] existingClassPath = javaProject.getRawClasspath();
+ for (final IClasspathEntry classpathEntry : existingClassPath) {
+ if (jrePath.equals(classpathEntry.getPath())) {
+ hasJrePath = true;
+ }
+ }
+ if (!hasJrePath) {
+ // add the jre api to the classpath
+ classpathEntries.add(JavaCore.newContainerEntry(jrePath));
+ javaProject.setRawClasspath(classpathEntries.toArray(new IClasspathEntry[0]), monitor);
+ }
+ }
+
+ public static void configureAsPluginProject(final IProject project) throws CoreException {
+ // TODO PDE Operations would be useful here but they are internal in PDE
+ ProjectUtils.addPdeNature(project);
+ // PDE builders are automatically added when the PDE nature is added
+ // ProjectUtils.addPdeBuilder(project);
+ ProjectUtils.addPdeClassPath(project);
+ ProjectUtils.createManifest(project);
+ ProjectUtils.createActivator(project);
+ }
+
+ public static void addNature(final IProject project, final IProgressMonitor monitor,
+ final String natureId) throws CoreException {
+ final IProjectDescription description = project.getDescription();
+ final String[] natures = description.getNatureIds();
+ if (!Arrays.asList(natures).contains(natureId)) {
+ final String[] newNatures = new String[natures.length + 1];
+ System.arraycopy(natures, 0, newNatures, 1, natures.length);
+ newNatures[0] = natureId;
+ description.setNatureIds(newNatures);
+ project.setDescription(description, monitor);
+ }
+ }
+
+ /**
+ * @author Gregoire Dupe (Mia-Software) - initial implementation
+ */
+ public static void createBuildProperties(final IProject project) throws CoreException {
+ final IFile buildFile = project.getFile("build.properties"); //$NON-NLS-1$
+ if (!buildFile.exists()) {
+ final StringBuffer buildSB = new StringBuffer();
+ buildSB.append("source.. = src/\n"); //$NON-NLS-1$
+ buildSB.append("output.. = bin/\n"); //$NON-NLS-1$
+ buildSB.append("bin.includes = META-INF/,\\\n"); //$NON-NLS-1$
+ buildSB.append(" .\n"); //$NON-NLS-1$
+ final InputStream source = new ByteArrayInputStream(buildSB.toString().getBytes());
+ buildFile.create(source, true, new NullProgressMonitor());
+ }
+ }
+
+ /**
+ * Create an EMF Facet project
+ *
+ * @param project
+ * a reference to the project to create (it must not already exist)
+ * @param projectLocation
+ * @param monitor
+ * a progress monitor
+ * @throws CoreException
+ * in case of error
+ */
+ public static void createEmfFacetProject(final IProject project, final IPath projectLocation, final IProgressMonitor monitor)
+ throws CoreException {
+ ProjectUtils.createPluginProject(project, projectLocation, monitor, false);
+ ProjectUtils.addNature(project, monitor, CommonConstants.NATURE_ID);
+ monitor.done();
+ }
+
+ public static void createPluginProject(final IProject project, final IPath projectLocation, final IProgressMonitor monitor,
+ final boolean monitorDone) throws CoreException {
+ monitor.beginTask(Messages.ProjectUtils_createPluginProject, IProgressMonitor.UNKNOWN);
+ if (!project.exists()) {
+ final IProjectDescription description = project.getWorkspace().newProjectDescription(
+ project.getName());
+ if (!Platform.getLocation().equals(projectLocation)) {
+ description.setLocation(projectLocation);
+ }
+ project.create(description, monitor);
+ project.open(monitor);
+ ProjectUtils.configureAsJavaProject(project, monitor);
+ ProjectUtils.configureAsPluginProject(project);
+ ProjectUtils.createBuildProperties(project);
+ } else {
+ throw new CoreException(new Status(IStatus.ERROR, Activator.getDefault().getBundle().getSymbolicName(), "The project already exists")); //$NON-NLS-1$
+ }
+ if (monitorDone) {
+ monitor.done();
+ }
+ }
+
+ public static boolean isEmfFacetProject(final IProject project) {
+ try {
+ if (!project.isAccessible()) {
+ return false;
+ }
+ return project.getNature(CommonConstants.NATURE_ID) != null;
+ } catch (final CoreException e) {
+ Logger.logError(e, Activator.getDefault());
+ return false;
+ }
+ }
+
+ public static boolean isInEmfFacetProject(final IPath path) {
+ final IProject project = getProject(path);
+ return isEmfFacetProject(project);
+ }
+
+ public static IProject getProject(final IPath path) {
+ final IProject project;
+ if (path.segmentCount() == 1) {
+ project = ResourcesPlugin.getWorkspace().getRoot()
+ .getProject(path.segment(0));
+ } else {
+ final IFolder folder = ResourcesPlugin.getWorkspace().getRoot().getFolder(path);
+ project = folder.getProject();
+ }
+ return project;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/messages.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/messages.properties
new file mode 100644
index 00000000000..c96b421ec74
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.sdk.core/src/org/eclipse/papyrus/emf/facet/common/sdk/core/internal/messages.properties
@@ -0,0 +1,12 @@
+###############################################################################
+# Copyright (c) 2012 CEA LIST.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+###############################################################################
+ProjectUtils_createEMFFacetProject=Create EMF Facet project
+ProjectUtils_createPluginProject=Create Plug-in project
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.checkstyle
new file mode 100644
index 00000000000..6858fec30f6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.checkstyle
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2010 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Guyomar (Mia-Software)
+-->
+<fileset-config file-format-version="1.2.0" simple-config="true">
+ <local-check-config name="EmfFacet" location="../org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.project
new file mode 100644
index 00000000000..b5d5a7ab934
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.common.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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..ebb1f3c7ee6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,3 @@
+eclipse.preferences.version=1
+encoding//src/org/eclipse/papyrus/emf/facet/common/ui/internal/messages.properties=ISO-8859-1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.settings/org.eclipse.core.runtime.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.settings/org.eclipse.core.runtime.prefs
new file mode 100644
index 00000000000..c522e1f4ae2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+line.separator=\n
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..44217f8c068
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/API.README.txt b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/API.README.txt
new file mode 100644
index 00000000000..b31caf7d2fb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/API.README.txt
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 339723 - Add x-friend on EMF Facet internal package
+ * Gregoire Dupe (Mia-Software) - Bug 339710 - org.eclipse.papyrus.emf.facet.common.ui API Cleaning
+ *******************************************************************************/
+
+ org.eclipse.papyrus.emf.facet.common.ui.internal.controls
+ x-internal:=used by org.eclipse.papyrus.emf.facet.infra.*. No x-friends because we don't care about the warning in the "infra" plug-ins.
+
+ org.eclipse.papyrus.emf.facet.common.ui.internal.views
+ x-friends:="org.eclipse.papyrus.emf.facet.util.emf.ui" for EMF Facet internal utilization
+
+org.eclipse.papyrus.emf.facet.common.ui.internal.widgets
+ x-friends:="org.eclipse.papyrus.emf.facet.efacet.ui" for EMF Facet internal utilization
+ x-friends:="org.eclipse.papyrus.emf.facet.util.emf.ui" for EMF Facet internal utilization \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..5f588c9e8bc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,23 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.common.ui;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.common.ui.internal.Activator
+Bundle-Vendor: %Bundle-Vendor
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.1.0",
+ org.eclipse.core.resources;bundle-version="3.6.0",
+ org.eclipse.ui.ide;bundle-version="3.6.0",
+ org.eclipse.papyrus.emf.facet.common.core;bundle-version="0.4.0"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.common.ui.internal,
+ org.eclipse.papyrus.emf.facet.common.ui.internal.controls,
+ org.eclipse.papyrus.emf.facet.common.ui.internal.controls.wrappers,
+ org.eclipse.papyrus.emf.facet.common.ui.internal.exported.views,
+ org.eclipse.papyrus.emf.facet.common.ui.internal.preference.pages,
+ org.eclipse.papyrus.emf.facet.common.ui.internal.views,
+ org.eclipse.papyrus.emf.facet.common.ui.internal.widgets
+
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..ecf19a13eab
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,17 @@
+###############################################################################
+# Copyright (c) 2011 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Bug 366804 - [Restructuring] Table widget upgrade
+# Grégoire Dupé (Mia-Software) - Bug 388422 - [Table] Queries for InstanciationMethod needs to have 2 parameters
+###############################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.common.ui
+page.name = EMF Facet
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Common UI (Incubation)
+category.name = EMF Facet
+emf.facet.examples = EMF Facet Examples \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/about.html
new file mode 100644
index 00000000000..d1714826b27
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.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>January 4, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/build.properties
new file mode 100644
index 00000000000..c25a5e13db3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/build.properties
@@ -0,0 +1,18 @@
+###############################################################################
+# Copyright (c) 2011 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+###############################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ about.html,\
+ plugin.xml,\
+ OSGI-INF/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/plugin.xml
new file mode 100644
index 00000000000..f08078f521b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/plugin.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<!--
+ Copyright (c) 2011 Mia-Software.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ Gregoire Dupe (Mia-Software) - Bug 366804 - [Restructuring] Table widget upgrade
+ Grégoire Dupé (Mia-Software) - Bug 388422 - [Table] Queries for InstanciationMethod needs to have 2 parameters
+ -->
+<plugin>
+ <extension
+ point="org.eclipse.ui.preferencePages">
+ <page
+ class="org.eclipse.papyrus.emf.facet.common.ui.internal.preference.pages.EmfFacetRootPreferencePage"
+ id="org.eclipse.papyrus.emf.facet.common.ui.preference.pages.EmfFacetRootPreferencePage"
+ name="%page.name">
+ </page>
+ </extension>
+ <extension
+ point="org.eclipse.ui.views">
+ <category
+ id="org.eclipse.papyrus.emf.facet.common.ui.views"
+ name="%category.name">
+ </category>
+ </extension>
+
+ <extension point="org.eclipse.ui.newWizards">
+ <category
+ id="org.eclipse.papyrus.emf.facet.common.ui.wizardsCategory"
+ name="%category.name">
+ </category>
+ </extension>
+ <extension
+ point="org.eclipse.ui.menus">
+ <menuContribution
+ allPopups="false"
+ locationURI="popup:org.eclipse.ui.popup.any">
+ <menu
+ id="org.eclipse.papyrus.emf.facet.common.ui.menu.examples"
+ label="%emf.facet.examples">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </menu>
+ </menuContribution>
+ </extension>
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/Activator.java
new file mode 100644
index 00000000000..5a7dc2ec9d9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/Activator.java
@@ -0,0 +1,53 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ */
+package org.eclipse.papyrus.emf.facet.common.ui.internal;
+
+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 {
+
+ public static final String PLUGIN_ID = "org.eclipse.papyrus.emf.facet.common.ui"; //$NON-NLS-1$
+
+ private static Activator plugin;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ }
+
+ @Override
+ public void start(final BundleContext context) throws Exception {
+ super.start(context);
+ Activator.plugin = this;
+ }
+
+ @Override
+ public void stop(final BundleContext context) throws Exception {
+ Activator.plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/Messages.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/Messages.java
new file mode 100644
index 00000000000..4cf3eb89dc8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/Messages.java
@@ -0,0 +1,25 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372732 - [Facet] Rewrite the catalog views for 0.2
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.ui.internal;
+
+import org.eclipse.osgi.util.NLS;
+
+public class Messages extends NLS {
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.emf.facet.common.ui.internal.messages"; //$NON-NLS-1$
+ public static String ElementsView_refreshJobTitle;
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/PersistableColumn.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/PersistableColumn.java
new file mode 100644
index 00000000000..42a59e307a7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/PersistableColumn.java
@@ -0,0 +1,217 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334116 - common tree view with columns
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.ui.internal.controls;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.jface.viewers.ColumnLabelProvider;
+import org.eclipse.jface.viewers.TableViewer;
+import org.eclipse.jface.viewers.TableViewerColumn;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jface.viewers.TreeViewerColumn;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.jface.viewers.ViewerColumn;
+import org.eclipse.jface.viewers.ViewerSorter;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.controls.wrappers.Column;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.controls.wrappers.SortableTable;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.controls.wrappers.SortableTree;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.controls.wrappers.SortableWidget;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.controls.wrappers.SortableWidgetFactory;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.controls.wrappers.TableColumn;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.controls.wrappers.TreeColumn;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.ControlAdapter;
+import org.eclipse.swt.events.ControlEvent;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.ui.IMemento;
+import org.eclipse.ui.part.ViewPart;
+
+/**
+ * A column in a {@link TreeViewer} or {@link TableViewer} that is sortable (using the given
+ * {@link ColumnLabelProvider}) and can save its width to an {@link IMemento}.
+ */
+public class PersistableColumn {
+
+ /**
+ * Saved column widths, static because we want to be able to save column widths during the
+ * session (if a view is closed and re-opened), instead of only when the workbench is closed
+ * (which is the case with {@link ViewPart#saveState(org.eclipse.ui.IMemento)})
+ */
+ private static final Map<String, Integer> COLUMN_WIDTHS = new HashMap<String, Integer>();
+
+ /** The unique id associated to this column */
+ private String fUniqueID;
+
+ /** The underlying JFace column */
+ private final ViewerColumn fViewerColumn;
+
+ private Column getColumn() {
+ if (this.fViewerColumn instanceof TreeViewerColumn) {
+ TreeViewerColumn treeViewerColumn = (TreeViewerColumn) this.fViewerColumn;
+ return new TreeColumn(treeViewerColumn.getColumn());
+ } else if (this.fViewerColumn instanceof TableViewerColumn) {
+ TableViewerColumn tableViewerColumn = (TableViewerColumn) this.fViewerColumn;
+ return new TableColumn(tableViewerColumn.getColumn());
+ }
+ throw new IllegalStateException("neither a table nor tree column"); //$NON-NLS-1$
+ }
+
+ /**
+ * Initialize a sortable column that can be persisted to an {@link IMemento} .
+ *
+ * @param columnText
+ * the title of the column
+ * @param uniqueID
+ * a unique id used to persist the column width
+ * @param defaultWidth
+ * the width to use if no previous information was saved
+ * @param columnLabelProvider
+ * the label provider for this column
+ */
+ protected void init(final String columnText, final String uniqueID, final int defaultWidth,
+ final ColumnLabelProvider columnLabelProvider) {
+ this.fUniqueID = uniqueID;
+ final Column column = getColumn();
+ column.setText(columnText);
+
+ Integer width = PersistableColumn.getColumnWidths().get(uniqueID);
+ if (width != null) {
+ column.setWidth(width.intValue());
+ } else {
+ column.setWidth(defaultWidth);
+ }
+ column.addControlListener(new ControlAdapter() {
+ @Override
+ public void controlResized(final ControlEvent e) {
+ PersistableColumn.getColumnWidths().put(uniqueID, new Integer(column.getWidth()));
+ }
+ });
+
+ this.fViewerColumn.setLabelProvider(columnLabelProvider);
+ }
+
+ /**
+ * Create a sortable column that can be persisted to an {@link IMemento}.
+ *
+ * @param columnText
+ * the title of the column
+ * @param uniqueID
+ * a unique id used to persist the column width
+ * @param defaultWidth
+ * the width to use if no previous information was saved
+ * @param columnLabelProvider
+ * the label provider for this column
+ * @param treeViewer
+ * the {@link TreeViewer} in which to create the column
+ */
+ public PersistableColumn(final String columnText, final String uniqueID,
+ final int defaultWidth, final ColumnLabelProvider columnLabelProvider,
+ final TreeViewer treeViewer) {
+ TreeViewerColumn treeViewerColumn = new TreeViewerColumn(treeViewer, SWT.NONE);
+ this.fViewerColumn = treeViewerColumn;
+ init(columnText, uniqueID, defaultWidth, columnLabelProvider);
+
+ addSorter(new TreeColumn(treeViewerColumn.getColumn()),
+ getViewerSorter(columnLabelProvider), new SortableTree(treeViewer));
+ }
+
+ /**
+ * Create a sortable column that can be persisted to an {@link IMemento}.
+ *
+ * @param columnText
+ * the title of the column
+ * @param uniqueID
+ * a unique id used to persist the column width
+ * @param defaultWidth
+ * the width to use if no previous information was saved
+ * @param columnLabelProvider
+ * the label provider for this column
+ * @param tableViewer
+ * the {@link TableViewer} in which to create the column
+ */
+ public PersistableColumn(final String columnText, final String uniqueID,
+ final int defaultWidth, final ColumnLabelProvider columnLabelProvider,
+ final TableViewer tableViewer) {
+ TableViewerColumn tableViewerColumn = new TableViewerColumn(tableViewer, SWT.NONE);
+ this.fViewerColumn = tableViewerColumn;
+ init(columnText, uniqueID, defaultWidth, columnLabelProvider);
+
+ addSorter(new TableColumn(tableViewerColumn.getColumn()),
+ getViewerSorter(columnLabelProvider), new SortableTable(tableViewer));
+ }
+
+ private static ViewerSorter getViewerSorter(final ColumnLabelProvider columnLabelProvider) {
+ return new ViewerSorter() {
+ @Override
+ public int compare(final Viewer viewer, final Object e1, final Object e2) {
+ String text1 = columnLabelProvider.getText(e1);
+ String text2 = columnLabelProvider.getText(e2);
+ if (text1 == null) {
+ return -1;
+ }
+ int compare = text1.compareTo(text2);
+ SortableWidget sortableWidget = SortableWidgetFactory.createSortableWidget(viewer);
+ if (sortableWidget.getSortDirection() == SWT.DOWN) {
+ compare = compare * -1;
+ }
+ return compare;
+ }
+ };
+ }
+
+ private static void addSorter(final Column column, final ViewerSorter viewerSorter,
+ final SortableWidget sortableWidget) {
+ column.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ sortableWidget.setSorter(viewerSorter);
+ sortableWidget.setSortColumn(column);
+ if (sortableWidget.getSortDirection() == SWT.UP) {
+ sortableWidget.setSortDirection(SWT.DOWN);
+ } else if (sortableWidget.getSortDirection() == SWT.DOWN) {
+ sortableWidget.setSortDirection(SWT.UP);
+ } else {
+ sortableWidget.setSortDirection(SWT.UP);
+ }
+ sortableWidget.refresh();
+ }
+ });
+ }
+
+ public void saveState(final IMemento memento) {
+ Integer width = PersistableColumn.getColumnWidths().get(this.fUniqueID);
+ if (width != null) {
+ memento.putInteger(this.fUniqueID, width.intValue());
+ }
+ }
+
+ /**
+ * Loads the saved state from the given {@link IMemento}. Columns created using the given id
+ * after this call will have their width set to the value that was loaded.
+ */
+ public static void loadState(final IMemento memento, final String columnID) {
+ Integer width = memento.getInteger(columnID);
+ if (width != null) {
+ PersistableColumn.getColumnWidths().put(columnID, width);
+ }
+ }
+
+ public void setWidth(final int width) {
+ getColumn().setWidth(width);
+ }
+
+ protected static Map<String, Integer> getColumnWidths() {
+ return PersistableColumn.COLUMN_WIDTHS;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/Column.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/Column.java
new file mode 100644
index 00000000000..02a8d2aae95
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/Column.java
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334116 - common tree view with columns
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.ui.internal.controls.wrappers;
+
+import org.eclipse.swt.events.ControlListener;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.widgets.Item;
+import org.eclipse.swt.widgets.TableColumn;
+import org.eclipse.swt.widgets.TreeColumn;
+
+/** Provides a unified API over both SWT {@link TreeColumn} and {@link TableColumn} */
+public interface Column {
+ void setText(String columnText);
+
+ void addControlListener(ControlListener controlListener);
+
+ void addSelectionListener(SelectionListener selectionListener);
+
+ void setWidth(int width);
+
+ int getWidth();
+
+ Item getColumn();
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/SortableTable.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/SortableTable.java
new file mode 100644
index 00000000000..88f5753d3f8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/SortableTable.java
@@ -0,0 +1,47 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334116 - common tree view with columns
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.ui.internal.controls.wrappers;
+
+import org.eclipse.jface.viewers.TableViewer;
+import org.eclipse.jface.viewers.ViewerSorter;
+
+/**
+ * Implements {@link SortableWidget}'s unified API for the JFace {@link TableViewer}.
+ */
+public class SortableTable implements SortableWidget {
+ private final TableViewer tableViewer;
+
+ public SortableTable(final TableViewer tableViewer) {
+ this.tableViewer = tableViewer;
+ }
+
+ public void setSorter(final ViewerSorter viewerSorter) {
+ this.tableViewer.setSorter(viewerSorter);
+ }
+
+ public int getSortDirection() {
+ return this.tableViewer.getTable().getSortDirection();
+ }
+
+ public void setSortDirection(final int direction) {
+ this.tableViewer.getTable().setSortDirection(direction);
+ }
+
+ public void setSortColumn(final Column column) {
+ this.tableViewer.getTable().setSortColumn(
+ (org.eclipse.swt.widgets.TableColumn) column.getColumn());
+ }
+
+ public void refresh() {
+ this.tableViewer.refresh();
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/SortableTree.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/SortableTree.java
new file mode 100644
index 00000000000..b031edab28f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/SortableTree.java
@@ -0,0 +1,47 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334116 - common tree view with columns
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.ui.internal.controls.wrappers;
+
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jface.viewers.ViewerSorter;
+
+/**
+ * Implements {@link SortableWidget}'s unified API for the JFace {@link TreeViewer}.
+ */
+public class SortableTree implements SortableWidget {
+ private final TreeViewer treeViewer;
+
+ public SortableTree(final TreeViewer treeViewer) {
+ this.treeViewer = treeViewer;
+ }
+
+ public void setSorter(final ViewerSorter viewerSorter) {
+ this.treeViewer.setSorter(viewerSorter);
+ }
+
+ public int getSortDirection() {
+ return this.treeViewer.getTree().getSortDirection();
+ }
+
+ public void setSortDirection(final int direction) {
+ this.treeViewer.getTree().setSortDirection(direction);
+ }
+
+ public void setSortColumn(final Column column) {
+ this.treeViewer.getTree().setSortColumn(
+ (org.eclipse.swt.widgets.TreeColumn) column.getColumn());
+ }
+
+ public void refresh() {
+ this.treeViewer.refresh();
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/SortableWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/SortableWidget.java
new file mode 100644
index 00000000000..d13cb9c8f2b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/SortableWidget.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334116 - common tree view with columns
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.ui.internal.controls.wrappers;
+
+import org.eclipse.jface.viewers.ViewerSorter;
+import org.eclipse.swt.widgets.Table;
+import org.eclipse.swt.widgets.Tree;
+
+/** Provides a unified API over both SWT {@link Tree} and {@link Table} */
+public interface SortableWidget {
+ void setSorter(ViewerSorter viewerSorter);
+
+ int getSortDirection();
+
+ void setSortDirection(int direction);
+
+ void setSortColumn(Column column);
+
+ void refresh();
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/SortableWidgetFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/SortableWidgetFactory.java
new file mode 100644
index 00000000000..5f2704bde9e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/SortableWidgetFactory.java
@@ -0,0 +1,48 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334116 - common tree view with columns
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.ui.internal.controls.wrappers;
+
+import org.eclipse.jface.viewers.TableViewer;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.swt.widgets.Table;
+import org.eclipse.swt.widgets.Tree;
+
+/**
+ * A factory to obtain a {@link SortableWidget}, that provides a unified API over both SWT
+ * {@link Tree} and {@link Table}.
+ */
+public final class SortableWidgetFactory {
+
+ private SortableWidgetFactory() {
+ // utility class
+ }
+
+ /**
+ * Get a {@link SortableWidget} for the given {@link Viewer}, that can be either a
+ * {@link TreeViewer} or a {@link TableViewer}.
+ *
+ * @param viewer
+ * a {@link TreeViewer} or a {@link TableViewer}
+ * @return a {@link SortableWidget} that delegates to the given viewer
+ */
+ public static SortableWidget createSortableWidget(final Viewer viewer) {
+ if (viewer instanceof TreeViewer) {
+ TreeViewer treeViewer = (TreeViewer) viewer;
+ return new SortableTree(treeViewer);
+ } else if (viewer instanceof TableViewer) {
+ TableViewer tableViewer = (TableViewer) viewer;
+ return new SortableTable(tableViewer);
+ }
+ throw new IllegalArgumentException();
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/TableColumn.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/TableColumn.java
new file mode 100644
index 00000000000..ee83b33fb76
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/TableColumn.java
@@ -0,0 +1,49 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334116 - common tree view with columns
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.ui.internal.controls.wrappers;
+
+import org.eclipse.swt.events.ControlListener;
+import org.eclipse.swt.events.SelectionListener;
+
+/** Implements {@link Column}'s unified API for the SWT {@link org.eclipse.swt.widgets.TableColumn} */
+public class TableColumn implements Column {
+ private final org.eclipse.swt.widgets.TableColumn column;
+
+ public TableColumn(final org.eclipse.swt.widgets.TableColumn column) {
+ this.column = column;
+ }
+
+ public void setText(final String columnText) {
+ this.column.setText(columnText);
+ }
+
+ public void setWidth(final int width) {
+ this.column.setWidth(width);
+
+ }
+
+ public void addControlListener(final ControlListener controlListener) {
+ this.column.addControlListener(controlListener);
+ }
+
+ public void addSelectionListener(final SelectionListener selectionListener) {
+ this.column.addSelectionListener(selectionListener);
+ }
+
+ public int getWidth() {
+ return this.column.getWidth();
+ }
+
+ public org.eclipse.swt.widgets.TableColumn getColumn() {
+ return this.column;
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/TreeColumn.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/TreeColumn.java
new file mode 100644
index 00000000000..abf8f5d4d16
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/controls/wrappers/TreeColumn.java
@@ -0,0 +1,49 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334116 - common tree view with columns
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.ui.internal.controls.wrappers;
+
+import org.eclipse.swt.events.ControlListener;
+import org.eclipse.swt.events.SelectionListener;
+
+/** Implements {@link Column}'s unified API for the SWT {@link org.eclipse.swt.widgets.TreeColumn} */
+public class TreeColumn implements Column {
+ private final org.eclipse.swt.widgets.TreeColumn column;
+
+ public TreeColumn(final org.eclipse.swt.widgets.TreeColumn column) {
+ this.column = column;
+ }
+
+ public void setText(final String columnText) {
+ this.column.setText(columnText);
+ }
+
+ public void setWidth(final int width) {
+ this.column.setWidth(width);
+
+ }
+
+ public void addControlListener(final ControlListener controlListener) {
+ this.column.addControlListener(controlListener);
+ }
+
+ public void addSelectionListener(final SelectionListener selectionListener) {
+ this.column.addSelectionListener(selectionListener);
+ }
+
+ public int getWidth() {
+ return this.column.getWidth();
+ }
+
+ public org.eclipse.swt.widgets.TreeColumn getColumn() {
+ return this.column;
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/exported/views/IColumnDescription.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/exported/views/IColumnDescription.java
new file mode 100644
index 00000000000..073c8310c54
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/exported/views/IColumnDescription.java
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372732 - [Facet] Rewrite the catalog views for 0.2
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.ui.internal.exported.views;
+
+import org.eclipse.jface.viewers.ColumnLabelProvider;
+
+/**
+ * Contains the data necessary to create a column in a view created by
+ * {@link IElementsViewFactory#createElementsView(java.util.Collection, org.eclipse.jface.viewers.ITreeContentProvider, Object, String, org.eclipse.swt.graphics.Image, org.eclipse.jface.viewers.IOpenListener) IElementsViewFactory#createElementsView}
+ */
+public interface IColumnDescription {
+ /** The column's label */
+ String getTitle();
+
+ /** A unique id for the column */
+ String getUniqueID();
+
+ /** The default width that will be used the first time the column is displayed */
+ int getDefaultWidth();
+
+ /**
+ * A label provider that returns the text (and optionally image and other font attributes) for each element in this
+ * column
+ */
+ ColumnLabelProvider getColumnLabelProvider();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/exported/views/IElementsViewFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/exported/views/IElementsViewFactory.java
new file mode 100644
index 00000000000..9f4b83777f9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/exported/views/IElementsViewFactory.java
@@ -0,0 +1,68 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372732 - [Facet] Rewrite the catalog views for 0.2
+ *******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.common.ui.internal.exported.views;
+
+import java.util.Collection;
+
+import org.eclipse.jface.viewers.ColumnLabelProvider;
+import org.eclipse.jface.viewers.IOpenListener;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.views.ElementsViewFactory;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.ui.part.ViewPart;
+
+/**
+ * Creates Eclipse views to display lists of elements. To be able to register this view in a non-RCP Eclipse, you will
+ * have to register an IExecutableExtensionFactory that will do the actual instantiation.
+ */
+public interface IElementsViewFactory {
+ IElementsViewFactory DEFAULT = new ElementsViewFactory();
+
+ /**
+ * Creates a view with columns. Each column has a default width, and memorizes its width once resized.
+ *
+ * @param columnDescriptions
+ * describes the columns
+ * @param contentProvider
+ * provides the content from the input
+ * @param input
+ * the view's input
+ * @param title
+ * the part's label
+ * @param titleImage
+ * the part's image
+ * @param openListener
+ * a listener called when hitting Enter or double-clicking on an element in the view
+ * @return the view part
+ */
+ ViewPart createElementsView(Collection<? extends IColumnDescription> columnDescriptions,
+ ITreeContentProvider contentProvider, Object input, String title, Image titleImage, IOpenListener openListener);
+
+ /**
+ * Creates a column description for
+ * {@link IElementsViewFactory#createElementsView(Collection, ITreeContentProvider, Object, String, Image, IOpenListener)
+ * createElementsView}
+ *
+ * @param title
+ * the column label
+ * @param uniqueID
+ * a unique ID that will identify the column (used for serialization)
+ * @param defaultWidth
+ * the initial width of the column, before the user resizes it
+ * @param columnLabelProvider
+ * A label provider that returns the text (and optionally image and other font attributes) for each
+ * element in this column
+ * @return a column description
+ */
+ IColumnDescription createColumnDescription(String title, String uniqueID,
+ int defaultWidth, ColumnLabelProvider columnLabelProvider);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/messages.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/messages.properties
new file mode 100644
index 00000000000..8505a5f4b7a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/messages.properties
@@ -0,0 +1,11 @@
+###############################################################################
+# Copyright (c) 2012 CEA LIST.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - Bug 372732 - [Facet] Rewrite the catalog views for 0.2
+###############################################################################
+ElementsView_refreshJobTitle=Refreshing view {0}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/preference/pages/EmfFacetRootPreferencePage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/preference/pages/EmfFacetRootPreferencePage.java
new file mode 100644
index 00000000000..cad26029c06
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/preference/pages/EmfFacetRootPreferencePage.java
@@ -0,0 +1,59 @@
+/**********************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ ***********************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.ui.internal.preference.pages;
+
+import org.eclipse.jface.preference.FieldEditorPreferencePage;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.Activator;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPreferencePage;
+
+/**
+ * This class is the EmfFacet root preference page that is contributed to the
+ * Preferences dialog. By sub-classing {@link FieldEditorPreferencePage}, we can
+ * use the field support built into JFace that allows us to create a page that
+ * is small and knows how to save, restore and apply itself.
+ * <p>
+ * This page is used to modify preferences, that are stored in the preference
+ * store that belongs to the main plug-in class. That way, preferences can be
+ * accessed directly via the preference store.
+ */
+
+public class EmfFacetRootPreferencePage extends FieldEditorPreferencePage
+ implements IWorkbenchPreferencePage {
+
+ public static final String P_DEFAULT_EPACKAGE_VIEWER = "emf_facet_default_epackage_viewer"; //$NON-NLS-1$
+
+ public EmfFacetRootPreferencePage() {
+ super(FieldEditorPreferencePage.GRID);
+ setPreferenceStore(Activator.getDefault().getPreferenceStore());
+ }
+
+ /**
+ * Creates the field editors. Field editors are abstractions of the common
+ * GUI blocks needed to manipulate various types of preferences. Each field
+ * editor knows how to save and restore itself.
+ */
+ @Override
+ public void createFieldEditors() {
+ // The page is empty for now
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.ui.IWorkbenchPreferencePage#init(org.eclipse.ui.IWorkbench)
+ */
+ public void init(final IWorkbench workbench) {
+ // Nothing to do
+ }
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/views/AbstractTreeView.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/views/AbstractTreeView.java
new file mode 100644
index 00000000000..5390a16587a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/views/AbstractTreeView.java
@@ -0,0 +1,176 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334116 - common tree view with columns
+ *******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.common.ui.internal.views;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.jface.action.GroupMarker;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.viewers.ColumnLabelProvider;
+import org.eclipse.jface.viewers.IContentProvider;
+import org.eclipse.jface.viewers.IOpenListener;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.OpenEvent;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.controls.PersistableColumn;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Menu;
+import org.eclipse.ui.IMemento;
+import org.eclipse.ui.IViewSite;
+import org.eclipse.ui.IWorkbenchActionConstants;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.part.ViewPart;
+
+/** An abstract Eclipse view that displays a list of elements. */
+public abstract class AbstractTreeView extends ViewPart {
+
+ private final List<PersistableColumn> columns = new ArrayList<PersistableColumn>();
+ private final Map<String, Integer> persistedValues = new HashMap<String, Integer>();
+
+ private static final int JOB_SCHEDULE_DELAY = 500;
+ private Job fRefreshJob = null;
+
+ private TreeViewer fTreeViewer;
+
+ public TreeViewer getViewer() {
+ return this.fTreeViewer;
+ }
+
+ @Override
+ public void createPartControl(final Composite parent) {
+ parent.setLayout(new FillLayout());
+
+ this.fTreeViewer = new TreeViewer(parent, SWT.H_SCROLL | SWT.V_SCROLL | SWT.SINGLE
+ | SWT.FULL_SELECTION);
+ this.fTreeViewer.getTree().setLinesVisible(true);
+ this.fTreeViewer.getTree().setHeaderVisible(true);
+
+ this.fTreeViewer.addOpenListener(new IOpenListener() {
+ public void open(final OpenEvent event) {
+ IStructuredSelection selection = (IStructuredSelection) AbstractTreeView.this
+ .getViewer().getSelection();
+ openElement(selection.getFirstElement());
+ }
+ });
+
+ createColumns();
+
+ this.fTreeViewer.setContentProvider(getContentProvider());
+
+ createContextMenu();
+ getSite().setSelectionProvider(this.fTreeViewer);
+ refresh(false);
+ }
+
+ protected void createContextMenu() {
+ final MenuManager contextMenu = new MenuManager("#PopUp"); //$NON-NLS-1$
+ contextMenu.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
+ final Menu menu = contextMenu.createContextMenu(getViewer().getControl());
+ getViewer().getControl().setMenu(menu);
+ getSite().registerContextMenu(contextMenu, getViewer());
+ }
+
+ protected abstract void createColumns();
+
+ protected abstract IContentProvider getContentProvider();
+
+ protected abstract void openElement(Object element);
+
+ @Override
+ public void setFocus() {
+ this.fTreeViewer.getControl().setFocus();
+ }
+
+ /** Optionally delayed refresh */
+ protected void refresh(final boolean delayed) {
+ if (this.fRefreshJob == null) {
+ this.fRefreshJob = new Job(getRefreshMessage()) {
+ @Override
+ protected IStatus run(final IProgressMonitor monitor) {
+ doRefresh();
+ return Status.OK_STATUS;
+ }
+ };
+ }
+ // delayed until it stops changing
+ this.fRefreshJob.cancel();
+ if (delayed) {
+ this.fRefreshJob.setPriority(Job.DECORATE);
+ this.fRefreshJob.schedule(AbstractTreeView.JOB_SCHEDULE_DELAY);
+ } else {
+ this.fRefreshJob.setPriority(Job.INTERACTIVE);
+ this.fRefreshJob.schedule();
+ }
+ }
+
+ protected abstract String getRefreshMessage();
+
+ protected abstract Object getInput();
+
+ protected void doRefresh() {
+ // Accesses the catalog, which can block if done inside the UI thread.
+ final Object input = getInput();
+ Display.getDefault().asyncExec(new Runnable() {
+ public void run() {
+ getViewer().setInput(input);
+ getViewer().refresh();
+ }
+ });
+ }
+
+ protected void createColumn(final String columnText, final String uniqueID,
+ final int defaultWidth, final ColumnLabelProvider columnLabelProvider) {
+ PersistableColumn persistableColumn = new PersistableColumn(columnText, uniqueID,
+ defaultWidth, columnLabelProvider, this.fTreeViewer);
+ this.columns.add(persistableColumn);
+ Integer width = this.persistedValues.get(uniqueID);
+ if (width != null) {
+ persistableColumn.setWidth(width.intValue());
+ }
+ }
+
+ @Override
+ public void saveState(final IMemento memento) {
+ super.saveState(memento);
+ try {
+ for (PersistableColumn column : this.columns) {
+ column.saveState(memento);
+ }
+ } catch (Exception e) {
+ Logger.logError(e, "Error saving view state", Activator.getDefault()); //$NON-NLS-1$
+ }
+ }
+
+ @Override
+ public void init(final IViewSite site, final IMemento memento) throws PartInitException {
+ super.init(site, memento);
+ if (memento != null) {
+ String[] attributeKeys = memento.getAttributeKeys();
+ for (String key : attributeKeys) {
+ this.persistedValues.put(key, memento.getInteger(key));
+ }
+ }
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/views/ElementsView.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/views/ElementsView.java
new file mode 100644
index 00000000000..596eb1527d0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/views/ElementsView.java
@@ -0,0 +1,208 @@
+/*******************************************************************************
+ * Copyright (c) 2010-2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334116 - common tree view with columns
+ * Nicolas Bros (Mia-Software) - Bug 372732 - [Facet] Rewrite the catalog views for 0.2
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.ui.internal.views;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.jface.action.GroupMarker;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.viewers.ColumnLabelProvider;
+import org.eclipse.jface.viewers.IContentProvider;
+import org.eclipse.jface.viewers.IOpenListener;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.OpenEvent;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.controls.PersistableColumn;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.exported.views.IColumnDescription;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Menu;
+import org.eclipse.ui.IMemento;
+import org.eclipse.ui.IViewSite;
+import org.eclipse.ui.IWorkbenchActionConstants;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.part.ViewPart;
+
+public class ElementsView extends ViewPart {
+
+ private static final int JOB_SCHEDULE_DELAY = 500;
+ private final Collection<? extends IColumnDescription> columnDescriptions;
+ private final ITreeContentProvider contentProvider;
+ private final Object input;
+ private final List<PersistableColumn> columns = new ArrayList<PersistableColumn>();
+ private final Map<String, Integer> persistedValues = new HashMap<String, Integer>();
+ private TreeViewer treeViewer;
+ private Job refreshJob = null;
+ private final IOpenListener openListener;
+ private final String title;
+ private final Image titleImage;
+
+ public ElementsView(final Collection<? extends IColumnDescription> columnDescriptions,
+ final ITreeContentProvider contentProvider, final Object input, final String title, final Image titleImage, final IOpenListener openListener) {
+ this.columnDescriptions = columnDescriptions;
+ this.contentProvider = contentProvider;
+ this.input = input;
+ this.title = title;
+ this.titleImage = titleImage;
+ this.openListener = openListener;
+ }
+
+ public TreeViewer getViewer() {
+ return this.treeViewer;
+ }
+
+ @Override
+ public void createPartControl(final Composite parent) {
+ setPartName(this.title);
+ setTitleImage(this.titleImage);
+ parent.setLayout(new FillLayout());
+
+ this.treeViewer = new TreeViewer(parent, SWT.H_SCROLL | SWT.V_SCROLL | SWT.SINGLE
+ | SWT.FULL_SELECTION);
+ this.treeViewer.getTree().setLinesVisible(true);
+ this.treeViewer.getTree().setHeaderVisible(true);
+
+ this.treeViewer.addOpenListener(new IOpenListener() {
+ public void open(final OpenEvent event) {
+ ElementsView.this.open(event);
+ }
+ });
+
+ createColumns();
+ this.treeViewer.setContentProvider(getContentProvider());
+ createContextMenu();
+ getSite().setSelectionProvider(this.treeViewer);
+ refresh(false);
+ }
+
+ protected void createContextMenu() {
+ final MenuManager contextMenu = new MenuManager("#PopUp"); //$NON-NLS-1$
+ contextMenu.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
+ final Menu menu = contextMenu.createContextMenu(getViewer().getControl());
+ getViewer().getControl().setMenu(menu);
+ getSite().registerContextMenu(contextMenu, getViewer());
+ }
+
+ protected void createColumns() {
+ for (IColumnDescription columnDescription : this.columnDescriptions) {
+ createColumn(columnDescription.getTitle(), columnDescription.getUniqueID(),
+ columnDescription.getDefaultWidth(), columnDescription.getColumnLabelProvider());
+ }
+ }
+
+ protected IContentProvider getContentProvider() {
+ return this.contentProvider;
+ }
+
+ protected void open(final OpenEvent event) {
+ if (this.openListener != null) {
+ this.openListener.open(event);
+ }
+ }
+
+ @Override
+ public void setFocus() {
+ this.treeViewer.getControl().setFocus();
+ }
+
+ /** Optionally delayed refresh */
+ protected void refresh(final boolean delayed) {
+ if (this.refreshJob == null) {
+ this.refreshJob = new Job(getRefreshMessage()) {
+ @Override
+ protected IStatus run(final IProgressMonitor monitor) {
+ doRefresh();
+ return Status.OK_STATUS;
+ }
+ };
+ }
+ // delayed until it stops changing
+ this.refreshJob.cancel();
+ if (delayed) {
+ this.refreshJob.setPriority(Job.DECORATE);
+ this.refreshJob.schedule(ElementsView.JOB_SCHEDULE_DELAY);
+ } else {
+ this.refreshJob.setPriority(Job.INTERACTIVE);
+ this.refreshJob.schedule();
+ }
+ }
+
+ protected String getRefreshMessage() {
+ return NLS.bind(Messages.ElementsView_refreshJobTitle, this.title);
+ }
+
+ protected Object getInput() {
+ return this.input;
+ }
+
+ protected void doRefresh() {
+ // Accesses the catalog, which can block if done inside the UI thread.
+ final Object viewerInput = getInput();
+ Display.getDefault().asyncExec(new Runnable() {
+ public void run() {
+ getViewer().setInput(viewerInput);
+ getViewer().refresh();
+ }
+ });
+ }
+
+ protected void createColumn(final String columnText, final String uniqueID,
+ final int defaultWidth, final ColumnLabelProvider columnLabelProvider) {
+ PersistableColumn persistableColumn = new PersistableColumn(columnText, uniqueID,
+ defaultWidth, columnLabelProvider, this.treeViewer);
+ this.columns.add(persistableColumn);
+ Integer width = this.persistedValues.get(uniqueID);
+ if (width != null) {
+ persistableColumn.setWidth(width.intValue());
+ }
+ }
+
+ @Override
+ public void saveState(final IMemento memento) {
+ super.saveState(memento);
+ try {
+ for (PersistableColumn column : this.columns) {
+ column.saveState(memento);
+ }
+ } catch (Exception e) {
+ Logger.logError(e, "Error saving view state", Activator.getDefault()); //$NON-NLS-1$
+ }
+ }
+
+ @Override
+ public void init(final IViewSite site, final IMemento memento) throws PartInitException {
+ super.init(site, memento);
+ if (memento != null) {
+ String[] attributeKeys = memento.getAttributeKeys();
+ for (String key : attributeKeys) {
+ this.persistedValues.put(key, memento.getInteger(key));
+ }
+ }
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/views/ElementsViewFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/views/ElementsViewFactory.java
new file mode 100644
index 00000000000..2fa57ccc31f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/views/ElementsViewFactory.java
@@ -0,0 +1,52 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372732 - [Facet] Rewrite the catalog views for 0.2
+ *******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.common.ui.internal.views;
+
+import java.util.Collection;
+
+import org.eclipse.jface.viewers.ColumnLabelProvider;
+import org.eclipse.jface.viewers.IOpenListener;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.exported.views.IColumnDescription;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.exported.views.IElementsViewFactory;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.ui.part.ViewPart;
+
+public class ElementsViewFactory implements IElementsViewFactory {
+
+ public ViewPart createElementsView(final Collection<? extends IColumnDescription> columns,
+ final ITreeContentProvider contentProvider, final Object input, final String title, final Image titleImage, final IOpenListener openListener) {
+ return new ElementsView(columns, contentProvider, input, title, titleImage, openListener);
+ }
+
+ public IColumnDescription createColumnDescription(final String columnText,
+ final String uniqueID, final int defaultWidth,
+ final ColumnLabelProvider columnLabelProvider) {
+ return new IColumnDescription() {
+ public String getUniqueID() {
+ return uniqueID;
+ }
+
+ public int getDefaultWidth() {
+ return defaultWidth;
+ }
+
+ public String getTitle() {
+ return columnText;
+ }
+
+ public ColumnLabelProvider getColumnLabelProvider() {
+ return columnLabelProvider;
+ }
+ };
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/widgets/AnywhereFilterMatcher.java b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/widgets/AnywhereFilterMatcher.java
new file mode 100644
index 00000000000..0ea62c756f7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.common.ui/src/org/eclipse/papyrus/emf/facet/common/ui/internal/widgets/AnywhereFilterMatcher.java
@@ -0,0 +1,28 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software)
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.common.ui.internal.widgets;
+
+import org.eclipse.papyrus.emf.facet.common.core.internal.utils.StringMatcher;
+import org.eclipse.ui.dialogs.FilteredList.FilterMatcher;
+
+/** This is a matcher that matches anywhere, not just at the beginning. */
+public class AnywhereFilterMatcher implements FilterMatcher {
+ private StringMatcher fMatcher;
+
+ public void setFilter(final String pattern, final boolean ignoreCase,
+ final boolean ignoreWildCards) {
+ this.fMatcher = new StringMatcher('*' + pattern + '*', ignoreCase, ignoreWildCards);
+ }
+
+ public boolean match(final Object element) {
+ return this.fMatcher.match(element.toString());
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.checkstyle
new file mode 100644
index 00000000000..6858fec30f6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.checkstyle
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2010 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Guyomar (Mia-Software)
+-->
+<fileset-config file-format-version="1.2.0" simple-config="true">
+ <local-check-config name="EmfFacet" location="../org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.pmd b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.pmd
new file mode 100644
index 00000000000..e8d3e27588f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.pmd
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<pmd>
+ <useProjectRuleSet>true</useProjectRuleSet>
+ <ruleSetFile>../org.eclipse.papyrus.emf.facet.archi.tech.rules/pmd/ruleset.xml</ruleSetFile>
+ <includeDerivedFiles>false</includeDerivedFiles>
+ <violationsAsErrors>true</violationsAsErrors>
+</pmd>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.project
new file mode 100644
index 00000000000..6725a7be7f4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.project
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.custom.core</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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>net.sourceforge.pmd.eclipse.plugin.pmdNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..4824b802631
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..07c22a8b70b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,8 @@
+#Mon Oct 24 13:47:18 CEST 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..329227c41d6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/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.facet.custom.core;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.custom.core.internal.Activator
+Bundle-Vendor: %Bundle-Vendor
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.emf.ecore,
+ org.eclipse.papyrus.emf.facet.custom.metamodel;bundle-version="0.2.0";visibility:=reexport,
+ org.eclipse.papyrus.emf.facet.util.emf.core;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.efacet.core;bundle-version="0.2.0";visibility:=reexport,
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.2.0",
+ org.eclipse.emf.edit;bundle-version="2.6.0",
+ org.eclipse.emf.validation;bundle-version="1.4.0",
+ org.eclipse.papyrus.emf.facet.efacet.metamodel
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.custom.core,
+ org.eclipse.papyrus.emf.facet.custom.core.exception,
+ org.eclipse.papyrus.emf.facet.custom.core.internal,
+ org.eclipse.papyrus.emf.facet.custom.core.internal.exception,
+ org.eclipse.papyrus.emf.facet.custom.core.internal.exported,
+ org.eclipse.papyrus.emf.facet.custom.core.internal.query
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..0afa8241657
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,14 @@
+#Copyright (c) 2011-2012 Mia-Software.
+#
+#All rights reserved. This program and the accompanying materials
+#are made available under the terms of the Eclipse Public License v1.0
+#which accompanies this distribution, and is available at
+#http://www.eclipse.org/legal/epl-v10.html
+#
+#Contributors:
+# Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+# Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+
+#Properties file for org.eclipse.papyrus.emf.facet.custom.core
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Customization Core (Incubation)
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/about.html
new file mode 100644
index 00000000000..25f1a82997c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/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>October 25, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/build.properties
new file mode 100644
index 00000000000..0a196a30581
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/build.properties
@@ -0,0 +1,17 @@
+#Copyright (c) 2011 Mia-Software.
+#
+#All rights reserved. This program and the accompanying materials
+#are made available under the terms of the Eclipse Public License v1.0
+#which accompanies this distribution, and is available at
+#http://www.eclipse.org/legal/epl-v10.html
+#
+#Contributors:
+# Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ OSGI-INF/,\
+ about.html
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/plugin.xml
new file mode 100644
index 00000000000..8154dc98c33
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/plugin.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<!--
+Copyright (c) 2011 Mia-Software.
+
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] EMF Facet customization meta-model
+ Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ Gregoire Dupé (Mia-Software) - Bug 418885 - ETypedElementSwitchQuery implemented using a deprecated query evaluator extension point
+-->
+<plugin>
+ <extension
+ point="org.eclipse.papyrus.emf.facet.util.emf.core.catalogmanager">
+ <catalog
+ class="org.eclipse.papyrus.emf.facet.custom.core.internal.CustomizationCatalogManager">
+ </catalog>
+ </extension>
+
+ <extension
+ point="org.eclipse.papyrus.emf.facet.util.emf.core.catalogmanager">
+ <catalog
+ class="org.eclipse.papyrus.emf.facet.custom.core.internal.CustomizationPropertiesCatalogManager">
+ </catalog>
+ </extension>
+
+ <extension point="org.eclipse.papyrus.emf.facet.efacet.core.derivedTypedElementImplementationRegistration">
+ <derivedTypedElementImplementationRegistration
+ class="org.eclipse.papyrus.emf.facet.custom.core.internal.query.ETypedElementSwitchQueryImplementationFactory">
+ </derivedTypedElementImplementationRegistration>
+ </extension>
+
+ <extension point="org.eclipse.papyrus.emf.facet.efacet.core.queryImplementationRegistration">
+ <queryImplementationRegistration class="org.eclipse.papyrus.emf.facet.custom.core.internal.query.SwitchQueryImplementationFactory"/>
+ </extension>
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationCatalogManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationCatalogManager.java
new file mode 100644
index 00000000000..da607ee1e25
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationCatalogManager.java
@@ -0,0 +1,65 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Nicolas Bros (Mia-Software) - Bug 372626 - Aggregates
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.core;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+
+/**
+ * This interface allows to access the customization catalog.
+ *
+ * @author Gregoire Dupe
+ * @since 0.2
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICustomizationCatalogManager {
+
+ /**
+ * This method is used to get all the registered customizations.
+ *
+ * @return all the registered customizations (may contain aggregates)
+ */
+ List<Customization> getRegisteredCustomizations();
+
+ /**
+ * This method is used to get all the customization which can be applied on a list of
+ * eObjects and on the sub elements of those eObjects.
+ *
+ * Inheritance is handled. For example, assuming meta-model A extends
+ * meta-model B, the customizations declared on meta-model B have to
+ * be available on the instances of meta-model A. Furthermore all
+ * customizations containing a customization of EObject have to be applicable
+ * on all the models.
+ *
+ * @param eObjects the {@link EObject}s for which to get the applicable customizations
+ * @return a list of customizations
+ */
+ List<Customization> getCustomizationsApplicableOn(
+ Collection<EObject> eObjects);
+
+ /**
+ * This method is used to register a customization which has not been declared through the
+ * regular way (extension point).
+ *
+ * @param customization
+ * the customization to register
+ */
+ void registerCustomization(Customization customization);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationCatalogManagerFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationCatalogManagerFactory.java
new file mode 100644
index 00000000000..bc736cafd97
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationCatalogManagerFactory.java
@@ -0,0 +1,31 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.core;
+
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.custom.core.internal.CustomizationCatalogManagerFactory;
+
+/**
+ * A factory for {@link ICustomizationCatalogManager}
+ *
+ * @since 0.2
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICustomizationCatalogManagerFactory {
+
+ ICustomizationCatalogManagerFactory DEFAULT = new CustomizationCatalogManagerFactory();
+
+ ICustomizationCatalogManager getOrCreateCustomizationCatalogManager(
+ ResourceSet resourceSet);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationManager.java
new file mode 100644
index 00000000000..29a6814e28a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationManager.java
@@ -0,0 +1,91 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.core;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.custom.core.exception.CustomizationException;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+
+/**
+ * This interface allows to access the customization manager. A customization
+ * manager will compute the customization property depending on the loaded
+ * customizations. Be careful, the load order has an impact on the customization
+ * property value. Customizations are loaded in a stack. If there is a conflict
+ * between two customizations, the higher customization (the nearest from the
+ * top of the stack) gets the priority.
+ *
+ * @author Gregoire Dupe
+ * @since 0.2
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICustomizationManager {
+
+ /**
+ * This method is used to get the customization stack. The top
+ * customization in the stack will be the first in the list.
+ *
+ * @return a mutable list of customizations
+ */
+ List<Customization> getManagedCustomizations();
+
+ /**
+ * This method is used to get the value of a customization property for a
+ * chosen eObject.
+ *
+ * @param eObject
+ * @param customProperty
+ * @param classs
+ * the expected result type
+ * @return a value having a type depending a the customizationProperty type.
+ * (Can be null.)
+ */
+ <T> T getCustomValueOf(EObject eObject,
+ FacetOperation customProperty, Class<T> classs)
+ throws CustomizationException;
+
+ /**
+ * This method is used to get the value of a customization property for a
+ * chosen eObject and a chosen eStructuralFeature.
+ *
+ * @param eObject
+ * @param structuralFeature
+ * must not be null
+ * @param customProperty
+ * must not be null
+ * @param classs
+ * the expected result type
+ * @return a value having a type depending a the customizationProperty type.
+ * (Can be null.)
+ */
+ <T> T getCustomValueOf(EObject eObject,
+ ETypedElement structuralFeature,
+ FacetOperation customProperty, Class<T> classs)
+ throws CustomizationException;
+
+ /**
+ * This method returns the resourceSet used to manage the customization
+ * models.
+ */
+ ResourceSet getResourceSet();
+
+ IFacetManager getFacetManager();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationManagerFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationManagerFactory.java
new file mode 100644
index 00000000000..29f7a7ae056
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationManagerFactory.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ */
+package org.eclipse.papyrus.emf.facet.custom.core;
+
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.custom.core.internal.CustomizationManagerFactory;
+
+/**
+ * Used to instantiate a customization manager
+ * @author Gregoire Dupe
+ * @since 0.2
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICustomizationManagerFactory {
+
+ /**
+ * Default factory instance.
+ */
+ ICustomizationManagerFactory DEFAULT = new CustomizationManagerFactory();
+
+ /**
+ * This method is used to instantiate a customization manager
+ *
+ * @param resourceSet
+ * the resource set to use to manage the customization models.
+ * @return
+ */
+ ICustomizationManager getOrCreateICustomizationManager(ResourceSet resourceSet);
+
+ /**
+ *
+ * @param facetManager
+ * @return
+ * @since 0.2
+ */
+ ICustomizationManager createICustomizationManager(IFacetManager facetManager);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationPropertiesCatalogManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationPropertiesCatalogManager.java
new file mode 100644
index 00000000000..744fec03751
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationPropertiesCatalogManager.java
@@ -0,0 +1,42 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] EMF Facet customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.core;
+
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+
+/**
+ * This interface allows to access the customization catalog.
+ *
+ * @author Gregoire Dupe
+ * @since 0.3
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICustomizationPropertiesCatalogManager {
+
+ /**
+ * This method is used to get all the registered customization properties (facetSet).
+ *
+ * @return all the registered customizations
+ */
+ List<FacetSet> getAllRegisteredCustomizationPropertySet();
+
+ List<FacetOperation> getCustomizationPropertiesByName(
+ String propertyName);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationPropertiesCatalogManagerFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationPropertiesCatalogManagerFactory.java
new file mode 100644
index 00000000000..034a407c1aa
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/ICustomizationPropertiesCatalogManagerFactory.java
@@ -0,0 +1,31 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.core;
+
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.custom.core.internal.CustomizationPropertiesCatalogManagerFactory;
+
+/**
+ * This interface provides the customization catalog manager.
+ *
+ * @since 0.3
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICustomizationPropertiesCatalogManagerFactory {
+
+ ICustomizationPropertiesCatalogManagerFactory INSTANCE = new CustomizationPropertiesCatalogManagerFactory();
+
+ ICustomizationPropertiesCatalogManager getOrCreateCustomizationPropertiesCatalogManager(
+ final ResourceSet resourceSet);
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/exception/CustomizationException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/exception/CustomizationException.java
new file mode 100644
index 00000000000..82fca718d9d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/exception/CustomizationException.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.core.exception;
+
+/**
+ * This exception is thrown when the computation of a customization property value failed.
+ * @author Gregoire Dupe
+ * @noinstantiate This class is not intended to be instantiated by clients.
+ */
+public final class CustomizationException extends Exception {
+
+ private static final long serialVersionUID = -4070159863668577038L;
+
+ public CustomizationException() {
+ super();
+ }
+
+ public CustomizationException(final String message) {
+ super(message);
+ }
+
+ public CustomizationException(final Throwable cause) {
+ super(cause);
+ }
+
+ public CustomizationException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/Activator.java
new file mode 100644
index 00000000000..9863bb31dce
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/Activator.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+ */
+package org.eclipse.papyrus.emf.facet.custom.core.internal;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle
+ */
+public class Activator extends Plugin {
+
+ // The shared instance
+ private static Activator plugin;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+ */
+ @Override
+ public void start(final BundleContext context) throws Exception {
+ super.start(context);
+ Activator.plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+ */
+ @Override
+ public void stop(final BundleContext context) throws Exception {
+ Activator.plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return Activator.plugin;
+ }
+
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationCatalogManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationCatalogManager.java
new file mode 100644
index 00000000000..01ce101d917
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationCatalogManager.java
@@ -0,0 +1,99 @@
+/**
+ * Copyright (c) 2011-2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 372626 - Aggregates
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.core.internal;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationCatalogManager;
+import org.eclipse.papyrus.emf.facet.custom.core.internal.exception.CustomizationCatalogRuntimeException;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationCatalog;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationcatalogFactory;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogSet;
+
+/**
+ * Customization catalog implementation using the catalog manager features provided by the plug-in
+ * org.eclipse.papyrus.emf.facet.util.emf.core
+ *
+ * @author Gregoire Dupe
+ *
+ */
+public class CustomizationCatalogManager implements
+ ICustomizationCatalogManager, ICatalogManager {
+
+ private final CustomizationCatalog catalog = CustomizationcatalogFactory.eINSTANCE
+ .createCustomizationCatalog();
+
+ public boolean canBeManaged(final EObject root) {
+ return root instanceof Customization;
+ }
+
+ public void manage(final EObject root) {
+ if (root instanceof Customization) {
+ Customization customization = (Customization) root;
+ this.catalog.getInstalledEntries().add(customization);
+ } else {
+ throw new CustomizationCatalogRuntimeException("Only customizations (and aggregates) must be stored in the customization catalog"); //$NON-NLS-1$
+ }
+ }
+
+ public void setCatalogSet(final CatalogSet catalogSet) {
+ catalogSet.getCatalogs().add(this.catalog);
+ }
+
+ public List<Customization> getCustomizationsByName(final String name) {
+ List<Customization> result = new ArrayList<Customization>();
+ for (EObject eObject : this.catalog.getInstalledEntries()) {
+ if (eObject instanceof Customization) {
+ Customization customization = (Customization) eObject;
+ if (name.equals(customization.getName())) {
+ result.add(customization);
+ }
+ } else {
+ throw new RuntimeException("Only customizations (and aggregates) must be stored in the customization catalog"); //$NON-NLS-1$
+ }
+ }
+ return result;
+ }
+
+ public void registerCustomization(final Customization customization) {
+ this.catalog.getInstalledEntries().add(customization);
+ }
+
+ public List<Customization> getCustomizationsApplicableOn(
+ final Collection<EObject> eObjects) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public List<Customization> getRegisteredCustomizations() {
+ List<Customization> result = new ArrayList<Customization>();
+ for (EObject eObject : this.catalog.getInstalledEntries()) {
+ if (eObject instanceof Customization) {
+ Customization customization = (Customization) eObject;
+ result.add(customization);
+ } else {
+ throw new RuntimeException("Only customizations (and aggregates) must be stored in the customization catalog"); //$NON-NLS-1$
+ }
+ }
+ return Collections.unmodifiableList(result);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationCatalogManagerFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationCatalogManagerFactory.java
new file mode 100644
index 00000000000..05dcd4446e4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationCatalogManagerFactory.java
@@ -0,0 +1,29 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.custom.core.internal;
+
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManagerFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationCatalogManager;
+
+public class CustomizationCatalogManagerFactory implements
+ org.eclipse.papyrus.emf.facet.custom.core.ICustomizationCatalogManagerFactory {
+
+ public ICustomizationCatalogManager getOrCreateCustomizationCatalogManager(
+ final ResourceSet resourceSet) {
+ return ICatalogSetManagerFactory.DEFAULT
+ .createICatalogSetManager(resourceSet)
+ .getCatalogManagerByType(ICustomizationCatalogManager.class)
+ .get(0);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationManager.java
new file mode 100644
index 00000000000..9cf2f95e9fa
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationManager.java
@@ -0,0 +1,182 @@
+/**
+ * Copyright (c) 2011-2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] EMF Facet customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 372626 - Aggregates
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Nicolas Bros (Mia-Software) - Bug 378271 - [Table] Select Columns To Hide is broken
+ */
+package org.eclipse.papyrus.emf.facet.custom.core.internal;
+
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManagerFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.exception.CustomizationException;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+
+public class CustomizationManager implements ICustomizationManager {
+
+ private final HashSet<FacetOperation> customProperties = new HashSet<FacetOperation>();
+ private final IFacetManager facetManager;
+
+ public CustomizationManager(final ResourceSet resourceSet) {
+ this.facetManager = IFacetManagerFactory.DEFAULT.getOrCreateFacetManager(resourceSet);
+ }
+
+ public CustomizationManager(final IFacetManager facetManager) {
+ this.facetManager = facetManager;
+ }
+
+ public void addFrontManagedCustomization(final Customization customization) {
+ this.facetManager.getManagedFacetSets().add(0, customization);
+ }
+
+ public void removeCustomization(final Customization customization) {
+ this.facetManager.getManagedFacetSets().remove(customization);
+ }
+
+ public List<Customization> getManagedCustomizations() {
+ return new CustomizationsDelegatingList(this.facetManager.getManagedFacetSets());
+ }
+
+ public <T> T getCustomValueOf(final EObject eObject,
+ final FacetOperation customizationProperty,
+ final Class<T> classs)
+ throws CustomizationException {
+ // Begin precondition checking section
+ /* The scope of a customization property is not available yet in new customization meta-model
+ if (!(customizationProperty.getScope().contains(
+ CustomizationPropertyScope.ECLASS) || (customizationProperty
+ .getScope().contains(CustomizationPropertyScope.FACET)))) {
+ throw new RuntimeException(
+ "The customization property is expected to be applicable on an EClass or on a Facet"); //$NON-NLS-1$
+ }
+ */
+ // End precondition checking section
+ T result = null;
+ try {
+ // the structural feature : null
+ final Object[] args = new Object[] { null };
+ result = this.facetManager.invoke(eObject, customizationProperty,
+ classs, null, args);
+ } catch (final Exception e) {
+ throw new CustomizationException(e);
+ }
+ return result;
+ }
+
+ public <T> T getCustomValueOf(final EObject eObject,
+ final ETypedElement eTypedElement,
+ final FacetOperation customizationProperty,
+ final Class<T> classs)
+ throws CustomizationException {
+ // Begin precondition checking section
+ if (eObject == null) {
+ throw new IllegalArgumentException(
+ "The parameter 'eObject' must not be null."); //$NON-NLS-1$
+ }
+ if (customizationProperty == null) {
+ throw new IllegalArgumentException(
+ "The parameter 'customizationProperty' must not be null."); //$NON-NLS-1$
+ }
+ /* The scope of a customization property is not available yet in new customization meta-model
+ if (!(eStructuralFeature instanceof EReference)) {
+ if (customizationProperty.getScope().equals(
+ CustomizationPropertyScope.EREFERENCE)) {
+ throw new CustomizationException(
+ "The eStructuralFeature is an instance of " //$NON-NLS-1$
+ + eStructuralFeature.getClass().getName()
+ + " but EReference is expected."); //$NON-NLS-1$
+ }
+ }
+
+ if (!(eStructuralFeature instanceof EAttribute)) {
+ if (customizationProperty.getScope().equals(
+ CustomizationPropertyScope.EATTRIBUTE)) {
+ throw new CustomizationException(
+ "The eStructuralFeature is an instance of " //$NON-NLS-1$
+ + eStructuralFeature.getClass().getName()
+ + " but EAttribute is expected."); //$NON-NLS-1$
+ }
+ }
+ */
+ // End precondition checking section
+ try {
+ return this.facetManager.invoke(eObject, customizationProperty, classs, null, new Object[] { eTypedElement });
+ } catch (Exception e) {
+ throw new CustomizationException(e);
+ }
+ }
+
+ public List<FacetOperation> getCustomizationPropertiesByName(
+ final String name) {
+ if (name == null) {
+ throw new IllegalArgumentException(
+ "The parameter 'name' must not be null."); //$NON-NLS-1$
+ }
+ List<FacetOperation> results = new ArrayList<FacetOperation>();
+ for (FacetOperation customizationProperty : this.customProperties) {
+ if (name.equals(customizationProperty.getName())) {
+ results.add(customizationProperty);
+ }
+ }
+ return results;
+ }
+
+ public void addCustomization(final URI uri) {
+ if (uri == null) {
+ throw new IllegalArgumentException(
+ "The parameter 'uri' must not be null."); //$NON-NLS-1$
+ }
+ Resource resource = this.facetManager.getResourceSet().getResource(uri, true);
+ Iterator<EObject> iterator = resource.getAllContents();
+ while (iterator.hasNext()) {
+ EObject eObject = iterator.next();
+ if (eObject instanceof FacetOperation) {
+ FacetOperation customizationProperty = (FacetOperation) eObject;
+ this.customProperties.add(customizationProperty);
+ }
+ }
+ }
+
+ public ResourceSet getResourceSet() {
+ return this.facetManager.getResourceSet();
+ }
+
+ public void removeAllCustomizations() {
+ List<Customization> customizationsToRemove = new LinkedList<Customization>();
+ for (FacetSet facetSet : this.facetManager.getManagedFacetSets()) {
+ if (facetSet instanceof Customization) {
+ Customization customization = (Customization) facetSet;
+ customizationsToRemove.add(customization);
+ }
+ }
+ for (Customization customization : customizationsToRemove) {
+ this.facetManager.getManagedFacetSets().remove(customization);
+ }
+ }
+
+ public IFacetManager getFacetManager() {
+ return this.facetManager;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationManagerFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationManagerFactory.java
new file mode 100644
index 00000000000..c9f7e644523
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationManagerFactory.java
@@ -0,0 +1,32 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.core.internal;
+
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManagerFactory;
+
+public class CustomizationManagerFactory implements
+ ICustomizationManagerFactory {
+
+ public ICustomizationManager getOrCreateICustomizationManager(final ResourceSet resourceSet) {
+ return new CustomizationManager(resourceSet);
+ }
+
+ public ICustomizationManager createICustomizationManager(
+ final IFacetManager facetManager) {
+ return new CustomizationManager(facetManager);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationPropertiesCatalogManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationPropertiesCatalogManager.java
new file mode 100644
index 00000000000..50e69fceb43
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationPropertiesCatalogManager.java
@@ -0,0 +1,101 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] EMF Facet customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.core.internal;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationPropertiesCatalogManager;
+import org.eclipse.papyrus.emf.facet.custom.core.internal.exception.CustomizationCatalogRuntimeException;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationPropertiesCatalog;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationcatalogFactory;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogSet;
+
+/**
+ * Customization catalog implementation using the catalog manager features
+ * provided by the plug-in org.eclipse.papyrus.emf.facet.util.emf.core
+ *
+ * @author Gregoire Dupe
+ *
+ */
+public class CustomizationPropertiesCatalogManager implements ICatalogManager,
+ ICustomizationPropertiesCatalogManager {
+
+ private static final String CUSTOM_SUFIX = "customproperties"; //$NON-NLS-1$
+ private final CustomizationPropertiesCatalog catalog = CustomizationcatalogFactory.eINSTANCE
+ .createCustomizationPropertiesCatalog();
+
+ public boolean canBeManaged(final EObject root) {
+ return root instanceof FacetSet;
+ }
+
+ public void manage(final EObject root) {
+ if (root instanceof FacetSet) {
+ final FacetSet customProperties = (FacetSet) root;
+ // We have to force the integrator to use the suffix
+ // "customproperties" to name them facetSet declaring custom
+ // properties. Otherwise we won't be able to know if a facetSet is a
+ // custom property declaration
+ if (customProperties.getName().endsWith(CUSTOM_SUFIX)) {
+ this.catalog.getInstalledEntries().add(customProperties);
+ }
+ } else {
+ throw new CustomizationCatalogRuntimeException(
+ "Only facetSets must be stored in the customization properties catalog"); //$NON-NLS-1$
+ }
+ }
+
+ public void setCatalogSet(final CatalogSet catalogSet) {
+ catalogSet.getCatalogs().add(this.catalog);
+ }
+
+ public List<FacetSet> getAllRegisteredCustomizationPropertySet() {
+ final List<FacetSet> result = new ArrayList<FacetSet>();
+ for (final EObject eObject : this.catalog.getInstalledEntries()) {
+ if (eObject instanceof FacetSet) {
+ final FacetSet facetSet = (FacetSet) eObject;
+ result.add(facetSet);
+ } else {
+ throw new RuntimeException(
+ "Only facetSets must be stored in the customization properties catalog"); //$NON-NLS-1$
+ }
+ }
+ return result;
+ }
+
+ public List<FacetOperation> getCustomizationPropertiesByName(
+ final String customPropName) {
+ final List<FacetOperation> result = new ArrayList<FacetOperation>();
+ for (final EObject facetSet : this.catalog.getInstalledEntries()) {
+ final Iterator<EObject> iterator = facetSet.eAllContents();
+ while (iterator.hasNext()) {
+ final EObject eObject = iterator.next();
+ if (eObject instanceof FacetOperation) {
+ final FacetOperation customProperty = (FacetOperation) eObject;
+ if (customPropName.equals(customProperty.getName())) {
+ result.add(customProperty);
+ }
+ }
+ }
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationPropertiesCatalogManagerFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationPropertiesCatalogManagerFactory.java
new file mode 100644
index 00000000000..665c046dcfc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationPropertiesCatalogManagerFactory.java
@@ -0,0 +1,33 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.core.internal;
+
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManagerFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationPropertiesCatalogManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationPropertiesCatalogManagerFactory;
+
+/**
+ * Implementation of {@link ICustomizationPropertiesCatalogManagerFactory}.
+ */
+public class CustomizationPropertiesCatalogManagerFactory implements ICustomizationPropertiesCatalogManagerFactory {
+
+ public ICustomizationPropertiesCatalogManager getOrCreateCustomizationPropertiesCatalogManager(
+ final ResourceSet resourceSet) {
+ return ICatalogSetManagerFactory.DEFAULT
+ .createICatalogSetManager(resourceSet)
+ .getCatalogManagerByType(
+ ICustomizationPropertiesCatalogManager.class)
+ .get(0);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationsDelegatingList.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationsDelegatingList.java
new file mode 100644
index 00000000000..c7148ac5fc6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/CustomizationsDelegatingList.java
@@ -0,0 +1,189 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 374758 - [Table] repair the table
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ * Thomas Cicognani (Soft-Maint) - Bug 420192 - UnsupportedOperationException in a usefull method
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.core.internal;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.List;
+import java.util.ListIterator;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+
+/** Represents a list of {@link Customization}s that exists as a subset of a delegate list of {@link FacetSet}s. */
+public class CustomizationsDelegatingList implements List<Customization> {
+ private final List<FacetSet> delegate;
+
+ public CustomizationsDelegatingList(final List<FacetSet> delegate) {
+ this.delegate = delegate;
+ }
+
+ public int size() {
+ return this.delegate.size();
+ }
+
+ public boolean isEmpty() {
+ return this.delegate.isEmpty();
+ }
+
+ public boolean contains(final Object element) {
+ return element instanceof Customization && this.delegate.contains(element);
+ }
+
+ public Iterator<Customization> iterator() {
+ ArrayList<Customization> tmp= new ArrayList<Customization>();
+ for(Iterator<FacetSet> iterator = this.delegate.iterator(); iterator.hasNext();) {
+ FacetSet facetSet = (FacetSet)iterator.next();
+ if( facetSet instanceof Customization){
+ tmp.add((Customization)facetSet);
+ }
+
+ }
+
+
+ return tmp.iterator(); //$NON-NLS-1$
+ }
+
+ public Object[] toArray() {
+ ArrayList<Customization> tmp= new ArrayList<Customization>();
+ for(Iterator<FacetSet> iterator = this.delegate.iterator(); iterator.hasNext();) {
+ FacetSet facetSet = (FacetSet)iterator.next();
+ if( facetSet instanceof Customization){
+ tmp.add((Customization)facetSet);
+ }
+
+ }
+
+
+ return tmp.toArray(); //$NON-NLS-1$
+ }
+
+ public <T> T[] toArray(final T[] a) {
+ ArrayList<Customization> tmp= new ArrayList<Customization>();
+ for(Iterator<FacetSet> iterator = this.delegate.iterator(); iterator.hasNext();) {
+ FacetSet facetSet = (FacetSet)iterator.next();
+ if( facetSet instanceof Customization){
+ tmp.add((Customization)facetSet);
+ }
+
+ }
+
+
+ return tmp.toArray(a);
+ }
+
+ public boolean add(final Customization o) {
+ return this.delegate.add(o);
+ }
+
+ public boolean remove(final Object element) {
+ return this.delegate.remove(element);
+ }
+
+ public boolean containsAll(final Collection<?> c) {
+ ArrayList<Customization> tmp= new ArrayList<Customization>();
+ for(Iterator<FacetSet> iterator = this.delegate.iterator(); iterator.hasNext();) {
+ FacetSet facetSet = (FacetSet)iterator.next();
+ if( facetSet instanceof Customization){
+ tmp.add((Customization)facetSet);
+ }
+
+ }
+ return tmp.containsAll(c);
+ }
+
+ public boolean addAll(final Collection<? extends Customization> c) {
+ return this.delegate.addAll(c);
+ }
+
+ public boolean addAll(final int index, final Collection<? extends Customization> c) {
+ // FIXME implement
+ throw new UnsupportedOperationException("not implemented"); //$NON-NLS-1$
+ }
+
+ public boolean removeAll(final Collection<?> c) {
+ return this.delegate.removeAll(c);
+ }
+
+ public boolean retainAll(final Collection<?> c) {
+ // FIXME implement
+ throw new UnsupportedOperationException("not implemented"); //$NON-NLS-1$
+ }
+
+ public void clear() {
+ final ListIterator<FacetSet> listIterator = this.delegate.listIterator();
+ while (listIterator.hasNext()) {
+ final FacetSet facetSet = listIterator.next();
+ if (facetSet instanceof Customization) {
+ listIterator.remove();
+ }
+ }
+ }
+
+ public Customization get(final int index) {
+ ArrayList<Customization> tmp= new ArrayList<Customization>();
+ for(Iterator<FacetSet> iterator = this.delegate.iterator(); iterator.hasNext();) {
+ FacetSet facetSet = (FacetSet)iterator.next();
+ if( facetSet instanceof Customization){
+ tmp.add((Customization)facetSet);
+ }
+
+ }
+ return tmp.get(index);
+ }
+
+ public Customization set(final int index, final Customization element) {
+ // FIXME implement
+ throw new UnsupportedOperationException("not implemented"); //$NON-NLS-1$
+ }
+
+ public void add(final int index, final Customization element) {
+ if (index == 0) {
+ this.delegate.add(0, element);
+ } else {
+ // FIXME implement
+ throw new UnsupportedOperationException("not implemented"); //$NON-NLS-1$
+ }
+ }
+
+ public Customization remove(final int index) {
+ // FIXME implement
+ throw new UnsupportedOperationException("not implemented"); //$NON-NLS-1$
+ }
+
+ public int indexOf(final Object element) {
+ // FIXME implement
+ throw new UnsupportedOperationException("not implemented"); //$NON-NLS-1$
+ }
+
+ public int lastIndexOf(final Object element) {
+ // FIXME implement
+ throw new UnsupportedOperationException("not implemented"); //$NON-NLS-1$
+ }
+
+ public ListIterator<Customization> listIterator() {
+ // FIXME implement
+ throw new UnsupportedOperationException("not implemented"); //$NON-NLS-1$
+ }
+
+ public ListIterator<Customization> listIterator(final int index) {
+ // FIXME implement
+ throw new UnsupportedOperationException("not implemented"); //$NON-NLS-1$
+ }
+
+ public List<Customization> subList(final int fromIndex, final int toIndex) {
+ // FIXME implement
+ throw new UnsupportedOperationException("not implemented"); //$NON-NLS-1$
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/exception/CustomizationCatalogRuntimeException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/exception/CustomizationCatalogRuntimeException.java
new file mode 100644
index 00000000000..ae72bbfd796
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/exception/CustomizationCatalogRuntimeException.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.core.internal.exception;
+
+/**
+ * @noinstantiate This class is not intended to be instantiated by clients.
+ * @author Gregoire Dupe
+ *
+ */
+public final class CustomizationCatalogRuntimeException extends RuntimeException {
+
+ private static final long serialVersionUID = 6589838701903506569L;
+
+ public CustomizationCatalogRuntimeException() {
+ super();
+ }
+
+ public CustomizationCatalogRuntimeException(final String message) {
+ super(message);
+ }
+
+ public CustomizationCatalogRuntimeException(final Throwable cause) {
+ super(cause);
+ }
+
+ public CustomizationCatalogRuntimeException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/exported/Constants.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/exported/Constants.java
new file mode 100644
index 00000000000..bef2bfcb734
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/exported/Constants.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+ *******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.custom.core.internal.exported;
+
+public final class Constants {
+
+ private Constants() {
+ // Must not be used
+ }
+
+ public static final String CUSTOM_FILE_EXT = "custom"; //$NON-NLS-1$
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/exported/CustomizationUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/exported/CustomizationUtils.java
new file mode 100644
index 00000000000..72966cea30a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/exported/CustomizationUtils.java
@@ -0,0 +1,132 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 376576 - [EFacet] Change the multiplicity of Facet::extendedFacet
+ * David Couvrand (Soft-Maint) - Bug 418418 - [Customization] Overlay icons not implemented
+ */
+package org.eclipse.papyrus.emf.facet.custom.core.internal.exported;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.exception.CustomizationException;
+import org.eclipse.papyrus.emf.facet.custom.core.internal.Activator;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization;
+
+/**
+ * @since 0.2
+ */
+public final class CustomizationUtils {
+
+ private static final String FILE_EXTENSION = "custom"; //$NON-NLS-1$
+
+ private CustomizationUtils() {
+ // Must not be used
+ }
+
+ public static EPackage getCustomizedEPackage(
+ final Customization customization) {
+ EPackage result = null;
+ for (EClassifier eClassifier : customization.getEClassifiers()) {
+ for (EPackage ePackage : getExtendedEPackage(eClassifier)) {
+ if (ePackage != null && !(ePackage instanceof FacetSet)) {
+ result = ePackage;
+ break;
+ }
+ }
+ }
+ return result;
+ }
+
+ private static List<EPackage> getExtendedEPackage(
+ final EClassifier eClassifier) {
+ final List<EClassifier> extended = new ArrayList<EClassifier>();
+ if (eClassifier instanceof FacetCustomization) {
+ final FacetCustomization facetCustom = (FacetCustomization) eClassifier;
+ extended.addAll(facetCustom.getExtendedFacets());
+ } else if (eClassifier instanceof EClassCustomization) {
+ final EClassCustomization eClassCustom = (EClassCustomization) eClassifier;
+ extended.add(eClassCustom.getExtendedMetaclass());
+ }
+ final List<EPackage> ePackages = new LinkedList<EPackage>();
+ for (EClassifier extCassifier : extended) {
+ if (extCassifier != null) {
+ ePackages.add(extCassifier.getEPackage());
+ }
+ }
+ return ePackages;
+ }
+
+ /**
+ * Return the default file extension of a customization file.
+ *
+ * @return the file extension without the dot.
+ */
+ public static String getDefaultFileExtension() {
+ return CustomizationUtils.FILE_EXTENSION;
+ }
+
+ /**
+ * Find a Customization with the given name among the given list of Customizations. If several Customizations have the same name,
+ * then return the first one.
+ *
+ * @param customizations
+ * where to look for
+ * @param name
+ * the name of the Customization to find
+ * @return the Customization, or <code>null</code> if not found in the given list
+ */
+ public static Customization getCustomization(final Collection<Customization> customizations, final String name) {
+ Customization result = null;
+ for (Customization customization : customizations) {
+ if (name.equals(customization.getName())) {
+ result = customization;
+ }
+ }
+ return result;
+ }
+
+ public static <T> T getPropertyValue(
+ final ICustomizationManager customManager, final Object element,
+ final FacetOperation property, final ETypedElement eTypedElement,
+ final Class<T> classs) {
+ T result = null;
+ if (element instanceof EObject) {
+ final EObject eObject = (EObject) element;
+ try {
+ if (eTypedElement == null) {
+ result = customManager.getCustomValueOf(eObject, property,
+ classs);
+ } else {
+ result = customManager.getCustomValueOf(eObject,
+ eTypedElement, property, classs);
+ }
+ } catch (final CustomizationException e) {
+ Logger.logError(
+ e,
+ "Failed to get the value of '" + property.getName() + "' for " + element, //$NON-NLS-1$ //$NON-NLS-2$
+ Activator.getDefault());
+ }
+ }
+ return result;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/query/ETypedElementSwitchQueryImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/query/ETypedElementSwitchQueryImplementation.java
new file mode 100644
index 00000000000..8d771330797
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/query/ETypedElementSwitchQueryImplementation.java
@@ -0,0 +1,83 @@
+/**
+ * Copyright (c) 2012, 2013 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 378271 - [Table] Select Columns To Hide is broken
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Gregoire Dupé (Mia-Software) - Bug 418885 - ETypedElementSwitchQuery implemented using a deprecated query evaluator extension point
+ */
+package org.eclipse.papyrus.emf.facet.custom.core.internal.query;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IDerivedTypedElementImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery;
+
+/**
+ * @deprecated replaced by {@link SwitchQueryImplementation}
+ */
+@Deprecated
+public class ETypedElementSwitchQueryImplementation implements IDerivedTypedElementImplementation {
+
+ private static final String PARAM_NAME = "eStructuralFeature"; //$NON-NLS-1$
+ private boolean checkResultType = false;
+ private final ETypedElementSwitchQuery query;
+ private final IDerivedTypedElementManager derivedTEMgr;
+
+ public ETypedElementSwitchQueryImplementation(
+ final ETypedElementSwitchQuery query,
+ final IDerivedTypedElementManager derivedTEMgr) {
+ this.query = query;
+ this.derivedTEMgr = derivedTEMgr;
+ }
+
+ public Object getValue(final DerivedTypedElement derivedTypedElt,
+ final EObject source, final List<ParameterValue> parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ Object result = null;
+ EStructuralFeature sfParam = null;
+ for (final ParameterValue parameterValue : parameterValues) {
+ if (parameterValue.getParameter().getName()
+ .equals(PARAM_NAME)) {
+ sfParam = (EStructuralFeature) parameterValue.getValue();
+ }
+
+ }
+ // note: sfParam is null when there is no case query (i.e: case is always true)
+ for (final ETypedElementCase eTECase : this.query.getCases()) {
+ if (eTECase.getCase() == sfParam) {
+ result = this.derivedTEMgr.evaluate(eTECase.getValue(), source,
+ parameterValues, facetManager);
+ }
+ }
+ return result;
+ }
+
+ public void setValue(final DerivedTypedElement derivedTypedElt,
+ final EObject source, final List<ParameterValue> parameterValues,
+ final Object newValue) throws DerivedTypedElementException {
+ throw new DerivedTypedElementException("Not implemented"); //$NON-NLS-1$
+ }
+
+ public boolean getCheckResultType() {
+ return this.checkResultType;
+ }
+
+ public void setCheckResultType(final boolean checkResultType) {
+ this.checkResultType = checkResultType;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/query/ETypedElementSwitchQueryImplementationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/query/ETypedElementSwitchQueryImplementationFactory.java
new file mode 100644
index 00000000000..e0ac6c1dbbb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/query/ETypedElementSwitchQueryImplementationFactory.java
@@ -0,0 +1,45 @@
+/**
+ * Copyright (c) 2012, 2013 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupé (Mia-Software) - Bug 418885 - ETypedElementSwitchQuery implemented using a deprecated query evaluator extension point
+ */
+package org.eclipse.papyrus.emf.facet.custom.core.internal.query;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IDerivedTypedElementImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IDerivedTypedElementImplementationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery;
+import org.osgi.framework.Bundle;
+
+/**
+ * @deprecated replaced by {@link SwitchQueryImplementationFactory}
+ */
+@Deprecated
+public class ETypedElementSwitchQueryImplementationFactory implements IDerivedTypedElementImplementationFactory {
+
+ public IDerivedTypedElementImplementation create(final Query query, final Bundle bundle, final IDerivedTypedElementManager derivedTEManager)
+ throws DerivedTypedElementException {
+ if (!(query instanceof ETypedElementSwitchQuery)) {
+ throw new IllegalArgumentException("The given DerivedTypedElement does not have a IsOneOfQuery"); //$NON-NLS-1$
+ }
+ final ETypedElementSwitchQueryImplementation evaluator = new ETypedElementSwitchQueryImplementation(
+ (ETypedElementSwitchQuery) query, derivedTEManager);
+ evaluator.setCheckResultType(false);
+ return evaluator;
+ }
+
+ public EClass getManagedQueryType() {
+ return CustomPackage.eINSTANCE.getETypedElementSwitchQuery();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/query/SwitchQueryImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/query/SwitchQueryImplementation.java
new file mode 100644
index 00000000000..9c348111bd6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/query/SwitchQueryImplementation.java
@@ -0,0 +1,81 @@
+/**
+ * Copyright (c) 2013 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 418885 - ETypedElementSwitchQuery implemented using a deprecated query evaluator extension point
+ */
+package org.eclipse.papyrus.emf.facet.custom.core.internal.query;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery;
+
+public class SwitchQueryImplementation implements IQueryImplementation {
+
+ private static final String PARAM_NAME = "eStructuralFeature"; //$NON-NLS-1$
+ private final ETypedElementSwitchQuery query;
+ private boolean checkResultType = false;
+
+ /**
+ * @param query
+ * @param query
+ * the javaQuery to be evaluated
+ */
+ public SwitchQueryImplementation(final ETypedElementSwitchQuery query) {
+ this.query = query;
+ }
+
+ public Object getValue(final Query query2,
+ final DerivedTypedElement feature, final EObject source,
+ final List<ParameterValue> parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ Object result = null;
+ EStructuralFeature sfParam = null;
+ for (final ParameterValue parameterValue : parameterValues) {
+ if (parameterValue.getParameter().getName().equals(PARAM_NAME)) {
+ sfParam = (EStructuralFeature) parameterValue.getValue();
+ }
+ }
+ for (ETypedElementCase eTECase : this.query.getCases()) {
+ if (eTECase.getCase() == sfParam) {
+ final Query subquery = eTECase.getValue();
+ if (subquery != null) {
+ result = IDerivedTypedElementManager.INSTANCE.evaluate(
+ subquery, source, parameterValues, facetManager);
+ }
+ break;
+ }
+ }
+ return result;
+ }
+
+ public void setValue(final Query query2, final DerivedTypedElement feature,
+ final EObject source, final List<ParameterValue> parameterValues,
+ final Object newValue) throws DerivedTypedElementException {
+ throw new UnsupportedOperationException("Not implemented yet"); //$NON-NLS-1$
+ }
+
+ public boolean isCheckResultType() {
+ return this.checkResultType;
+ }
+
+ public void setCheckResultType(final boolean checkResultType) {
+ this.checkResultType = checkResultType;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/query/SwitchQueryImplementationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/query/SwitchQueryImplementationFactory.java
new file mode 100644
index 00000000000..dc79607ef02
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.core/src/org/eclipse/papyrus/emf/facet/custom/core/internal/query/SwitchQueryImplementationFactory.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) 2013 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 418885 - ETypedElementSwitchQuery implemented using a deprecated query evaluator extension point
+ */
+package org.eclipse.papyrus.emf.facet.custom.core.internal.query;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery;
+import org.osgi.framework.Bundle;
+
+public class SwitchQueryImplementationFactory implements
+ IQueryImplementationFactory {
+
+ public IQueryImplementation create(final Query query, final Bundle bundle,
+ final IDerivedTypedElementManager manager)
+ throws DerivedTypedElementException {
+ if (!(query instanceof ETypedElementSwitchQuery)) {
+ throw new IllegalArgumentException(
+ "The given DerivedTypedElement does not have a ETypedElementSwitchQuery"); //$NON-NLS-1$
+ }
+ final ETypedElementSwitchQuery switchQuery = (ETypedElementSwitchQuery) query;
+ return new SwitchQueryImplementation(switchQuery);
+ }
+
+ public EClass getManagedQueryType() {
+ return CustomPackage.eINSTANCE.getETypedElementSwitchQuery();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/.classpath
new file mode 100644
index 00000000000..45f024e850e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/.project
new file mode 100644
index 00000000000..5ec0b643369
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/.project
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.custom.metamodel.edit</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.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..2de63e90563
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,77 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=ignore
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=ignore
+org.eclipse.jdt.core.compiler.problem.deadCode=ignore
+org.eclipse.jdt.core.compiler.problem.deprecation=ignore
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=ignore
+org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
+org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=ignore
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=ignore
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=ignore
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=ignore
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=ignore
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=ignore
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
+org.eclipse.jdt.core.compiler.problem.nullReference=ignore
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=ignore
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=ignore
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
+org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=ignore
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=ignore
+org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=ignore
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=ignore
+org.eclipse.jdt.core.compiler.problem.unusedLabel=ignore
+org.eclipse.jdt.core.compiler.problem.unusedLocal=ignore
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=ignore
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=ignore
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=ignore
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..569b1842815
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/META-INF/MANIFEST.MF
@@ -0,0 +1,17 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.custom.metamodel.edit;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-ClassPath: .
+Bundle-Activator: org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.provider.CustomEditPlugin$Implementation
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.papyrus.emf.facet.custom.metamodel;visibility:=reexport,
+ org.eclipse.emf.edit,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel;visibility:=reexport,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.edit;visibility:=reexport
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.provider;x-internal:=true
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/about.html
new file mode 100644
index 00000000000..4919fecb866
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/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>February 17, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/build.properties
new file mode 100644
index 00000000000..47ea8f9c3fb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/build.properties
@@ -0,0 +1,22 @@
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+#
+#
+
+bin.includes = .,\
+ icons/,\
+ META-INF/,\
+ plugin.xml,\
+ plugin.properties,\
+ about.html
+jars.compile.order = .
+source.. = src/
+output.. = bin/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateEClassCustomization_eStructuralFeatureCustomization_EStructuralFeatureCustomization.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateEClassCustomization_eStructuralFeatureCustomization_EStructuralFeatureCustomization.gif
new file mode 100644
index 00000000000..cc38dd76961
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateEClassCustomization_eStructuralFeatureCustomization_EStructuralFeatureCustomization.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_EObjectLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_EObjectLiteralQuery.gif
new file mode 100644
index 00000000000..459f97d6b5c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_EObjectLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_ETypedElementSwitchQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_ETypedElementSwitchQuery.gif
new file mode 100644
index 00000000000..a5b59a28b56
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_ETypedElementSwitchQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_FalseLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_FalseLiteralQuery.gif
new file mode 100644
index 00000000000..fd7e5e196f1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_FalseLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_FloatLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_FloatLiteralQuery.gif
new file mode 100644
index 00000000000..b52554ecb87
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_FloatLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_IntegerLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_IntegerLiteralQuery.gif
new file mode 100644
index 00000000000..5089b916e43
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_IntegerLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_IsOneOfQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_IsOneOfQuery.gif
new file mode 100644
index 00000000000..47209bab6d2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_IsOneOfQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NavigationQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NavigationQuery.gif
new file mode 100644
index 00000000000..43703db9854
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NavigationQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NullLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NullLiteralQuery.gif
new file mode 100644
index 00000000000..a31e5142add
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NullLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_OperationCallQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_OperationCallQuery.gif
new file mode 100644
index 00000000000..0669409fbd0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_OperationCallQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_StringLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_StringLiteralQuery.gif
new file mode 100644
index 00000000000..f33bed84b34
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_StringLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_TrueLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_TrueLiteralQuery.gif
new file mode 100644
index 00000000000..43703db9854
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_TrueLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementSwitchQuery_cases_ETypedElementCase.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementSwitchQuery_cases_ETypedElementCase.gif
new file mode 100644
index 00000000000..26942d5f053
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateETypedElementSwitchQuery_cases_ETypedElementCase.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateFacetCustomization_eStructuralFeatureCustomization_EStructuralFeatureCustomization.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateFacetCustomization_eStructuralFeatureCustomization_EStructuralFeatureCustomization.gif
new file mode 100644
index 00000000000..b45e46ab23f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateFacetCustomization_eStructuralFeatureCustomization_EStructuralFeatureCustomization.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateTypeCustomization_eStructuralFeatureCustomization_EStructuralFeatureCustomization.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateTypeCustomization_eStructuralFeatureCustomization_EStructuralFeatureCustomization.gif
new file mode 100644
index 00000000000..8cf4d774b64
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/ctool16/CreateTypeCustomization_eStructuralFeatureCustomization_EStructuralFeatureCustomization.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/Customization.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/Customization.gif
new file mode 100644
index 00000000000..db7414e9372
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/Customization.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/EClassCustomization.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/EClassCustomization.gif
new file mode 100644
index 00000000000..14af8aaee9f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/EClassCustomization.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/EStructuralFeatureCustomization.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/EStructuralFeatureCustomization.gif
new file mode 100644
index 00000000000..ef56c140853
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/EStructuralFeatureCustomization.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/ETypedElementCase.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/ETypedElementCase.gif
new file mode 100644
index 00000000000..7c2aaac84ee
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/ETypedElementCase.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/ETypedElementSwitchQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/ETypedElementSwitchQuery.gif
new file mode 100644
index 00000000000..b1f8afa4766
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/ETypedElementSwitchQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/FacetCustomization.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/FacetCustomization.gif
new file mode 100644
index 00000000000..1e5345fb323
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/FacetCustomization.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/TypeCustomization.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/TypeCustomization.gif
new file mode 100644
index 00000000000..c8d381f0b32
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/icons/full/obj16/TypeCustomization.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/plugin.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/plugin.properties
new file mode 100644
index 00000000000..5d35921171f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/plugin.properties
@@ -0,0 +1,47 @@
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+#
+#
+
+pluginName = EMF Facet Custom Edit Support (Incubation)
+providerName = Eclipse Modeling Project
+
+_UI_CreateChild_text = {0}
+_UI_CreateChild_text2 = {1} {0}
+_UI_CreateChild_text3 = {1}
+_UI_CreateChild_tooltip = Create New {0} Under {1} Feature
+_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}.
+_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent.
+
+_UI_PropertyDescriptor_description = The {0} of the {1}
+
+_UI_Customization_type = Customization
+_UI_EClassCustomization_type = EClass Customization
+_UI_EStructuralFeatureCustomization_type = EStructural Feature Customization
+_UI_FacetCustomization_type = Facet Customization
+_UI_Unknown_type = Object
+
+_UI_Unknown_datatype= Value
+
+_UI_Customization_mustBeLoadedByDefault_feature = Must Be Loaded By Default
+_UI_Customization_customizedEPackage_feature = Customized EPackage
+_UI_EClassCustomization_eStructuralFeatureCustomization_feature = EStructural Feature Customization
+_UI_EStructuralFeatureCustomization_customizedEStructuralFeature_feature = Customized EStructural Feature
+_UI_FacetCustomization_customizedFacet_feature = Customized Facet
+_UI_FacetCustomization_eStructuralFeatureCustomization_feature = EStructural Feature Customization
+_UI_Unknown_feature = Unspecified
+
+_UI_TypeCustomization_type = Type Customization
+_UI_TypeCustomization_eStructuralFeatureCustomization_feature = EStructural Feature Customization
+_UI_ETypedElementSwitchQuery_type = ETyped Element Switch Query
+_UI_ETypedElementCase_type = ETyped Element Case
+_UI_ETypedElementSwitchQuery_cases_feature = Cases
+_UI_ETypedElementCase_case_feature = Case
+_UI_ETypedElementCase_value_feature = Value
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/plugin.xml
new file mode 100644
index 00000000000..23b4b78956c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/plugin.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+
+
+-->
+
+<plugin>
+
+ <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+ <factory
+ uri="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom"
+ class="org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.provider.CustomItemProviderAdapterFactory"
+ supportedTypes=
+ "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+ org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+ org.eclipse.emf.edit.provider.ITreeItemContentProvider
+ org.eclipse.emf.edit.provider.IItemLabelProvider
+ org.eclipse.emf.edit.provider.IItemPropertySource"/>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/CustomEditPlugin.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/CustomEditPlugin.java
new file mode 100644
index 00000000000..d7ea01c2bf7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/CustomEditPlugin.java
@@ -0,0 +1,101 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.provider;
+
+import org.eclipse.emf.common.EMFPlugin;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+
+/**
+ * This is the central singleton for the Custom edit plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public final class CustomEditPlugin extends EMFPlugin {
+ /**
+ * Keep track of the singleton.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final CustomEditPlugin INSTANCE = new CustomEditPlugin();
+
+ /**
+ * Keep track of the singleton.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static Implementation plugin;
+
+ /**
+ * Create the instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomEditPlugin() {
+ super
+ (new ResourceLocator [] {
+ Efacet2EditPlugin.INSTANCE,
+ });
+ }
+
+ /**
+ * Returns the singleton instance of the Eclipse plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the singleton instance.
+ * @generated
+ */
+ @Override
+ public ResourceLocator getPluginResourceLocator() {
+ return plugin;
+ }
+
+ /**
+ * Returns the singleton instance of the Eclipse plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the singleton instance.
+ * @generated
+ */
+ public static Implementation getPlugin() {
+ return plugin;
+ }
+
+ /**
+ * The actual implementation of the Eclipse <b>Plugin</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static class Implementation extends EclipsePlugin {
+ /**
+ * Creates an instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Implementation() {
+ super();
+
+ // Remember the static instance.
+ //
+ plugin = this;
+ }
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/CustomItemProviderAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/CustomItemProviderAdapterFactory.java
new file mode 100644
index 00000000000..ee0976f7363
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/CustomItemProviderAdapterFactory.java
@@ -0,0 +1,304 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.util.CustomAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CustomItemProviderAdapterFactory extends CustomAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+ /**
+ * This keeps track of the root adapter factory that delegates to this adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ComposedAdapterFactory parentAdapterFactory;
+
+ /**
+ * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+ /**
+ * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+ /**
+ * This constructs an instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomItemProviderAdapterFactory() {
+ supportedTypes.add(IEditingDomainItemProvider.class);
+ supportedTypes.add(IStructuredItemContentProvider.class);
+ supportedTypes.add(ITreeItemContentProvider.class);
+ supportedTypes.add(IItemLabelProvider.class);
+ supportedTypes.add(IItemPropertySource.class);
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CustomizationItemProvider customizationItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createCustomizationAdapter() {
+ if (customizationItemProvider == null) {
+ customizationItemProvider = new CustomizationItemProvider(this);
+ }
+
+ return customizationItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EClassCustomizationItemProvider eClassCustomizationItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createEClassCustomizationAdapter() {
+ if (eClassCustomizationItemProvider == null) {
+ eClassCustomizationItemProvider = new EClassCustomizationItemProvider(this);
+ }
+
+ return eClassCustomizationItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetCustomizationItemProvider facetCustomizationItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createFacetCustomizationAdapter() {
+ if (facetCustomizationItemProvider == null) {
+ facetCustomizationItemProvider = new FacetCustomizationItemProvider(this);
+ }
+
+ return facetCustomizationItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ETypedElementSwitchQueryItemProvider eTypedElementSwitchQueryItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createETypedElementSwitchQueryAdapter() {
+ if (eTypedElementSwitchQueryItemProvider == null) {
+ eTypedElementSwitchQueryItemProvider = new ETypedElementSwitchQueryItemProvider(this);
+ }
+
+ return eTypedElementSwitchQueryItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ETypedElementCaseItemProvider eTypedElementCaseItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createETypedElementCaseAdapter() {
+ if (eTypedElementCaseItemProvider == null) {
+ eTypedElementCaseItemProvider = new ETypedElementCaseItemProvider(this);
+ }
+
+ return eTypedElementCaseItemProvider;
+ }
+
+ /**
+ * This returns the root adapter factory that contains this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ComposeableAdapterFactory getRootAdapterFactory() {
+ return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+ }
+
+ /**
+ * This sets the composed adapter factory that contains this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+ this.parentAdapterFactory = parentAdapterFactory;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object type) {
+ return supportedTypes.contains(type) || super.isFactoryForType(type);
+ }
+
+ /**
+ * This implementation substitutes the factory itself as the key for the adapter.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter adapt(Notifier notifier, Object type) {
+ return super.adapt(notifier, this);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object adapt(Object object, Object type) {
+ if (isFactoryForType(type)) {
+ Object adapter = super.adapt(object, type);
+ if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+ return adapter;
+ }
+ }
+
+ return null;
+ }
+
+ /**
+ * This adds a listener.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void addListener(INotifyChangedListener notifyChangedListener) {
+ changeNotifier.addListener(notifyChangedListener);
+ }
+
+ /**
+ * This removes a listener.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void removeListener(INotifyChangedListener notifyChangedListener) {
+ changeNotifier.removeListener(notifyChangedListener);
+ }
+
+ /**
+ * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void fireNotifyChanged(Notification notification) {
+ changeNotifier.fireNotifyChanged(notification);
+
+ if (parentAdapterFactory != null) {
+ parentAdapterFactory.fireNotifyChanged(notification);
+ }
+ }
+
+ /**
+ * This disposes all of the item providers created by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void dispose() {
+ if (customizationItemProvider != null) customizationItemProvider.dispose();
+ if (eClassCustomizationItemProvider != null) eClassCustomizationItemProvider.dispose();
+ if (facetCustomizationItemProvider != null) facetCustomizationItemProvider.dispose();
+ if (eTypedElementSwitchQueryItemProvider != null) eTypedElementSwitchQueryItemProvider.dispose();
+ if (eTypedElementCaseItemProvider != null) eTypedElementCaseItemProvider.dispose();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/CustomizationItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/CustomizationItemProvider.java
new file mode 100644
index 00000000000..67ef4ceaa6c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/CustomizationItemProvider.java
@@ -0,0 +1,182 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.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.ecore.EcorePackage;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+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.ViewerNotification;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.FacetSetItemProvider;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomFactory;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CustomizationItemProvider
+ extends FacetSetItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomizationItemProvider(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);
+
+ addMustBeLoadedByDefaultPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Must Be Loaded By Default feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addMustBeLoadedByDefaultPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_Customization_mustBeLoadedByDefault_feature"),
+ getString("_UI_PropertyDescriptor_description", "_UI_Customization_mustBeLoadedByDefault_feature", "_UI_Customization_type"),
+ CustomPackage.Literals.CUSTOMIZATION__MUST_BE_LOADED_BY_DEFAULT,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This returns Customization.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/Customization"));
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((Customization)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_Customization_type") :
+ getString("_UI_Customization_type") + " " + label;
+ }
+
+ /**
+ * 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(Customization.class)) {
+ case CustomPackage.CUSTOMIZATION__MUST_BE_LOADED_BY_DEFAULT:
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EcorePackage.Literals.EPACKAGE__ECLASSIFIERS,
+ CustomFactory.eINSTANCE.createEClassCustomization()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EcorePackage.Literals.EPACKAGE__ECLASSIFIERS,
+ CustomFactory.eINSTANCE.createFacetCustomization()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EcorePackage.Literals.EPACKAGE__ESUBPACKAGES,
+ CustomFactory.eINSTANCE.createCustomization()));
+ }
+
+ /**
+ * Return the resource locator for this item provider's resources.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ResourceLocator getResourceLocator() {
+ return CustomEditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/EClassCustomizationItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/EClassCustomizationItemProvider.java
new file mode 100644
index 00000000000..aaa6c7bc77b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/EClassCustomizationItemProvider.java
@@ -0,0 +1,133 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.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.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.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.FacetItemProvider;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class EClassCustomizationItemProvider
+ extends FacetItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClassCustomizationItemProvider(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);
+
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This returns EClassCustomization.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/EClassCustomization"));
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((EClassCustomization)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_EClassCustomization_type") :
+ getString("_UI_EClassCustomization_type") + " " + label;
+ }
+
+ /**
+ * 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);
+ 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 CustomEditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/ETypedElementCaseItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/ETypedElementCaseItemProvider.java
new file mode 100644
index 00000000000..fdad632083f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/ETypedElementCaseItemProvider.java
@@ -0,0 +1,250 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 376576 - [EFacet] Change the multiplicity of Facet::extendedFacet
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.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.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+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.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryFactory;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomFactory;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ETypedElementCaseItemProvider
+ 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 ETypedElementCaseItemProvider(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);
+
+ addCasePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Case feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addCasePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElementCase_case_feature"),
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElementCase_case_feature", "_UI_ETypedElementCase_type"),
+ CustomPackage.Literals.ETYPED_ELEMENT_CASE__CASE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(CustomPackage.Literals.ETYPED_ELEMENT_CASE__VALUE);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns ETypedElementCase.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/ETypedElementCase"));
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ return getString("_UI_ETypedElementCase_type");
+ }
+
+ /**
+ * 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(ETypedElementCase.class)) {
+ case CustomPackage.ETYPED_ELEMENT_CASE__VALUE:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (CustomPackage.Literals.ETYPED_ELEMENT_CASE__VALUE,
+ CustomFactory.eINSTANCE.createETypedElementSwitchQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (CustomPackage.Literals.ETYPED_ELEMENT_CASE__VALUE,
+ QueryFactory.eINSTANCE.createNavigationQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (CustomPackage.Literals.ETYPED_ELEMENT_CASE__VALUE,
+ QueryFactory.eINSTANCE.createIsOneOfQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (CustomPackage.Literals.ETYPED_ELEMENT_CASE__VALUE,
+ QueryFactory.eINSTANCE.createStringLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (CustomPackage.Literals.ETYPED_ELEMENT_CASE__VALUE,
+ QueryFactory.eINSTANCE.createTrueLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (CustomPackage.Literals.ETYPED_ELEMENT_CASE__VALUE,
+ QueryFactory.eINSTANCE.createFalseLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (CustomPackage.Literals.ETYPED_ELEMENT_CASE__VALUE,
+ QueryFactory.eINSTANCE.createNullLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (CustomPackage.Literals.ETYPED_ELEMENT_CASE__VALUE,
+ QueryFactory.eINSTANCE.createIntegerLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (CustomPackage.Literals.ETYPED_ELEMENT_CASE__VALUE,
+ QueryFactory.eINSTANCE.createFloatLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (CustomPackage.Literals.ETYPED_ELEMENT_CASE__VALUE,
+ QueryFactory.eINSTANCE.createEObjectLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (CustomPackage.Literals.ETYPED_ELEMENT_CASE__VALUE,
+ QueryFactory.eINSTANCE.createOperationCallQuery()));
+ }
+
+ /**
+ * Return the resource locator for this item provider's resources.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ResourceLocator getResourceLocator() {
+ return CustomEditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/ETypedElementSwitchQueryItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/ETypedElementSwitchQueryItemProvider.java
new file mode 100644
index 00000000000..7e21b33cd29
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/ETypedElementSwitchQueryItemProvider.java
@@ -0,0 +1,175 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.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.ecore.EStructuralFeature;
+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.ViewerNotification;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.provider.QueryItemProvider;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomFactory;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ETypedElementSwitchQueryItemProvider
+ extends QueryItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ETypedElementSwitchQueryItemProvider(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);
+
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(CustomPackage.Literals.ETYPED_ELEMENT_SWITCH_QUERY__CASES);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns ETypedElementSwitchQuery.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/ETypedElementSwitchQuery"));
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ ETypedElementSwitchQuery eTypedElementSwitchQuery = (ETypedElementSwitchQuery)object;
+ return getString("_UI_ETypedElementSwitchQuery_type") + " " + eTypedElementSwitchQuery.isCanHaveSideEffects();
+ }
+
+ /**
+ * 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(ETypedElementSwitchQuery.class)) {
+ case CustomPackage.ETYPED_ELEMENT_SWITCH_QUERY__CASES:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (CustomPackage.Literals.ETYPED_ELEMENT_SWITCH_QUERY__CASES,
+ CustomFactory.eINSTANCE.createETypedElementCase()));
+ }
+
+ /**
+ * Return the resource locator for this item provider's resources.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ResourceLocator getResourceLocator() {
+ return CustomEditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/FacetCustomizationItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/FacetCustomizationItemProvider.java
new file mode 100644
index 00000000000..06fd5d2969a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/provider/FacetCustomizationItemProvider.java
@@ -0,0 +1,158 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.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.edit.provider.ComposeableAdapterFactory;
+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.ItemProviderAdapter;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.FacetItemProvider;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class FacetCustomizationItemProvider
+ extends FacetItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FacetCustomizationItemProvider(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);
+
+ addCustomizedFacetPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Customized Facet feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addCustomizedFacetPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_FacetCustomization_customizedFacet_feature"),
+ getString("_UI_PropertyDescriptor_description", "_UI_FacetCustomization_customizedFacet_feature", "_UI_FacetCustomization_type"),
+ CustomPackage.Literals.FACET_CUSTOMIZATION__CUSTOMIZED_FACET,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This returns FacetCustomization.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/FacetCustomization"));
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((FacetCustomization)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_FacetCustomization_type") :
+ getString("_UI_FacetCustomization_type") + " " + label;
+ }
+
+ /**
+ * 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);
+ 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 CustomEditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.classpath
new file mode 100644
index 00000000000..45f024e850e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.project
new file mode 100644
index 00000000000..e9fd540e503
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.custom.metamodel</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.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..e1105b315f5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,4 @@
+#Thu Oct 20 20:43:55 CEST 2011
+eclipse.preferences.version=1
+encoding//model/custom_main.ecorediag=UTF-8
+encoding//model/custom_property_declaration.ecorediag=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..dfad55ea64c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,76 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=ignore
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=ignore
+org.eclipse.jdt.core.compiler.problem.deadCode=ignore
+org.eclipse.jdt.core.compiler.problem.deprecation=ignore
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=ignore
+org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
+org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=ignore
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=ignore
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=ignore
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=ignore
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=ignore
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=ignore
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
+org.eclipse.jdt.core.compiler.problem.nullReference=ignore
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=ignore
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=ignore
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=ignore
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=ignore
+org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=ignore
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=ignore
+org.eclipse.jdt.core.compiler.problem.unusedLabel=ignore
+org.eclipse.jdt.core.compiler.problem.unusedLocal=ignore
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=ignore
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=ignore
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=ignore
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..524a7d5b076
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/META-INF/MANIFEST.MF
@@ -0,0 +1,23 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.custom.metamodel;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: %providerName
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Export-Package:
+ org.eclipse.papyrus.emf.facet.custom.metamodel.custompt,
+ org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom,
+ org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl,
+ org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.util,
+ org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog,
+ org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt;x-internal:=true,
+ org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy,
+ org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query,
+ org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.util;x-internal:=true
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel;visibility:=reexport,
+ org.eclipse.papyrus.emf.facet.util.emf.catalog;bundle-version="0.2.0"
+Bundle-ActivationPolicy: lazy
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..e171b133fd6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,12 @@
+#Copyright (c) 2011 Mia-Software.
+#
+#All rights reserved. This program and the accompanying materials
+#are made available under the terms of the Eclipse Public License v1.0
+#which accompanies this distribution, and is available at
+#http://www.eclipse.org/legal/epl-v10.html
+#
+#Contributors:
+# Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+
+pluginName = EMF Facet Customization Meta-Model (Incubation)
+providerName = Eclipse Modeling Project
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/about.html
new file mode 100644
index 00000000000..25f1a82997c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/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>October 25, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/build.properties
new file mode 100644
index 00000000000..359541ef09d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/build.properties
@@ -0,0 +1,21 @@
+#Copyright (c) 2011 Mia-Software.
+#
+#All rights reserved. This program and the accompanying materials
+#are made available under the terms of the Eclipse Public License v1.0
+#which accompanies this distribution, and is available at
+#http://www.eclipse.org/legal/epl-v10.html
+#
+#Contributors:
+# Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+
+
+bin.includes = .,\
+ model/,\
+ META-INF/,\
+ plugin.xml,\
+ OSGI-INF/,\
+ about.html
+jars.compile.order = .
+source.. = src/
+output.. = bin/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/catalog-0.2.0.ecore b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/catalog-0.2.0.ecore
new file mode 100644
index 00000000000..599dd1b0694
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/catalog-0.2.0.ecore
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="customizationcatalog" nsURI="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.internal/customizationcatalog"
+ nsPrefix="customizationcatalog">
+ <eClassifiers xsi:type="ecore:EClass" name="CustomizationCatalog" eSuperTypes="platform:/plugin/org.eclipse.papyrus.emf.facet.util.emf.catalog/model/catalog.ecore#//Catalog"/>
+ <eClassifiers xsi:type="ecore:EClass" name="CustomizationPropertiesCatalog" eSuperTypes="platform:/plugin/org.eclipse.papyrus.emf.facet.util.emf.catalog/model/catalog.ecore#//Catalog"/>
+</ecore:EPackage>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/catalog-0.2.0.genmodel b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/catalog-0.2.0.genmodel
new file mode 100644
index 00000000000..dc3cc52aa1e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/catalog-0.2.0.genmodel
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel"
+ copyrightText=" Copyright (c) 2011 Mia-Software.&#xD;&#xA; &#xD;&#xA; All rights reserved. This program and the accompanying materials&#xD;&#xA; are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA; which accompanies this distribution, and is available at&#xD;&#xA; http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA;&#xD;&#xA; Contributors:&#xD;&#xA; &#x9;Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model&#xD;&#xA; &#x9;Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning&#xD;&#xA; "
+ modelDirectory="/org.eclipse.papyrus.emf.facet.custom.metamodel/src" editDirectory="/org.eclipse.papyrus.emf.facet.custom.metamodel.edit/src"
+ editorDirectory="/org.eclipse.papyrus.emf.facet.custom.metamodel.editor/src" modelPluginID="org.eclipse.papyrus.emf.facet.custom.metamodel"
+ modelName="Catalog" editPluginClass="org.eclipse.papyrus.emf.facet.custom.metamodel.provider.CatalogEditPlugin"
+ editorPluginClass="org.eclipse.papyrus.emf.facet.custom.metamodel.presentation.CatalogEditorPlugin"
+ importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0" copyrightFields="false"
+ editPluginID="org.eclipse.papyrus.emf.facet.custom.metamodel.edit" editorPluginID="org.eclipse.papyrus.emf.facet.custom.metamodel.editor"
+ runtimeVersion="2.6" usedGenPackages="platform:/plugin/org.eclipse.papyrus.emf.facet.util.emf.catalog/model/catalog.genmodel#//catalog">
+ <foreignModel>catalog.ecore</foreignModel>
+</genmodel:GenModel>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom-0.2.0.ecore b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom-0.2.0.ecore
new file mode 100644
index 00000000000..6c6414476b6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom-0.2.0.ecore
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="custom"
+ nsURI="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom" nsPrefix="custom">
+ <eClassifiers xsi:type="ecore:EClass" name="Customization" eSuperTypes="../../org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.ecore#//FacetSet">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The customization model element is the root of a customization model. A customization is applied to only one ePackage and contains EClassCustomizations."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="mustBeLoadedByDefault"
+ lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+ defaultValueLiteral="false">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="When Customization::mustBeloadedByDefault is true, the customization will be automatically loaded in the customizable model browsers."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="EClassCustomization" eSuperTypes="../../org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.ecore#//Facet">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="An EClassCustomization contains the customization for an EClass. There must not exist two EClassCustomizations customizing the same EClass in the same customization."/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="FacetCustomization" eSuperTypes="../../org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.ecore#//Facet">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A FacetCustomization contains the customization for a Facet. There must not exist two FacetCustomizations customizing the same facet in the same customization."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="customizedFacet" lowerBound="1"
+ eType="ecore:EClass ../../org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.ecore#//Facet"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ETypedElementSwitchQuery" eSuperTypes="../../org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.ecore#//extensible/Query">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This query can return a value depending of an instance of ETypedElement. This query is dedicated to the definition of customizations."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="cases" upperBound="-1"
+ eType="#//ETypedElementCase" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ETypedElementCase">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="Case part of the ETypedElementSwitchQuery."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="case" lowerBound="1" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="ecore:EClass ../../org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.ecore#//extensible/Query"
+ containment="true"/>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom-0.2.0.genmodel b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom-0.2.0.genmodel
new file mode 100644
index 00000000000..9ecb5877122
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom-0.2.0.genmodel
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText=" Copyright (c) 2011 Mia-Software.&#xD;&#xA; &#xD;&#xA; All rights reserved. This program and the accompanying materials&#xD;&#xA; are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA; which accompanies this distribution, and is available at&#xD;&#xA; http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA;&#xD;&#xA; Contributors:&#xD;&#xA; &#x9;Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model&#xD;&#xA; Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework&#xD;&#xA; Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning "
+ modelDirectory="/org.eclipse.papyrus.emf.facet.custom.metamodel/src" modelPluginID="org.eclipse.papyrus.emf.facet.custom.metamodel"
+ modelName="Custom" importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0"
+ copyrightFields="false" runtimeVersion="2.6" usedGenPackages="platform:/plugin/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.genmodel#//efacet">
+ <foreignModel>custom-0.2.0.ecore</foreignModel>
+ <genPackages prefix="Custom" basePackage="org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0"
+ disposableProviderFactory="true" ecorePackage="custom-0.2.0.ecore#/">
+ <genClasses ecoreClass="custom-0.2.0.ecore#//Customization">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute custom-0.2.0.ecore#//Customization/mustBeLoadedByDefault"/>
+ </genClasses>
+ <genClasses ecoreClass="custom-0.2.0.ecore#//EClassCustomization"/>
+ <genClasses ecoreClass="custom-0.2.0.ecore#//FacetCustomization">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference custom-0.2.0.ecore#//FacetCustomization/customizedFacet"/>
+ </genClasses>
+ <genClasses ecoreClass="custom-0.2.0.ecore#//ETypedElementSwitchQuery">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference custom-0.2.0.ecore#//ETypedElementSwitchQuery/cases"/>
+ </genClasses>
+ <genClasses ecoreClass="custom-0.2.0.ecore#//ETypedElementCase">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference custom-0.2.0.ecore#//ETypedElementCase/case"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference custom-0.2.0.ecore#//ETypedElementCase/value"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_main.ecorediag b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_main.ecorediag
new file mode 100644
index 00000000000..323d031371d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_main.ecorediag
@@ -0,0 +1,429 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmi:id="_Z-6G0ftHEeCHmpaJaoX4Ew" type="EcoreTools" name="custom.ecorediag" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="_aBlnZftHEeCHmpaJaoX4Ew" type="1002">
+ <children xmi:type="notation:Node" xmi:id="_aBlnaftHEeCHmpaJaoX4Ew" type="4006"/>
+ <children xmi:type="notation:Node" xmi:id="_aBlnavtHEeCHmpaJaoX4Ew" type="5003">
+ <children xmi:type="notation:Node" xmi:id="_flIIcPtHEeCHmpaJaoX4Ew" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_flIIc_tHEeCHmpaJaoX4Ew" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_flIIdPtHEeCHmpaJaoX4Ew" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_flIIdftHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_flIIdvtHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_flIId_tHEeCHmpaJaoX4Ew"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_flIIePtHEeCHmpaJaoX4Ew" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_flIIeftHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_flIIevtHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_flIIe_tHEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_flIIcftHEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="custom.ecore#//main/Customization"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_flIIcvtHEeCHmpaJaoX4Ew" x="5" y="128"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_hPq-sPtHEeCHmpaJaoX4Ew" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_hPq-s_tHEeCHmpaJaoX4Ew" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_hPq-tPtHEeCHmpaJaoX4Ew" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_hPq-tftHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_hPq-tvtHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_hPq-t_tHEeCHmpaJaoX4Ew"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_hPq-uPtHEeCHmpaJaoX4Ew" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_hPq-uftHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_hPq-uvtHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_hPq-u_tHEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_hPq-sftHEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="custom.ecore#//main/EModelElementCustomization"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hPq-svtHEeCHmpaJaoX4Ew" x="275" y="28"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_jKnBYPtHEeCHmpaJaoX4Ew" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_jKnBY_tHEeCHmpaJaoX4Ew" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_jKnBZPtHEeCHmpaJaoX4Ew" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_jKnBZftHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_jKnBZvtHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_jKnBZ_tHEeCHmpaJaoX4Ew"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_jKnBaPtHEeCHmpaJaoX4Ew" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_jKnBaftHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_jKnBavtHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_jKnBa_tHEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_jKnBYftHEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="custom.ecore#//main/FacetCustomization"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jKnBYvtHEeCHmpaJaoX4Ew" x="400" y="208"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_k6EM0PtHEeCHmpaJaoX4Ew" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_k6EM0_tHEeCHmpaJaoX4Ew" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_k6EM1PtHEeCHmpaJaoX4Ew" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_k6EM1ftHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_k6EM1vtHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_k6EM1_tHEeCHmpaJaoX4Ew"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_k6EM2PtHEeCHmpaJaoX4Ew" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_k6EM2ftHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_k6EM2vtHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_k6EM2_tHEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_k6EM0ftHEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="custom.ecore#//main/EClassCustomization"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_k6EM0vtHEeCHmpaJaoX4Ew" x="140" y="208"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_qLSO0PtHEeCHmpaJaoX4Ew" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_qLSO0_tHEeCHmpaJaoX4Ew" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_qLSO1PtHEeCHmpaJaoX4Ew" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_qLSO1ftHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_qLSO1vtHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_qLSO1_tHEeCHmpaJaoX4Ew"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_qLSO2PtHEeCHmpaJaoX4Ew" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_qLSO2ftHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_qLSO2vtHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_qLSO2_tHEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_qLSO0ftHEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="custom.ecore#//main/EClassifierCustomization"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qLSO0vtHEeCHmpaJaoX4Ew" x="280" y="133"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_7O79EPtHEeCHmpaJaoX4Ew" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_7O79E_tHEeCHmpaJaoX4Ew" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_7O79FPtHEeCHmpaJaoX4Ew" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_7O79FftHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_7O79FvtHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_7O79F_tHEeCHmpaJaoX4Ew"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_7O79GPtHEeCHmpaJaoX4Ew" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_7O79GftHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_7O79GvtHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_7O79G_tHEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_7O79EftHEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="custom.ecore#//main/CustomizationPropertySetting"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7O79EvtHEeCHmpaJaoX4Ew" x="600" y="33"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_DtCx0PtIEeCHmpaJaoX4Ew" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_DtCx0_tIEeCHmpaJaoX4Ew" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_DtCx1PtIEeCHmpaJaoX4Ew" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_DtCx1ftIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_DtCx1vtIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_DtCx1_tIEeCHmpaJaoX4Ew"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_DtCx2PtIEeCHmpaJaoX4Ew" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_DtCx2ftIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_DtCx2vtIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_DtCx2_tIEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_DtCx0ftIEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="custom.ecore#//main/EStructuralFeatureCustomization"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DtCx0vtIEeCHmpaJaoX4Ew" x="735" y="128"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_aBlna_tHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_aBlnbPtHEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_aBlnbftHEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_aBlnZvtHEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13150135" lineColor="4210752"/>
+ <styles xmi:type="notation:MultiDiagramLinkStyle" xmi:id="_aBlnZ_tHEeCHmpaJaoX4Ew"/>
+ <element xmi:type="ecore:EPackage" href="custom.ecore#//main"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_aBlnaPtHEeCHmpaJaoX4Ew" x="15" y="20" width="1028" height="298"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_ALcTUPtIEeCHmpaJaoX4Ew" type="1002">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_ALcTWftIEeCHmpaJaoX4Ew" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_ALcTWvtIEeCHmpaJaoX4Ew" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_ALcTVPtIEeCHmpaJaoX4Ew" type="4006"/>
+ <children xmi:type="notation:Node" xmi:id="_ALcTVftIEeCHmpaJaoX4Ew" type="5003">
+ <children xmi:type="notation:Node" xmi:id="_BmfVAPtIEeCHmpaJaoX4Ew" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Bmoe-PtIEeCHmpaJaoX4Ew" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Bmoe-ftIEeCHmpaJaoX4Ew" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_BmfVA_tIEeCHmpaJaoX4Ew" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_BmfVBPtIEeCHmpaJaoX4Ew" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_BmfVBftIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_BmfVBvtIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_BmfVB_tIEeCHmpaJaoX4Ew"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_BmfVCPtIEeCHmpaJaoX4Ew" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_BmfVCftIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_BmfVCvtIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_BmfVC_tIEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_BmfVAftIEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="platform:/resource/org.eclipse.papyrus.emf.facet.efacet2/model/efacet2.ecore#//declaration/DerivedTypedElement"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BmfVAvtIEeCHmpaJaoX4Ew" x="440" y="7"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_jL-d4PtIEeCHmpaJaoX4Ew" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_jMk61PtIEeCHmpaJaoX4Ew" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jMk61ftIEeCHmpaJaoX4Ew" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_jL-d4_tIEeCHmpaJaoX4Ew" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_jL-d5PtIEeCHmpaJaoX4Ew" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_jL-d5ftIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_jL-d5vtIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_jL-d5_tIEeCHmpaJaoX4Ew"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_jL-d6PtIEeCHmpaJaoX4Ew" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_jL-d6ftIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_jL-d6vtIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_jL-d6_tIEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_jL-d4ftIEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="platform:/resource/org.eclipse.papyrus.emf.facet.efacet2/model/efacet2.ecore#//declaration/Query"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jL-d4vtIEeCHmpaJaoX4Ew" x="800" y="2"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_ALcTVvtIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_ALcTV_tIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_ALcTWPtIEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_ALcTUftIEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13150135" lineColor="4210752"/>
+ <styles xmi:type="notation:MultiDiagramLinkStyle" xmi:id="_ALcTUvtIEeCHmpaJaoX4Ew"/>
+ <element xmi:type="ecore:EPackage" href="platform:/resource/org.eclipse.papyrus.emf.facet.efacet2/model/efacet2.ecore#/"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ALcTU_tIEeCHmpaJaoX4Ew" x="15" y="-190" width="1028" height="178"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_4LBqsPtIEeCHmpaJaoX4Ew" type="1002">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_4LBquftIEeCHmpaJaoX4Ew" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_4LBquvtIEeCHmpaJaoX4Ew" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_4LBqtPtIEeCHmpaJaoX4Ew" type="4006"/>
+ <children xmi:type="notation:Node" xmi:id="_4LBqtftIEeCHmpaJaoX4Ew" type="5003">
+ <children xmi:type="notation:Node" xmi:id="_5cFp8PtIEeCHmpaJaoX4Ew" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_5cFp8_tIEeCHmpaJaoX4Ew" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_5cFp9PtIEeCHmpaJaoX4Ew" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_5cFp9ftIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_5cFp9vtIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_5cFp9_tIEeCHmpaJaoX4Ew"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_5cOz4PtIEeCHmpaJaoX4Ew" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_5cOz4ftIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_5cOz4vtIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_5cOz4_tIEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_5cFp8ftIEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="platform:/resource/org.eclipse.papyrus.emf.facet.efacet2/model/efacet2.ecore#//declaration/Facet"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5cFp8vtIEeCHmpaJaoX4Ew" x="96" y="34"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_4LBqtvtIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_4LBqt_tIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_4LBquPtIEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_4LBqsftIEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13150135" lineColor="4210752"/>
+ <styles xmi:type="notation:MultiDiagramLinkStyle" xmi:id="_4LBqsvtIEeCHmpaJaoX4Ew"/>
+ <element xmi:type="ecore:EPackage" href="platform:/resource/org.eclipse.papyrus.emf.facet.efacet2/model/efacet2.ecore#//declaration"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4LBqs_tIEeCHmpaJaoX4Ew" x="340" y="350" width="408" height="148"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_7FlXUPtIEeCHmpaJaoX4Ew" type="1002">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_7FvIUPtIEeCHmpaJaoX4Ew" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7FvIUftIEeCHmpaJaoX4Ew" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_7FlXVPtIEeCHmpaJaoX4Ew" type="4006"/>
+ <children xmi:type="notation:Node" xmi:id="_7FlXVftIEeCHmpaJaoX4Ew" type="5003">
+ <children xmi:type="notation:Node" xmi:id="__N7swPtIEeCHmpaJaoX4Ew" type="2003">
+ <children xmi:type="notation:Node" xmi:id="__N7sw_tIEeCHmpaJaoX4Ew" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="__N7sxPtIEeCHmpaJaoX4Ew" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__N7sxftIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__N7sxvtIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__N7sx_tIEeCHmpaJaoX4Ew"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__N7syPtIEeCHmpaJaoX4Ew" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__N7syftIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__N7syvtIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__N7sy_tIEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="__N7swftIEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EClass"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__N7swvtIEeCHmpaJaoX4Ew" x="145" y="32"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_YtKgMPtJEeCHmpaJaoX4Ew" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_YtKgM_tJEeCHmpaJaoX4Ew" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_YtKgNPtJEeCHmpaJaoX4Ew" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_YtKgNftJEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_YtKgNvtJEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_YtKgN_tJEeCHmpaJaoX4Ew"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_YtKgOPtJEeCHmpaJaoX4Ew" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_YtKgOftJEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_YtKgOvtJEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_YtKgO_tJEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_YtKgMftJEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EStructuralFeature"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YtKgMvtJEeCHmpaJaoX4Ew" x="744" y="43"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_7FlXVvtIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_7FlXV_tIEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_7FlXWPtIEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_7FlXUftIEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13150135" lineColor="4210752"/>
+ <styles xmi:type="notation:MultiDiagramLinkStyle" xmi:id="_7FlXUvtIEeCHmpaJaoX4Ew"/>
+ <element xmi:type="ecore:EPackage" href="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#/"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7FlXU_tIEeCHmpaJaoX4Ew" x="15" y="470" width="1028" height="153"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_Z-6G0vtHEeCHmpaJaoX4Ew"/>
+ <element xmi:type="ecore:EPackage" href="custom.ecore#/"/>
+ <edges xmi:type="notation:Edge" xmi:id="_jLgZQPtHEeCHmpaJaoX4Ew" type="3003" source="_jKnBYPtHEeCHmpaJaoX4Ew" target="_qLSO0PtHEeCHmpaJaoX4Ew">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_jLgZQftHEeCHmpaJaoX4Ew" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_jLgZQvtHEeCHmpaJaoX4Ew"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_jLgZQ_tHEeCHmpaJaoX4Ew" points="[1, -20, 72, 41]$[1, -30, 72, 31]$[-100, -30, -29, 31]$[-100, -55, -29, 6]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_sPdGAPtHEeCHmpaJaoX4Ew" id="(0.7204968944099379,0.8571428571428571)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_k6EM3PtHEeCHmpaJaoX4Ew" type="3003" source="_k6EM0PtHEeCHmpaJaoX4Ew" target="_qLSO0PtHEeCHmpaJaoX4Ew">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_k6EM3ftHEeCHmpaJaoX4Ew" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_k6EM3vtHEeCHmpaJaoX4Ew"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_k6EM3_tHEeCHmpaJaoX4Ew" points="[1, -20, -150, 55]$[1, -30, -150, 45]$[157, -30, 6, 45]$[157, -55, 6, 20]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_x4gZMPtHEeCHmpaJaoX4Ew" type="3002" source="_flIIcPtHEeCHmpaJaoX4Ew" target="_qLSO0PtHEeCHmpaJaoX4Ew">
+ <children xmi:type="notation:Node" xmi:id="_x4gZNPtHEeCHmpaJaoX4Ew" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_x4gZNftHEeCHmpaJaoX4Ew" x="-47" y="-15"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_x4gZNvtHEeCHmpaJaoX4Ew" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_x4gZN_tHEeCHmpaJaoX4Ew" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_x4gZMftHEeCHmpaJaoX4Ew" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_x4gZMvtHEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="custom.ecore#//main/Customization/eClassifierCustomizations"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_x4gZM_tHEeCHmpaJaoX4Ew" points="[28, 23, -219, 17]$[203, 23, -44, 17]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_x49FIPtHEeCHmpaJaoX4Ew" id="(0.7254901960784313,0.07142857142857142)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_x49FIftHEeCHmpaJaoX4Ew" id="(0.2795031055900621,0.09523809523809523)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_5yjeoPtHEeCHmpaJaoX4Ew" type="3003" source="_qLSO0PtHEeCHmpaJaoX4Ew" target="_hPq-sPtHEeCHmpaJaoX4Ew">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_5yjeoftHEeCHmpaJaoX4Ew" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_5yjeovtHEeCHmpaJaoX4Ew"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5yjeo_tHEeCHmpaJaoX4Ew" points="[-20, -3, -23, 85]$[-20, -23, -23, 65]$[5, -23, 2, 65]$[5, -68, 2, 20]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5yjepPtHEeCHmpaJaoX4Ew" id="(0.5403726708074534,0.09523809523809523)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_7O79IPtHEeCHmpaJaoX4Ew" type="3002" source="_hPq-sPtHEeCHmpaJaoX4Ew" target="_7O79EPtHEeCHmpaJaoX4Ew">
+ <children xmi:type="notation:Node" xmi:id="_7O79JPtHEeCHmpaJaoX4Ew" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_7O79JftHEeCHmpaJaoX4Ew" x="-10" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_7O79JvtHEeCHmpaJaoX4Ew" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_7O79J_tHEeCHmpaJaoX4Ew" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_7O79IftHEeCHmpaJaoX4Ew" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_7O79IvtHEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="custom.ecore#//main/EModelElementCustomization/properties"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_7O79I_tHEeCHmpaJaoX4Ew" points="[-38, -20, 331, 174]$[-368, -194, 1, 0]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_Bmoe8PtIEeCHmpaJaoX4Ew" type="3003" source="_hPq-sPtHEeCHmpaJaoX4Ew" target="_BmfVAPtIEeCHmpaJaoX4Ew">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_Bmoe8ftIEeCHmpaJaoX4Ew" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Bmoe8vtIEeCHmpaJaoX4Ew"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Bmoe8_tIEeCHmpaJaoX4Ew" points="[77, -20, -98, 291]$[77, -165, -98, 146]$[157, -165, -18, 146]$[157, -283, -18, 28]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_Bmoe9PtIEeCHmpaJaoX4Ew" type="3003" source="_7O79EPtHEeCHmpaJaoX4Ew" target="_BmfVAPtIEeCHmpaJaoX4Ew">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_Bmoe9ftIEeCHmpaJaoX4Ew" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Bmoe9vtIEeCHmpaJaoX4Ew"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Bmoe9_tIEeCHmpaJaoX4Ew" points="[1, -20, 152, 296]$[1, -170, 152, 146]$[-169, -170, -18, 146]$[-169, -288, -18, 28]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_DtCx3PtIEeCHmpaJaoX4Ew" type="3003" source="_DtCx0PtIEeCHmpaJaoX4Ew" target="_hPq-sPtHEeCHmpaJaoX4Ew">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_DtCx3ftIEeCHmpaJaoX4Ew" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_DtCx3vtIEeCHmpaJaoX4Ew"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_DtCx3_tIEeCHmpaJaoX4Ew" points="[-8, -20, 462, 80]$[-8, -35, 462, 65]$[-468, -35, 2, 65]$[-468, -80, 2, 20]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_QbidsPtIEeCHmpaJaoX4Ew" type="3002" source="_qLSO0PtHEeCHmpaJaoX4Ew" target="_DtCx0PtIEeCHmpaJaoX4Ew">
+ <children xmi:type="notation:Node" xmi:id="_QbidtPtIEeCHmpaJaoX4Ew" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_QbidtftIEeCHmpaJaoX4Ew" x="-52" y="-12"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_QbidtvtIEeCHmpaJaoX4Ew" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Qbidt_tIEeCHmpaJaoX4Ew" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_QbidsftIEeCHmpaJaoX4Ew" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_QbidsvtIEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="custom.ecore#//main/EClassifierCustomization/eStructuralFeatureCustomization"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Qbids_tIEeCHmpaJaoX4Ew" points="[48, 3, -199, -15]$[351, 15, 104, -3]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QbsOsPtIEeCHmpaJaoX4Ew" id="(0.7018633540372671,0.19047619047619047)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_jMbJ0PtIEeCHmpaJaoX4Ew" type="3002" source="_jL-d4PtIEeCHmpaJaoX4Ew" target="_BmfVAPtIEeCHmpaJaoX4Ew">
+ <children xmi:type="notation:Node" xmi:id="_jMbJ1PtIEeCHmpaJaoX4Ew" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jMbJ1ftIEeCHmpaJaoX4Ew" x="-59" y="-13"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_jMbJ1vtIEeCHmpaJaoX4Ew" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jMbJ1_tIEeCHmpaJaoX4Ew" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_jMbJ0ftIEeCHmpaJaoX4Ew" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_jMbJ0vtIEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="platform:/resource/org.eclipse.papyrus.emf.facet.efacet2/model/efacet2.ecore#//declaration/Query/owningDerivedTypedElement"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_jMbJ0_tIEeCHmpaJaoX4Ew" points="[-103, -15, 287, 7]$[-316, -15, 74, 7]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_h3rH8vtJEeCHmpaJaoX4Ew" id="(0.5,0.5)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_h3rH8_tJEeCHmpaJaoX4Ew" id="(0.5,0.5)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_jMbJ2PtIEeCHmpaJaoX4Ew" type="3002" source="_BmfVAPtIEeCHmpaJaoX4Ew" target="_jL-d4PtIEeCHmpaJaoX4Ew">
+ <children xmi:type="notation:Node" xmi:id="_jMbJ3PtIEeCHmpaJaoX4Ew" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jMbJ3ftIEeCHmpaJaoX4Ew" x="15" y="-12"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_jMbJ3vtIEeCHmpaJaoX4Ew" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jMbJ3_tIEeCHmpaJaoX4Ew" x="23" y="13"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_jMbJ2ftIEeCHmpaJaoX4Ew" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_jMbJ2vtIEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="platform:/resource/org.eclipse.papyrus.emf.facet.efacet2/model/efacet2.ecore#//declaration/DerivedTypedElement/query"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_jMbJ2_tIEeCHmpaJaoX4Ew" points="[74, 7, -316, -15]$[287, 7, -103, -15]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jMk60PtIEeCHmpaJaoX4Ew" id="(0.5,0.5)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jMk60ftIEeCHmpaJaoX4Ew" id="(0.5,0.5)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_5cOz5PtIEeCHmpaJaoX4Ew" type="3002" source="_jKnBYPtHEeCHmpaJaoX4Ew" target="_5cFp8PtIEeCHmpaJaoX4Ew">
+ <children xmi:type="notation:Node" xmi:id="_5cOz6PtIEeCHmpaJaoX4Ew" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_5cOz6ftIEeCHmpaJaoX4Ew" x="7" y="-58"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_5cOz6vtIEeCHmpaJaoX4Ew" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_5cOz6_tIEeCHmpaJaoX4Ew" x="7" y="11"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_5cOz5ftIEeCHmpaJaoX4Ew" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_5cOz5vtIEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="custom.ecore#//main/FacetCustomization/customizedFacet"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5cOz5_tIEeCHmpaJaoX4Ew" points="[-6, 20, 65, -217]$[-71, 236, 0, -1]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="__OOnwPtIEeCHmpaJaoX4Ew" type="3002" source="_k6EM0PtHEeCHmpaJaoX4Ew" target="__N7swPtIEeCHmpaJaoX4Ew">
+ <children xmi:type="notation:Node" xmi:id="__OOnxPtIEeCHmpaJaoX4Ew" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__OOnxftIEeCHmpaJaoX4Ew" x="26" y="-60"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__OOnxvtIEeCHmpaJaoX4Ew" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__OOnx_tIEeCHmpaJaoX4Ew" x="26" y="11"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="__OOnwftIEeCHmpaJaoX4Ew" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="__OOnwvtIEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="custom.ecore#//main/EClassCustomization/customizedEClass"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__OOnw_tIEeCHmpaJaoX4Ew" points="[-19, 20, 200, -207]$[-218, 225, 1, -2]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_YtTqIPtJEeCHmpaJaoX4Ew" type="3002" source="_YtKgMPtJEeCHmpaJaoX4Ew" target="__N7swPtIEeCHmpaJaoX4Ew">
+ <children xmi:type="notation:Node" xmi:id="_YtTqJPtJEeCHmpaJaoX4Ew" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YtTqJftJEeCHmpaJaoX4Ew" x="-10" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_YtTqJvtJEeCHmpaJaoX4Ew" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YtTqJ_tJEeCHmpaJaoX4Ew" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_YtTqIftJEeCHmpaJaoX4Ew" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_YtTqIvtJEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EStructuralFeature/eContainingClass"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_YtTqI_tJEeCHmpaJaoX4Ew" points="[-64, 0, 549, 11]$[-563, 0, 50, 11]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cT1E4vtJEeCHmpaJaoX4Ew" id="(0.5,0.5)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cT1E4_tJEeCHmpaJaoX4Ew" id="(0.5,0.5)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_YtTqKPtJEeCHmpaJaoX4Ew" type="3002" source="_DtCx0PtIEeCHmpaJaoX4Ew" target="_YtKgMPtJEeCHmpaJaoX4Ew">
+ <children xmi:type="notation:Node" xmi:id="_YtTqLPtJEeCHmpaJaoX4Ew" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YtTqLftJEeCHmpaJaoX4Ew" x="39" y="-90"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_YtTqLvtJEeCHmpaJaoX4Ew" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YtTqL_tJEeCHmpaJaoX4Ew" x="64" y="11"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_YtTqKftJEeCHmpaJaoX4Ew" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_YtTqKvtJEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="custom.ecore#//main/EStructuralFeatureCustomization/customizedEStructuralFeature"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_YtTqK_tJEeCHmpaJaoX4Ew" points="[-32, 20, 802, -502]$[-833, 521, 1, -1]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_YtTqOPtJEeCHmpaJaoX4Ew" type="3002" source="__N7swPtIEeCHmpaJaoX4Ew" target="_YtKgMPtJEeCHmpaJaoX4Ew">
+ <children xmi:type="notation:Node" xmi:id="_YtTqPPtJEeCHmpaJaoX4Ew" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YtTqPftJEeCHmpaJaoX4Ew" x="-10" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_YtTqPvtJEeCHmpaJaoX4Ew" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YtTqP_tJEeCHmpaJaoX4Ew" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_YtTqOftJEeCHmpaJaoX4Ew" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_YtTqOvtJEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EClass/eStructuralFeatures"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_YtTqO_tJEeCHmpaJaoX4Ew" points="[50, 11, -563, 0]$[549, 11, -64, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_YtTqQPtJEeCHmpaJaoX4Ew" id="(0.5,0.5)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_YtTqQftJEeCHmpaJaoX4Ew" id="(0.5,0.5)"/>
+ </edges>
+</notation:Diagram>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_primitive_types-0.2.0.ecore b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_primitive_types-0.2.0.ecore
new file mode 100644
index 00000000000..16c772e2b38
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_primitive_types-0.2.0.ecore
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="custompt"
+ nsURI="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types"
+ nsPrefix="custompt">
+ <eClassifiers xsi:type="ecore:EDataType" name="Image" instanceClassName="org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage"/>
+ <eClassifiers xsi:type="ecore:EDataType" name="Color" instanceClassName="org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IColor"/>
+ <eClassifiers xsi:type="ecore:EEnum" name="Shadow">
+ <eLiterals name="NONE" literal="NONE"/>
+ <eLiterals name="IN" value="1" literal="IN"/>
+ <eLiterals name="OUT" value="2" literal="OUT"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EEnum" name="Alignment">
+ <eLiterals name="LEFT"/>
+ <eLiterals name="CENTER" value="1"/>
+ <eLiterals name="RIGHT" value="2"/>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_primitive_types-0.2.0.genmodel b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_primitive_types-0.2.0.genmodel
new file mode 100644
index 00000000000..66acb7a10b0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_primitive_types-0.2.0.genmodel
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel"
+ copyrightText=" Copyright (c) 2012 Mia-Software.&#xD;&#xA; &#xD;&#xA; All rights reserved. This program and the accompanying materials&#xD;&#xA; are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA; which accompanies this distribution, and is available at&#xD;&#xA; http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA;&#xD;&#xA; Contributors:&#xD;&#xA; &#x9;Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model&#xD;&#xA; &#x9;Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider&#xD;&#xA; "
+ modelDirectory="/org.eclipse.papyrus.emf.facet.custom.metamodel/src" modelPluginID="org.eclipse.papyrus.emf.facet.custom.metamodel"
+ modelName="Custom_primitive_types-0.2" importerID="org.eclipse.emf.importer.ecore"
+ complianceLevel="5.0" copyrightFields="false" runtimeVersion="2.6">
+ <foreignModel>custom_primitive_types-0.2.0.ecore</foreignModel>
+ <genPackages prefix="Custompt" basePackage="org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0"
+ disposableProviderFactory="true" ecorePackage="custom_primitive_types-0.2.0.ecore#/">
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="custom_primitive_types-0.2.0.ecore#//Shadow">
+ <genEnumLiterals ecoreEnumLiteral="custom_primitive_types-0.2.0.ecore#//Shadow/NONE"/>
+ <genEnumLiterals ecoreEnumLiteral="custom_primitive_types-0.2.0.ecore#//Shadow/IN"/>
+ <genEnumLiterals ecoreEnumLiteral="custom_primitive_types-0.2.0.ecore#//Shadow/OUT"/>
+ </genEnums>
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="custom_primitive_types-0.2.0.ecore#//Alignment">
+ <genEnumLiterals ecoreEnumLiteral="custom_primitive_types-0.2.0.ecore#//Alignment/LEFT"/>
+ <genEnumLiterals ecoreEnumLiteral="custom_primitive_types-0.2.0.ecore#//Alignment/CENTER"/>
+ <genEnumLiterals ecoreEnumLiteral="custom_primitive_types-0.2.0.ecore#//Alignment/RIGHT"/>
+ </genEnums>
+ <genDataTypes ecoreDataType="custom_primitive_types-0.2.0.ecore#//Image"/>
+ <genDataTypes ecoreDataType="custom_primitive_types-0.2.0.ecore#//Color"/>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_property_declaration.ecorediag b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_property_declaration.ecorediag
new file mode 100644
index 00000000000..07e6df8d57a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/custom_property_declaration.ecorediag
@@ -0,0 +1,131 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmi:id="_ykkGkPtKEeCHmpaJaoX4Ew" type="EcoreTools" name="custom.ecorediag" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="_yktQgPtKEeCHmpaJaoX4Ew" type="1002">
+ <children xmi:type="notation:Node" xmi:id="_yktQhPtKEeCHmpaJaoX4Ew" type="4006"/>
+ <children xmi:type="notation:Node" xmi:id="_yktQhftKEeCHmpaJaoX4Ew" type="5003">
+ <children xmi:type="notation:Node" xmi:id="_1G1PAPtKEeCHmpaJaoX4Ew" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_1G1PA_tKEeCHmpaJaoX4Ew" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_1G1PBPtKEeCHmpaJaoX4Ew" type="5004">
+ <children xmi:type="notation:Node" xmi:id="_1G_AAPtKEeCHmpaJaoX4Ew" type="2001">
+ <element xmi:type="ecore:EAttribute" href="custom.ecore#//propertydeclaration/CustomizationProperty/scope"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1G_AAftKEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_1G1PBftKEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1G1PBvtKEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1G1PB_tKEeCHmpaJaoX4Ew"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_1G1PCPtKEeCHmpaJaoX4Ew" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_1G1PCftKEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1G1PCvtKEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1G1PC_tKEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_1G1PAftKEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="custom.ecore#//propertydeclaration/CustomizationProperty"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1G1PAvtKEeCHmpaJaoX4Ew" x="95" y="18"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_1WolkPtKEeCHmpaJaoX4Ew" type="2005">
+ <children xmi:type="notation:Node" xmi:id="_1Wolk_tKEeCHmpaJaoX4Ew" type="4005"/>
+ <children xmi:type="notation:Node" xmi:id="_1WollPtKEeCHmpaJaoX4Ew" type="5006">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_1WollftKEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_1WollvtKEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_1Woll_tKEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_1WolkftKEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EEnum" href="custom.ecore#//propertydeclaration/CustomizationPropertyScope"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1WolkvtKEeCHmpaJaoX4Ew" x="365" y="8"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_yktQhvtKEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_yktQh_tKEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_yktQiPtKEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_yktQgftKEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13150135" lineColor="4210752"/>
+ <styles xmi:type="notation:MultiDiagramLinkStyle" xmi:id="_yktQgvtKEeCHmpaJaoX4Ew"/>
+ <element xmi:type="ecore:EPackage" href="custom.ecore#//propertydeclaration"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yktQg_tKEeCHmpaJaoX4Ew" x="295" y="115" width="583" height="173"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_yktQiftKEeCHmpaJaoX4Ew" type="1002">
+ <children xmi:type="notation:Node" xmi:id="_yktQjftKEeCHmpaJaoX4Ew" type="4006"/>
+ <children xmi:type="notation:Node" xmi:id="_yktQjvtKEeCHmpaJaoX4Ew" type="5003">
+ <children xmi:type="notation:Node" xmi:id="_8Xmt8PtKEeCHmpaJaoX4Ew" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_8Xmt8_tKEeCHmpaJaoX4Ew" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_8Xmt9PtKEeCHmpaJaoX4Ew" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_8Xmt9ftKEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8Xmt9vtKEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8Xmt9_tKEeCHmpaJaoX4Ew"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_8Xmt-PtKEeCHmpaJaoX4Ew" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_8Xmt-ftKEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_8Xmt-vtKEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_8Xmt-_tKEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_8Xmt8ftKEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="custom.ecore#//main/CustomizationPropertySetting"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8Xmt8vtKEeCHmpaJaoX4Ew" x="5" y="18"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_yktQj_tKEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_yktQkPtKEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_yktQkftKEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_yktQivtKEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13150135" lineColor="4210752"/>
+ <styles xmi:type="notation:MultiDiagramLinkStyle" xmi:id="_yktQi_tKEeCHmpaJaoX4Ew"/>
+ <element xmi:type="ecore:EPackage" href="custom.ecore#//main"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yktQjPtKEeCHmpaJaoX4Ew" x="35" y="115" width="228" height="168"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_TUReAPtLEeCHmpaJaoX4Ew" type="1002">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_TUan8PtLEeCHmpaJaoX4Ew" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_TUan8ftLEeCHmpaJaoX4Ew" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_TUReBPtLEeCHmpaJaoX4Ew" type="4006"/>
+ <children xmi:type="notation:Node" xmi:id="_TUReBftLEeCHmpaJaoX4Ew" type="5003">
+ <children xmi:type="notation:Node" xmi:id="_U8k4kPtLEeCHmpaJaoX4Ew" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_U8k4k_tLEeCHmpaJaoX4Ew" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_U8k4lPtLEeCHmpaJaoX4Ew" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_U8k4lftLEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_U8k4lvtLEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_U8k4l_tLEeCHmpaJaoX4Ew"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_U8k4mPtLEeCHmpaJaoX4Ew" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_U8k4mftLEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_U8k4mvtLEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_U8k4m_tLEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_U8k4kftLEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EDataType"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_U8k4kvtLEeCHmpaJaoX4Ew" x="210" y="32"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_TUReBvtLEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_TUReB_tLEeCHmpaJaoX4Ew"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_TUReCPtLEeCHmpaJaoX4Ew"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_TUReAftLEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10" fillColor="13150135" lineColor="4210752"/>
+ <styles xmi:type="notation:MultiDiagramLinkStyle" xmi:id="_TUReAvtLEeCHmpaJaoX4Ew"/>
+ <element xmi:type="ecore:EPackage" href="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#/"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TUReA_tLEeCHmpaJaoX4Ew" x="295" y="300" width="583" height="149"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_ykkGkftKEeCHmpaJaoX4Ew"/>
+ <element xmi:type="ecore:EPackage" href="custom.ecore#/"/>
+ <edges xmi:type="notation:Edge" xmi:id="_8Xmt_PtKEeCHmpaJaoX4Ew" type="3002" source="_8Xmt8PtKEeCHmpaJaoX4Ew" target="_1G1PAPtKEeCHmpaJaoX4Ew">
+ <children xmi:type="notation:Node" xmi:id="_8XmuAPtKEeCHmpaJaoX4Ew" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8XmuAftKEeCHmpaJaoX4Ew" x="-22" y="-11"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_8XmuAvtKEeCHmpaJaoX4Ew" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_8XmuA_tKEeCHmpaJaoX4Ew" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_8Xmt_ftKEeCHmpaJaoX4Ew" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_8Xmt_vtKEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="custom.ecore#//main/CustomizationPropertySetting/customization"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8Xmt__tKEeCHmpaJaoX4Ew" points="[94, 0, -281, -3]$[256, 0, -119, -3]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_U8k4nvtLEeCHmpaJaoX4Ew" type="3002" source="_1G1PAPtKEeCHmpaJaoX4Ew" target="_U8k4kPtLEeCHmpaJaoX4Ew">
+ <children xmi:type="notation:Node" xmi:id="_U8k4ovtLEeCHmpaJaoX4Ew" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_U8k4o_tLEeCHmpaJaoX4Ew" x="13" y="-20"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_U8k4pPtLEeCHmpaJaoX4Ew" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_U8k4pftLEeCHmpaJaoX4Ew" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_U8k4n_tLEeCHmpaJaoX4Ew" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_U8k4oPtLEeCHmpaJaoX4Ew" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="custom.ecore#//propertydeclaration/CustomizationProperty/type"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_U8k4oftLEeCHmpaJaoX4Ew" points="[-69, 32, 375, -173]$[-443, 204, 1, -1]"/>
+ </edges>
+</notation:Diagram>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/query-0.3.0.ecore b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/query-0.3.0.ecore
new file mode 100644
index 00000000000..a0a0cd71ffb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/query-0.3.0.ecore
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="query" nsURI="http://www.eclipse.org/papyrus/emf/facet/custom/0.3.incubation/query"
+ nsPrefix="customQuery">
+ <eClassifiers xsi:type="ecore:EClass" name="URIImageQuery" eSuperTypes="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet#//extensible/Query">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="uri" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/query-0.3.0.genmodel b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/query-0.3.0.genmodel
new file mode 100644
index 00000000000..e0284b7ac41
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/query-0.3.0.genmodel
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText=" Copyright (c) 2013 Soft-Maint.&#xD;&#xA; &#xD;&#xA; All rights reserved. This program and the accompanying materials&#xD;&#xA; are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA; which accompanies this distribution, and is available at&#xD;&#xA; http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA;&#xD;&#xA; Contributors:&#xD;&#xA;&#x9;&#x9;David Couvrand (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI&#xD;&#xA; &#x9;Nicolas Rault (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI"
+ modelDirectory="/org.eclipse.papyrus.emf.facet.custom.metamodel/src" modelPluginID="org.eclipse.papyrus.emf.facet.custom.metamodel"
+ modelName="Query-0.3" importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0"
+ copyrightFields="false" usedGenPackages="platform:/plugin/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.genmodel#//efacet">
+ <foreignModel>query-0.3.0.ecore</foreignModel>
+ <genPackages prefix="Query" basePackage="org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0"
+ disposableProviderFactory="true" ecorePackage="query-0.3.0.ecore#/">
+ <genClasses ecoreClass="query-0.3.0.ecore#//URIImageQuery">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute query-0.3.0.ecore#//URIImageQuery/uri"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/treeproxy-0.2.0.ecore b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/treeproxy-0.2.0.ecore
new file mode 100644
index 00000000000..b48ac8ce654
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/treeproxy-0.2.0.ecore
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="internal"
+ nsURI="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/internal" nsPrefix="internal">
+ <eSubpackages name="treeproxy" nsURI="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/internal/treeproxy"
+ nsPrefix="treeproxy">
+ <eClassifiers xsi:type="ecore:EClass" name="TreeElement" abstract="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="Represents a proxy element in a tree view"/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="EObjectTreeElement" eSuperTypes="#//treeproxy/TreeElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="Represents a model element in a tree view"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="eObject" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The model element represented by this tree element"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="sfTreeElmement" upperBound="-1"
+ eType="#//treeproxy/EStructuralFeatureTreeElement" containment="true" eOpposite="#//treeproxy/EStructuralFeatureTreeElement/parent"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//treeproxy/EStructuralFeatureTreeElement"
+ eOpposite="#//treeproxy/EStructuralFeatureTreeElement/referedEObjectTE"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="EReferenceTreeElement" eSuperTypes="#//treeproxy/EStructuralFeatureTreeElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="Represents an EReference as a link between two model elements in a tree view"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="eReference" eType="ecore:EClass platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EReference">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The EReference represented by this tree element"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="EAttributeTreeElement" eSuperTypes="#//treeproxy/EStructuralFeatureTreeElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="Represents an EAttribute in a tree view"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="eAttribute" eType="ecore:EClass platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EAttribute">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The EAttribute represented by this tree element"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="EStructuralFeatureTreeElement" eSuperTypes="#//treeproxy/TreeElement">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//treeproxy/EObjectTreeElement"
+ eOpposite="#//treeproxy/EObjectTreeElement/sfTreeElmement"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="referedEObjectTE" upperBound="-1"
+ eType="#//treeproxy/EObjectTreeElement" containment="true" eOpposite="#//treeproxy/EObjectTreeElement/parent"/>
+ </eClassifiers>
+ </eSubpackages>
+</ecore:EPackage>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/treeproxy-0.2.0.genmodel b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/treeproxy-0.2.0.genmodel
new file mode 100644
index 00000000000..918e33ca945
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/model/treeproxy-0.2.0.genmodel
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="Copyright (c) 2012 Mia-Software.&#xD;&#xA;All rights reserved. This program and the accompanying materials&#xD;&#xA;are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA;which accompanies this distribution, and is available at&#xD;&#xA;http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA;&#xD;&#xA;Contributors:&#xD;&#xA; Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider&#xD;&#xA; Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements() "
+ modelDirectory="/org.eclipse.papyrus.emf.facet.custom.metamodel/src" modelPluginID="org.eclipse.papyrus.emf.facet.custom.metamodel"
+ modelName="Treeproxy-0.2" importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0"
+ copyrightFields="false" runtimeVersion="2.6" usedGenPackages="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore">
+ <foreignModel>treeproxy-0.2.0.ecore</foreignModel>
+ <genPackages prefix="Internal" basePackage="org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0"
+ disposableProviderFactory="true" ecorePackage="treeproxy-0.2.0.ecore#/">
+ <nestedGenPackages prefix="Treeproxy" disposableProviderFactory="true" ecorePackage="treeproxy-0.2.0.ecore#//treeproxy">
+ <genClasses image="false" ecoreClass="treeproxy-0.2.0.ecore#//treeproxy/TreeElement">
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference treeproxy-0.2.0.ecore#//treeproxy/TreeElement/parent"/>
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference treeproxy-0.2.0.ecore#//treeproxy/TreeElement/children"/>
+ </genClasses>
+ <genClasses ecoreClass="treeproxy-0.2.0.ecore#//treeproxy/EObjectTreeElement">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference treeproxy-0.2.0.ecore#//treeproxy/EObjectTreeElement/eObject"/>
+ </genClasses>
+ <genClasses ecoreClass="treeproxy-0.2.0.ecore#//treeproxy/EReferenceTreeElement">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference treeproxy-0.2.0.ecore#//treeproxy/EReferenceTreeElement/eReference"/>
+ </genClasses>
+ <genClasses ecoreClass="treeproxy-0.2.0.ecore#//treeproxy/EAttributeTreeElement">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference treeproxy-0.2.0.ecore#//treeproxy/EAttributeTreeElement/eAttribute"/>
+ </genClasses>
+ </nestedGenPackages>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/plugin.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/plugin.properties
new file mode 100644
index 00000000000..452cfd25987
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/plugin.properties
@@ -0,0 +1,14 @@
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+#
+#
+
+pluginName = EMF Facet Custom Model (Incubation)
+providerName = Eclipse Modeling Project
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/plugin.xml
new file mode 100644
index 00000000000..109103b33a9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/plugin.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+Copyright (c) 2011 Mia-Software.
+
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ David Couvrand (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ Nicolas Rault (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+-->
+
+<plugin>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom"
+ class="org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage"
+ genModel="model/custom-0.2.0.genmodel"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types"
+ class="org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.CustomptPackage"
+ genModel="model/custom_primitive_types-0.2.0.genmodel"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri="http://www.eclipse.org/papyrus/emf/facet/custom/0.3.incubation/query"
+ class="org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.QueryPackage"
+ genModel="model/query-0.3.0.genmodel"/>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/custompt/IColor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/custompt/IColor.java
new file mode 100644
index 00000000000..b508ab39d30
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/custompt/IColor.java
@@ -0,0 +1,23 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.custompt;
+
+import java.io.Serializable;
+
+/**
+ * @noextend This interface is not intended to be extended by clients.
+ */
+public interface IColor extends Serializable {
+ int getRed();
+ int getGreen();
+ int getBlue();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/custompt/IImage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/custompt/IImage.java
new file mode 100644
index 00000000000..9c9d488da66
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/custompt/IImage.java
@@ -0,0 +1,22 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.custompt;
+
+import java.io.InputStream;
+import java.io.Serializable;
+
+/**
+ * @noextend This interface is not intended to be extended by clients.
+ */
+public interface IImage extends Serializable {
+ InputStream getInputStream();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/CustomFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/CustomFactory.java
new file mode 100644
index 00000000000..6a78ce1a2b3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/CustomFactory.java
@@ -0,0 +1,87 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc --> The <b>Factory</b> for the model. It provides a
+ * create method for each non-abstract class of the model. <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage
+ * @generated
+ */
+public interface CustomFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ CustomFactory eINSTANCE = org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.CustomFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Customization</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Customization</em>'.
+ * @generated
+ */
+ Customization createCustomization();
+
+ /**
+ * Returns a new object of class '<em>EClass Customization</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>EClass Customization</em>'.
+ * @generated
+ */
+ EClassCustomization createEClassCustomization();
+
+ /**
+ * Returns a new object of class '<em>Facet Customization</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Facet Customization</em>'.
+ * @generated
+ */
+ FacetCustomization createFacetCustomization();
+
+ /**
+ * Returns a new object of class '<em>ETyped Element Switch Query</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>ETyped Element Switch Query</em>'.
+ * @generated
+ */
+ ETypedElementSwitchQuery createETypedElementSwitchQuery();
+
+ /**
+ * Returns a new object of class '<em>ETyped Element Case</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>ETyped Element Case</em>'.
+ * @generated
+ */
+ ETypedElementCase createETypedElementCase();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ CustomPackage getCustomPackage();
+
+} //CustomFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/CustomPackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/CustomPackage.java
new file mode 100644
index 00000000000..52c9d47992b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/CustomPackage.java
@@ -0,0 +1,793 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 376576 - [EFacet] Change the multiplicity of Facet::extendedFacet
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+
+/**
+ * <!-- begin-user-doc --> The <b>Package</b> for the model. It contains
+ * accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface CustomPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "custom";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "custom";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ CustomPackage eINSTANCE = org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.CustomPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.CustomizationImpl <em>Customization</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.CustomizationImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.CustomPackageImpl#getCustomization()
+ * @generated
+ */
+ int CUSTOMIZATION = 0;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION__EANNOTATIONS = EFacetPackage.FACET_SET__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION__NAME = EFacetPackage.FACET_SET__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ns URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION__NS_URI = EFacetPackage.FACET_SET__NS_URI;
+
+ /**
+ * The feature id for the '<em><b>Ns Prefix</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION__NS_PREFIX = EFacetPackage.FACET_SET__NS_PREFIX;
+
+ /**
+ * The feature id for the '<em><b>EFactory Instance</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION__EFACTORY_INSTANCE = EFacetPackage.FACET_SET__EFACTORY_INSTANCE;
+
+ /**
+ * The feature id for the '<em><b>EClassifiers</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION__ECLASSIFIERS = EFacetPackage.FACET_SET__ECLASSIFIERS;
+
+ /**
+ * The feature id for the '<em><b>ESubpackages</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION__ESUBPACKAGES = EFacetPackage.FACET_SET__ESUBPACKAGES;
+
+ /**
+ * The feature id for the '<em><b>ESuper Package</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION__ESUPER_PACKAGE = EFacetPackage.FACET_SET__ESUPER_PACKAGE;
+
+ /**
+ * The feature id for the '<em><b>Documentation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION__DOCUMENTATION = EFacetPackage.FACET_SET__DOCUMENTATION;
+
+ /**
+ * The feature id for the '<em><b>Categories</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION__CATEGORIES = EFacetPackage.FACET_SET__CATEGORIES;
+
+ /**
+ * The feature id for the '<em><b>Must Be Loaded By Default</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION__MUST_BE_LOADED_BY_DEFAULT = EFacetPackage.FACET_SET_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Customization</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION_FEATURE_COUNT = EFacetPackage.FACET_SET_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.EClassCustomizationImpl <em>EClass Customization</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.EClassCustomizationImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.CustomPackageImpl#getEClassCustomization()
+ * @generated
+ */
+ int ECLASS_CUSTOMIZATION = 1;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ECLASS_CUSTOMIZATION__EANNOTATIONS = EFacetPackage.FACET__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ECLASS_CUSTOMIZATION__NAME = EFacetPackage.FACET__NAME;
+
+ /**
+ * The feature id for the '<em><b>Instance Class Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ECLASS_CUSTOMIZATION__INSTANCE_CLASS_NAME = EFacetPackage.FACET__INSTANCE_CLASS_NAME;
+
+ /**
+ * The feature id for the '<em><b>Instance Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ECLASS_CUSTOMIZATION__INSTANCE_CLASS = EFacetPackage.FACET__INSTANCE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Default Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ECLASS_CUSTOMIZATION__DEFAULT_VALUE = EFacetPackage.FACET__DEFAULT_VALUE;
+
+ /**
+ * The feature id for the '<em><b>Instance Type Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ECLASS_CUSTOMIZATION__INSTANCE_TYPE_NAME = EFacetPackage.FACET__INSTANCE_TYPE_NAME;
+
+ /**
+ * The feature id for the '<em><b>EPackage</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ECLASS_CUSTOMIZATION__EPACKAGE = EFacetPackage.FACET__EPACKAGE;
+
+ /**
+ * The feature id for the '<em><b>EType Parameters</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ECLASS_CUSTOMIZATION__ETYPE_PARAMETERS = EFacetPackage.FACET__ETYPE_PARAMETERS;
+
+ /**
+ * The feature id for the '<em><b>Documentation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ECLASS_CUSTOMIZATION__DOCUMENTATION = EFacetPackage.FACET__DOCUMENTATION;
+
+ /**
+ * The feature id for the '<em><b>Extended Metaclass</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ECLASS_CUSTOMIZATION__EXTENDED_METACLASS = EFacetPackage.FACET__EXTENDED_METACLASS;
+
+ /**
+ * The feature id for the '<em><b>Facet Elements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ECLASS_CUSTOMIZATION__FACET_ELEMENTS = EFacetPackage.FACET__FACET_ELEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Facet Operations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ECLASS_CUSTOMIZATION__FACET_OPERATIONS = EFacetPackage.FACET__FACET_OPERATIONS;
+
+ /**
+ * The feature id for the '<em><b>Conformance Typed Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ECLASS_CUSTOMIZATION__CONFORMANCE_TYPED_ELEMENT = EFacetPackage.FACET__CONFORMANCE_TYPED_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Extended Facets</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int ECLASS_CUSTOMIZATION__EXTENDED_FACETS = EFacetPackage.FACET__EXTENDED_FACETS;
+
+ /**
+ * The number of structural features of the '<em>EClass Customization</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ECLASS_CUSTOMIZATION_FEATURE_COUNT = EFacetPackage.FACET_FEATURE_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.FacetCustomizationImpl <em>Facet Customization</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.FacetCustomizationImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.CustomPackageImpl#getFacetCustomization()
+ * @generated
+ */
+ int FACET_CUSTOMIZATION = 2;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_CUSTOMIZATION__EANNOTATIONS = EFacetPackage.FACET__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_CUSTOMIZATION__NAME = EFacetPackage.FACET__NAME;
+
+ /**
+ * The feature id for the '<em><b>Instance Class Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_CUSTOMIZATION__INSTANCE_CLASS_NAME = EFacetPackage.FACET__INSTANCE_CLASS_NAME;
+
+ /**
+ * The feature id for the '<em><b>Instance Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_CUSTOMIZATION__INSTANCE_CLASS = EFacetPackage.FACET__INSTANCE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Default Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_CUSTOMIZATION__DEFAULT_VALUE = EFacetPackage.FACET__DEFAULT_VALUE;
+
+ /**
+ * The feature id for the '<em><b>Instance Type Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_CUSTOMIZATION__INSTANCE_TYPE_NAME = EFacetPackage.FACET__INSTANCE_TYPE_NAME;
+
+ /**
+ * The feature id for the '<em><b>EPackage</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_CUSTOMIZATION__EPACKAGE = EFacetPackage.FACET__EPACKAGE;
+
+ /**
+ * The feature id for the '<em><b>EType Parameters</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_CUSTOMIZATION__ETYPE_PARAMETERS = EFacetPackage.FACET__ETYPE_PARAMETERS;
+
+ /**
+ * The feature id for the '<em><b>Documentation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_CUSTOMIZATION__DOCUMENTATION = EFacetPackage.FACET__DOCUMENTATION;
+
+ /**
+ * The feature id for the '<em><b>Extended Metaclass</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_CUSTOMIZATION__EXTENDED_METACLASS = EFacetPackage.FACET__EXTENDED_METACLASS;
+
+ /**
+ * The feature id for the '<em><b>Facet Elements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_CUSTOMIZATION__FACET_ELEMENTS = EFacetPackage.FACET__FACET_ELEMENTS;
+
+ /**
+ * The feature id for the '<em><b>Facet Operations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_CUSTOMIZATION__FACET_OPERATIONS = EFacetPackage.FACET__FACET_OPERATIONS;
+
+ /**
+ * The feature id for the '<em><b>Conformance Typed Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_CUSTOMIZATION__CONFORMANCE_TYPED_ELEMENT = EFacetPackage.FACET__CONFORMANCE_TYPED_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Extended Facets</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int FACET_CUSTOMIZATION__EXTENDED_FACETS = EFacetPackage.FACET__EXTENDED_FACETS;
+
+ /**
+ * The feature id for the '<em><b>Customized Facet</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_CUSTOMIZATION__CUSTOMIZED_FACET = EFacetPackage.FACET_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Facet Customization</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_CUSTOMIZATION_FEATURE_COUNT = EFacetPackage.FACET_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.ETypedElementSwitchQueryImpl <em>ETyped Element Switch Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.ETypedElementSwitchQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.CustomPackageImpl#getETypedElementSwitchQuery()
+ * @generated
+ */
+ int ETYPED_ELEMENT_SWITCH_QUERY = 3;
+
+ /**
+ * The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_SWITCH_QUERY__CAN_HAVE_SIDE_EFFECTS = ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_SWITCH_QUERY__CAN_BE_CACHED = ExtensiblePackage.QUERY__CAN_BE_CACHED;
+
+ /**
+ * The feature id for the '<em><b>Cases</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_SWITCH_QUERY__CASES = ExtensiblePackage.QUERY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>ETyped Element Switch Query</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_SWITCH_QUERY_FEATURE_COUNT = ExtensiblePackage.QUERY_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.ETypedElementCaseImpl <em>ETyped Element Case</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.ETypedElementCaseImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.CustomPackageImpl#getETypedElementCase()
+ * @generated
+ */
+ int ETYPED_ELEMENT_CASE = 4;
+
+ /**
+ * The feature id for the '<em><b>Case</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_CASE__CASE = 0;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_CASE__VALUE = 1;
+
+ /**
+ * The number of structural features of the '<em>ETyped Element Case</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_CASE_FEATURE_COUNT = 2;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization <em>Customization</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Customization</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization
+ * @generated
+ */
+ EClass getCustomization();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization#isMustBeLoadedByDefault <em>Must Be Loaded By Default</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Must Be Loaded By Default</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization#isMustBeLoadedByDefault()
+ * @see #getCustomization()
+ * @generated
+ */
+ EAttribute getCustomization_MustBeLoadedByDefault();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization <em>EClass Customization</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>EClass Customization</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization
+ * @generated
+ */
+ EClass getEClassCustomization();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization <em>Facet Customization</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Facet Customization</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization
+ * @generated
+ */
+ EClass getFacetCustomization();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization#getCustomizedFacet <em>Customized Facet</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Customized Facet</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization#getCustomizedFacet()
+ * @see #getFacetCustomization()
+ * @generated
+ */
+ EReference getFacetCustomization_CustomizedFacet();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery <em>ETyped Element Switch Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>ETyped Element Switch Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery
+ * @generated
+ */
+ EClass getETypedElementSwitchQuery();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery#getCases <em>Cases</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Cases</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery#getCases()
+ * @see #getETypedElementSwitchQuery()
+ * @generated
+ */
+ EReference getETypedElementSwitchQuery_Cases();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase <em>ETyped Element Case</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>ETyped Element Case</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase
+ * @generated
+ */
+ EClass getETypedElementCase();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase#getCase <em>Case</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Case</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase#getCase()
+ * @see #getETypedElementCase()
+ * @generated
+ */
+ EReference getETypedElementCase_Case();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Value</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase#getValue()
+ * @see #getETypedElementCase()
+ * @generated
+ */
+ EReference getETypedElementCase_Value();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ CustomFactory getCustomFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.CustomizationImpl <em>Customization</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.CustomizationImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.CustomPackageImpl#getCustomization()
+ * @generated
+ */
+ EClass CUSTOMIZATION = eINSTANCE.getCustomization();
+
+ /**
+ * The meta object literal for the '<em><b>Must Be Loaded By Default</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CUSTOMIZATION__MUST_BE_LOADED_BY_DEFAULT = eINSTANCE.getCustomization_MustBeLoadedByDefault();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.EClassCustomizationImpl <em>EClass Customization</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.EClassCustomizationImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.CustomPackageImpl#getEClassCustomization()
+ * @generated
+ */
+ EClass ECLASS_CUSTOMIZATION = eINSTANCE.getEClassCustomization();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.FacetCustomizationImpl <em>Facet Customization</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.FacetCustomizationImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.CustomPackageImpl#getFacetCustomization()
+ * @generated
+ */
+ EClass FACET_CUSTOMIZATION = eINSTANCE.getFacetCustomization();
+
+ /**
+ * The meta object literal for the '<em><b>Customized Facet</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference FACET_CUSTOMIZATION__CUSTOMIZED_FACET = eINSTANCE.getFacetCustomization_CustomizedFacet();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.ETypedElementSwitchQueryImpl <em>ETyped Element Switch Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.ETypedElementSwitchQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.CustomPackageImpl#getETypedElementSwitchQuery()
+ * @generated
+ */
+ EClass ETYPED_ELEMENT_SWITCH_QUERY = eINSTANCE.getETypedElementSwitchQuery();
+
+ /**
+ * The meta object literal for the '<em><b>Cases</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ETYPED_ELEMENT_SWITCH_QUERY__CASES = eINSTANCE.getETypedElementSwitchQuery_Cases();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.ETypedElementCaseImpl <em>ETyped Element Case</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.ETypedElementCaseImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.CustomPackageImpl#getETypedElementCase()
+ * @generated
+ */
+ EClass ETYPED_ELEMENT_CASE = eINSTANCE.getETypedElementCase();
+
+ /**
+ * The meta object literal for the '<em><b>Case</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ETYPED_ELEMENT_CASE__CASE = eINSTANCE.getETypedElementCase_Case();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ETYPED_ELEMENT_CASE__VALUE = eINSTANCE.getETypedElementCase_Value();
+
+ }
+
+} //CustomPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/Customization.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/Customization.java
new file mode 100644
index 00000000000..1f4b5265102
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/Customization.java
@@ -0,0 +1,65 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Customization</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * The customization model element is the root of a customization model. A customization is applied to only one ePackage and contains EClassCustomizations.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization#isMustBeLoadedByDefault <em>Must Be Loaded By Default</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage#getCustomization()
+ * @model
+ * @generated
+ */
+public interface Customization extends FacetSet {
+ /**
+ * Returns the value of the '<em><b>Must Be Loaded By Default</b></em>' attribute.
+ * The default value is <code>"false"</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * When Customization::mustBeloadedByDefault is true, the customization will be automatically loaded in the customizable model browsers.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Must Be Loaded By Default</em>' attribute.
+ * @see #setMustBeLoadedByDefault(boolean)
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage#getCustomization_MustBeLoadedByDefault()
+ * @model default="false" required="true"
+ * @generated
+ */
+ boolean isMustBeLoadedByDefault();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization#isMustBeLoadedByDefault <em>Must Be Loaded By Default</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Must Be Loaded By Default</em>' attribute.
+ * @see #isMustBeLoadedByDefault()
+ * @generated
+ */
+ void setMustBeLoadedByDefault(boolean value);
+
+} // Customization
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/EClassCustomization.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/EClassCustomization.java
new file mode 100644
index 00000000000..099d9c4d65b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/EClassCustomization.java
@@ -0,0 +1,34 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>EClass Customization</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * An EClassCustomization contains the customization for an EClass. There must not exist two EClassCustomizations customizing the same EClass in the same customization.
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage#getEClassCustomization()
+ * @model
+ * @generated
+ */
+public interface EClassCustomization extends Facet {
+} // EClassCustomization
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/ETypedElementCase.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/ETypedElementCase.java
new file mode 100644
index 00000000000..ba8d6e12bcc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/ETypedElementCase.java
@@ -0,0 +1,95 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.ETypedElement;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ETyped Element Case</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * Case part of the ETypedElementSwitchQuery.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase#getCase <em>Case</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage#getETypedElementCase()
+ * @model
+ * @generated
+ */
+public interface ETypedElementCase extends EObject {
+ /**
+ * Returns the value of the '<em><b>Case</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Case</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Case</em>' reference.
+ * @see #setCase(ETypedElement)
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage#getETypedElementCase_Case()
+ * @model required="true"
+ * @generated
+ */
+ ETypedElement getCase();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase#getCase <em>Case</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Case</em>' reference.
+ * @see #getCase()
+ * @generated
+ */
+ void setCase(ETypedElement value);
+
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' containment reference.
+ * @see #setValue(Query)
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage#getETypedElementCase_Value()
+ * @model containment="true"
+ * @generated
+ */
+ Query getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase#getValue <em>Value</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' containment reference.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(Query value);
+
+} // ETypedElementCase
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/ETypedElementSwitchQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/ETypedElementSwitchQuery.java
new file mode 100644
index 00000000000..2a7398b7ec8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/ETypedElementSwitchQuery.java
@@ -0,0 +1,57 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ETyped Element Switch Query</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This query can return a value depending of an instance of ETypedElement. This query is dedicated to the definition of customizations.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery#getCases <em>Cases</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage#getETypedElementSwitchQuery()
+ * @model
+ * @generated
+ */
+public interface ETypedElementSwitchQuery extends Query {
+ /**
+ * Returns the value of the '<em><b>Cases</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Cases</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Cases</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage#getETypedElementSwitchQuery_Cases()
+ * @model containment="true"
+ * @generated
+ */
+ EList<ETypedElementCase> getCases();
+
+} // ETypedElementSwitchQuery
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/FacetCustomization.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/FacetCustomization.java
new file mode 100644
index 00000000000..c079e7d22b3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/FacetCustomization.java
@@ -0,0 +1,67 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Facet Customization</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A FacetCustomization contains the customization for a Facet. There must not exist two FacetCustomizations customizing the same facet in the same customization.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization#getCustomizedFacet <em>Customized Facet</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage#getFacetCustomization()
+ * @model
+ * @generated
+ */
+public interface FacetCustomization extends Facet {
+ /**
+ * Returns the value of the '<em><b>Customized Facet</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Customized Facet</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Customized Facet</em>' reference.
+ * @see #setCustomizedFacet(Facet)
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage#getFacetCustomization_CustomizedFacet()
+ * @model required="true"
+ * @generated
+ */
+ Facet getCustomizedFacet();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization#getCustomizedFacet <em>Customized Facet</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Customized Facet</em>' reference.
+ * @see #getCustomizedFacet()
+ * @generated
+ */
+ void setCustomizedFacet(Facet value);
+
+} // FacetCustomization
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/CustomFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/CustomFactoryImpl.java
new file mode 100644
index 00000000000..99c9d82afea
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/CustomFactoryImpl.java
@@ -0,0 +1,147 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CustomFactoryImpl extends EFactoryImpl implements CustomFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static CustomFactory init() {
+ try {
+ CustomFactory theCustomFactory = (CustomFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom");
+ if (theCustomFactory != null) {
+ return theCustomFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new CustomFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case CustomPackage.CUSTOMIZATION: return createCustomization();
+ case CustomPackage.ECLASS_CUSTOMIZATION: return createEClassCustomization();
+ case CustomPackage.FACET_CUSTOMIZATION: return createFacetCustomization();
+ case CustomPackage.ETYPED_ELEMENT_SWITCH_QUERY: return createETypedElementSwitchQuery();
+ case CustomPackage.ETYPED_ELEMENT_CASE: return createETypedElementCase();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Customization createCustomization() {
+ CustomizationImpl customization = new CustomizationImpl();
+ return customization;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClassCustomization createEClassCustomization() {
+ EClassCustomizationImpl eClassCustomization = new EClassCustomizationImpl();
+ return eClassCustomization;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FacetCustomization createFacetCustomization() {
+ FacetCustomizationImpl facetCustomization = new FacetCustomizationImpl();
+ return facetCustomization;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ETypedElementSwitchQuery createETypedElementSwitchQuery() {
+ ETypedElementSwitchQueryImpl eTypedElementSwitchQuery = new ETypedElementSwitchQueryImpl();
+ return eTypedElementSwitchQuery;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ETypedElementCase createETypedElementCase() {
+ ETypedElementCaseImpl eTypedElementCase = new ETypedElementCaseImpl();
+ return eTypedElementCase;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomPackage getCustomPackage() {
+ return (CustomPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static CustomPackage getPackage() {
+ return CustomPackage.eINSTANCE;
+ }
+
+} //CustomFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/CustomPackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/CustomPackageImpl.java
new file mode 100644
index 00000000000..329aee932f0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/CustomPackageImpl.java
@@ -0,0 +1,328 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomFactory;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CustomPackageImpl extends EPackageImpl implements CustomPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass customizationEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass eClassCustomizationEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass facetCustomizationEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass eTypedElementSwitchQueryEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass eTypedElementCaseEClass = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private CustomPackageImpl() {
+ super(eNS_URI, CustomFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 CustomPackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static CustomPackage init() {
+ if (isInited) return (CustomPackage)EPackage.Registry.INSTANCE.getEPackage(CustomPackage.eNS_URI);
+
+ // Obtain or create and register package
+ CustomPackageImpl theCustomPackage = (CustomPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof CustomPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new CustomPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EFacetPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theCustomPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theCustomPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theCustomPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(CustomPackage.eNS_URI, theCustomPackage);
+ return theCustomPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getCustomization() {
+ return customizationEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getCustomization_MustBeLoadedByDefault() {
+ return (EAttribute)customizationEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getEClassCustomization() {
+ return eClassCustomizationEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFacetCustomization() {
+ return facetCustomizationEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getFacetCustomization_CustomizedFacet() {
+ return (EReference)facetCustomizationEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getETypedElementSwitchQuery() {
+ return eTypedElementSwitchQueryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getETypedElementSwitchQuery_Cases() {
+ return (EReference)eTypedElementSwitchQueryEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getETypedElementCase() {
+ return eTypedElementCaseEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getETypedElementCase_Case() {
+ return (EReference)eTypedElementCaseEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getETypedElementCase_Value() {
+ return (EReference)eTypedElementCaseEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomFactory getCustomFactory() {
+ return (CustomFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ customizationEClass = createEClass(CUSTOMIZATION);
+ createEAttribute(customizationEClass, CUSTOMIZATION__MUST_BE_LOADED_BY_DEFAULT);
+
+ eClassCustomizationEClass = createEClass(ECLASS_CUSTOMIZATION);
+
+ facetCustomizationEClass = createEClass(FACET_CUSTOMIZATION);
+ createEReference(facetCustomizationEClass, FACET_CUSTOMIZATION__CUSTOMIZED_FACET);
+
+ eTypedElementSwitchQueryEClass = createEClass(ETYPED_ELEMENT_SWITCH_QUERY);
+ createEReference(eTypedElementSwitchQueryEClass, ETYPED_ELEMENT_SWITCH_QUERY__CASES);
+
+ eTypedElementCaseEClass = createEClass(ETYPED_ELEMENT_CASE);
+ createEReference(eTypedElementCaseEClass, ETYPED_ELEMENT_CASE__CASE);
+ createEReference(eTypedElementCaseEClass, ETYPED_ELEMENT_CASE__VALUE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ EFacetPackage theEFacetPackage = (EFacetPackage)EPackage.Registry.INSTANCE.getEPackage(EFacetPackage.eNS_URI);
+ ExtensiblePackage theExtensiblePackage = (ExtensiblePackage)EPackage.Registry.INSTANCE.getEPackage(ExtensiblePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ customizationEClass.getESuperTypes().add(theEFacetPackage.getFacetSet());
+ eClassCustomizationEClass.getESuperTypes().add(theEFacetPackage.getFacet());
+ facetCustomizationEClass.getESuperTypes().add(theEFacetPackage.getFacet());
+ eTypedElementSwitchQueryEClass.getESuperTypes().add(theExtensiblePackage.getQuery());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(customizationEClass, Customization.class, "Customization", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getCustomization_MustBeLoadedByDefault(), ecorePackage.getEBoolean(), "mustBeLoadedByDefault", "false", 1, 1, Customization.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(eClassCustomizationEClass, EClassCustomization.class, "EClassCustomization", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(facetCustomizationEClass, FacetCustomization.class, "FacetCustomization", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getFacetCustomization_CustomizedFacet(), theEFacetPackage.getFacet(), null, "customizedFacet", null, 1, 1, FacetCustomization.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(eTypedElementSwitchQueryEClass, ETypedElementSwitchQuery.class, "ETypedElementSwitchQuery", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getETypedElementSwitchQuery_Cases(), this.getETypedElementCase(), null, "cases", null, 0, -1, ETypedElementSwitchQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(eTypedElementCaseEClass, ETypedElementCase.class, "ETypedElementCase", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getETypedElementCase_Case(), ecorePackage.getETypedElement(), null, "case", null, 1, 1, ETypedElementCase.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getETypedElementCase_Value(), theExtensiblePackage.getQuery(), null, "value", null, 0, 1, ETypedElementCase.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //CustomPackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/CustomizationImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/CustomizationImpl.java
new file mode 100644
index 00000000000..7e39de629df
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/CustomizationImpl.java
@@ -0,0 +1,171 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetSetImpl;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Customization</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.CustomizationImpl#isMustBeLoadedByDefault <em>Must Be Loaded By Default</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class CustomizationImpl extends FacetSetImpl implements Customization {
+ /**
+ * The default value of the '{@link #isMustBeLoadedByDefault() <em>Must Be Loaded By Default</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isMustBeLoadedByDefault()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean MUST_BE_LOADED_BY_DEFAULT_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isMustBeLoadedByDefault() <em>Must Be Loaded By Default</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isMustBeLoadedByDefault()
+ * @generated
+ * @ordered
+ */
+ protected boolean mustBeLoadedByDefault = MUST_BE_LOADED_BY_DEFAULT_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CustomizationImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return CustomPackage.Literals.CUSTOMIZATION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isMustBeLoadedByDefault() {
+ return mustBeLoadedByDefault;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setMustBeLoadedByDefault(boolean newMustBeLoadedByDefault) {
+ boolean oldMustBeLoadedByDefault = mustBeLoadedByDefault;
+ mustBeLoadedByDefault = newMustBeLoadedByDefault;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CustomPackage.CUSTOMIZATION__MUST_BE_LOADED_BY_DEFAULT, oldMustBeLoadedByDefault, mustBeLoadedByDefault));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case CustomPackage.CUSTOMIZATION__MUST_BE_LOADED_BY_DEFAULT:
+ return isMustBeLoadedByDefault();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case CustomPackage.CUSTOMIZATION__MUST_BE_LOADED_BY_DEFAULT:
+ setMustBeLoadedByDefault((Boolean)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case CustomPackage.CUSTOMIZATION__MUST_BE_LOADED_BY_DEFAULT:
+ setMustBeLoadedByDefault(MUST_BE_LOADED_BY_DEFAULT_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case CustomPackage.CUSTOMIZATION__MUST_BE_LOADED_BY_DEFAULT:
+ return mustBeLoadedByDefault != MUST_BE_LOADED_BY_DEFAULT_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (mustBeLoadedByDefault: ");
+ result.append(mustBeLoadedByDefault);
+ result.append(')');
+ return result.toString();
+ }
+
+} //CustomizationImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/EClassCustomizationImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/EClassCustomizationImpl.java
new file mode 100644
index 00000000000..4a1c39ecf3f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/EClassCustomizationImpl.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetImpl;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>EClass Customization</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class EClassCustomizationImpl extends FacetImpl implements EClassCustomization {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EClassCustomizationImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return CustomPackage.Literals.ECLASS_CUSTOMIZATION;
+ }
+
+} //EClassCustomizationImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/ETypedElementCaseImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/ETypedElementCaseImpl.java
new file mode 100644
index 00000000000..79eae53d1dd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/ETypedElementCaseImpl.java
@@ -0,0 +1,245 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ETyped Element Case</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.ETypedElementCaseImpl#getCase <em>Case</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.ETypedElementCaseImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ETypedElementCaseImpl extends EObjectImpl implements ETypedElementCase {
+ /**
+ * The cached value of the '{@link #getCase() <em>Case</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCase()
+ * @generated
+ * @ordered
+ */
+ protected ETypedElement case_;
+
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected Query value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ETypedElementCaseImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return CustomPackage.Literals.ETYPED_ELEMENT_CASE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ETypedElement getCase() {
+ if (case_ != null && case_.eIsProxy()) {
+ InternalEObject oldCase = (InternalEObject)case_;
+ case_ = (ETypedElement)eResolveProxy(oldCase);
+ if (case_ != oldCase) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, CustomPackage.ETYPED_ELEMENT_CASE__CASE, oldCase, case_));
+ }
+ }
+ return case_;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ETypedElement basicGetCase() {
+ return case_;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setCase(ETypedElement newCase) {
+ ETypedElement oldCase = case_;
+ case_ = newCase;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CustomPackage.ETYPED_ELEMENT_CASE__CASE, oldCase, case_));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Query getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetValue(Query newValue, NotificationChain msgs) {
+ Query oldValue = value;
+ value = newValue;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, CustomPackage.ETYPED_ELEMENT_CASE__VALUE, oldValue, newValue);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValue(Query newValue) {
+ if (newValue != value) {
+ NotificationChain msgs = null;
+ if (value != null)
+ msgs = ((InternalEObject)value).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - CustomPackage.ETYPED_ELEMENT_CASE__VALUE, null, msgs);
+ if (newValue != null)
+ msgs = ((InternalEObject)newValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - CustomPackage.ETYPED_ELEMENT_CASE__VALUE, null, msgs);
+ msgs = basicSetValue(newValue, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CustomPackage.ETYPED_ELEMENT_CASE__VALUE, newValue, newValue));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case CustomPackage.ETYPED_ELEMENT_CASE__VALUE:
+ return basicSetValue(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case CustomPackage.ETYPED_ELEMENT_CASE__CASE:
+ if (resolve) return getCase();
+ return basicGetCase();
+ case CustomPackage.ETYPED_ELEMENT_CASE__VALUE:
+ return getValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case CustomPackage.ETYPED_ELEMENT_CASE__CASE:
+ setCase((ETypedElement)newValue);
+ return;
+ case CustomPackage.ETYPED_ELEMENT_CASE__VALUE:
+ setValue((Query)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case CustomPackage.ETYPED_ELEMENT_CASE__CASE:
+ setCase((ETypedElement)null);
+ return;
+ case CustomPackage.ETYPED_ELEMENT_CASE__VALUE:
+ setValue((Query)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case CustomPackage.ETYPED_ELEMENT_CASE__CASE:
+ return case_ != null;
+ case CustomPackage.ETYPED_ELEMENT_CASE__VALUE:
+ return value != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ETypedElementCaseImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/ETypedElementSwitchQueryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/ETypedElementSwitchQueryImpl.java
new file mode 100644
index 00000000000..918b63dd815
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/ETypedElementSwitchQueryImpl.java
@@ -0,0 +1,158 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ETyped Element Switch Query</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.ETypedElementSwitchQueryImpl#getCases <em>Cases</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ETypedElementSwitchQueryImpl extends QueryImpl implements ETypedElementSwitchQuery {
+ /**
+ * The cached value of the '{@link #getCases() <em>Cases</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCases()
+ * @generated
+ * @ordered
+ */
+ protected EList<ETypedElementCase> cases;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ETypedElementSwitchQueryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return CustomPackage.Literals.ETYPED_ELEMENT_SWITCH_QUERY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<ETypedElementCase> getCases() {
+ if (cases == null) {
+ cases = new EObjectContainmentEList<ETypedElementCase>(ETypedElementCase.class, this, CustomPackage.ETYPED_ELEMENT_SWITCH_QUERY__CASES);
+ }
+ return cases;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case CustomPackage.ETYPED_ELEMENT_SWITCH_QUERY__CASES:
+ return ((InternalEList<?>)getCases()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case CustomPackage.ETYPED_ELEMENT_SWITCH_QUERY__CASES:
+ return getCases();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case CustomPackage.ETYPED_ELEMENT_SWITCH_QUERY__CASES:
+ getCases().clear();
+ getCases().addAll((Collection<? extends ETypedElementCase>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case CustomPackage.ETYPED_ELEMENT_SWITCH_QUERY__CASES:
+ getCases().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case CustomPackage.ETYPED_ELEMENT_SWITCH_QUERY__CASES:
+ return cases != null && !cases.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ETypedElementSwitchQueryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/FacetCustomizationImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/FacetCustomizationImpl.java
new file mode 100644
index 00000000000..42cd040d29b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/impl/FacetCustomizationImpl.java
@@ -0,0 +1,166 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetImpl;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Facet Customization</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.impl.FacetCustomizationImpl#getCustomizedFacet <em>Customized Facet</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class FacetCustomizationImpl extends FacetImpl implements FacetCustomization {
+ /**
+ * The cached value of the '{@link #getCustomizedFacet() <em>Customized Facet</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCustomizedFacet()
+ * @generated
+ * @ordered
+ */
+ protected Facet customizedFacet;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetCustomizationImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return CustomPackage.Literals.FACET_CUSTOMIZATION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Facet getCustomizedFacet() {
+ if (customizedFacet != null && customizedFacet.eIsProxy()) {
+ InternalEObject oldCustomizedFacet = (InternalEObject)customizedFacet;
+ customizedFacet = (Facet)eResolveProxy(oldCustomizedFacet);
+ if (customizedFacet != oldCustomizedFacet) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, CustomPackage.FACET_CUSTOMIZATION__CUSTOMIZED_FACET, oldCustomizedFacet, customizedFacet));
+ }
+ }
+ return customizedFacet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Facet basicGetCustomizedFacet() {
+ return customizedFacet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setCustomizedFacet(Facet newCustomizedFacet) {
+ Facet oldCustomizedFacet = customizedFacet;
+ customizedFacet = newCustomizedFacet;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CustomPackage.FACET_CUSTOMIZATION__CUSTOMIZED_FACET, oldCustomizedFacet, customizedFacet));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case CustomPackage.FACET_CUSTOMIZATION__CUSTOMIZED_FACET:
+ if (resolve) return getCustomizedFacet();
+ return basicGetCustomizedFacet();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case CustomPackage.FACET_CUSTOMIZATION__CUSTOMIZED_FACET:
+ setCustomizedFacet((Facet)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case CustomPackage.FACET_CUSTOMIZATION__CUSTOMIZED_FACET:
+ setCustomizedFacet((Facet)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case CustomPackage.FACET_CUSTOMIZATION__CUSTOMIZED_FACET:
+ return customizedFacet != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //FacetCustomizationImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/util/CustomAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/util/CustomAdapterFactory.java
new file mode 100644
index 00000000000..369274b199b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/util/CustomAdapterFactory.java
@@ -0,0 +1,352 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage
+ * @generated
+ */
+public class CustomAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static CustomPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = CustomPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CustomSwitch<Adapter> modelSwitch =
+ new CustomSwitch<Adapter>() {
+ @Override
+ public Adapter caseCustomization(Customization object) {
+ return createCustomizationAdapter();
+ }
+ @Override
+ public Adapter caseEClassCustomization(EClassCustomization object) {
+ return createEClassCustomizationAdapter();
+ }
+ @Override
+ public Adapter caseFacetCustomization(FacetCustomization object) {
+ return createFacetCustomizationAdapter();
+ }
+ @Override
+ public Adapter caseETypedElementSwitchQuery(ETypedElementSwitchQuery object) {
+ return createETypedElementSwitchQueryAdapter();
+ }
+ @Override
+ public Adapter caseETypedElementCase(ETypedElementCase object) {
+ return createETypedElementCaseAdapter();
+ }
+ @Override
+ public Adapter caseEModelElement(EModelElement object) {
+ return createEModelElementAdapter();
+ }
+ @Override
+ public Adapter caseENamedElement(ENamedElement object) {
+ return createENamedElementAdapter();
+ }
+ @Override
+ public Adapter caseEPackage(EPackage object) {
+ return createEPackageAdapter();
+ }
+ @Override
+ public Adapter caseDocumentedElement(DocumentedElement object) {
+ return createDocumentedElementAdapter();
+ }
+ @Override
+ public Adapter caseFacetSet(FacetSet object) {
+ return createFacetSetAdapter();
+ }
+ @Override
+ public Adapter caseEClassifier(EClassifier object) {
+ return createEClassifierAdapter();
+ }
+ @Override
+ public Adapter caseFacet(Facet object) {
+ return createFacetAdapter();
+ }
+ @Override
+ public Adapter caseQuery(Query object) {
+ return createQueryAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization <em>Customization</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.emf.facet.custom.metamodel.v0_2_0.custom.Customization
+ * @generated
+ */
+ public Adapter createCustomizationAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization <em>EClass Customization</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.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization
+ * @generated
+ */
+ public Adapter createEClassCustomizationAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization <em>Facet Customization</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.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization
+ * @generated
+ */
+ public Adapter createFacetCustomizationAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery <em>ETyped Element Switch Query</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.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery
+ * @generated
+ */
+ public Adapter createETypedElementSwitchQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase <em>ETyped Element Case</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.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase
+ * @generated
+ */
+ public Adapter createETypedElementCaseAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EModelElement <em>EModel Element</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.emf.ecore.EModelElement
+ * @generated
+ */
+ public Adapter createEModelElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.ENamedElement <em>ENamed Element</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.emf.ecore.ENamedElement
+ * @generated
+ */
+ public Adapter createENamedElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EPackage <em>EPackage</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.emf.ecore.EPackage
+ * @generated
+ */
+ public Adapter createEPackageAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement <em>Documented Element</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.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement
+ * @generated
+ */
+ public Adapter createDocumentedElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet <em>Facet Set</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.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet
+ * @generated
+ */
+ public Adapter createFacetSetAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EClassifier <em>EClassifier</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.emf.ecore.EClassifier
+ * @generated
+ */
+ public Adapter createEClassifierAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet <em>Facet</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.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet
+ * @generated
+ */
+ public Adapter createFacetAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query <em>Query</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.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query
+ * @generated
+ */
+ public Adapter createQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //CustomAdapterFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/util/CustomSwitch.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/util/CustomSwitch.java
new file mode 100644
index 00000000000..aef54f73fef
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custom/util/CustomSwitch.java
@@ -0,0 +1,364 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage
+ * @generated
+ */
+public class CustomSwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static CustomPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomSwitch() {
+ if (modelPackage == null) {
+ modelPackage = CustomPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case CustomPackage.CUSTOMIZATION: {
+ Customization customization = (Customization)theEObject;
+ T result = caseCustomization(customization);
+ if (result == null) result = caseFacetSet(customization);
+ if (result == null) result = caseEPackage(customization);
+ if (result == null) result = caseDocumentedElement(customization);
+ if (result == null) result = caseENamedElement(customization);
+ if (result == null) result = caseEModelElement(customization);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case CustomPackage.ECLASS_CUSTOMIZATION: {
+ EClassCustomization eClassCustomization = (EClassCustomization)theEObject;
+ T result = caseEClassCustomization(eClassCustomization);
+ if (result == null) result = caseFacet(eClassCustomization);
+ if (result == null) result = caseEClassifier(eClassCustomization);
+ if (result == null) result = caseDocumentedElement(eClassCustomization);
+ if (result == null) result = caseENamedElement(eClassCustomization);
+ if (result == null) result = caseEModelElement(eClassCustomization);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case CustomPackage.FACET_CUSTOMIZATION: {
+ FacetCustomization facetCustomization = (FacetCustomization)theEObject;
+ T result = caseFacetCustomization(facetCustomization);
+ if (result == null) result = caseFacet(facetCustomization);
+ if (result == null) result = caseEClassifier(facetCustomization);
+ if (result == null) result = caseDocumentedElement(facetCustomization);
+ if (result == null) result = caseENamedElement(facetCustomization);
+ if (result == null) result = caseEModelElement(facetCustomization);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case CustomPackage.ETYPED_ELEMENT_SWITCH_QUERY: {
+ ETypedElementSwitchQuery eTypedElementSwitchQuery = (ETypedElementSwitchQuery)theEObject;
+ T result = caseETypedElementSwitchQuery(eTypedElementSwitchQuery);
+ if (result == null) result = caseQuery(eTypedElementSwitchQuery);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case CustomPackage.ETYPED_ELEMENT_CASE: {
+ ETypedElementCase eTypedElementCase = (ETypedElementCase)theEObject;
+ T result = caseETypedElementCase(eTypedElementCase);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Customization</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>Customization</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCustomization(Customization object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EClass Customization</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>EClass Customization</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEClassCustomization(EClassCustomization object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Facet Customization</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>Facet Customization</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFacetCustomization(FacetCustomization object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>ETyped Element Switch Query</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>ETyped Element Switch Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseETypedElementSwitchQuery(ETypedElementSwitchQuery object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>ETyped Element Case</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>ETyped Element Case</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseETypedElementCase(ETypedElementCase object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EModel Element</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>EModel Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEModelElement(EModelElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>ENamed Element</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>ENamed Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseENamedElement(ENamedElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EPackage</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>EPackage</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEPackage(EPackage object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Documented Element</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>Documented Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDocumentedElement(DocumentedElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Facet Set</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>Facet Set</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFacetSet(FacetSet object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EClassifier</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>EClassifier</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEClassifier(EClassifier object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Facet</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>Facet</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFacet(Facet object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Query</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>Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseQuery(Query object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //CustomSwitch
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationCatalog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationCatalog.java
new file mode 100644
index 00000000000..f1761ff05c6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationCatalog.java
@@ -0,0 +1,29 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog;
+
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Customization Catalog</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationcatalogPackage#getCustomizationCatalog()
+ * @model
+ * @generated
+ */
+public interface CustomizationCatalog extends Catalog {
+} // CustomizationCatalog
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationPropertiesCatalog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationPropertiesCatalog.java
new file mode 100644
index 00000000000..05ea65332e7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationPropertiesCatalog.java
@@ -0,0 +1,29 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog;
+
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Customization Properties Catalog</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationcatalogPackage#getCustomizationPropertiesCatalog()
+ * @model
+ * @generated
+ */
+public interface CustomizationPropertiesCatalog extends Catalog {
+} // CustomizationPropertiesCatalog
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationcatalogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationcatalogFactory.java
new file mode 100644
index 00000000000..be946e290cb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationcatalogFactory.java
@@ -0,0 +1,63 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc --> The <b>Factory</b> for the model. It provides a
+ * create method for each non-abstract class of the model. <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationcatalogPackage
+ * @generated
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface CustomizationcatalogFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ CustomizationcatalogFactory eINSTANCE = org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationcatalogFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Customization Catalog</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Customization Catalog</em>'.
+ * @generated
+ */
+ CustomizationCatalog createCustomizationCatalog();
+
+ /**
+ * Returns a new object of class '<em>Customization Properties Catalog</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Customization Properties Catalog</em>'.
+ * @generated
+ */
+ CustomizationPropertiesCatalog createCustomizationPropertiesCatalog();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ CustomizationcatalogPackage getCustomizationcatalogPackage();
+
+} //CustomizationcatalogFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationcatalogPackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationcatalogPackage.java
new file mode 100644
index 00000000000..1aaa1c3dd7e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/CustomizationcatalogPackage.java
@@ -0,0 +1,209 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage;
+
+/**
+ * <!-- begin-user-doc --> The <b>Package</b> for the model. It contains
+ * accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationcatalogFactory
+ * @model kind="package"
+ * @generated
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface CustomizationcatalogPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "customizationcatalog";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/custom/0.2.internal/customizationcatalog";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "customizationcatalog";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ CustomizationcatalogPackage eINSTANCE = org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationcatalogPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationCatalogImpl <em>Customization Catalog</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationCatalogImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationcatalogPackageImpl#getCustomizationCatalog()
+ * @generated
+ */
+ int CUSTOMIZATION_CATALOG = 0;
+
+ /**
+ * The feature id for the '<em><b>Installed Entries</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION_CATALOG__INSTALLED_ENTRIES = CatalogPackage.CATALOG__INSTALLED_ENTRIES;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION_CATALOG__NAME = CatalogPackage.CATALOG__NAME;
+
+ /**
+ * The number of structural features of the '<em>Customization Catalog</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION_CATALOG_FEATURE_COUNT = CatalogPackage.CATALOG_FEATURE_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationPropertiesCatalogImpl <em>Customization Properties Catalog</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationPropertiesCatalogImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationcatalogPackageImpl#getCustomizationPropertiesCatalog()
+ * @generated
+ */
+ int CUSTOMIZATION_PROPERTIES_CATALOG = 1;
+
+ /**
+ * The feature id for the '<em><b>Installed Entries</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION_PROPERTIES_CATALOG__INSTALLED_ENTRIES = CatalogPackage.CATALOG__INSTALLED_ENTRIES;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION_PROPERTIES_CATALOG__NAME = CatalogPackage.CATALOG__NAME;
+
+ /**
+ * The number of structural features of the '<em>Customization Properties Catalog</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CUSTOMIZATION_PROPERTIES_CATALOG_FEATURE_COUNT = CatalogPackage.CATALOG_FEATURE_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationCatalog <em>Customization Catalog</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Customization Catalog</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationCatalog
+ * @generated
+ */
+ EClass getCustomizationCatalog();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationPropertiesCatalog <em>Customization Properties Catalog</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Customization Properties Catalog</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationPropertiesCatalog
+ * @generated
+ */
+ EClass getCustomizationPropertiesCatalog();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ CustomizationcatalogFactory getCustomizationcatalogFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationCatalogImpl <em>Customization Catalog</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationCatalogImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationcatalogPackageImpl#getCustomizationCatalog()
+ * @generated
+ */
+ EClass CUSTOMIZATION_CATALOG = eINSTANCE.getCustomizationCatalog();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationPropertiesCatalogImpl <em>Customization Properties Catalog</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationPropertiesCatalogImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationcatalogPackageImpl#getCustomizationPropertiesCatalog()
+ * @generated
+ */
+ EClass CUSTOMIZATION_PROPERTIES_CATALOG = eINSTANCE.getCustomizationPropertiesCatalog();
+
+ }
+
+} //CustomizationcatalogPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationCatalogImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationCatalogImpl.java
new file mode 100644
index 00000000000..ca21767d1f5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationCatalogImpl.java
@@ -0,0 +1,211 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationCatalog;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationcatalogPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Customization Catalog</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationCatalogImpl#getInstalledEntries <em>Installed Entries</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationCatalogImpl#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class CustomizationCatalogImpl extends EObjectImpl implements CustomizationCatalog {
+ /**
+ * The cached value of the '{@link #getInstalledEntries() <em>Installed Entries</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getInstalledEntries()
+ * @generated
+ * @ordered
+ */
+ protected EList<EObject> installedEntries;
+
+ /**
+ * 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;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CustomizationCatalogImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return CustomizationcatalogPackage.Literals.CUSTOMIZATION_CATALOG;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<EObject> getInstalledEntries() {
+ if (installedEntries == null) {
+ installedEntries = new EObjectResolvingEList<EObject>(EObject.class, this, CustomizationcatalogPackage.CUSTOMIZATION_CATALOG__INSTALLED_ENTRIES);
+ }
+ return installedEntries;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CustomizationcatalogPackage.CUSTOMIZATION_CATALOG__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case CustomizationcatalogPackage.CUSTOMIZATION_CATALOG__INSTALLED_ENTRIES:
+ return getInstalledEntries();
+ case CustomizationcatalogPackage.CUSTOMIZATION_CATALOG__NAME:
+ return getName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case CustomizationcatalogPackage.CUSTOMIZATION_CATALOG__INSTALLED_ENTRIES:
+ getInstalledEntries().clear();
+ getInstalledEntries().addAll((Collection<? extends EObject>)newValue);
+ return;
+ case CustomizationcatalogPackage.CUSTOMIZATION_CATALOG__NAME:
+ setName((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case CustomizationcatalogPackage.CUSTOMIZATION_CATALOG__INSTALLED_ENTRIES:
+ getInstalledEntries().clear();
+ return;
+ case CustomizationcatalogPackage.CUSTOMIZATION_CATALOG__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case CustomizationcatalogPackage.CUSTOMIZATION_CATALOG__INSTALLED_ENTRIES:
+ return installedEntries != null && !installedEntries.isEmpty();
+ case CustomizationcatalogPackage.CUSTOMIZATION_CATALOG__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: ");
+ result.append(name);
+ result.append(')');
+ return result.toString();
+ }
+
+} //CustomizationCatalogImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationPropertiesCatalogImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationPropertiesCatalogImpl.java
new file mode 100644
index 00000000000..86b3e06ffa2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationPropertiesCatalogImpl.java
@@ -0,0 +1,211 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationPropertiesCatalog;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationcatalogPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Customization Properties Catalog</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationPropertiesCatalogImpl#getInstalledEntries <em>Installed Entries</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl.CustomizationPropertiesCatalogImpl#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class CustomizationPropertiesCatalogImpl extends EObjectImpl implements CustomizationPropertiesCatalog {
+ /**
+ * The cached value of the '{@link #getInstalledEntries() <em>Installed Entries</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getInstalledEntries()
+ * @generated
+ * @ordered
+ */
+ protected EList<EObject> installedEntries;
+
+ /**
+ * 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;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CustomizationPropertiesCatalogImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return CustomizationcatalogPackage.Literals.CUSTOMIZATION_PROPERTIES_CATALOG;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<EObject> getInstalledEntries() {
+ if (installedEntries == null) {
+ installedEntries = new EObjectResolvingEList<EObject>(EObject.class, this, CustomizationcatalogPackage.CUSTOMIZATION_PROPERTIES_CATALOG__INSTALLED_ENTRIES);
+ }
+ return installedEntries;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, CustomizationcatalogPackage.CUSTOMIZATION_PROPERTIES_CATALOG__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case CustomizationcatalogPackage.CUSTOMIZATION_PROPERTIES_CATALOG__INSTALLED_ENTRIES:
+ return getInstalledEntries();
+ case CustomizationcatalogPackage.CUSTOMIZATION_PROPERTIES_CATALOG__NAME:
+ return getName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case CustomizationcatalogPackage.CUSTOMIZATION_PROPERTIES_CATALOG__INSTALLED_ENTRIES:
+ getInstalledEntries().clear();
+ getInstalledEntries().addAll((Collection<? extends EObject>)newValue);
+ return;
+ case CustomizationcatalogPackage.CUSTOMIZATION_PROPERTIES_CATALOG__NAME:
+ setName((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case CustomizationcatalogPackage.CUSTOMIZATION_PROPERTIES_CATALOG__INSTALLED_ENTRIES:
+ getInstalledEntries().clear();
+ return;
+ case CustomizationcatalogPackage.CUSTOMIZATION_PROPERTIES_CATALOG__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case CustomizationcatalogPackage.CUSTOMIZATION_PROPERTIES_CATALOG__INSTALLED_ENTRIES:
+ return installedEntries != null && !installedEntries.isEmpty();
+ case CustomizationcatalogPackage.CUSTOMIZATION_PROPERTIES_CATALOG__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: ");
+ result.append(name);
+ result.append(')');
+ return result.toString();
+ }
+
+} //CustomizationPropertiesCatalogImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationcatalogFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationcatalogFactoryImpl.java
new file mode 100644
index 00000000000..dd235875330
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationcatalogFactoryImpl.java
@@ -0,0 +1,114 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CustomizationcatalogFactoryImpl extends EFactoryImpl implements CustomizationcatalogFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static CustomizationcatalogFactory init() {
+ try {
+ CustomizationcatalogFactory theCustomizationcatalogFactory = (CustomizationcatalogFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/emf/facet/custom/0.2.internal/customizationcatalog");
+ if (theCustomizationcatalogFactory != null) {
+ return theCustomizationcatalogFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new CustomizationcatalogFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomizationcatalogFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case CustomizationcatalogPackage.CUSTOMIZATION_CATALOG: return createCustomizationCatalog();
+ case CustomizationcatalogPackage.CUSTOMIZATION_PROPERTIES_CATALOG: return createCustomizationPropertiesCatalog();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomizationCatalog createCustomizationCatalog() {
+ CustomizationCatalogImpl customizationCatalog = new CustomizationCatalogImpl();
+ return customizationCatalog;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomizationPropertiesCatalog createCustomizationPropertiesCatalog() {
+ CustomizationPropertiesCatalogImpl customizationPropertiesCatalog = new CustomizationPropertiesCatalogImpl();
+ return customizationPropertiesCatalog;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomizationcatalogPackage getCustomizationcatalogPackage() {
+ return (CustomizationcatalogPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static CustomizationcatalogPackage getPackage() {
+ return CustomizationcatalogPackage.eINSTANCE;
+ }
+
+} //CustomizationcatalogFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationcatalogPackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationcatalogPackageImpl.java
new file mode 100644
index 00000000000..ca800fb8acf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/impl/CustomizationcatalogPackageImpl.java
@@ -0,0 +1,204 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationCatalog;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationPropertiesCatalog;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationcatalogFactory;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationcatalogPackage;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CustomizationcatalogPackageImpl extends EPackageImpl implements CustomizationcatalogPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass customizationCatalogEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass customizationPropertiesCatalogEClass = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationcatalogPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private CustomizationcatalogPackageImpl() {
+ super(eNS_URI, CustomizationcatalogFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 CustomizationcatalogPackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static CustomizationcatalogPackage init() {
+ if (isInited) return (CustomizationcatalogPackage)EPackage.Registry.INSTANCE.getEPackage(CustomizationcatalogPackage.eNS_URI);
+
+ // Obtain or create and register package
+ CustomizationcatalogPackageImpl theCustomizationcatalogPackage = (CustomizationcatalogPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof CustomizationcatalogPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new CustomizationcatalogPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ CatalogPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theCustomizationcatalogPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theCustomizationcatalogPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theCustomizationcatalogPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(CustomizationcatalogPackage.eNS_URI, theCustomizationcatalogPackage);
+ return theCustomizationcatalogPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getCustomizationCatalog() {
+ return customizationCatalogEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getCustomizationPropertiesCatalog() {
+ return customizationPropertiesCatalogEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomizationcatalogFactory getCustomizationcatalogFactory() {
+ return (CustomizationcatalogFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ customizationCatalogEClass = createEClass(CUSTOMIZATION_CATALOG);
+
+ customizationPropertiesCatalogEClass = createEClass(CUSTOMIZATION_PROPERTIES_CATALOG);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ CatalogPackage theCatalogPackage = (CatalogPackage)EPackage.Registry.INSTANCE.getEPackage(CatalogPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ customizationCatalogEClass.getESuperTypes().add(theCatalogPackage.getCatalog());
+ customizationPropertiesCatalogEClass.getESuperTypes().add(theCatalogPackage.getCatalog());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(customizationCatalogEClass, CustomizationCatalog.class, "CustomizationCatalog", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(customizationPropertiesCatalogEClass, CustomizationPropertiesCatalog.class, "CustomizationPropertiesCatalog", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //CustomizationcatalogPackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/util/CustomizationcatalogAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/util/CustomizationcatalogAdapterFactory.java
new file mode 100644
index 00000000000..5d7b3a9811b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/util/CustomizationcatalogAdapterFactory.java
@@ -0,0 +1,165 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.*;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationcatalogPackage
+ * @generated
+ */
+public class CustomizationcatalogAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static CustomizationcatalogPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomizationcatalogAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = CustomizationcatalogPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CustomizationcatalogSwitch<Adapter> modelSwitch =
+ new CustomizationcatalogSwitch<Adapter>() {
+ @Override
+ public Adapter caseCustomizationCatalog(CustomizationCatalog object) {
+ return createCustomizationCatalogAdapter();
+ }
+ @Override
+ public Adapter caseCustomizationPropertiesCatalog(CustomizationPropertiesCatalog object) {
+ return createCustomizationPropertiesCatalogAdapter();
+ }
+ @Override
+ public Adapter caseCatalog(Catalog object) {
+ return createCatalogAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationCatalog <em>Customization Catalog</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.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationCatalog
+ * @generated
+ */
+ public Adapter createCustomizationCatalogAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationPropertiesCatalog <em>Customization Properties Catalog</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.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationPropertiesCatalog
+ * @generated
+ */
+ public Adapter createCustomizationPropertiesCatalogAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog <em>Catalog</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.emf.facet.util.emf.catalog.Catalog
+ * @generated
+ */
+ public Adapter createCatalogAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //CustomizationcatalogAdapterFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/util/CustomizationcatalogSwitch.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/util/CustomizationcatalogSwitch.java
new file mode 100644
index 00000000000..3217679c288
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/customizationcatalog/util/CustomizationcatalogSwitch.java
@@ -0,0 +1,175 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.*;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.customizationcatalog.CustomizationcatalogPackage
+ * @generated
+ */
+public class CustomizationcatalogSwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static CustomizationcatalogPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomizationcatalogSwitch() {
+ if (modelPackage == null) {
+ modelPackage = CustomizationcatalogPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case CustomizationcatalogPackage.CUSTOMIZATION_CATALOG: {
+ CustomizationCatalog customizationCatalog = (CustomizationCatalog)theEObject;
+ T result = caseCustomizationCatalog(customizationCatalog);
+ if (result == null) result = caseCatalog(customizationCatalog);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case CustomizationcatalogPackage.CUSTOMIZATION_PROPERTIES_CATALOG: {
+ CustomizationPropertiesCatalog customizationPropertiesCatalog = (CustomizationPropertiesCatalog)theEObject;
+ T result = caseCustomizationPropertiesCatalog(customizationPropertiesCatalog);
+ if (result == null) result = caseCatalog(customizationPropertiesCatalog);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Customization Catalog</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>Customization Catalog</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCustomizationCatalog(CustomizationCatalog object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Customization Properties Catalog</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>Customization Properties Catalog</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCustomizationPropertiesCatalog(CustomizationPropertiesCatalog object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Catalog</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>Catalog</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCatalog(Catalog object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //CustomizationcatalogSwitch
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/Alignment.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/Alignment.java
new file mode 100644
index 00000000000..49d89a38f9d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/Alignment.java
@@ -0,0 +1,246 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ *
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Alignment</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.CustomptPackage#getAlignment()
+ * @model
+ * @generated
+ */
+public enum Alignment implements Enumerator {
+ /**
+ * The '<em><b>LEFT</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #LEFT_VALUE
+ * @generated
+ * @ordered
+ */
+ LEFT(0, "LEFT", "LEFT"),
+
+ /**
+ * The '<em><b>CENTER</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #CENTER_VALUE
+ * @generated
+ * @ordered
+ */
+ CENTER(1, "CENTER", "CENTER"),
+
+ /**
+ * The '<em><b>RIGHT</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #RIGHT_VALUE
+ * @generated
+ * @ordered
+ */
+ RIGHT(2, "RIGHT", "RIGHT");
+
+ /**
+ * The '<em><b>LEFT</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>LEFT</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #LEFT
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int LEFT_VALUE = 0;
+
+ /**
+ * The '<em><b>CENTER</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>CENTER</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #CENTER
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int CENTER_VALUE = 1;
+
+ /**
+ * The '<em><b>RIGHT</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>RIGHT</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #RIGHT
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int RIGHT_VALUE = 2;
+
+ /**
+ * An array of all the '<em><b>Alignment</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static final Alignment[] VALUES_ARRAY =
+ new Alignment[] {
+ LEFT,
+ CENTER,
+ RIGHT,
+ };
+
+ /**
+ * A public read-only list of all the '<em><b>Alignment</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<Alignment> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Alignment</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Alignment get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ Alignment result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Alignment</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Alignment getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ Alignment result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Alignment</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Alignment get(int value) {
+ switch (value) {
+ case LEFT_VALUE: return LEFT;
+ case CENTER_VALUE: return CENTER;
+ case RIGHT_VALUE: return RIGHT;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final int value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String name;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private Alignment(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //Alignment
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/CustomptFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/CustomptFactory.java
new file mode 100644
index 00000000000..092ca69eaa5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/CustomptFactory.java
@@ -0,0 +1,45 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ *
+ *
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc --> The <b>Factory</b> for the model. It provides a
+ * create method for each non-abstract class of the model. <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.CustomptPackage
+ * @generated
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface CustomptFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ CustomptFactory eINSTANCE = org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.impl.CustomptFactoryImpl.init();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ CustomptPackage getCustomptPackage();
+
+} //CustomptFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/CustomptPackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/CustomptPackage.java
new file mode 100644
index 00000000000..171fb433611
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/CustomptPackage.java
@@ -0,0 +1,214 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ *
+ *
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt;
+
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.CustomptFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface CustomptPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "custompt";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "custompt";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ CustomptPackage eINSTANCE = org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.impl.CustomptPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Shadow <em>Shadow</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Shadow
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.impl.CustomptPackageImpl#getShadow()
+ * @generated
+ */
+ int SHADOW = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Alignment <em>Alignment</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Alignment
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.impl.CustomptPackageImpl#getAlignment()
+ * @generated
+ */
+ int ALIGNMENT = 1;
+
+ /**
+ * The meta object id for the '<em>Image</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.impl.CustomptPackageImpl#getImage()
+ * @generated
+ */
+ int IMAGE = 2;
+
+ /**
+ * The meta object id for the '<em>Color</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IColor
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.impl.CustomptPackageImpl#getColor()
+ * @generated
+ */
+ int COLOR = 3;
+
+ /**
+ * Returns the meta object for enum '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Shadow <em>Shadow</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>Shadow</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Shadow
+ * @generated
+ */
+ EEnum getShadow();
+
+ /**
+ * Returns the meta object for enum '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Alignment <em>Alignment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>Alignment</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Alignment
+ * @generated
+ */
+ EEnum getAlignment();
+
+ /**
+ * Returns the meta object for data type '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage <em>Image</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for data type '<em>Image</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage
+ * @model instanceClass="org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage"
+ * @generated
+ */
+ EDataType getImage();
+
+ /**
+ * Returns the meta object for data type '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IColor <em>Color</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for data type '<em>Color</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IColor
+ * @model instanceClass="org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IColor"
+ * @generated
+ */
+ EDataType getColor();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ CustomptFactory getCustomptFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Shadow <em>Shadow</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Shadow
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.impl.CustomptPackageImpl#getShadow()
+ * @generated
+ */
+ EEnum SHADOW = eINSTANCE.getShadow();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Alignment <em>Alignment</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Alignment
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.impl.CustomptPackageImpl#getAlignment()
+ * @generated
+ */
+ EEnum ALIGNMENT = eINSTANCE.getAlignment();
+
+ /**
+ * The meta object literal for the '<em>Image</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.impl.CustomptPackageImpl#getImage()
+ * @generated
+ */
+ EDataType IMAGE = eINSTANCE.getImage();
+
+ /**
+ * The meta object literal for the '<em>Color</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IColor
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.impl.CustomptPackageImpl#getColor()
+ * @generated
+ */
+ EDataType COLOR = eINSTANCE.getColor();
+
+ }
+
+} //CustomptPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/Shadow.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/Shadow.java
new file mode 100644
index 00000000000..999a67d4454
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/Shadow.java
@@ -0,0 +1,246 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ *
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Shadow</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.CustomptPackage#getShadow()
+ * @model
+ * @generated
+ */
+public enum Shadow implements Enumerator {
+ /**
+ * The '<em><b>NONE</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #NONE_VALUE
+ * @generated
+ * @ordered
+ */
+ NONE(0, "NONE", "NONE"),
+
+ /**
+ * The '<em><b>IN</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #IN_VALUE
+ * @generated
+ * @ordered
+ */
+ IN(1, "IN", "IN"),
+
+ /**
+ * The '<em><b>OUT</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #OUT_VALUE
+ * @generated
+ * @ordered
+ */
+ OUT(2, "OUT", "OUT");
+
+ /**
+ * The '<em><b>NONE</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>NONE</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #NONE
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int NONE_VALUE = 0;
+
+ /**
+ * The '<em><b>IN</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>IN</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #IN
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int IN_VALUE = 1;
+
+ /**
+ * The '<em><b>OUT</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>OUT</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #OUT
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int OUT_VALUE = 2;
+
+ /**
+ * An array of all the '<em><b>Shadow</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static final Shadow[] VALUES_ARRAY =
+ new Shadow[] {
+ NONE,
+ IN,
+ OUT,
+ };
+
+ /**
+ * A public read-only list of all the '<em><b>Shadow</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<Shadow> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Shadow</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Shadow get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ Shadow result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Shadow</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Shadow getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ Shadow result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Shadow</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Shadow get(int value) {
+ switch (value) {
+ case NONE_VALUE: return NONE;
+ case IN_VALUE: return IN;
+ case OUT_VALUE: return OUT;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final int value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String name;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private Shadow(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //Shadow
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/impl/CustomptFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/impl/CustomptFactoryImpl.java
new file mode 100644
index 00000000000..06b678fd0ff
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/impl/CustomptFactoryImpl.java
@@ -0,0 +1,213 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ *
+ *
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IColor;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CustomptFactoryImpl extends EFactoryImpl implements CustomptFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static CustomptFactory init() {
+ try {
+ CustomptFactory theCustomptFactory = (CustomptFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types");
+ if (theCustomptFactory != null) {
+ return theCustomptFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new CustomptFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomptFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object createFromString(EDataType eDataType, String initialValue) {
+ switch (eDataType.getClassifierID()) {
+ case CustomptPackage.SHADOW:
+ return createShadowFromString(eDataType, initialValue);
+ case CustomptPackage.ALIGNMENT:
+ return createAlignmentFromString(eDataType, initialValue);
+ case CustomptPackage.IMAGE:
+ return createImageFromString(eDataType, initialValue);
+ case CustomptPackage.COLOR:
+ return createColorFromString(eDataType, initialValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String convertToString(EDataType eDataType, Object instanceValue) {
+ switch (eDataType.getClassifierID()) {
+ case CustomptPackage.SHADOW:
+ return convertShadowToString(eDataType, instanceValue);
+ case CustomptPackage.ALIGNMENT:
+ return convertAlignmentToString(eDataType, instanceValue);
+ case CustomptPackage.IMAGE:
+ return convertImageToString(eDataType, instanceValue);
+ case CustomptPackage.COLOR:
+ return convertColorToString(eDataType, instanceValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Shadow createShadowFromString(EDataType eDataType, String initialValue) {
+ Shadow result = Shadow.get(initialValue);
+ if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertShadowToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Alignment createAlignmentFromString(EDataType eDataType, String initialValue) {
+ Alignment result = Alignment.get(initialValue);
+ if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertAlignmentToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IImage createImageFromString(EDataType eDataType, String initialValue) {
+ return (IImage)super.createFromString(eDataType, initialValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertImageToString(EDataType eDataType, Object instanceValue) {
+ return super.convertToString(eDataType, instanceValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IColor createColorFromString(EDataType eDataType, String initialValue) {
+ return (IColor)super.createFromString(eDataType, initialValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertColorToString(EDataType eDataType, Object instanceValue) {
+ return super.convertToString(eDataType, instanceValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomptPackage getCustomptPackage() {
+ return (CustomptPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static CustomptPackage getPackage() {
+ return CustomptPackage.eINSTANCE;
+ }
+
+} //CustomptFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/impl/CustomptPackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/impl/CustomptPackageImpl.java
new file mode 100644
index 00000000000..d5c656dc31d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/custompt/impl/CustomptPackageImpl.java
@@ -0,0 +1,237 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ *
+ *
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.impl;
+
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IColor;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Alignment;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.CustomptFactory;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.CustomptPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Shadow;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CustomptPackageImpl extends EPackageImpl implements CustomptPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EEnum shadowEEnum = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EEnum alignmentEEnum = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EDataType imageEDataType = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EDataType colorEDataType = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.CustomptPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private CustomptPackageImpl() {
+ super(eNS_URI, CustomptFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 CustomptPackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static CustomptPackage init() {
+ if (isInited) return (CustomptPackage)EPackage.Registry.INSTANCE.getEPackage(CustomptPackage.eNS_URI);
+
+ // Obtain or create and register package
+ CustomptPackageImpl theCustomptPackage = (CustomptPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof CustomptPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new CustomptPackageImpl());
+
+ isInited = true;
+
+ // Create package meta-data objects
+ theCustomptPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theCustomptPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theCustomptPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(CustomptPackage.eNS_URI, theCustomptPackage);
+ return theCustomptPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EEnum getShadow() {
+ return shadowEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EEnum getAlignment() {
+ return alignmentEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EDataType getImage() {
+ return imageEDataType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EDataType getColor() {
+ return colorEDataType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CustomptFactory getCustomptFactory() {
+ return (CustomptFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create enums
+ shadowEEnum = createEEnum(SHADOW);
+ alignmentEEnum = createEEnum(ALIGNMENT);
+
+ // Create data types
+ imageEDataType = createEDataType(IMAGE);
+ colorEDataType = createEDataType(COLOR);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Initialize enums and add enum literals
+ initEEnum(shadowEEnum, Shadow.class, "Shadow");
+ addEEnumLiteral(shadowEEnum, Shadow.NONE);
+ addEEnumLiteral(shadowEEnum, Shadow.IN);
+ addEEnumLiteral(shadowEEnum, Shadow.OUT);
+
+ initEEnum(alignmentEEnum, Alignment.class, "Alignment");
+ addEEnumLiteral(alignmentEEnum, Alignment.LEFT);
+ addEEnumLiteral(alignmentEEnum, Alignment.CENTER);
+ addEEnumLiteral(alignmentEEnum, Alignment.RIGHT);
+
+ // Initialize data types
+ initEDataType(imageEDataType, IImage.class, "Image", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS);
+ initEDataType(colorEDataType, IColor.class, "Color", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //CustomptPackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EAttributeTreeElement.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EAttributeTreeElement.java
new file mode 100644
index 00000000000..24b855e24fd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EAttributeTreeElement.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy;
+
+import org.eclipse.emf.ecore.EAttribute;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>EAttribute Tree Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * Represents an EAttribute in a tree view
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EAttributeTreeElement#getEAttribute <em>EAttribute</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage#getEAttributeTreeElement()
+ * @model
+ * @generated
+ */
+public interface EAttributeTreeElement extends EStructuralFeatureTreeElement {
+ /**
+ * Returns the value of the '<em><b>EAttribute</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The EAttribute represented by this tree element
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>EAttribute</em>' reference.
+ * @see #setEAttribute(EAttribute)
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage#getEAttributeTreeElement_EAttribute()
+ * @model
+ * @generated
+ */
+ EAttribute getEAttribute();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EAttributeTreeElement#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);
+
+} // EAttributeTreeElement
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EObjectTreeElement.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EObjectTreeElement.java
new file mode 100644
index 00000000000..4070cfec413
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EObjectTreeElement.java
@@ -0,0 +1,111 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>EObject Tree Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * Represents a model element in a tree view
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement#getEObject <em>EObject</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement#getSfTreeElmement <em>Sf Tree Elmement</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement#getParent <em>Parent</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage#getEObjectTreeElement()
+ * @model
+ * @generated
+ */
+public interface EObjectTreeElement extends TreeElement {
+ /**
+ * Returns the value of the '<em><b>EObject</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The model element represented by this tree element
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>EObject</em>' reference.
+ * @see #setEObject(EObject)
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage#getEObjectTreeElement_EObject()
+ * @model
+ * @generated
+ */
+ EObject getEObject();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement#getEObject <em>EObject</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>EObject</em>' reference.
+ * @see #getEObject()
+ * @generated
+ */
+ void setEObject(EObject value);
+
+ /**
+ * Returns the value of the '<em><b>Sf Tree Elmement</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement#getParent <em>Parent</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Sf Tree Elmement</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Sf Tree Elmement</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage#getEObjectTreeElement_SfTreeElmement()
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement#getParent
+ * @model opposite="parent" containment="true"
+ * @generated
+ */
+ EList<EStructuralFeatureTreeElement> getSfTreeElmement();
+
+ /**
+ * Returns the value of the '<em><b>Parent</b></em>' container reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement#getReferedEObjectTE <em>Refered EObject TE</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Parent</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Parent</em>' container reference.
+ * @see #setParent(EStructuralFeatureTreeElement)
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage#getEObjectTreeElement_Parent()
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement#getReferedEObjectTE
+ * @model opposite="referedEObjectTE" transient="false"
+ * @generated
+ */
+ EStructuralFeatureTreeElement getParent();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement#getParent <em>Parent</em>}' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Parent</em>' container reference.
+ * @see #getParent()
+ * @generated
+ */
+ void setParent(EStructuralFeatureTreeElement value);
+
+} // EObjectTreeElement
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EReferenceTreeElement.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EReferenceTreeElement.java
new file mode 100644
index 00000000000..1c28f9ed4b6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EReferenceTreeElement.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy;
+
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>EReference Tree Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * Represents an EReference as a link between two model elements in a tree view
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement#getEReference <em>EReference</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage#getEReferenceTreeElement()
+ * @model
+ * @generated
+ */
+public interface EReferenceTreeElement extends EStructuralFeatureTreeElement {
+ /**
+ * Returns the value of the '<em><b>EReference</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The EReference represented by this tree element
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>EReference</em>' reference.
+ * @see #setEReference(EReference)
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage#getEReferenceTreeElement_EReference()
+ * @model
+ * @generated
+ */
+ EReference getEReference();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement#getEReference <em>EReference</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>EReference</em>' reference.
+ * @see #getEReference()
+ * @generated
+ */
+ void setEReference(EReference value);
+
+} // EReferenceTreeElement
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EStructuralFeatureTreeElement.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EStructuralFeatureTreeElement.java
new file mode 100644
index 00000000000..88d29467798
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/EStructuralFeatureTreeElement.java
@@ -0,0 +1,81 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy;
+
+import org.eclipse.emf.common.util.EList;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>EStructural Feature Tree Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement#getParent <em>Parent</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement#getReferedEObjectTE <em>Refered EObject TE</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage#getEStructuralFeatureTreeElement()
+ * @model
+ * @generated
+ */
+public interface EStructuralFeatureTreeElement extends TreeElement {
+
+ /**
+ * Returns the value of the '<em><b>Parent</b></em>' container reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement#getSfTreeElmement <em>Sf Tree Elmement</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Parent</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Parent</em>' container reference.
+ * @see #setParent(EObjectTreeElement)
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage#getEStructuralFeatureTreeElement_Parent()
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement#getSfTreeElmement
+ * @model opposite="sfTreeElmement" transient="false"
+ * @generated
+ */
+ EObjectTreeElement getParent();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement#getParent <em>Parent</em>}' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Parent</em>' container reference.
+ * @see #getParent()
+ * @generated
+ */
+ void setParent(EObjectTreeElement value);
+
+ /**
+ * Returns the value of the '<em><b>Refered EObject TE</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement#getParent <em>Parent</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Refered EObject TE</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Refered EObject TE</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage#getEStructuralFeatureTreeElement_ReferedEObjectTE()
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement#getParent
+ * @model opposite="parent" containment="true"
+ * @generated
+ */
+ EList<EObjectTreeElement> getReferedEObjectTE();
+} // EStructuralFeatureTreeElement
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/TreeElement.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/TreeElement.java
new file mode 100644
index 00000000000..0feb2bb9d3c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/TreeElement.java
@@ -0,0 +1,33 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Tree Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * Represents a proxy element in a tree view
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage#getTreeElement()
+ * @model abstract="true"
+ * @generated
+ */
+public interface TreeElement extends EObject {
+
+} // TreeElement
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/TreeproxyFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/TreeproxyFactory.java
new file mode 100644
index 00000000000..9d9d3bb32c6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/TreeproxyFactory.java
@@ -0,0 +1,78 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage
+ * @generated
+ */
+public interface TreeproxyFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ TreeproxyFactory eINSTANCE = org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.TreeproxyFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>EObject Tree Element</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>EObject Tree Element</em>'.
+ * @generated
+ */
+ EObjectTreeElement createEObjectTreeElement();
+
+ /**
+ * Returns a new object of class '<em>EReference Tree Element</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>EReference Tree Element</em>'.
+ * @generated
+ */
+ EReferenceTreeElement createEReferenceTreeElement();
+
+ /**
+ * Returns a new object of class '<em>EAttribute Tree Element</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>EAttribute Tree Element</em>'.
+ * @generated
+ */
+ EAttributeTreeElement createEAttributeTreeElement();
+
+ /**
+ * Returns a new object of class '<em>EStructural Feature Tree Element</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>EStructural Feature Tree Element</em>'.
+ * @generated
+ */
+ EStructuralFeatureTreeElement createEStructuralFeatureTreeElement();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ TreeproxyPackage getTreeproxyPackage();
+
+} //TreeproxyFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/TreeproxyPackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/TreeproxyPackage.java
new file mode 100644
index 00000000000..9d292c2feef
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/TreeproxyPackage.java
@@ -0,0 +1,518 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface TreeproxyPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "treeproxy";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/internal/treeproxy";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "treeproxy";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ TreeproxyPackage eINSTANCE = org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.TreeproxyPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.TreeElementImpl <em>Tree Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.TreeElementImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.TreeproxyPackageImpl#getTreeElement()
+ * @generated
+ */
+ int TREE_ELEMENT = 0;
+
+ /**
+ * The number of structural features of the '<em>Tree Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TREE_ELEMENT_FEATURE_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EObjectTreeElementImpl <em>EObject Tree Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EObjectTreeElementImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.TreeproxyPackageImpl#getEObjectTreeElement()
+ * @generated
+ */
+ int EOBJECT_TREE_ELEMENT = 1;
+
+ /**
+ * The feature id for the '<em><b>EObject</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EOBJECT_TREE_ELEMENT__EOBJECT = TREE_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Sf Tree Elmement</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EOBJECT_TREE_ELEMENT__SF_TREE_ELMEMENT = TREE_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Parent</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EOBJECT_TREE_ELEMENT__PARENT = TREE_ELEMENT_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the '<em>EObject Tree Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EOBJECT_TREE_ELEMENT_FEATURE_COUNT = TREE_ELEMENT_FEATURE_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EStructuralFeatureTreeElementImpl <em>EStructural Feature Tree Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EStructuralFeatureTreeElementImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.TreeproxyPackageImpl#getEStructuralFeatureTreeElement()
+ * @generated
+ */
+ int ESTRUCTURAL_FEATURE_TREE_ELEMENT = 4;
+
+ /**
+ * The feature id for the '<em><b>Parent</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ESTRUCTURAL_FEATURE_TREE_ELEMENT__PARENT = TREE_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Refered EObject TE</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ESTRUCTURAL_FEATURE_TREE_ELEMENT__REFERED_EOBJECT_TE = TREE_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>EStructural Feature Tree Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ESTRUCTURAL_FEATURE_TREE_ELEMENT_FEATURE_COUNT = TREE_ELEMENT_FEATURE_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EReferenceTreeElementImpl <em>EReference Tree Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EReferenceTreeElementImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.TreeproxyPackageImpl#getEReferenceTreeElement()
+ * @generated
+ */
+ int EREFERENCE_TREE_ELEMENT = 2;
+
+ /**
+ * The feature id for the '<em><b>Parent</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EREFERENCE_TREE_ELEMENT__PARENT = ESTRUCTURAL_FEATURE_TREE_ELEMENT__PARENT;
+
+ /**
+ * The feature id for the '<em><b>Refered EObject TE</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EREFERENCE_TREE_ELEMENT__REFERED_EOBJECT_TE = ESTRUCTURAL_FEATURE_TREE_ELEMENT__REFERED_EOBJECT_TE;
+
+ /**
+ * The feature id for the '<em><b>EReference</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EREFERENCE_TREE_ELEMENT__EREFERENCE = ESTRUCTURAL_FEATURE_TREE_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>EReference Tree Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EREFERENCE_TREE_ELEMENT_FEATURE_COUNT = ESTRUCTURAL_FEATURE_TREE_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EAttributeTreeElementImpl <em>EAttribute Tree Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EAttributeTreeElementImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.TreeproxyPackageImpl#getEAttributeTreeElement()
+ * @generated
+ */
+ int EATTRIBUTE_TREE_ELEMENT = 3;
+
+ /**
+ * The feature id for the '<em><b>Parent</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EATTRIBUTE_TREE_ELEMENT__PARENT = ESTRUCTURAL_FEATURE_TREE_ELEMENT__PARENT;
+
+ /**
+ * The feature id for the '<em><b>Refered EObject TE</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EATTRIBUTE_TREE_ELEMENT__REFERED_EOBJECT_TE = ESTRUCTURAL_FEATURE_TREE_ELEMENT__REFERED_EOBJECT_TE;
+
+ /**
+ * The feature id for the '<em><b>EAttribute</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EATTRIBUTE_TREE_ELEMENT__EATTRIBUTE = ESTRUCTURAL_FEATURE_TREE_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>EAttribute Tree Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EATTRIBUTE_TREE_ELEMENT_FEATURE_COUNT = ESTRUCTURAL_FEATURE_TREE_ELEMENT_FEATURE_COUNT + 1;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeElement <em>Tree Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Tree Element</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeElement
+ * @generated
+ */
+ EClass getTreeElement();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement <em>EObject Tree Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>EObject Tree Element</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement
+ * @generated
+ */
+ EClass getEObjectTreeElement();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement#getEObject <em>EObject</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>EObject</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement#getEObject()
+ * @see #getEObjectTreeElement()
+ * @generated
+ */
+ EReference getEObjectTreeElement_EObject();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement#getSfTreeElmement <em>Sf Tree Elmement</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Sf Tree Elmement</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement#getSfTreeElmement()
+ * @see #getEObjectTreeElement()
+ * @generated
+ */
+ EReference getEObjectTreeElement_SfTreeElmement();
+
+ /**
+ * Returns the meta object for the container reference '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement#getParent <em>Parent</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the container reference '<em>Parent</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement#getParent()
+ * @see #getEObjectTreeElement()
+ * @generated
+ */
+ EReference getEObjectTreeElement_Parent();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement <em>EReference Tree Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>EReference Tree Element</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement
+ * @generated
+ */
+ EClass getEReferenceTreeElement();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement#getEReference <em>EReference</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>EReference</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement#getEReference()
+ * @see #getEReferenceTreeElement()
+ * @generated
+ */
+ EReference getEReferenceTreeElement_EReference();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EAttributeTreeElement <em>EAttribute Tree Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>EAttribute Tree Element</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EAttributeTreeElement
+ * @generated
+ */
+ EClass getEAttributeTreeElement();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EAttributeTreeElement#getEAttribute <em>EAttribute</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>EAttribute</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EAttributeTreeElement#getEAttribute()
+ * @see #getEAttributeTreeElement()
+ * @generated
+ */
+ EReference getEAttributeTreeElement_EAttribute();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement <em>EStructural Feature Tree Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>EStructural Feature Tree Element</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement
+ * @generated
+ */
+ EClass getEStructuralFeatureTreeElement();
+
+ /**
+ * Returns the meta object for the container reference '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement#getParent <em>Parent</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the container reference '<em>Parent</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement#getParent()
+ * @see #getEStructuralFeatureTreeElement()
+ * @generated
+ */
+ EReference getEStructuralFeatureTreeElement_Parent();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement#getReferedEObjectTE <em>Refered EObject TE</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Refered EObject TE</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement#getReferedEObjectTE()
+ * @see #getEStructuralFeatureTreeElement()
+ * @generated
+ */
+ EReference getEStructuralFeatureTreeElement_ReferedEObjectTE();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ TreeproxyFactory getTreeproxyFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.TreeElementImpl <em>Tree Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.TreeElementImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.TreeproxyPackageImpl#getTreeElement()
+ * @generated
+ */
+ EClass TREE_ELEMENT = eINSTANCE.getTreeElement();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EObjectTreeElementImpl <em>EObject Tree Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EObjectTreeElementImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.TreeproxyPackageImpl#getEObjectTreeElement()
+ * @generated
+ */
+ EClass EOBJECT_TREE_ELEMENT = eINSTANCE.getEObjectTreeElement();
+
+ /**
+ * The meta object literal for the '<em><b>EObject</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference EOBJECT_TREE_ELEMENT__EOBJECT = eINSTANCE.getEObjectTreeElement_EObject();
+
+ /**
+ * The meta object literal for the '<em><b>Sf Tree Elmement</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference EOBJECT_TREE_ELEMENT__SF_TREE_ELMEMENT = eINSTANCE.getEObjectTreeElement_SfTreeElmement();
+
+ /**
+ * The meta object literal for the '<em><b>Parent</b></em>' container reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference EOBJECT_TREE_ELEMENT__PARENT = eINSTANCE.getEObjectTreeElement_Parent();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EReferenceTreeElementImpl <em>EReference Tree Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EReferenceTreeElementImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.TreeproxyPackageImpl#getEReferenceTreeElement()
+ * @generated
+ */
+ EClass EREFERENCE_TREE_ELEMENT = eINSTANCE.getEReferenceTreeElement();
+
+ /**
+ * The meta object literal for the '<em><b>EReference</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference EREFERENCE_TREE_ELEMENT__EREFERENCE = eINSTANCE.getEReferenceTreeElement_EReference();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EAttributeTreeElementImpl <em>EAttribute Tree Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EAttributeTreeElementImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.TreeproxyPackageImpl#getEAttributeTreeElement()
+ * @generated
+ */
+ EClass EATTRIBUTE_TREE_ELEMENT = eINSTANCE.getEAttributeTreeElement();
+
+ /**
+ * The meta object literal for the '<em><b>EAttribute</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference EATTRIBUTE_TREE_ELEMENT__EATTRIBUTE = eINSTANCE.getEAttributeTreeElement_EAttribute();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EStructuralFeatureTreeElementImpl <em>EStructural Feature Tree Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EStructuralFeatureTreeElementImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.TreeproxyPackageImpl#getEStructuralFeatureTreeElement()
+ * @generated
+ */
+ EClass ESTRUCTURAL_FEATURE_TREE_ELEMENT = eINSTANCE.getEStructuralFeatureTreeElement();
+
+ /**
+ * The meta object literal for the '<em><b>Parent</b></em>' container reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ESTRUCTURAL_FEATURE_TREE_ELEMENT__PARENT = eINSTANCE.getEStructuralFeatureTreeElement_Parent();
+
+ /**
+ * The meta object literal for the '<em><b>Refered EObject TE</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ESTRUCTURAL_FEATURE_TREE_ELEMENT__REFERED_EOBJECT_TE = eINSTANCE.getEStructuralFeatureTreeElement_ReferedEObjectTE();
+
+ }
+
+} //TreeproxyPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EAttributeTreeElementImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EAttributeTreeElementImpl.java
new file mode 100644
index 00000000000..448f8ea8dc4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EAttributeTreeElementImpl.java
@@ -0,0 +1,162 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EAttributeTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>EAttribute Tree Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EAttributeTreeElementImpl#getEAttribute <em>EAttribute</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class EAttributeTreeElementImpl extends EStructuralFeatureTreeElementImpl implements EAttributeTreeElement {
+ /**
+ * The cached value of the '{@link #getEAttribute() <em>EAttribute</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEAttribute()
+ * @generated
+ * @ordered
+ */
+ protected EAttribute eAttribute;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EAttributeTreeElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return TreeproxyPackage.Literals.EATTRIBUTE_TREE_ELEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ 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, TreeproxyPackage.EATTRIBUTE_TREE_ELEMENT__EATTRIBUTE, oldEAttribute, eAttribute));
+ }
+ }
+ return eAttribute;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute basicGetEAttribute() {
+ return eAttribute;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setEAttribute(EAttribute newEAttribute) {
+ EAttribute oldEAttribute = eAttribute;
+ eAttribute = newEAttribute;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, TreeproxyPackage.EATTRIBUTE_TREE_ELEMENT__EATTRIBUTE, oldEAttribute, eAttribute));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case TreeproxyPackage.EATTRIBUTE_TREE_ELEMENT__EATTRIBUTE:
+ if (resolve) return getEAttribute();
+ return basicGetEAttribute();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case TreeproxyPackage.EATTRIBUTE_TREE_ELEMENT__EATTRIBUTE:
+ setEAttribute((EAttribute)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case TreeproxyPackage.EATTRIBUTE_TREE_ELEMENT__EATTRIBUTE:
+ setEAttribute((EAttribute)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case TreeproxyPackage.EATTRIBUTE_TREE_ELEMENT__EATTRIBUTE:
+ return eAttribute != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //EAttributeTreeElementImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EObjectTreeElementImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EObjectTreeElementImpl.java
new file mode 100644
index 00000000000..e89f9e407b9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EObjectTreeElementImpl.java
@@ -0,0 +1,306 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+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.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>EObject Tree Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EObjectTreeElementImpl#getEObject <em>EObject</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EObjectTreeElementImpl#getSfTreeElmement <em>Sf Tree Elmement</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EObjectTreeElementImpl#getParent <em>Parent</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class EObjectTreeElementImpl extends TreeElementImpl implements EObjectTreeElement {
+ /**
+ * The cached value of the '{@link #getEObject() <em>EObject</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEObject()
+ * @generated
+ * @ordered
+ */
+ protected EObject eObject;
+
+ /**
+ * The cached value of the '{@link #getSfTreeElmement() <em>Sf Tree Elmement</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSfTreeElmement()
+ * @generated
+ * @ordered
+ */
+ protected EList<EStructuralFeatureTreeElement> sfTreeElmement;
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EObjectTreeElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return TreeproxyPackage.Literals.EOBJECT_TREE_ELEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EObject getEObject() {
+ if (eObject != null && eObject.eIsProxy()) {
+ InternalEObject oldEObject = (InternalEObject)eObject;
+ eObject = eResolveProxy(oldEObject);
+ if (eObject != oldEObject) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, TreeproxyPackage.EOBJECT_TREE_ELEMENT__EOBJECT, oldEObject, eObject));
+ }
+ }
+ return eObject;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EObject basicGetEObject() {
+ return eObject;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setEObject(EObject newEObject) {
+ EObject oldEObject = eObject;
+ eObject = newEObject;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, TreeproxyPackage.EOBJECT_TREE_ELEMENT__EOBJECT, oldEObject, eObject));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<EStructuralFeatureTreeElement> getSfTreeElmement() {
+ if (sfTreeElmement == null) {
+ sfTreeElmement = new EObjectContainmentWithInverseEList<EStructuralFeatureTreeElement>(EStructuralFeatureTreeElement.class, this, TreeproxyPackage.EOBJECT_TREE_ELEMENT__SF_TREE_ELMEMENT, TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__PARENT);
+ }
+ return sfTreeElmement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EStructuralFeatureTreeElement getParent() {
+ if (eContainerFeatureID() != TreeproxyPackage.EOBJECT_TREE_ELEMENT__PARENT) return null;
+ return (EStructuralFeatureTreeElement)eContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetParent(EStructuralFeatureTreeElement newParent, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject)newParent, TreeproxyPackage.EOBJECT_TREE_ELEMENT__PARENT, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setParent(EStructuralFeatureTreeElement newParent) {
+ if (newParent != eInternalContainer() || (eContainerFeatureID() != TreeproxyPackage.EOBJECT_TREE_ELEMENT__PARENT && newParent != null)) {
+ if (EcoreUtil.isAncestor(this, newParent))
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
+ NotificationChain msgs = null;
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ if (newParent != null)
+ msgs = ((InternalEObject)newParent).eInverseAdd(this, TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__REFERED_EOBJECT_TE, EStructuralFeatureTreeElement.class, msgs);
+ msgs = basicSetParent(newParent, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, TreeproxyPackage.EOBJECT_TREE_ELEMENT__PARENT, newParent, newParent));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT__SF_TREE_ELMEMENT:
+ return ((InternalEList<InternalEObject>)(InternalEList<?>)getSfTreeElmement()).basicAdd(otherEnd, msgs);
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT__PARENT:
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ return basicSetParent((EStructuralFeatureTreeElement)otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT__SF_TREE_ELMEMENT:
+ return ((InternalEList<?>)getSfTreeElmement()).basicRemove(otherEnd, msgs);
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT__PARENT:
+ return basicSetParent(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+ switch (eContainerFeatureID()) {
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT__PARENT:
+ return eInternalContainer().eInverseRemove(this, TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__REFERED_EOBJECT_TE, EStructuralFeatureTreeElement.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT__EOBJECT:
+ if (resolve) return getEObject();
+ return basicGetEObject();
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT__SF_TREE_ELMEMENT:
+ return getSfTreeElmement();
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT__PARENT:
+ return getParent();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT__EOBJECT:
+ setEObject((EObject)newValue);
+ return;
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT__SF_TREE_ELMEMENT:
+ getSfTreeElmement().clear();
+ getSfTreeElmement().addAll((Collection<? extends EStructuralFeatureTreeElement>)newValue);
+ return;
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT__PARENT:
+ setParent((EStructuralFeatureTreeElement)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT__EOBJECT:
+ setEObject((EObject)null);
+ return;
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT__SF_TREE_ELMEMENT:
+ getSfTreeElmement().clear();
+ return;
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT__PARENT:
+ setParent((EStructuralFeatureTreeElement)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT__EOBJECT:
+ return eObject != null;
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT__SF_TREE_ELMEMENT:
+ return sfTreeElmement != null && !sfTreeElmement.isEmpty();
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT__PARENT:
+ return getParent() != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //EObjectTreeElementImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EReferenceTreeElementImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EReferenceTreeElementImpl.java
new file mode 100644
index 00000000000..7f5996418b0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EReferenceTreeElementImpl.java
@@ -0,0 +1,162 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>EReference Tree Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EReferenceTreeElementImpl#getEReference <em>EReference</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class EReferenceTreeElementImpl extends EStructuralFeatureTreeElementImpl implements EReferenceTreeElement {
+ /**
+ * The cached value of the '{@link #getEReference() <em>EReference</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEReference()
+ * @generated
+ * @ordered
+ */
+ protected EReference eReference;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EReferenceTreeElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return TreeproxyPackage.Literals.EREFERENCE_TREE_ELEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getEReference() {
+ if (eReference != null && eReference.eIsProxy()) {
+ InternalEObject oldEReference = (InternalEObject)eReference;
+ eReference = (EReference)eResolveProxy(oldEReference);
+ if (eReference != oldEReference) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, TreeproxyPackage.EREFERENCE_TREE_ELEMENT__EREFERENCE, oldEReference, eReference));
+ }
+ }
+ return eReference;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference basicGetEReference() {
+ return eReference;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setEReference(EReference newEReference) {
+ EReference oldEReference = eReference;
+ eReference = newEReference;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, TreeproxyPackage.EREFERENCE_TREE_ELEMENT__EREFERENCE, oldEReference, eReference));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case TreeproxyPackage.EREFERENCE_TREE_ELEMENT__EREFERENCE:
+ if (resolve) return getEReference();
+ return basicGetEReference();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case TreeproxyPackage.EREFERENCE_TREE_ELEMENT__EREFERENCE:
+ setEReference((EReference)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case TreeproxyPackage.EREFERENCE_TREE_ELEMENT__EREFERENCE:
+ setEReference((EReference)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case TreeproxyPackage.EREFERENCE_TREE_ELEMENT__EREFERENCE:
+ return eReference != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //EReferenceTreeElementImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EStructuralFeatureTreeElementImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EStructuralFeatureTreeElementImpl.java
new file mode 100644
index 00000000000..1d1aeb64e92
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/EStructuralFeatureTreeElementImpl.java
@@ -0,0 +1,246 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>EStructural Feature Tree Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EStructuralFeatureTreeElementImpl#getParent <em>Parent</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl.EStructuralFeatureTreeElementImpl#getReferedEObjectTE <em>Refered EObject TE</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class EStructuralFeatureTreeElementImpl extends TreeElementImpl implements EStructuralFeatureTreeElement {
+ /**
+ * The cached value of the '{@link #getReferedEObjectTE() <em>Refered EObject TE</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getReferedEObjectTE()
+ * @generated
+ * @ordered
+ */
+ protected EList<EObjectTreeElement> referedEObjectTE;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EStructuralFeatureTreeElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return TreeproxyPackage.Literals.ESTRUCTURAL_FEATURE_TREE_ELEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EObjectTreeElement getParent() {
+ if (eContainerFeatureID() != TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__PARENT) return null;
+ return (EObjectTreeElement)eContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetParent(EObjectTreeElement newParent, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject)newParent, TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__PARENT, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setParent(EObjectTreeElement newParent) {
+ if (newParent != eInternalContainer() || (eContainerFeatureID() != TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__PARENT && newParent != null)) {
+ if (EcoreUtil.isAncestor(this, newParent))
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
+ NotificationChain msgs = null;
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ if (newParent != null)
+ msgs = ((InternalEObject)newParent).eInverseAdd(this, TreeproxyPackage.EOBJECT_TREE_ELEMENT__SF_TREE_ELMEMENT, EObjectTreeElement.class, msgs);
+ msgs = basicSetParent(newParent, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__PARENT, newParent, newParent));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<EObjectTreeElement> getReferedEObjectTE() {
+ if (referedEObjectTE == null) {
+ referedEObjectTE = new EObjectContainmentWithInverseEList<EObjectTreeElement>(EObjectTreeElement.class, this, TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__REFERED_EOBJECT_TE, TreeproxyPackage.EOBJECT_TREE_ELEMENT__PARENT);
+ }
+ return referedEObjectTE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__PARENT:
+ if (eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ return basicSetParent((EObjectTreeElement)otherEnd, msgs);
+ case TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__REFERED_EOBJECT_TE:
+ return ((InternalEList<InternalEObject>)(InternalEList<?>)getReferedEObjectTE()).basicAdd(otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__PARENT:
+ return basicSetParent(null, msgs);
+ case TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__REFERED_EOBJECT_TE:
+ return ((InternalEList<?>)getReferedEObjectTE()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+ switch (eContainerFeatureID()) {
+ case TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__PARENT:
+ return eInternalContainer().eInverseRemove(this, TreeproxyPackage.EOBJECT_TREE_ELEMENT__SF_TREE_ELMEMENT, EObjectTreeElement.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__PARENT:
+ return getParent();
+ case TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__REFERED_EOBJECT_TE:
+ return getReferedEObjectTE();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__PARENT:
+ setParent((EObjectTreeElement)newValue);
+ return;
+ case TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__REFERED_EOBJECT_TE:
+ getReferedEObjectTE().clear();
+ getReferedEObjectTE().addAll((Collection<? extends EObjectTreeElement>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__PARENT:
+ setParent((EObjectTreeElement)null);
+ return;
+ case TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__REFERED_EOBJECT_TE:
+ getReferedEObjectTE().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__PARENT:
+ return getParent() != null;
+ case TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT__REFERED_EOBJECT_TE:
+ return referedEObjectTE != null && !referedEObjectTE.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //EStructuralFeatureTreeElementImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/TreeElementImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/TreeElementImpl.java
new file mode 100644
index 00000000000..69915fcefb9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/TreeElementImpl.java
@@ -0,0 +1,58 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Tree Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class TreeElementImpl extends EObjectImpl implements TreeElement {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TreeElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return TreeproxyPackage.Literals.TREE_ELEMENT;
+ }
+
+} //TreeElementImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/TreeproxyFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/TreeproxyFactoryImpl.java
new file mode 100644
index 00000000000..ad93f5eb5a6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/TreeproxyFactoryImpl.java
@@ -0,0 +1,134 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class TreeproxyFactoryImpl extends EFactoryImpl implements TreeproxyFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static TreeproxyFactory init() {
+ try {
+ TreeproxyFactory theTreeproxyFactory = (TreeproxyFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/internal/treeproxy");
+ if (theTreeproxyFactory != null) {
+ return theTreeproxyFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new TreeproxyFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TreeproxyFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT: return createEObjectTreeElement();
+ case TreeproxyPackage.EREFERENCE_TREE_ELEMENT: return createEReferenceTreeElement();
+ case TreeproxyPackage.EATTRIBUTE_TREE_ELEMENT: return createEAttributeTreeElement();
+ case TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT: return createEStructuralFeatureTreeElement();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EObjectTreeElement createEObjectTreeElement() {
+ EObjectTreeElementImpl eObjectTreeElement = new EObjectTreeElementImpl();
+ return eObjectTreeElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReferenceTreeElement createEReferenceTreeElement() {
+ EReferenceTreeElementImpl eReferenceTreeElement = new EReferenceTreeElementImpl();
+ return eReferenceTreeElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttributeTreeElement createEAttributeTreeElement() {
+ EAttributeTreeElementImpl eAttributeTreeElement = new EAttributeTreeElementImpl();
+ return eAttributeTreeElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EStructuralFeatureTreeElement createEStructuralFeatureTreeElement() {
+ EStructuralFeatureTreeElementImpl eStructuralFeatureTreeElement = new EStructuralFeatureTreeElementImpl();
+ return eStructuralFeatureTreeElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TreeproxyPackage getTreeproxyPackage() {
+ return (TreeproxyPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static TreeproxyPackage getPackage() {
+ return TreeproxyPackage.eINSTANCE;
+ }
+
+} //TreeproxyFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/TreeproxyPackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/TreeproxyPackageImpl.java
new file mode 100644
index 00000000000..89db1f4aee2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/impl/TreeproxyPackageImpl.java
@@ -0,0 +1,345 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EAttributeTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyFactory;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class TreeproxyPackageImpl extends EPackageImpl implements TreeproxyPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass treeElementEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass eObjectTreeElementEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass eReferenceTreeElementEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass eAttributeTreeElementEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass eStructuralFeatureTreeElementEClass = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private TreeproxyPackageImpl() {
+ super(eNS_URI, TreeproxyFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 TreeproxyPackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static TreeproxyPackage init() {
+ if (isInited) return (TreeproxyPackage)EPackage.Registry.INSTANCE.getEPackage(TreeproxyPackage.eNS_URI);
+
+ // Obtain or create and register package
+ TreeproxyPackageImpl theTreeproxyPackage = (TreeproxyPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof TreeproxyPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new TreeproxyPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theTreeproxyPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theTreeproxyPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theTreeproxyPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(TreeproxyPackage.eNS_URI, theTreeproxyPackage);
+ return theTreeproxyPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getTreeElement() {
+ return treeElementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getEObjectTreeElement() {
+ return eObjectTreeElementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getEObjectTreeElement_EObject() {
+ return (EReference)eObjectTreeElementEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getEObjectTreeElement_SfTreeElmement() {
+ return (EReference)eObjectTreeElementEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getEObjectTreeElement_Parent() {
+ return (EReference)eObjectTreeElementEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getEReferenceTreeElement() {
+ return eReferenceTreeElementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getEReferenceTreeElement_EReference() {
+ return (EReference)eReferenceTreeElementEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getEAttributeTreeElement() {
+ return eAttributeTreeElementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getEAttributeTreeElement_EAttribute() {
+ return (EReference)eAttributeTreeElementEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getEStructuralFeatureTreeElement() {
+ return eStructuralFeatureTreeElementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getEStructuralFeatureTreeElement_Parent() {
+ return (EReference)eStructuralFeatureTreeElementEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getEStructuralFeatureTreeElement_ReferedEObjectTE() {
+ return (EReference)eStructuralFeatureTreeElementEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TreeproxyFactory getTreeproxyFactory() {
+ return (TreeproxyFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ treeElementEClass = createEClass(TREE_ELEMENT);
+
+ eObjectTreeElementEClass = createEClass(EOBJECT_TREE_ELEMENT);
+ createEReference(eObjectTreeElementEClass, EOBJECT_TREE_ELEMENT__EOBJECT);
+ createEReference(eObjectTreeElementEClass, EOBJECT_TREE_ELEMENT__SF_TREE_ELMEMENT);
+ createEReference(eObjectTreeElementEClass, EOBJECT_TREE_ELEMENT__PARENT);
+
+ eReferenceTreeElementEClass = createEClass(EREFERENCE_TREE_ELEMENT);
+ createEReference(eReferenceTreeElementEClass, EREFERENCE_TREE_ELEMENT__EREFERENCE);
+
+ eAttributeTreeElementEClass = createEClass(EATTRIBUTE_TREE_ELEMENT);
+ createEReference(eAttributeTreeElementEClass, EATTRIBUTE_TREE_ELEMENT__EATTRIBUTE);
+
+ eStructuralFeatureTreeElementEClass = createEClass(ESTRUCTURAL_FEATURE_TREE_ELEMENT);
+ createEReference(eStructuralFeatureTreeElementEClass, ESTRUCTURAL_FEATURE_TREE_ELEMENT__PARENT);
+ createEReference(eStructuralFeatureTreeElementEClass, ESTRUCTURAL_FEATURE_TREE_ELEMENT__REFERED_EOBJECT_TE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ EcorePackage theEcorePackage = (EcorePackage)EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ eObjectTreeElementEClass.getESuperTypes().add(this.getTreeElement());
+ eReferenceTreeElementEClass.getESuperTypes().add(this.getEStructuralFeatureTreeElement());
+ eAttributeTreeElementEClass.getESuperTypes().add(this.getEStructuralFeatureTreeElement());
+ eStructuralFeatureTreeElementEClass.getESuperTypes().add(this.getTreeElement());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(treeElementEClass, TreeElement.class, "TreeElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(eObjectTreeElementEClass, EObjectTreeElement.class, "EObjectTreeElement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getEObjectTreeElement_EObject(), ecorePackage.getEObject(), null, "eObject", null, 0, 1, EObjectTreeElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getEObjectTreeElement_SfTreeElmement(), this.getEStructuralFeatureTreeElement(), this.getEStructuralFeatureTreeElement_Parent(), "sfTreeElmement", null, 0, -1, EObjectTreeElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getEObjectTreeElement_Parent(), this.getEStructuralFeatureTreeElement(), this.getEStructuralFeatureTreeElement_ReferedEObjectTE(), "parent", null, 0, 1, EObjectTreeElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(eReferenceTreeElementEClass, EReferenceTreeElement.class, "EReferenceTreeElement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getEReferenceTreeElement_EReference(), theEcorePackage.getEReference(), null, "eReference", null, 0, 1, EReferenceTreeElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(eAttributeTreeElementEClass, EAttributeTreeElement.class, "EAttributeTreeElement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getEAttributeTreeElement_EAttribute(), theEcorePackage.getEAttribute(), null, "eAttribute", null, 0, 1, EAttributeTreeElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(eStructuralFeatureTreeElementEClass, EStructuralFeatureTreeElement.class, "EStructuralFeatureTreeElement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getEStructuralFeatureTreeElement_Parent(), this.getEObjectTreeElement(), this.getEObjectTreeElement_SfTreeElmement(), "parent", null, 0, 1, EStructuralFeatureTreeElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getEStructuralFeatureTreeElement_ReferedEObjectTE(), this.getEObjectTreeElement(), this.getEObjectTreeElement_Parent(), "referedEObjectTE", null, 0, -1, EStructuralFeatureTreeElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //TreeproxyPackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/util/TreeproxyAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/util/TreeproxyAdapterFactory.java
new file mode 100644
index 00000000000..dd697e50712
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/util/TreeproxyAdapterFactory.java
@@ -0,0 +1,198 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage
+ * @generated
+ */
+public class TreeproxyAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static TreeproxyPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TreeproxyAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = TreeproxyPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TreeproxySwitch<Adapter> modelSwitch =
+ new TreeproxySwitch<Adapter>() {
+ @Override
+ public Adapter caseTreeElement(TreeElement object) {
+ return createTreeElementAdapter();
+ }
+ @Override
+ public Adapter caseEObjectTreeElement(EObjectTreeElement object) {
+ return createEObjectTreeElementAdapter();
+ }
+ @Override
+ public Adapter caseEReferenceTreeElement(EReferenceTreeElement object) {
+ return createEReferenceTreeElementAdapter();
+ }
+ @Override
+ public Adapter caseEAttributeTreeElement(EAttributeTreeElement object) {
+ return createEAttributeTreeElementAdapter();
+ }
+ @Override
+ public Adapter caseEStructuralFeatureTreeElement(EStructuralFeatureTreeElement object) {
+ return createEStructuralFeatureTreeElementAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeElement <em>Tree Element</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.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeElement
+ * @generated
+ */
+ public Adapter createTreeElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement <em>EObject Tree Element</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.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement
+ * @generated
+ */
+ public Adapter createEObjectTreeElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement <em>EReference Tree Element</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.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement
+ * @generated
+ */
+ public Adapter createEReferenceTreeElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EAttributeTreeElement <em>EAttribute Tree Element</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.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EAttributeTreeElement
+ * @generated
+ */
+ public Adapter createEAttributeTreeElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement <em>EStructural Feature Tree Element</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.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement
+ * @generated
+ */
+ public Adapter createEStructuralFeatureTreeElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //TreeproxyAdapterFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/util/TreeproxySwitch.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/util/TreeproxySwitch.java
new file mode 100644
index 00000000000..8281d9765ba
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_2_0/internal/treeproxy/util/TreeproxySwitch.java
@@ -0,0 +1,224 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyPackage
+ * @generated
+ */
+public class TreeproxySwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static TreeproxyPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TreeproxySwitch() {
+ if (modelPackage == null) {
+ modelPackage = TreeproxyPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case TreeproxyPackage.TREE_ELEMENT: {
+ TreeElement treeElement = (TreeElement)theEObject;
+ T result = caseTreeElement(treeElement);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case TreeproxyPackage.EOBJECT_TREE_ELEMENT: {
+ EObjectTreeElement eObjectTreeElement = (EObjectTreeElement)theEObject;
+ T result = caseEObjectTreeElement(eObjectTreeElement);
+ if (result == null) result = caseTreeElement(eObjectTreeElement);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case TreeproxyPackage.EREFERENCE_TREE_ELEMENT: {
+ EReferenceTreeElement eReferenceTreeElement = (EReferenceTreeElement)theEObject;
+ T result = caseEReferenceTreeElement(eReferenceTreeElement);
+ if (result == null) result = caseEStructuralFeatureTreeElement(eReferenceTreeElement);
+ if (result == null) result = caseTreeElement(eReferenceTreeElement);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case TreeproxyPackage.EATTRIBUTE_TREE_ELEMENT: {
+ EAttributeTreeElement eAttributeTreeElement = (EAttributeTreeElement)theEObject;
+ T result = caseEAttributeTreeElement(eAttributeTreeElement);
+ if (result == null) result = caseEStructuralFeatureTreeElement(eAttributeTreeElement);
+ if (result == null) result = caseTreeElement(eAttributeTreeElement);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case TreeproxyPackage.ESTRUCTURAL_FEATURE_TREE_ELEMENT: {
+ EStructuralFeatureTreeElement eStructuralFeatureTreeElement = (EStructuralFeatureTreeElement)theEObject;
+ T result = caseEStructuralFeatureTreeElement(eStructuralFeatureTreeElement);
+ if (result == null) result = caseTreeElement(eStructuralFeatureTreeElement);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Tree Element</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>Tree Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseTreeElement(TreeElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject Tree Element</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>EObject Tree Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEObjectTreeElement(EObjectTreeElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EReference Tree Element</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>EReference Tree Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEReferenceTreeElement(EReferenceTreeElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EAttribute Tree Element</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>EAttribute Tree Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEAttributeTreeElement(EAttributeTreeElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EStructural Feature Tree Element</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>EStructural Feature Tree Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEStructuralFeatureTreeElement(EStructuralFeatureTreeElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //TreeproxySwitch
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/QueryFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/QueryFactory.java
new file mode 100644
index 00000000000..2606cde11b4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/QueryFactory.java
@@ -0,0 +1,52 @@
+/**
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * David Couvrand (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ * Nicolas Rault (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc --> The <b>Factory</b> for the model. It provides a
+ * create method for each non-abstract class of the model. <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.QueryPackage
+ * @generated
+ * @since 0.3
+ */
+public interface QueryFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ QueryFactory eINSTANCE = org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.impl.QueryFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>URI Image Query</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>URI Image Query</em>'.
+ * @generated
+ */
+ URIImageQuery createURIImageQuery();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ QueryPackage getQueryPackage();
+
+} //QueryFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/QueryPackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/QueryPackage.java
new file mode 100644
index 00000000000..9e032e607f5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/QueryPackage.java
@@ -0,0 +1,179 @@
+/**
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * David Couvrand (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ * Nicolas Rault (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.QueryFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface QueryPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "query";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/custom/0.3.incubation/query";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "customQuery";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ QueryPackage eINSTANCE = org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.impl.QueryPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.impl.URIImageQueryImpl <em>URI Image Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.impl.URIImageQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.impl.QueryPackageImpl#getURIImageQuery()
+ * @generated
+ */
+ int URI_IMAGE_QUERY = 0;
+
+ /**
+ * The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int URI_IMAGE_QUERY__CAN_HAVE_SIDE_EFFECTS = ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int URI_IMAGE_QUERY__CAN_BE_CACHED = ExtensiblePackage.QUERY__CAN_BE_CACHED;
+
+ /**
+ * The feature id for the '<em><b>Uri</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int URI_IMAGE_QUERY__URI = ExtensiblePackage.QUERY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>URI Image Query</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int URI_IMAGE_QUERY_FEATURE_COUNT = ExtensiblePackage.QUERY_FEATURE_COUNT + 1;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.URIImageQuery <em>URI Image Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>URI Image Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.URIImageQuery
+ * @generated
+ */
+ EClass getURIImageQuery();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.URIImageQuery#getUri <em>Uri</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Uri</em>'.
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.URIImageQuery#getUri()
+ * @see #getURIImageQuery()
+ * @generated
+ */
+ EAttribute getURIImageQuery_Uri();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ QueryFactory getQueryFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.impl.URIImageQueryImpl <em>URI Image Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.impl.URIImageQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.impl.QueryPackageImpl#getURIImageQuery()
+ * @generated
+ */
+ EClass URI_IMAGE_QUERY = eINSTANCE.getURIImageQuery();
+
+ /**
+ * The meta object literal for the '<em><b>Uri</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute URI_IMAGE_QUERY__URI = eINSTANCE.getURIImageQuery_Uri();
+
+ }
+
+} //QueryPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/URIImageQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/URIImageQuery.java
new file mode 100644
index 00000000000..1d3adbafd70
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/URIImageQuery.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * David Couvrand (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ * Nicolas Rault (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '
+ * <em><b>URI Image Query</b></em>'. <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.URIImageQuery#getUri
+ * <em>Uri</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.QueryPackage#getURIImageQuery()
+ * @model
+ * @generated
+ * @since 0.3
+ */
+public interface URIImageQuery extends Query {
+ /**
+ * Returns the value of the '<em><b>Uri</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Uri</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Uri</em>' attribute.
+ * @see #setUri(String)
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.QueryPackage#getURIImageQuery_Uri()
+ * @model
+ * @generated
+ */
+ String getUri();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.URIImageQuery#getUri <em>Uri</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Uri</em>' attribute.
+ * @see #getUri()
+ * @generated
+ */
+ void setUri(String value);
+
+} // URIImageQuery
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/impl/QueryFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/impl/QueryFactoryImpl.java
new file mode 100644
index 00000000000..e1275f1ce02
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/impl/QueryFactoryImpl.java
@@ -0,0 +1,102 @@
+/**
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * David Couvrand (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ * Nicolas Rault (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class QueryFactoryImpl extends EFactoryImpl implements QueryFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static QueryFactory init() {
+ try {
+ QueryFactory theQueryFactory = (QueryFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/emf/facet/custom/0.3.incubation/query");
+ if (theQueryFactory != null) {
+ return theQueryFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new QueryFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public QueryFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case QueryPackage.URI_IMAGE_QUERY: return createURIImageQuery();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public URIImageQuery createURIImageQuery() {
+ URIImageQueryImpl uriImageQuery = new URIImageQueryImpl();
+ return uriImageQuery;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public QueryPackage getQueryPackage() {
+ return (QueryPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static QueryPackage getPackage() {
+ return QueryPackage.eINSTANCE;
+ }
+
+} //QueryFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/impl/QueryPackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/impl/QueryPackageImpl.java
new file mode 100644
index 00000000000..f18705daf81
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/impl/QueryPackageImpl.java
@@ -0,0 +1,194 @@
+/**
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * David Couvrand (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ * Nicolas Rault (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.QueryFactory;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.QueryPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.URIImageQuery;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class QueryPackageImpl extends EPackageImpl implements QueryPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass uriImageQueryEClass = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.QueryPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private QueryPackageImpl() {
+ super(eNS_URI, QueryFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 QueryPackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static QueryPackage init() {
+ if (isInited) return (QueryPackage)EPackage.Registry.INSTANCE.getEPackage(QueryPackage.eNS_URI);
+
+ // Obtain or create and register package
+ QueryPackageImpl theQueryPackage = (QueryPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof QueryPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new QueryPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EFacetPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theQueryPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theQueryPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theQueryPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(QueryPackage.eNS_URI, theQueryPackage);
+ return theQueryPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getURIImageQuery() {
+ return uriImageQueryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getURIImageQuery_Uri() {
+ return (EAttribute)uriImageQueryEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public QueryFactory getQueryFactory() {
+ return (QueryFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ uriImageQueryEClass = createEClass(URI_IMAGE_QUERY);
+ createEAttribute(uriImageQueryEClass, URI_IMAGE_QUERY__URI);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ ExtensiblePackage theExtensiblePackage = (ExtensiblePackage)EPackage.Registry.INSTANCE.getEPackage(ExtensiblePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ uriImageQueryEClass.getESuperTypes().add(theExtensiblePackage.getQuery());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(uriImageQueryEClass, URIImageQuery.class, "URIImageQuery", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getURIImageQuery_Uri(), ecorePackage.getEString(), "uri", null, 0, 1, URIImageQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //QueryPackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/impl/URIImageQueryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/impl/URIImageQueryImpl.java
new file mode 100644
index 00000000000..960dc9281c0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/impl/URIImageQueryImpl.java
@@ -0,0 +1,170 @@
+/**
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * David Couvrand (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ * Nicolas Rault (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.QueryPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.URIImageQuery;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>URI Image Query</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.impl.URIImageQueryImpl#getUri <em>Uri</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class URIImageQueryImpl extends QueryImpl implements URIImageQuery {
+ /**
+ * The default value of the '{@link #getUri() <em>Uri</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getUri()
+ * @generated
+ * @ordered
+ */
+ protected static final String URI_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getUri() <em>Uri</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getUri()
+ * @generated
+ * @ordered
+ */
+ protected String uri = URI_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected URIImageQueryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return QueryPackage.Literals.URI_IMAGE_QUERY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getUri() {
+ return uri;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setUri(String newUri) {
+ String oldUri = uri;
+ uri = newUri;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, QueryPackage.URI_IMAGE_QUERY__URI, oldUri, uri));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case QueryPackage.URI_IMAGE_QUERY__URI:
+ return getUri();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case QueryPackage.URI_IMAGE_QUERY__URI:
+ setUri((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case QueryPackage.URI_IMAGE_QUERY__URI:
+ setUri(URI_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case QueryPackage.URI_IMAGE_QUERY__URI:
+ return URI_EDEFAULT == null ? uri != null : !URI_EDEFAULT.equals(uri);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (uri: ");
+ result.append(uri);
+ result.append(')');
+ return result.toString();
+ }
+
+} //URIImageQueryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/util/QueryAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/util/QueryAdapterFactory.java
new file mode 100644
index 00000000000..ee60e814d12
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/util/QueryAdapterFactory.java
@@ -0,0 +1,146 @@
+/**
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * David Couvrand (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ * Nicolas Rault (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.QueryPackage
+ * @generated
+ */
+public class QueryAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static QueryPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public QueryAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = QueryPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected QuerySwitch<Adapter> modelSwitch =
+ new QuerySwitch<Adapter>() {
+ @Override
+ public Adapter caseURIImageQuery(URIImageQuery object) {
+ return createURIImageQueryAdapter();
+ }
+ @Override
+ public Adapter caseQuery(Query object) {
+ return createQueryAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link query.URIImageQuery <em>URI Image Query</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 query.URIImageQuery
+ * @generated
+ */
+ public Adapter createURIImageQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query <em>Query</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.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query
+ * @generated
+ */
+ public Adapter createQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //QueryAdapterFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/util/QuerySwitch.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/util/QuerySwitch.java
new file mode 100644
index 00000000000..857087360ba
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.metamodel/src/org/eclipse/papyrus/emf/facet/custom/metamodel/v0_3_0/query/util/QuerySwitch.java
@@ -0,0 +1,153 @@
+/**
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * David Couvrand (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ * Nicolas Rault (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ */
+package org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.QueryPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.URIImageQuery;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.QueryPackage
+ * @generated
+ */
+public class QuerySwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static QueryPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public QuerySwitch() {
+ if (modelPackage == null) {
+ modelPackage = QueryPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case QueryPackage.URI_IMAGE_QUERY: {
+ URIImageQuery uriImageQuery = (URIImageQuery)theEObject;
+ T result = caseURIImageQuery(uriImageQuery);
+ if (result == null) result = caseQuery(uriImageQuery);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>URI Image Query</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>URI Image Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseURIImageQuery(URIImageQuery object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Query</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>Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseQuery(Query object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //QuerySwitch
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.checkstyle
new file mode 100644
index 00000000000..d058aea5b90
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.checkstyle
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2010 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Bros (Mia-Software) - initial API and implementation
+-->
+<fileset-config file-format-version="1.2.0" simple-config="true">
+ <local-check-config name="EmfFacet" location="/org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.pmd b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.pmd
new file mode 100644
index 00000000000..91a7c8fa772
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.pmd
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<pmd>
+ <useProjectRuleSet>true</useProjectRuleSet>
+ <ruleSetFile>../org.eclipse.papyrus.emf.facet.archi.tech.rules/pmd/ruleset.xml</ruleSetFile>
+ <includeDerivedFiles>false</includeDerivedFiles>
+ <violationsAsErrors>true</violationsAsErrors>
+</pmd>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.project
new file mode 100644
index 00000000000..3ff36754c10
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.custom.sdk.core</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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>net.sourceforge.pmd.eclipse.plugin.pmdNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..4b8505e6d1e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,3 @@
+#Wed Sep 14 13:39:57 CEST 2011
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.settings/org.eclipse.core.runtime.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.settings/org.eclipse.core.runtime.prefs
new file mode 100644
index 00000000000..dea8d10ff97
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,3 @@
+#Tue Dec 13 09:46:07 CET 2011
+eclipse.preferences.version=1
+line.separator=\n
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..060c5ee3d2e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,11 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+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.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..0e0edf07a32
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/META-INF/MANIFEST.MF
@@ -0,0 +1,21 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.custom.sdk.core;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.custom.sdk.core.internal.Activator
+Bundle-Vendor: %Bundle-Vendor
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.validation;bundle-version="1.4.0",
+ org.eclipse.papyrus.emf.facet.efacet.metamodel;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.custom.metamodel;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.common.sdk.core;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.2.1",
+ org.eclipse.papyrus.emf.facet.util.pde.core;bundle-version="0.4.0"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.custom.sdk.core,
+ org.eclipse.papyrus.emf.facet.custom.sdk.core.internal.validation;x-internal:=true
+Import-Package: org.eclipse.emf.edit.command,
+ org.eclipse.emf.edit.domain
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..42cb1a9797d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,18 @@
+###############################################################################
+# Copyright (c) 2012 CEA LIST.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+###############################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.custom.sdk.core
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Custom SDK Core (Incubation)
+modelValidation.category = EMF Facet Custom Model Validation
+avoidEClassOverlay.constraint.name = Avoid EClass Overlay
+avoidEClassOverlay.constraint.message = Avoid overlay customizations on EClass. Define an overlay on a Facet instead.
+avoidEClassOverlay.constraint.description = Overlay customizations on EClass should be avoided, and replaced by an overlay on a Facet.
+validation.builder.name = EMF Facet Customization Validation Builder
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/about.html
new file mode 100644
index 00000000000..3019b95b9cf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/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>December 22, 2008</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/build.properties
new file mode 100644
index 00000000000..2196632f9a2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/build.properties
@@ -0,0 +1,20 @@
+###############################################################################
+# Copyright (c) 2012 CEA LIST.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+# Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+###############################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ about.html,\
+ OSGI-INF/,\
+ plugin.xml
+src.includes = about.html
+javacDefaultEncoding.. = UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/plugin.xml
new file mode 100644
index 00000000000..f30725f362a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/plugin.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+ <extension
+ id="org.eclipse.papyrus.emf.facet.custom.sdk.core.validation"
+ point="org.eclipse.emf.validation.constraintProviders">
+ <category
+ id="org.eclipse.papyrus.emf.facet.custom.sdk.core.validation.category"
+ name="%modelValidation.category">
+ </category>
+ <constraintProvider mode="Batch">
+ <package namespaceUri="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom"/>
+ <package namespaceUri="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet"/>
+ <constraints categories="org.eclipse.papyrus.emf.facet.custom.sdk.core.validation.category">
+ <constraint
+ class="org.eclipse.papyrus.emf.facet.custom.sdk.core.internal.validation.AvoidEClassOverlayConstraint"
+ id="org.eclipse.papyrus.emf.facet.custom.sdk.core.constraint.avoidEClassOverlay"
+ isEnabledByDefault="true"
+ lang="Java"
+ mode="Batch"
+ name="%avoidEClassOverlay.constraint.name"
+ severity="WARNING"
+ statusCode="1">
+ <message>
+ %avoidEClassOverlay.constraint.message
+ </message>
+ <description>
+ %avoidEClassOverlay.constraint.description
+ </description>
+ </constraint>
+ </constraints>
+ </constraintProvider>
+ </extension>
+
+ <extension point="org.eclipse.emf.validation.constraintBindings">
+ <clientContext
+ default="false"
+ id="org.eclipse.papyrus.emf.facet.custom.sdk.core.validation.context">
+ <selector class="org.eclipse.papyrus.emf.facet.custom.sdk.core.internal.validation.ValidationDelegateClientSelector"/>
+ </clientContext>
+ <binding
+ context="org.eclipse.papyrus.emf.facet.custom.sdk.core.validation.context"
+ category="org.eclipse.papyrus.emf.facet.custom.sdk.core.validation.category"/>
+ </extension>
+
+ <extension point="org.eclipse.papyrus.emf.facet.common.sdk.core.builderRegistration">
+ <builder class="org.eclipse.papyrus.emf.facet.custom.sdk.core.internal.validation.CustomizationValidationBuilder"/>
+ </extension>
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/ICustomizationActions.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/ICustomizationActions.java
new file mode 100644
index 00000000000..30e2fd501b8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/ICustomizationActions.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.core;
+
+import java.io.IOException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.papyrus.emf.facet.custom.sdk.core.internal.CustomizationActionsImpl;
+import org.eclipse.papyrus.emf.facet.util.emf.core.exception.InvalidFacetSetException;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+
+/**
+ * This interface provides the creation of a new customization model file.
+ *
+ * @see CustomizationActionsImpl
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICustomizationActions {
+
+ ICustomizationActions INSTANCE = new CustomizationActionsImpl();
+
+ /**
+ * Add the given customization to the given customization model file, which
+ * will be created.
+ *
+ * @param customization
+ * the customization to be created. Cannot be <code>null</code>
+ * @param file
+ * the new file in which the customization has to be created.
+ * Cannot be <code>null</code>, and cannot already exist
+ */
+ void saveCustomization(Customization customization, IFile file)
+ throws IOException, InvalidFacetSetException;
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/ICustomizationCommandFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/ICustomizationCommandFactory.java
new file mode 100644
index 00000000000..311fc2a61f1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/ICustomizationCommandFactory.java
@@ -0,0 +1,61 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.core;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.papyrus.emf.facet.custom.sdk.core.internal.CustomizationCommandFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization;
+
+/**
+ * This interface provide a command factory. A command modify the editingDomain.
+ *
+ * @since 0.3
+ * @see CustomizationCommandFactory
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICustomizationCommandFactory {
+
+ /**
+ * Create the command to add a eClassCustomization to an existing
+ * customization (parent).
+ *
+ * @param Customization
+ * the parent of the eClassCustomization to add.
+ * @param eClassCustom
+ * the eClassCustomization to add.
+ * @return the command.
+ */
+ Command createEClassCustomization(Customization parent,
+ EClassCustomization eClassCustom);
+
+ /**
+ * Create the command to add a facetCustomization to an existing
+ * customization (parent).
+ *
+ * @param parent
+ * the parent of the facetCustomization to add.
+ * @param facetCustom
+ * the facetCustomization to add.
+ * @return the command.
+ */
+ Command createFacetCustomization(Customization parent,
+ FacetCustomization facetCustom);
+
+ Command addValueInCase(final ETypedElementCase elementCase,
+ final Query value);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/ICustomizationCommandFactoryFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/ICustomizationCommandFactoryFactory.java
new file mode 100644
index 00000000000..7d9d9aea40f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/ICustomizationCommandFactoryFactory.java
@@ -0,0 +1,39 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.core;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.core.internal.CustomizationCommandFactoryFactory;
+import org.eclipse.papyrus.emf.facet.custom.sdk.core.internal.CustomizationCommandFactory;
+
+/**
+ * This interface provide a command factory. A command modify the editingDomain.
+ *
+ * @since 0.3
+ * @see CustomizationCommandFactory
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICustomizationCommandFactoryFactory {
+
+ ICustomizationCommandFactoryFactory DEFAULT = new CustomizationCommandFactoryFactory();
+
+ /**
+ * Set the editingDomain.
+ *
+ * @param editingDomain
+ * the current editing domain.
+ */
+ ICustomizationCommandFactory createICustomizationCommandFactory(
+ EditingDomain editingDomain);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/Activator.java
new file mode 100644
index 00000000000..e4b15bfe388
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/Activator.java
@@ -0,0 +1,54 @@
+/**
+ * Copyright (c) 2012 CEA LIST.
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.core.internal;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+@SuppressWarnings("PMD.UseSingleton")
+// @SuppressWarnings("PMD.UseSingleton") We cannot conforms to this rule because
+// this class is an Eclipse plug-in activator which will be instantiated by the
+// Eclipse framework.
+public class Activator extends Plugin {
+
+ private static Activator plugin;
+
+ @Override
+ @SuppressWarnings("PMD.SignatureDeclareThrowsException")
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ public void start(final BundleContext bundleContext) throws Exception {
+ super.start(bundleContext);
+ Activator.plugin = this;
+ }
+
+ @Override
+ @SuppressWarnings({ "PMD.SignatureDeclareThrowsException",
+ "PMD.NullAssignment" })
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ // @SuppressWarnings("PMD.NullAssignment")
+ // No choice to right it in another way : this is an Eclipse pattern.
+ public void stop(final BundleContext bundleContext) throws Exception {
+ Activator.plugin = null;
+ super.stop(bundleContext);
+ }
+
+ public static Plugin getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/CustomizationActionsImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/CustomizationActionsImpl.java
new file mode 100644
index 00000000000..747fbbb88a4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/CustomizationActionsImpl.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.core.internal;
+
+import java.io.IOException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.papyrus.emf.facet.custom.sdk.core.ICustomizationActions;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManager2;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManagerFactory;
+import org.eclipse.papyrus.emf.facet.util.emf.core.exception.InvalidFacetSetException;
+import org.eclipse.papyrus.emf.facet.util.pde.core.internal.exported.BuildPropertiesUtils;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+
+/**
+ * Concrete implementation of {@link ICustomizationActions}.
+ */
+public class CustomizationActionsImpl implements ICustomizationActions {
+
+ public void saveCustomization(final Customization customization,
+ final IFile file) throws IOException, InvalidFacetSetException {
+
+ if (customization == null) {
+ throw new IllegalArgumentException(
+ "The given customization cannot be null"); //$NON-NLS-1$
+ }
+ if (file == null) {
+ throw new IllegalArgumentException("The given file cannot be null"); //$NON-NLS-1$
+ }
+ if (file.exists()) {
+ throw new IllegalArgumentException("The given file already exists"); //$NON-NLS-1$
+ }
+ // Create a resource set
+ final ResourceSet resourceSet = new ResourceSetImpl();
+ // Get the URI of the model file.
+ final URI fileURI = URI.createPlatformResourceURI(file.getFullPath()
+ .toString(), true);
+ // Create a resource for this file.
+ final Resource resource = resourceSet.createResource(fileURI);
+ // Add the facetSet the resource contents.
+ resource.getContents().add(customization);
+ // Save the contents of the resource to the file system.
+ resource.save(null);
+ try {
+ BuildPropertiesUtils.addToBuild(file);
+ } catch (final Exception e) {
+ Logger.logError(e, "Error adding file " + file.getFullPath() //$NON-NLS-1$
+ + " to the build.properties", Activator.getDefault()); //$NON-NLS-1$
+ }
+ final ICatalogSetManager2 catalogSetManager = ICatalogSetManagerFactory.DEFAULT
+ .createICatalogSetManager(resourceSet);
+ catalogSetManager.registerModelDeclaration(file);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/CustomizationCommandFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/CustomizationCommandFactory.java
new file mode 100644
index 00000000000..a7c0eed2948
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/CustomizationCommandFactory.java
@@ -0,0 +1,93 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.core.internal;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.command.AddCommand;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.core.ICustomizationCommandFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization;
+
+/**
+ * Concrete implementation of {@link ICustomizationCommandFactory}.
+ */
+public class CustomizationCommandFactory implements
+ ICustomizationCommandFactory {
+
+ private final EditingDomain editingDomain;
+
+ public CustomizationCommandFactory(final EditingDomain editingDomain) {
+ if (editingDomain == null) {
+ throw new IllegalArgumentException(
+ "The given EditingDomain cannot be null"); //$NON-NLS-1$
+ }
+ this.editingDomain = editingDomain;
+ }
+
+ /**
+ * Create an {@link AddCommand} to add the element to the owner.
+ *
+ * @param owner
+ * the owner.
+ * @param element
+ * the element to add.
+ * @return the command.
+ */
+ private Command createAddCommand(final Object owner, final Object element) {
+ if (owner == null) {
+ throw new IllegalArgumentException("The given owner cannot be null"); //$NON-NLS-1$
+ }
+ if (element == null) {
+ throw new IllegalArgumentException(
+ "The given element cannot be null"); //$NON-NLS-1$
+ }
+ return AddCommand.create(this.editingDomain, owner,
+ getEStructuralFeature(element), element);
+ }
+
+ /**
+ * Return the {@link EStructuralFeature} for a given element.
+ *
+ * @param element
+ * the element.
+ * @return the eStructuralFeature for the element.
+ */
+ private static EStructuralFeature getEStructuralFeature(final Object element) {
+ EStructuralFeature result = null;
+ if (element instanceof EClassCustomization) {
+ result = EcorePackage.eINSTANCE.getEPackage_EClassifiers();
+ }
+ return result;
+ }
+
+ public Command createEClassCustomization(final Customization parent,
+ final EClassCustomization eClassCustom) {
+ return createAddCommand(parent, eClassCustom);
+ }
+
+ public Command createFacetCustomization(final Customization parent,
+ final FacetCustomization facetCustom) {
+ return createAddCommand(parent, facetCustom);
+ }
+
+ public Command addValueInCase(final ETypedElementCase elementCase,
+ final Query value) {
+ return createAddCommand(elementCase, value);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/CustomizationCommandFactoryFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/CustomizationCommandFactoryFactory.java
new file mode 100644
index 00000000000..42d8ed83a6e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/CustomizationCommandFactoryFactory.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.core.internal;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.core.ICustomizationCommandFactory;
+import org.eclipse.papyrus.emf.facet.custom.sdk.core.ICustomizationCommandFactoryFactory;
+
+public class CustomizationCommandFactoryFactory implements
+ ICustomizationCommandFactoryFactory {
+
+ public ICustomizationCommandFactory createICustomizationCommandFactory(
+ final EditingDomain editingDomain) {
+ return new CustomizationCommandFactory(editingDomain);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/validation/AvoidEClassOverlayConstraint.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/validation/AvoidEClassOverlayConstraint.java
new file mode 100644
index 00000000000..fdf5075597c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/validation/AvoidEClassOverlayConstraint.java
@@ -0,0 +1,57 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.sdk.core.internal.validation;
+
+import java.util.Arrays;
+import java.util.List;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.emf.validation.AbstractModelConstraint;
+import org.eclipse.emf.validation.IValidationContext;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization;
+
+/**
+ * Creates a warning if a {@link FacetOperation} defined in an {@link EClassCustomization} overrides (i.e. customizes)
+ * an overlay operation.
+ */
+public class AvoidEClassOverlayConstraint extends AbstractModelConstraint {
+
+ private static final List<String> OVERLAY_OPS = Arrays.asList(
+ "platform:/plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/topLeftOverlay", //$NON-NLS-1$
+ "platform:/plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/topMiddleOverlay", //$NON-NLS-1$
+ "platform:/plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/topRightOverlay", //$NON-NLS-1$
+ "platform:/plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/bottomLeftOverlay", //$NON-NLS-1$
+ "platform:/plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/bottomMiddleOverlay", //$NON-NLS-1$
+ "platform:/plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/bottomRightOverlay" //$NON-NLS-1$
+ );
+
+ @Override
+ public IStatus validate(final IValidationContext ctx) {
+ IStatus result = ctx.createSuccessStatus();
+ final EObject target = ctx.getTarget();
+ if (target instanceof FacetOperation) {
+ final FacetOperation facetOperation = (FacetOperation) target;
+ final DerivedTypedElement override = facetOperation.getOverride();
+ final URI overrideURI = EcoreUtil.getURI(override);
+ if (facetOperation.eContainer() instanceof EClassCustomization
+ && AvoidEClassOverlayConstraint.OVERLAY_OPS.contains(overrideURI.toString())) {
+ result = ctx.createFailureStatus();
+ }
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/validation/CustomizationValidationBuilder.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/validation/CustomizationValidationBuilder.java
new file mode 100644
index 00000000000..126c68fc238
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/validation/CustomizationValidationBuilder.java
@@ -0,0 +1,116 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.sdk.core.internal.validation;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IResourceDelta;
+import org.eclipse.core.resources.IResourceDeltaVisitor;
+import org.eclipse.core.resources.IResourceVisitor;
+import org.eclipse.core.resources.IncrementalProjectBuilder;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.validation.marker.MarkerUtil;
+import org.eclipse.emf.validation.model.EvaluationMode;
+import org.eclipse.emf.validation.service.IBatchValidator;
+import org.eclipse.emf.validation.service.ModelValidationService;
+import org.eclipse.papyrus.emf.facet.common.sdk.core.internal.exported.IEmfFacetProjectBuilder;
+import org.eclipse.papyrus.emf.facet.custom.core.internal.exported.Constants;
+
+/** A builder that validates customization model files. */
+public class CustomizationValidationBuilder implements IEmfFacetProjectBuilder, IResourceDeltaVisitor, IResourceVisitor {
+
+ public IProject[] build(final IncrementalProjectBuilder builder, final int kind, final Map<?, ?> args, final IProgressMonitor monitor) throws CoreException {
+ if (kind == IncrementalProjectBuilder.FULL_BUILD) {
+ fullBuild(builder);
+ } else {
+ final IResourceDelta delta = builder.getDelta(builder.getProject());
+ if (delta == null) {
+ fullBuild(builder);
+ } else {
+ incrementalBuild(delta);
+ }
+ }
+ return new IProject[0];
+ }
+
+ public void clean(final IncrementalProjectBuilder builder, final IProgressMonitor monitor) throws CoreException {
+ builder.getProject().accept(new IResourceVisitor() {
+ public boolean visit(final IResource resource) throws CoreException {
+ if (isCustomizationFile(resource)) {
+ resource.deleteMarkers(MarkerUtil.VALIDATION_MARKER_TYPE, true, IResource.DEPTH_INFINITE);
+ }
+ return true;
+ }
+ });
+ }
+
+ private void incrementalBuild(final IResourceDelta delta) throws CoreException {
+ delta.accept(this);
+ }
+
+ private void fullBuild(final IncrementalProjectBuilder builder) throws CoreException {
+ builder.getProject().accept(this);
+ }
+
+ protected static boolean isCustomizationFile(final IResource resource) {
+ return resource.getType() == IResource.FILE
+ && Constants.CUSTOM_FILE_EXT
+ .equals(resource.getFileExtension());
+ }
+
+ public boolean visit(final IResourceDelta delta) throws CoreException {
+ if (isCustomizationFile(delta.getResource())) {
+ validate(delta.getResource());
+ }
+ return true;
+ }
+
+ public boolean visit(final IResource resource) throws CoreException {
+ if (Constants.CUSTOM_FILE_EXT.equals(resource.getFileExtension())) {
+ validate(resource);
+ }
+ return true;
+ }
+
+ protected static void validate(final IResource resource) throws CoreException {
+ if (resource.exists()) {
+ final IBatchValidator validator = (IBatchValidator) ModelValidationService.getInstance()
+ .newValidator(EvaluationMode.BATCH);
+ validator.setOption(IBatchValidator.OPTION_TRACK_RESOURCES, Boolean.TRUE);
+ final IStatus multiStatus = validator.validate(getAllContents(resource));
+ MarkerUtil.updateMarkers(multiStatus);
+ }
+ }
+
+ /** @return all the model elements contained in the given platform resource. */
+ public static List<EObject> getAllContents(final IResource resource) {
+ final List<EObject> result = new ArrayList<EObject>();
+ final ResourceSetImpl resourceSet = new ResourceSetImpl();
+ final Resource modelResource = resourceSet.getResource(URI.createPlatformResourceURI(resource.getFullPath().toString(), true), true);
+ final TreeIterator<EObject> allContents = EcoreUtil.getAllContents(modelResource, true);
+ while (allContents.hasNext()) {
+ result.add(allContents.next());
+ }
+ return result;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/validation/ValidationDelegateClientSelector.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/validation/ValidationDelegateClientSelector.java
new file mode 100644
index 00000000000..394db867180
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.core/src/org/eclipse/papyrus/emf/facet/custom/sdk/core/internal/validation/ValidationDelegateClientSelector.java
@@ -0,0 +1,23 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 375054 - Add validation warning for overlay on EClass
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.sdk.core.internal.validation;
+
+import org.eclipse.emf.validation.model.IClientSelector;
+
+/** Enables validation depending on a client context. */
+public class ValidationDelegateClientSelector implements IClientSelector {
+
+ public boolean selects(final Object object) {
+ // always enabled
+ return true;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/.classpath
new file mode 100644
index 00000000000..da1049abda9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src/"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/.project
new file mode 100644
index 00000000000..e329e952c1d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.custom.sdk.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/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..44217f8c068
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..6fead0359de
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,379 @@
+Manifest-Version: 1.0
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Built-By: hudsonbuild
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.custom.sdk.ui;singleton:=true
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.papyrus.emf.facet.widgets.celleditors;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.2.0",
+ org.eclipse.swt;bundle-version="3.6.0",
+ org.eclipse.emf.ecore;bundle-version="2.6.0",
+ org.eclipse.papyrus.emf.facet.custom.metamodel;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.2.0",
+ org.eclipse.core.resources;bundle-version="3.6.0",
+ org.eclipse.papyrus.emf.facet.custom.sdk.core;bundle-version="0.2.1",
+ org.eclipse.papyrus.emf.facet.util.emf.core;bundle-version="0.2.1",
+ org.eclipse.papyrus.emf.facet.util.ui;bundle-version="0.3.0",
+ org.eclipse.papyrus.emf.facet.efacet.sdk.ui;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.efacet.ui;bundle-version="0.2.1",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.2.1",
+ org.eclipse.papyrus.emf.facet.util.emf.ui;bundle-version="0.3.0",
+ org.eclipse.emf.edit;bundle-version="2.6.0",
+ org.eclipse.ui.ide;bundle-version="3.6.0",
+ org.eclipse.core.expressions;bundle-version="3.4.200"
+Bundle-Activator: org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Activat
+ or
+Bundle-Version: 1.0.0.qualifier
+Build-Jdk: 1.6.0_27
+Bundle-ActivationPolicy: lazy
+Bundle-Vendor: %Bundle-Vendor
+Bundle-Name: %Bundle-Name
+Archiver-Version: Plexus Archiver
+Created-By: Apache Maven
+Bundle-ManifestVersion: 2
+Export-Package: org.eclipse.papyrus.emf.facet.custom.sdk.ui.dialog
+
+Name: META-INF/maven/org.eclipse.emft/org.eclipse.papyrus.emf.facet.custom.sdk
+ .ui/pom.properties
+SHA1-Digest: 96E/uYHm8QwzJpH96NOc4UoxF4Y=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/widgets/celleditors
+ /composite/ImageComposite$2.class
+SHA1-Digest: +l/wxqSBJnv49KlEy7xeBdj4ayo=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/messages.properties
+SHA1-Digest: 0eDpJbTjo7IgoOpcCiLJJMMOd5w=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/sync/SynchronizedGe
+ tOrCreateFilteredElementCommmandWidget$10.class
+SHA1-Digest: /oCj5CcrQLrdsMYI59MAKwyjUTs=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/sync/Sy
+ nchronizedCreateFacetCustomizationDialog.class
+SHA1-Digest: HwGWbdmeGSMXHAn2J6mhZCAfaEk=
+
+Name: icons/treeView.gif
+SHA1-Digest: J08i2rueFvxIsJ1Z9BgktWZSpEE=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/sync/SynchronizedGe
+ tOrCreateFilteredElementCommmandWidget.class
+SHA1-Digest: IkOq12o4KlHBXypJYltlRzt1VCU=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/getorcr
+ eate/GetOperationFacetWidget.class
+SHA1-Digest: UngYpYn3UPX43cn2d9tbYc6rsT0=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/handler/AddCus
+ tomizationPropertyInEClassHandler.class
+SHA1-Digest: 3w+d2LpR8uPJtHEEV7x8q+DOSbM=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/wizard/page/Cu
+ stomPropertyWizardPage$2.class
+SHA1-Digest: C85x6sbZR27Znl+f8ylVA93gVTA=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/getorcr
+ eate/GetCustomizedFacetWidget.class
+SHA1-Digest: hDSkmH/+bE1t4hvGHnnpOQSLVjc=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/handler/Create
+ FacetCustomizationHandler.class
+SHA1-Digest: aYXIH6FBR7G1J+vmvp0RHemaEMo=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/Startup.class
+SHA1-Digest: 7uVIrYLoA4w1HF9/vzqXs9FxA4M=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/Abstrac
+ tGetCustomizationDialog.class
+SHA1-Digest: UQ3tgwJ+cgZBDWdMYFEBW/CI+nM=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/handler/AddCas
+ eQueryHandler.class
+SHA1-Digest: jMo7ic/AiwyRthwlzaatu37jTp8=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/Abstrac
+ tGetOrCreateCustomizationDialog.class
+SHA1-Digest: h51bYF7i8fZKwnPcswVJA4fpdps=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/wizard/page/ICreate
+ CustomizationWizardPage.class
+SHA1-Digest: /Cgt8XfYc2INZt/nUzNNp+FVd8E=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/sync/SynchronizedGe
+ tOrCreateFilteredElementCommmandWidget$2.class
+SHA1-Digest: qwiQoxr+s3OPsSI8vJvutw02kNY=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/command
+ /GetOrCreateCustomizationWidget.class
+SHA1-Digest: zvuYu1sF/did58y1MJyaIH2l1TA=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/selecti
+ on/GetCustomizedFacetDialog.class
+SHA1-Digest: Kq5I7fRZomW+0OHNFCrCHuLg2AM=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/command
+ /QueryContext.class
+SHA1-Digest: 9baC5HUaH3N3a+aS4Oq6ge0ScOM=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/sync/SynchronizedGe
+ tOrCreateFilteredElementCommmandWidget$4.class
+SHA1-Digest: k+NMbNkyFGG+InEUV3tK+s/bgeY=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/dialog/Customizatio
+ nDialogFactory$1.class
+SHA1-Digest: QysGrXIUDop28MG5/IU2eQ3XAUY=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/propert
+ y/name/GetCaseQueryTypeWidget.class
+SHA1-Digest: zu4yC41Dhw7xu0E2HFl7OEgDST0=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/sync/SynchronizedGe
+ tOrCreateFilteredElementCommmandWidget$6.class
+SHA1-Digest: 9ZGIJeANIoMf64TFdiq8KAw+ZQM=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/wizard/CreateC
+ ustimizationWizardImpl.class
+SHA1-Digest: jicaCoQG2xqg0vV8nEBfSNnuWsY=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/sync/SynchronizedGe
+ tOrCreateFilteredElementCommmandWidget$8.class
+SHA1-Digest: 9vobku/pQqXgYc7RQiGjDooYvO4=
+
+Name: META-INF/eclipse.inf
+SHA1-Digest: 09gN05tobgS/MdtqyTNQhOhB73M=
+
+Name: icons/querySet.gif
+SHA1-Digest: Ypcn7ddJ56HdPpJYqBYET9A8l1Q=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/selecti
+ on/GetExtendedFacetDialog.class
+SHA1-Digest: NKIPx26XZh+iIbDTOnYGkaV57SI=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/command
+ /AddCustomizationPropertyDialog.class
+SHA1-Digest: JcH80agQQOKqhaTApM/376E3yU0=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/command
+ /AddCustomizationPropertyWidget.class
+SHA1-Digest: 7sH3jb49E3pQe4VSSTVOCYqufuM=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/widgets/celleditors
+ /composite/ImageCompositeFactory.class
+SHA1-Digest: 7LRlMZHl1v02W/qBmQYLhPfmI1A=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/wizard/CreateC
+ ustimizationWizardImpl$1.class
+SHA1-Digest: 6jxu718ASPssVEmyJ7F/ANH4L60=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/getorcr
+ eate/GetFiltredCustomizedFacetWidget.class
+SHA1-Digest: vgMM4Qkjj+JogLP7i9vQwViH5LE=
+
+Name: icons/FacetAttribute.gif
+SHA1-Digest: iJVUkNzDcR93MimauSwnnNlqlzw=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/Activator.class
+SHA1-Digest: jZRKBVH5PnNYfxyjxJ1fplE2J1o=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/getorcr
+ eate/GetOrCreateCustomizationDialog.class
+SHA1-Digest: xn0NDTp3iZDHdEZnQyBUWt6DqYU=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/getorcr
+ eate/GetOrCreateCustomizationWidget.class
+SHA1-Digest: PtoY+sa6i1esFGwm7WwW1IwDx9c=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/getorcr
+ eate/GetFiltredOperationFacetWidget.class
+SHA1-Digest: gvhVB5Om6pIuoKVLHgMe6dgaoVo=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/sync/Sy
+ nchronizedCreateEClassCustomizationDialog.class
+SHA1-Digest: nN2z3oC9aRlok+NvVWxTjpz8j30=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/widgets/celleditors
+ /composite/ImageComposite.class
+SHA1-Digest: JP4tlD/yAj40lHjY6CeACuW0A1c=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/sync/Sy
+ nchronizedAddCustomizationPropertyDialog.class
+SHA1-Digest: xKgnZ8G00kQatBgBIuWmpi0TlxA=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/wizard/page/Cr
+ eateCustomizationWizardPage.class
+SHA1-Digest: CHtofczIDGjts89SpVZTyScfqP0=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/command
+ /CreateEClassCustomizationWidget.class
+SHA1-Digest: pXvx+O9Kqxcoy7OqKgW7Vl5TMP8=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/Messages.class
+SHA1-Digest: bZidPO4d7Z0DTYG6auRXqnmsbQk=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/widgets/celleditors
+ /composite/ImageComposite$1.class
+SHA1-Digest: sXtK3X90+UUwYXZ8QjFSg3OJRxY=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/wizard/page/Cu
+ stomPropertyWizardPage.class
+SHA1-Digest: PFKQ3SDeT2ZegrbeP0r3pfV7UnI=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/widgets/celleditors
+ /composite/ImageComposite$3.class
+SHA1-Digest: US4JQlC83UyPrbRUs9kAiCU2xYU=
+
+Name: META-INF/maven/org.eclipse.emft/org.eclipse.papyrus.emf.facet.custom.sdk
+ .ui/pom.xml
+SHA1-Digest: Os/QnVt3ICG82YcUwUsYEBhTh1I=
+
+Name: OSGI-INF/l10n/bundle.properties
+SHA1-Digest: IdWwkz9OBwHz8QRbCFAdiyA+zrc=
+
+Name: icons/full/wizban/NewCustom.gif
+SHA1-Digest: CfAK4I3/f4RWRH687PmoPhy5xjI=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/command
+ /CreateEClassCustomizationDialog.class
+SHA1-Digest: ZPgTCVlK+sMINGfkwmLVl6mvbo4=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/sync/SynchronizedGe
+ tOrCreateFilteredElementCommmandWidget$11.class
+SHA1-Digest: wNJpU+maXUW73HPYBwFzt19Vp6U=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/selecti
+ on/GetFacetOperationDialog.class
+SHA1-Digest: cvLE8ybTMcU/nimv2TqRvixnHnQ=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/handler/AddCus
+ tomizationPropertyInFacetHandler.class
+SHA1-Digest: 0D2rBsllbaqIC3OPn4+fiygf7MU=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/dialog/Customizatio
+ nDialogFactory.class
+SHA1-Digest: /GCocBSTAKIPjCWmWXRD2UzttFw=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/wizard/page/Cu
+ stomPropertyWizardPage$1.class
+SHA1-Digest: SMDhaPm/p77Lg5CCWiJVOkbYxxo=
+
+Name: icons/ParameterValue.gif
+SHA1-Digest: k6QiLCZYrVmMJ6A2ZM7y663F7w0=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/Abstrac
+ tCustomizationMainDialog.class
+SHA1-Digest: 0eB1NbSk8zl9UgdvFBfTaLJdMAo=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/command
+ /AddCaseQueryDialog.class
+SHA1-Digest: qXUcdnQnr+FqUVvAERur1MuwDsY=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/command
+ /AddCaseQueryWidget.class
+SHA1-Digest: 8jh4HDb736X2s1igjgaY79aliXk=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/handler/Utils.
+ class
+SHA1-Digest: qZkE2nctlQ8yMmCEJcAV3GkbAxg=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/getorcr
+ eate/AbstractGetFacetWidget.class
+SHA1-Digest: +KhMbHCsj7fXAnBNIBKET9eyZTM=
+
+Name: icons/facet.gif
+SHA1-Digest: XEEa0LVNEosBP0izGtitfq02WAI=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/metacla
+ ss/GetExtendedMetaclassWidget.class
+SHA1-Digest: c3rIsmNHEfgkMbAG9acd8PkesWU=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/widgets/celleditors
+ /ImageCellEditor.class
+SHA1-Digest: z1mioOF/nWLjqTMi90ij2W6q0AU=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/sync/SynchronizedGe
+ tOrCreateFilteredElementCommmandWidget$1.class
+SHA1-Digest: xrcOkv0LDkdagbv6FCkGa44EVmE=
+
+Name: plugin.xml
+SHA1-Digest: EOhq9rAmJ6XKc21SJKFVXdIsJqE=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/getorcr
+ eate/GetExtendedFacetWidget.class
+SHA1-Digest: MNEOrpJDF4V65WLHj7YLkoewY64=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/sync/SynchronizedGe
+ tOrCreateFilteredElementCommmandWidget$3.class
+SHA1-Digest: okZsR4FZ9dcyoteCwtuxVD8kReA=
+
+Name: icons/FacetReference.gif
+SHA1-Digest: QMWLPiWsn1Q3mCC6dVej6KW6aes=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/sync/SynchronizedGe
+ tOrCreateFilteredElementCommmandWidget$5.class
+SHA1-Digest: XUXasN1BS4WqChIoR2Ee4MV63dU=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/sync/SynchronizedGe
+ tOrCreateFilteredElementCommmandWidget$7.class
+SHA1-Digest: E1pi+U63KBVMV1RQuokltKm/TAc=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/sync/SynchronizedGe
+ tOrCreateFilteredElementCommmandWidget$9.class
+SHA1-Digest: NhNosZy/WhBsr+fDFNGX36e1llo=
+
+Name: icons/flatView.gif
+SHA1-Digest: m7CoejyO/BwL1K8nsf+3iF2nYsg=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/sync/Sy
+ nchronizedAddCaseQueryDialog.class
+SHA1-Digest: objP1JIjz9Au1C7W1oDUFEsAZ4c=
+
+Name: about.html
+SHA1-Digest: ucbJ2JQyMW17Zy+4pyWJhaS7Sws=
+
+Name: icons/full/obj16/CustomModelFile.gif
+SHA1-Digest: zjQCllhiXDEnFg6c6wdc1isUBw8=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/wizard/page/ICustom
+ izationPropertyWizardPage.class
+SHA1-Digest: qmcNaNWnh5Io4PMp7w+fhk7V4H8=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/wizard/CreateC
+ ustimizationWizardImpl$2.class
+SHA1-Digest: jQM8FncXiY19lm770N4c3AcerIw=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/propert
+ y/name/GetCaseQueryNameWidget.class
+SHA1-Digest: eNl1wzPNKqjPmevAd6r9vQL+S/Q=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/handler/Create
+ EClassCustomizationHandler.class
+SHA1-Digest: HgkLeq4tFQaY0mMYLQuJgH4RBio=
+
+Name: icons/FacetSet.gif
+SHA1-Digest: ZNjHVhFyhjicmeiWt004wpwJdNU=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/dialog/command
+ /CreateFacetCustomizationDialog.class
+SHA1-Digest: VGS+PUhptUnp2uc2JfqmyxMJLOY=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/command
+ /CreateFacetCustomizationWidget.class
+SHA1-Digest: CwSI8mpzKA4zk7BJ5LfSHX22+W0=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/getorcr
+ eate/GetFiltredExtendedFacetWidget.class
+SHA1-Digest: 3qWTYaSbElVgYoco1tKdZvK4Bf8=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/internal/util/widget/propert
+ y/name/GetEClassCustomizationNameWidget.class
+SHA1-Digest: KjK421M4uOrnWsRzUAjk2FVPqxQ=
+
+Name: icons/FacetOperation.gif
+SHA1-Digest: geCi1ofnq5obJShghQN1sk0ACoI=
+
+Name: org.eclipse.papyrus.emf.facet.custom.sdk.ui.modelcelleditors
+SHA1-Digest: mOF8luq4olJe/WCRqBrtQY1AjWo=
+
+Name: org/eclipse/emf/facet/custom/sdk/ui/dialog/ICustomizationDialogF
+ actory.class
+SHA1-Digest: moRiQJ3BDVJYJYHxlTIkFTbZymQ=
+
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/META-INF/eclipse.inf b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/META-INF/eclipse.inf
new file mode 100644
index 00000000000..92ffed2421c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/META-INF/eclipse.inf
@@ -0,0 +1,2 @@
+#Processed using Jarprocessor
+pack200.conditioned = true
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.sdk.ui/pom.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.sdk.ui/pom.properties
new file mode 100644
index 00000000000..8581599ce4c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.sdk.ui/pom.properties
@@ -0,0 +1,5 @@
+#Generated by Maven
+#Mon Aug 19 04:56:53 EDT 2013
+version=0.4.0-SNAPSHOT
+groupId=org.eclipse.emft
+artifactId=org.eclipse.papyrus.emf.facet.custom.sdk.ui
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.sdk.ui/pom.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.sdk.ui/pom.xml
new file mode 100644
index 00000000000..c4e9beb7bfe
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.custom.sdk.ui/pom.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>org.eclipse.papyrus.emf.facet.build</artifactId>
+ <groupId>org.eclipse.emft</groupId>
+ <version>0.4.0</version>
+ <relativePath>../../</relativePath>
+ </parent>
+ <groupId>org.eclipse.emft</groupId>
+ <artifactId>org.eclipse.papyrus.emf.facet.custom.sdk.ui</artifactId>
+ <version>0.4.0-SNAPSHOT</version>
+ <packaging>eclipse-plugin</packaging>
+</project>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..b325d0cacf6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,37 @@
+###############################################################################
+# Copyright (c) 2012 CEA LIST.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - Bug 375388 - Cell editor for IImage
+# Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+###############################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.custom.sdk.ui
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Custom SDK UI (Incubation)
+
+wizard.name = Create a Customization 0.2
+wizard.description = Create a new Customization model
+
+menu.custo.label = EMF Customization Commands
+command.custo.name=Create EClass Customization
+command.custo.name.1=Create Facet Customization
+command.custo.name.2=Add a Customization Property
+command.custo.name.3=Add a Query
+
+menu.label = EMF Facet Commands
+command.name = Create FacetSet in a FacetSet
+command.name.0 = Create Facet in a FacetSet
+command.name.1 = Add Facet Attribute
+command.name.2 = Add Facet Operation
+command.name.3 = Add Parameter to Facet Operation
+command.name.4 = Add Facet Reference
+command.name.5 = Edit FacetSet
+command.name.6 = Edit Facet
+command.name.7 = Edit Facet Attribute
+command.name.8 = Edit Facet Operation
+command.name.9 = Edit Facet Operation Parameter
+command.name.10 = Edit Facet Reference \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/about.html
new file mode 100644
index 00000000000..3019b95b9cf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.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>December 22, 2008</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/build.properties
new file mode 100644
index 00000000000..03c24e206c9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/build.properties
@@ -0,0 +1,8 @@
+source.. = src/
+bin.includes = META-INF/,\
+ .,\
+ org.eclipse.papyrus.emf.facet.custom.sdk.ui.modelcelleditors,\
+ icons/,\
+ about.html,\
+ plugin.xml,\
+ OSGI-INF/
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/FacetAttribute.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/FacetAttribute.gif
new file mode 100644
index 00000000000..78d42474957
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/FacetAttribute.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/FacetOperation.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/FacetOperation.gif
new file mode 100644
index 00000000000..b3643da048a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/FacetOperation.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/FacetReference.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/FacetReference.gif
new file mode 100644
index 00000000000..0c9154c7997
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/FacetReference.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/FacetSet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/FacetSet.gif
new file mode 100644
index 00000000000..d8a3e957c58
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/FacetSet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/ParameterValue.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/ParameterValue.gif
new file mode 100644
index 00000000000..2b692560297
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/ParameterValue.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/facet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/facet.gif
new file mode 100644
index 00000000000..8c67c03cc10
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/facet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/flatView.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/flatView.gif
new file mode 100644
index 00000000000..1ef74cf98f4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/flatView.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/full/obj16/CustomModelFile.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/full/obj16/CustomModelFile.gif
new file mode 100644
index 00000000000..8a7eeb2c824
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/full/obj16/CustomModelFile.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/full/wizban/NewCustom.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/full/wizban/NewCustom.gif
new file mode 100644
index 00000000000..eab53a99e8c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/full/wizban/NewCustom.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/querySet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/querySet.gif
new file mode 100644
index 00000000000..07d18c55b7f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/querySet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/treeView.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/treeView.gif
new file mode 100644
index 00000000000..234486172ca
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/icons/treeView.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/org.eclipse.papyrus.emf.facet.custom.sdk.ui.modelcelleditors b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/org.eclipse.papyrus.emf.facet.custom.sdk.ui.modelcelleditors
new file mode 100644
index 00000000000..d521a0f702f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/org.eclipse.papyrus.emf.facet.custom.sdk.ui.modelcelleditors
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<modelCellEditor:ModelCellEditorDeclarations xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:modelCellEditor="http://www.eclipse.org/EMF_Facet/ModelCellEditor/0.1.0/modelCellEditor">
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="iimage_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.widgets.celleditors.ImageCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ </modelCellEditors>
+</modelCellEditor:ModelCellEditorDeclarations>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/plugin.xml
new file mode 100644
index 00000000000..df70d31d016
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/plugin.xml
@@ -0,0 +1,223 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<!--
+ Copyright (c) 2012 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Nicolas Bros (Mia-Software) - Bug 375388 - Cell editor for IImage
+ Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+-->
+<plugin>
+ <extension point="org.eclipse.papyrus.emf.facet.widgets.celleditors.celleditors">
+ <cellEditorsModel path="org.eclipse.papyrus.emf.facet.custom.sdk.ui.modelcelleditors"/>
+ </extension>
+ <extension point="org.eclipse.papyrus.emf.facet.widgets.celleditors.compositeEditorFactories">
+ <compositeEditorFactory class="org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.widgets.celleditors.composite.ImageCompositeFactory"/>
+ </extension>
+ <extension
+ point="org.eclipse.ui.newWizards">
+ <wizard
+ category="org.eclipse.papyrus.emf.facet.common.ui.wizardsCategory"
+ class="org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.wizard.CreateCustimizationWizardImpl"
+ icon="icons/full/obj16/CustomModelFile.gif"
+ id="org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation.CustomModelWizardID"
+ name="%wizard.name">
+ <description>
+ %wizard.description
+ </description>
+ <selection
+ class="org.eclipse.core.resources.IResource">
+ </selection>
+ </wizard>
+ </extension>
+ <extension
+ point="org.eclipse.ui.commands">
+ <command
+ defaultHandler="org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.handler.CreateEClassCustomizationHandler"
+ id="org.eclipse.papyrus.emf.facet.custom.sdk.ui.CreateEClassCustomization"
+ name="%command.custo.name">
+ </command>
+ <command
+ defaultHandler="org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.handler.CreateFacetCustomizationHandler"
+ id="org.eclipse.papyrus.emf.facet.custom.sdk.ui.CreateFacetCustomization"
+ name="%command.custo.name.1">
+ </command>
+ <command
+ defaultHandler="org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.handler.AddCustomizationPropertyInEClassHandler"
+ id="org.eclipse.papyrus.emf.facet.custom.sdk.ui.AddCustomization"
+ name="%command.custo.name.2">
+ </command>
+ <command
+ defaultHandler="org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.handler.AddCaseQueryHandler"
+ id="org.eclipse.papyrus.emf.facet.custom.sdk.ui.AddCaseQuery"
+ name="%command.custo.name.3">
+ </command>
+ </extension>
+ <extension
+ point="org.eclipse.ui.menus">
+ <menuContribution
+ allPopups="true"
+ locationURI="popup:org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.presentation.CustomEditorID?before=edit">
+ <menu
+ label="%menu.custo.label">
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.custom.sdk.ui.CreateEClassCustomization"
+ icon="icons/full/obj16/CustomModelFile.gif"
+ label="%command.custo.name"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.custom.sdk.ui.CreateFacetCustomization"
+ icon="icons/full/obj16/CustomModelFile.gif"
+ label="%command.custo.name.1"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.custom.sdk.ui.AddCustomization"
+ icon="icons/full/obj16/CustomModelFile.gif"
+ label="%command.custo.name.2"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.custom.sdk.ui.AddCaseQuery"
+ icon="icons/querySet.gif"
+ label="%command.custo.name.3"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ </menu>
+ <menu
+ label="%menu.label">
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.createFacetSetInFacetSet"
+ icon="icons/FacetSet.gif"
+ label="%command.name"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.createFacetInFacetSet"
+ icon="icons/facet.gif"
+ label="%command.name.0"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.addAttributeInFacet"
+ icon="icons/FacetAttribute.gif"
+ label="%command.name.1"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.addOperationInFacet"
+ icon="icons/FacetOperation.gif"
+ label="%command.name.2"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.addReferenceInFacet"
+ icon="icons/FacetReference.gif"
+ label="%command.name.4"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.addParameterInOperation"
+ icon="icons/ParameterValue.gif"
+ label="%command.name.3"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacetSet"
+ icon="icons/FacetSet.gif"
+ label="%command.name.5"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacet"
+ icon="icons/facet.gif"
+ label="%command.name.6"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacetAttribute"
+ icon="icons/FacetAttribute.gif"
+ label="%command.name.7"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacetOperation"
+ icon="icons/FacetOperation.gif"
+ label="%command.name.8"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacetOperationParameter"
+ icon="icons/ParameterValue.gif"
+ label="%command.name.9"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacetReference"
+ icon="icons/FacetReference.gif"
+ label="%command.name.10"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ </menu>
+ </menuContribution>
+ </extension>
+ <extension
+ point="org.eclipse.ui.startup">
+ <startup
+ class="org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Startup"></startup>
+ </extension>
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/dialog/ICustomizationDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/dialog/ICustomizationDialogFactory.java
new file mode 100644
index 00000000000..cf969e09478
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/dialog/ICustomizationDialogFactory.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Gregoire Dupe (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.dialog;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.dialog.CustomizationDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Interface for the dialogs creation factory.
+ *
+ * @see CustomizationDialogFactorImpl
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICustomizationDialogFactory {
+
+ ICustomizationDialogFactory DEFAULT = new CustomizationDialogFactory();
+
+ /**
+ * Create an new Dialog for the creation of a EClass Customization.
+ *
+ * @param editingDomain
+ */
+ IDialog openCreateEClassCustomizationDialog(Display display,
+ EditingDomain editingDomain);
+
+ /**
+ * Create an new Dialog for the creation of a Facet Customization.
+ *
+ * @return the dialog.
+ */
+ IDialog openCreateFacetCustomizationDialog(Display display,
+ EditingDomain editingDomain);
+
+ /**
+ * Create an new Dialog for the creation of a Customization Operation into a
+ * Customization.
+ *
+ * @return the dialog.
+ */
+ IDialog openAddCustomizationPropertyDialog(Display display,
+ EditingDomain editingDomain);
+
+ /**
+ * Create an new Dialog for the creation of a Query into a Case.
+ *
+ * @return the dialog.
+ */
+ IDialog openAddCaseQueryDialog(Display display, EditingDomain editingDomain);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/Activator.java
new file mode 100644
index 00000000000..09eaa5883ed
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/Activator.java
@@ -0,0 +1,51 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 375388 - Cell editor for IImage
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+@SuppressWarnings("PMD.UseSingleton")
+// @SuppressWarnings("PMD.UseSingleton") We cannot conforms to this rule because
+// this class is an Eclipse plug-in activator which will be instantiated by the
+// Eclipse framework.
+public class Activator extends Plugin {
+
+ private static Activator plugin;
+
+ @Override
+ @SuppressWarnings("PMD.SignatureDeclareThrowsException")
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ public void start(final BundleContext bundleContext) throws Exception {
+ super.start(bundleContext);
+ Activator.plugin = this;
+ }
+
+ @Override
+ @SuppressWarnings("PMD.SignatureDeclareThrowsException")
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ public void stop(final BundleContext bundleContext) throws Exception {
+ // NOPMD: PMD say "Assigning an Object to null is a code smell."
+ // No choice to right it in another way : this is an Eclipse pattern.
+ Activator.plugin = null; // NOPMD by gdupe on 30/03/12 10:19
+ super.stop(bundleContext);
+ }
+
+ public static Plugin getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/Messages.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/Messages.java
new file mode 100644
index 00000000000..a2c175bcdb5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/Messages.java
@@ -0,0 +1,72 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 375388 - Cell editor for IImage
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal;
+
+import org.eclipse.osgi.util.NLS;
+
+public class Messages extends NLS {
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.messages"; //$NON-NLS-1$
+ public static String ImageComposite_fullImage;
+ public static String Create_Customization_Model;
+ public static String CreateCustomizationWizardImpl_customization;
+ public static String CreateCustomizationWizardImpl_customization_properties;
+ public static String CreateCustomizationWizardImpl_Create_new_customization;
+ public static String CreateCustomizationWizardImpl_File_extension_restriction;
+ public static String CreateCustomizationWizardPage_Not_a_Plugin_project;
+
+ public static String Enter_a_nsUri;
+ public static String Enter_a_prefix;
+ public static String Please_enter_nsUri;
+ public static String Please_enter_prefix;
+ public static String Please_select_EPackage;
+
+ public static String CreateEClassCustomizationDialog_Message;
+ public static String CreateEClassCustomizationDialog_Title;
+
+ public static String CreateFacetCustomizationDialog_Message;
+ public static String CreateFacetCustomizationDialog_Title;
+
+ public static String ExtendedMetaClass;
+ public static String Metaclass_mustSelectMetaclass;
+
+ public static String Customization;
+ public static String Customization_mustSelectCustomization;
+ public static String Customization_mustGiveCustomizationName;
+
+ public static String GetOrCreate_customization_message;
+ public static String Select_Customization;
+
+ public static String Facet_mustSelectFacet;
+ public static String ExtendedFacet;
+ public static String CustomizedFacet;
+ public static String CustomizedFacet_mustSelectCustomizedFacet;
+
+ public static String OperationFacet;
+ public static String OperationFacet_mustSelectOperationFacet;
+
+ public static String Add_Customization_title;
+ public static String Add_Customization_message;
+
+ public static String Query_case_name;
+ public static String Query_case_type;
+
+ public static String Get_customization_property_message;
+ public static String Select_Customization_property;
+
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/Startup.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/Startup.java
new file mode 100644
index 00000000000..2ec79a8bcd9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/Startup.java
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal;
+import org.eclipse.ui.IStartup;
+
+
+public class Startup implements IStartup {
+
+ public void earlyStartup() {
+ // TODO Auto-generated method stub
+
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/dialog/CustomizationDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/dialog/CustomizationDialogFactory.java
new file mode 100644
index 00000000000..bb4a2534f30
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/dialog/CustomizationDialogFactory.java
@@ -0,0 +1,83 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.dialog;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.dialog.ICustomizationDialogFactory;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.command.AddCaseQueryDialog;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.command.AddCustomizationPropertyDialog;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.command.CreateEClassCustomizationDialog;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.command.CreateFacetCustomizationDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.handler.HandlerUtils;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.SynchronizedAbstractDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Concrete implementation of {@link ICustomizationDialogFactory}.
+ *
+ * @see ICustomizationDialogFactory
+ */
+public class CustomizationDialogFactory implements ICustomizationDialogFactory {
+
+ protected static void openDialog(final IDialog<?> dialog,
+ final Display display) {
+ display.asyncExec(new Runnable() {
+ public void run() {
+ dialog.open();
+ }
+ });
+ }
+
+ public IDialog<ICommandWidget> openCreateEClassCustomizationDialog(
+ final Display display,
+ final EditingDomain editingDomain) {
+ final IDialog<ICommandWidget> dialog = new CreateEClassCustomizationDialog(
+ (Customization) HandlerUtils.getSelection(), editingDomain);
+ openDialog(dialog, display);
+ return new SynchronizedAbstractDialog<ICommandWidget>(dialog, display);
+ }
+
+ public IDialog<ICommandWidget> openCreateFacetCustomizationDialog(
+ final Display display,
+ final EditingDomain editingDomain) {
+ final IDialog<ICommandWidget> dialog = new CreateFacetCustomizationDialog(
+ (Customization) HandlerUtils.getSelection(), editingDomain);
+ openDialog(dialog, display);
+ return new SynchronizedAbstractDialog<ICommandWidget>(dialog, display);
+ }
+
+ public IDialog<ICommandWidget> openAddCustomizationPropertyDialog(
+ final Display display,
+ final EditingDomain editingDomain) {
+ final IDialog<ICommandWidget> dialog = new AddCustomizationPropertyDialog(
+ (EClassCustomization) HandlerUtils.getSelection(),
+ editingDomain);
+ openDialog(dialog, display);
+ return new SynchronizedAbstractDialog<ICommandWidget>(dialog, display);
+ }
+
+ public IDialog<ICommandWidget> openAddCaseQueryDialog(
+ final Display display,
+ final EditingDomain editingDomain) {
+ final IDialog<ICommandWidget> dialog = new AddCaseQueryDialog(
+ (ETypedElementCase) HandlerUtils.getSelection(), editingDomain);
+ openDialog(dialog, display);
+ return new SynchronizedAbstractDialog<ICommandWidget>(dialog, display);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/messages.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/messages.properties
new file mode 100644
index 00000000000..7dc535d839c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/messages.properties
@@ -0,0 +1,57 @@
+###############################################################################
+# Copyright (c) 2012 CEA LIST.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+# Contributors:
+# Nicolas Bros (Mia-Software) - Bug 375388 - Cell editor for IImage
+# Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+# Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+###############################################################################
+ImageComposite_fullImage=Full Image
+Create_Customization_Model=Create a customization model
+CreateCustomizationWizardImpl_customization=New Customization
+CreateCustomizationWizardImpl_Create_new_customization=Create a new Customization
+CreateCustomizationWizardImpl_customization_properties=Set the Customization properties
+CreateCustomizationWizardImpl_File_extension_restriction=File extension has to be ".custom"
+CreateCustomizationWizardPage_Not_a_Plugin_project=Warning : you are creating this Customization in a non-Plugin project. It will not be available until moved to a Plugin project.
+
+Enter_a_nsUri=Enter a nsUri :
+Please_enter_nsUri=Please enter a nsUri
+Enter_a_prefix=Enter a prefix :
+Please_enter_prefix=Please enter a prefix
+Please_select_EPackage=Please, select an EPackage
+
+CreateEClassCustomizationDialog_Message=Create a new EClass Customization
+CreateEClassCustomizationDialog_Title=EClass Customization
+
+CreateFacetCustomizationDialog_Message=Create a new Facet Customization
+CreateFacetCustomizationDialog_Title=Facet Customization
+
+Metaclass_mustSelectMetaclass=You must select a MetaClass
+ExtendedMetaClass=&Extended Meta-Class:
+
+Facet_mustSelectFacet=You must select an Extended Facet
+ExtendedFacet=Extended Facet
+
+Customization=Customization
+Customization_mustSelectCustomization=You must select a Customization
+Customization_mustGiveCustomizationName=You must give a Customization Name
+
+GetOrCreate_customization_message=Select or a Customization
+Select_Customization=Select a Customization
+CustomizedFacet=Customized Facet
+CustomizedFacet_mustSelectCustomizedFacet=You must select a Customized Facet
+
+OperationFacet=Facet Operation
+OperationFacet_mustSelectOperationFacet=You must select a Facet Operation
+
+Add_Customization_title=Add a Customization Property
+Add_Customization_message=Add a new Customization Property
+
+Get_customization_property_message=Select a Customization Property
+Select_Customization_property=Customization Property
+
+Query_case_name=Customized eTypeElement
+Query_case_type=Case type \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/sync/SynchronizedGetOrCreateFilteredElementCommmandWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/sync/SynchronizedGetOrCreateFilteredElementCommmandWidget.java
new file mode 100644
index 00000000000..8333ca12f76
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/sync/SynchronizedGetOrCreateFilteredElementCommmandWidget.java
@@ -0,0 +1,142 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.sync;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.swt.widgets.Display;
+
+public class SynchronizedGetOrCreateFilteredElementCommmandWidget<T extends java.lang.Object, W extends java.lang.Object>
+ extends
+ SynchronizedObject<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<T, W>>
+ implements
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<T, W> {
+
+ public SynchronizedGetOrCreateFilteredElementCommmandWidget(
+ final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<T, W> object,
+ final Display display) {
+ super(object, display);
+ }
+
+ public final void addListener(
+ final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().addListener(parm0);
+ }
+ });
+ }
+
+ public final void createWidgetContent() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().createWidgetContent();
+ }
+ });
+ }
+
+ public final java.lang.String getError() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().getError();
+ }
+ });
+ }
+
+ public final void notifyChanged() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().notifyChanged();
+ }
+ });
+ }
+
+ public final <A> A adapt(final java.lang.Class<A> parm0) {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<A>() {
+ @Override
+ public A safeRun() {
+ return SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().adapt(parm0);
+ }
+ });
+ }
+
+ public final java.lang.Object getCommand() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.Object>() {
+ @Override
+ public java.lang.Object safeRun() {
+ return SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().getCommand();
+ }
+ });
+ }
+
+ public final void onDialogValidation() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().onDialogValidation();
+ }
+ });
+ }
+
+ public final T getElementSelected() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<T>() {
+ @Override
+ public T safeRun() {
+ return SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().getElementSelected();
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<W> pressNewButton() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<W>>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<W> safeRun() {
+ return SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().pressNewButton();
+ }
+ });
+ }
+
+ public final void selectElement(final T parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().selectElement(parm0);
+ }
+ });
+ }
+
+ public final void selectElementByName(final java.lang.String parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().selectElementByName(parm0);
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/AbstractCustomizationMainDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/AbstractCustomizationMainDialog.java
new file mode 100644
index 00000000000..2aa1f3cd201
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/AbstractCustomizationMainDialog.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.core.ICustomizationCommandFactory;
+import org.eclipse.papyrus.emf.facet.custom.sdk.core.ICustomizationCommandFactoryFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.AbstractMainDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+
+public abstract class AbstractCustomizationMainDialog<W extends ICommandWidget>
+ extends AbstractMainDialog<W> {
+
+ private final EditingDomain ediditingDomain;
+ private final ICustomizationCommandFactory customCmdFactory;
+
+ /**
+ * Constructor.
+ *
+ * @param selection
+ * the selection in the model (ecore file).
+ */
+ public AbstractCustomizationMainDialog(final Object selection,
+ final EditingDomain editingDomain) {
+ super(selection);
+ this.ediditingDomain = editingDomain;
+ this.customCmdFactory = ICustomizationCommandFactoryFactory.DEFAULT
+ .createICustomizationCommandFactory(editingDomain);
+ }
+
+ @Override
+ protected void execute() {
+ final Object result = getWidget().getCommand();
+ if (result instanceof Command) {
+ final Command command = (Command) result;
+ this.ediditingDomain.getCommandStack().execute(command);
+ }
+ }
+
+ protected final ICustomizationCommandFactory getCustomCmdFactory() {
+ return this.customCmdFactory;
+ }
+
+ protected final EditingDomain getEditingDomain() {
+ return this.ediditingDomain;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/AbstractGetCustomizationDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/AbstractGetCustomizationDialog.java
new file mode 100644
index 00000000000..61931b180a6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/AbstractGetCustomizationDialog.java
@@ -0,0 +1,33 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.AbstractDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+
+public abstract class AbstractGetCustomizationDialog<T extends Object, W extends ICommandWidget>
+ extends AbstractDialog<IWithResultDialogCallback<T>, W> {
+
+ /**
+ * Constructor.
+ *
+ * @param properties
+ * properties that parent widget had.
+ */
+ public AbstractGetCustomizationDialog(
+ final IWithResultDialogCallback<T> callback) {
+ super(callback);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/AbstractGetOrCreateCustomizationDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/AbstractGetOrCreateCustomizationDialog.java
new file mode 100644
index 00000000000..cc6d666658a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/AbstractGetOrCreateCustomizationDialog.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.core.ICustomizationCommandFactory;
+import org.eclipse.papyrus.emf.facet.custom.sdk.core.ICustomizationCommandFactoryFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+
+public abstract class AbstractGetOrCreateCustomizationDialog<T, W extends ICommandWidget>
+ extends AbstractGetCustomizationDialog<T, W> {
+
+ private final EditingDomain editingDomain;
+ private final ICustomizationCommandFactory customCmdFactory;
+
+ /**
+ * Constructor.
+ *
+ * @param properties
+ * properties that parent widget had.
+ */
+ public AbstractGetOrCreateCustomizationDialog(
+ final IWithResultDialogCallback<T> callback,
+ final EditingDomain editingDomain) {
+ super(callback);
+ this.editingDomain = editingDomain;
+ this.customCmdFactory = ICustomizationCommandFactoryFactory.DEFAULT
+ .createICustomizationCommandFactory(editingDomain);
+ }
+
+ protected final EditingDomain getEditingDomain() {
+ return this.editingDomain;
+ }
+
+ protected final ICustomizationCommandFactory getCustomCmdFactory() {
+ return this.customCmdFactory;
+ }
+
+ @Override
+ protected void execute() {
+ final Object result = getWidget().getCommand();
+ if (result instanceof Command) {
+ final Command command = (Command) result;
+ this.editingDomain.getCommandStack().execute(command);
+ }
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/AddCaseQueryDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/AddCaseQueryDialog.java
new file mode 100644
index 00000000000..619ff9b6032
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/AddCaseQueryDialog.java
@@ -0,0 +1,78 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.command;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.AbstractCustomizationMainDialog;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.command.AddCaseQueryWidget;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+
+/**
+ * Concrete dialog for the creation of a query in a case.
+ */
+public class AddCaseQueryDialog extends
+ AbstractCustomizationMainDialog<ICommandWidget> {
+
+ private AddCaseQueryWidget addCaseQueryW;
+ private final PropertyElement2<ETypedElementCase> queryCaseProp;
+ private final PropertyElement2<Query> queryValueProp;
+ private final IQueryContext queryContext;
+
+ /**
+ * Constructor.
+ *
+ * @param selection
+ * the selection in the model (custom file).
+ */
+ public AddCaseQueryDialog(final ETypedElementCase selection,
+ final EditingDomain editingDomain) {
+ super(selection, editingDomain);
+ this.queryContext = new QueryContext(selection);
+ this.queryCaseProp = new PropertyElement2<ETypedElementCase>(true);
+ this.queryValueProp = new PropertyElement2<Query>(true);
+ if (selection != null) {
+ this.queryCaseProp.setValue2(selection);
+ }
+ }
+
+ @Override
+ protected ICommandWidget createWidget() {
+ this.addCaseQueryW = new AddCaseQueryWidget(this.getDialogComposite(),
+ getCustomCmdFactory(), this.queryCaseProp, this.queryValueProp,
+ this.queryContext);
+ return this.addCaseQueryW;
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.Add_Customization_message;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Add_Customization_title;
+ }
+
+ /**
+ * @return the addCaseQueryWidget
+ */
+ public AddCaseQueryWidget getAddCaseQueryWidget() {
+ return this.addCaseQueryW;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/AddCustomizationPropertyDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/AddCustomizationPropertyDialog.java
new file mode 100644
index 00000000000..c2dbbe40401
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/AddCustomizationPropertyDialog.java
@@ -0,0 +1,73 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.command;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.AbstractCustomizationMainDialog;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.command.AddCustomizationPropertyWidget;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization;
+
+/**
+ * Concrete dialog for the creation of a customization property into a
+ * customization.
+ */
+public class AddCustomizationPropertyDialog extends
+ AbstractCustomizationMainDialog<ICommandWidget> {
+
+ private AddCustomizationPropertyWidget addCustomW;
+ private final EClassCustomization eClassCustom;
+ private final PropertyElement2<FacetOperation> facetOpProperty;
+
+ /**
+ * Constructor.
+ *
+ * @param selection
+ * the selection in the model (custom file).
+ */
+ public AddCustomizationPropertyDialog(final EClassCustomization selection,
+ final EditingDomain editingDomain) {
+ super(selection, editingDomain);
+ this.eClassCustom = selection;
+ this.facetOpProperty = new PropertyElement2<FacetOperation>(true);
+ }
+
+ @Override
+ protected ICommandWidget createWidget() {
+ this.addCustomW = new AddCustomizationPropertyWidget(
+ this.getDialogComposite(), this.facetOpProperty,
+ this.eClassCustom, this.getEditingDomain());
+ return this.addCustomW;
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.Add_Customization_message;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Add_Customization_title;
+ }
+
+ /**
+ * @return the addCustomizationWidget
+ */
+ public AddCustomizationPropertyWidget getAddCustomizationWidget() {
+ return this.addCustomW;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/CreateEClassCustomizationDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/CreateEClassCustomizationDialog.java
new file mode 100644
index 00000000000..d5ec5d9d08b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/CreateEClassCustomizationDialog.java
@@ -0,0 +1,95 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.command;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.AbstractCustomizationMainDialog;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.command.CreateEClassCustomizationWidget;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+
+/**
+ * Concrete dialog for the creation of an EClass Customization.
+ */
+public class CreateEClassCustomizationDialog extends
+ AbstractCustomizationMainDialog<ICommandWidget> {
+
+ private CreateEClassCustomizationWidget eClassCustomW;
+ private final PropertyElement2<Customization> customProperty;
+ private final PropertyElement2<EClass> mClassProperty;
+ private final PropertyElement2<Facet> extFacetProperty;
+
+ /**
+ * Constructor.
+ *
+ * @param selection
+ * the selection in the model (custom file).
+ */
+ public CreateEClassCustomizationDialog(final Customization selection,
+ final EditingDomain editingDomain) {
+ super(selection, editingDomain);
+ this.customProperty = new PropertyElement2<Customization>(true);
+ this.mClassProperty = new PropertyElement2<EClass>(true);
+ this.extFacetProperty = new PropertyElement2<Facet>(true);
+ if (selection != null) {
+ this.customProperty.setValue2(selection);
+ }
+ }
+
+ @Override
+ protected ICommandWidget createWidget() {
+ this.eClassCustomW = new CreateEClassCustomizationWidget(
+ this.getDialogComposite(), this.getCustomCmdFactory(),
+ getEditingDomain(), this.customProperty, this.mClassProperty,
+ this.extFacetProperty);
+ return this.eClassCustomW;
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.CreateEClassCustomizationDialog_Message;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.CreateEClassCustomizationDialog_Title;
+ }
+
+ /**
+ * @return the createEClassCustomizationWidget
+ */
+ public CreateEClassCustomizationWidget getCreateEClassCustomizationWidget() {
+ return this.eClassCustomW;
+ }
+
+ protected final CreateEClassCustomizationWidget geteClassCustomW() {
+ return this.eClassCustomW;
+ }
+
+ protected final PropertyElement2<Customization> getCustomProperty() {
+ return this.customProperty;
+ }
+
+ protected final PropertyElement2<EClass> getmClassProperty() {
+ return this.mClassProperty;
+ }
+
+ protected final PropertyElement2<Facet> getExtFacetProperty() {
+ return this.extFacetProperty;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/CreateFacetCustomizationDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/CreateFacetCustomizationDialog.java
new file mode 100644
index 00000000000..a0c1773fc94
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/CreateFacetCustomizationDialog.java
@@ -0,0 +1,71 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.command;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.command.CreateFacetCustomizationWidget;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+
+/**
+ * Concrete dialog for the creation of a Facet Customization.
+ */
+public class CreateFacetCustomizationDialog extends
+ CreateEClassCustomizationDialog {
+
+ private CreateFacetCustomizationWidget facetCustomW;
+ private PropertyElement2<Facet> facetCustomProp;
+
+ /**
+ * Constructor.
+ *
+ * @param selection
+ * the selection in the model (custom file).
+ */
+ public CreateFacetCustomizationDialog(final Customization selection,
+ final EditingDomain editingDomain) {
+ super(selection, editingDomain);
+ this.facetCustomProp = new PropertyElement2<Facet>(true);
+ }
+
+ @Override
+ protected ICommandWidget createWidget() {
+ this.facetCustomW = new CreateFacetCustomizationWidget(
+ this.getDialogComposite(), getCustomCmdFactory(),
+ getEditingDomain(), getmClassProperty(), getCustomProperty(),
+ getExtFacetProperty(), this.facetCustomProp);
+ return this.facetCustomW;
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.CreateFacetCustomizationDialog_Message;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.CreateFacetCustomizationDialog_Title;
+ }
+
+ /**
+ * @return the createFacetCustomizationWidget
+ */
+ public CreateFacetCustomizationWidget getCreateFacetCustomizationWidget() {
+ return this.facetCustomW;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/QueryContext.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/QueryContext.java
new file mode 100644
index 00000000000..28a5aa01d37
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/command/QueryContext.java
@@ -0,0 +1,73 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.command;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.efacet.core.FacetUtils;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ModelUtils;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+
+public class QueryContext implements IQueryContext {
+
+ private final DerivedTypedElement dte;
+ private final ETypedElementCase selection;
+
+ public QueryContext(final ETypedElementCase selection) {
+ this.selection = selection;
+ this.dte = FacetUtils
+ .getContainingDerivedTypedElement(selection);
+ }
+
+ public int getUpperBound() {
+ return this.dte.getUpperBound();
+ }
+
+ public EClassifier getReturnType() {
+ return this.dte.getEType();
+ }
+
+ public Resource getResource() {
+ return this.selection.eResource();
+ }
+
+ public Query getQuery() {
+ return this.selection.getValue();
+ }
+
+ public IProject getProject() {
+ return ModelUtils.getProject(this.selection);
+ }
+
+ public EObject getIntermediateEObject() {
+ return this.selection;
+ }
+
+ public Facet getFacet() {
+ return (Facet) this.dte.eContainer();
+ }
+
+ public EClassifier getExtendedEClass() {
+ return FacetUtils.getExtendedMetaclass((Facet) this.dte.eContainer());
+ }
+
+ public String getDerivedTypedElementName() {
+ return this.dte.getName();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/getorcreate/GetOrCreateCustomizationDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/getorcreate/GetOrCreateCustomizationDialog.java
new file mode 100644
index 00000000000..8718366f872
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/getorcreate/GetOrCreateCustomizationDialog.java
@@ -0,0 +1,80 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.getorcreate;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.sync.SynchronizedGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.AbstractGetOrCreateCustomizationDialog;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.command.GetOrCreateCustomizationWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+
+/**
+ * Provide a dialog where the user can select a {@link Customization} in the
+ * list. This class use the specific widget
+ * {@link GetOrCreateCustomizationWidget} and return the selected element with
+ * the method {@link #getCustomizationSelected()}.</p>
+ *
+ * When the "ok" button is pressed, the parent property is set with the selected
+ * element.
+ *
+ * @see GetOrCreateCustomizationWidget
+ */
+public class GetOrCreateCustomizationDialog
+ extends
+ AbstractGetOrCreateCustomizationDialog<Customization, IGetOrCreateFilteredElementCommmandWidget<Customization, ICommandWidget>> {
+
+ private final PropertyElement2<Customization> customProperty;
+
+ /**
+ * Constructor.
+ *
+ * @param properties
+ * properties that parent widget had.
+ */
+ public GetOrCreateCustomizationDialog(
+ final IWithResultDialogCallback<Customization> callback,
+ final EditingDomain editingDomain, final Customization custom) {
+ super(callback, editingDomain);
+ this.customProperty = new PropertyElement2<Customization>(true, custom);
+ }
+
+ @Override
+ protected IGetOrCreateFilteredElementCommmandWidget<Customization, ICommandWidget> createWidget() {
+ final GetOrCreateCustomizationWidget widget = new GetOrCreateCustomizationWidget(this.getDialogComposite(),
+ getEditingDomain(), this.customProperty);
+ return new SynchronizedGetOrCreateFilteredElementCommmandWidget<Customization, ICommandWidget>(
+ widget, widget.getDisplay());
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.GetOrCreate_customization_message;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Select_Customization;
+ }
+
+ @Override
+ protected void okPressed() {
+ this.getCallback().commited(this.customProperty.getValue2());
+ super.okPressed();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/selection/GetCustomizedFacetDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/selection/GetCustomizedFacetDialog.java
new file mode 100644
index 00000000000..d1e845c5603
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/selection/GetCustomizedFacetDialog.java
@@ -0,0 +1,71 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.selection;
+
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.AbstractGetCustomizationDialog;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.getorcreate.GetCustomizedFacetWidget;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.getorcreate.GetFiltredCustomizedFacetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+
+/**
+ * Concrete dialog for the selection of the customized facet.
+ *
+ * @see GetCustomizedFacetWidget
+ */
+public class GetCustomizedFacetDialog extends
+ AbstractGetCustomizationDialog<Facet, GetFiltredCustomizedFacetWidget> {
+ private GetFiltredCustomizedFacetWidget customFacetW;
+
+ /**
+ * Constructor.
+ *
+ * @param properties
+ * properties that parent widget had.
+ */
+ public GetCustomizedFacetDialog(
+ final IWithResultDialogCallback<Facet> callback) {
+ super(callback);
+ }
+
+ @Override
+ protected GetFiltredCustomizedFacetWidget createWidget() {
+ this.customFacetW = new GetFiltredCustomizedFacetWidget(
+ this.getDialogComposite());
+ return this.customFacetW;
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.GetOrCreate_customization_message;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Select_Customization;
+ }
+
+ @Override
+ protected void okPressed() {
+ // TODO Use of in instance of PropertyElement ?
+ this.getCallback().commited(this.customFacetW.getElementSelected());
+ super.okPressed();
+ }
+
+ @Override
+ protected void execute() {
+ getCallback().commited(this.customFacetW.getFacetSelected());
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/selection/GetExtendedFacetDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/selection/GetExtendedFacetDialog.java
new file mode 100644
index 00000000000..45cccebc4df
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/selection/GetExtendedFacetDialog.java
@@ -0,0 +1,72 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.selection;
+
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.AbstractGetCustomizationDialog;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.getorcreate.GetExtendedFacetWidget;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.getorcreate.GetFiltredExtendedFacetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+
+/**
+ * Concrete dialog for the selection of the extended facet.
+ *
+ * @see GetExtendedFacetWidget
+ */
+public class GetExtendedFacetDialog extends
+ AbstractGetCustomizationDialog<Facet, GetFiltredExtendedFacetWidget> {
+
+ private GetFiltredExtendedFacetWidget extendedFacetW;
+
+ /**
+ * Constructor.
+ *
+ * @param properties
+ * properties that parent widget had.
+ */
+ public GetExtendedFacetDialog(
+ final IWithResultDialogCallback<Facet> callback) {
+ super(callback);
+ }
+
+ @Override
+ protected GetFiltredExtendedFacetWidget createWidget() {
+ this.extendedFacetW = new GetFiltredExtendedFacetWidget(
+ this.getDialogComposite());
+ return this.extendedFacetW;
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.GetOrCreate_customization_message;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Select_Customization;
+ }
+
+ @Override
+ protected void okPressed() {
+ if (this.extendedFacetW.getFacetSelected() != null) {
+ getCallback().commited(this.extendedFacetW.getElementSelected());
+ }
+ super.okPressed();
+ }
+
+ @Override
+ protected void execute() {
+ getCallback().commited(this.extendedFacetW.getFacetSelected());
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/selection/GetFacetOperationDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/selection/GetFacetOperationDialog.java
new file mode 100644
index 00000000000..a86b8fc8483
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/selection/GetFacetOperationDialog.java
@@ -0,0 +1,79 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.selection;
+
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.AbstractGetCustomizationDialog;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.getorcreate.GetFiltredOperationFacetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+
+/**
+ * Concrete dialog for the selection of a Customization. The Customization is an
+ * operation into a particular facet.
+ *
+ * @see GetFiltredOperationFacetWidget
+ */
+public class GetFacetOperationDialog extends
+ AbstractGetCustomizationDialog<FacetOperation, GetFiltredOperationFacetWidget> {
+
+ private GetFiltredOperationFacetWidget operationFacetW;
+ private final Facet facet;
+
+ /**
+ * Constructor.
+ *
+ * @param properties
+ * properties that parent widget had.
+ */
+ public GetFacetOperationDialog(
+ final IWithResultDialogCallback<FacetOperation> callback,
+ final Facet facet) {
+ super(callback);
+ this.facet = facet;
+ }
+
+ @Override
+ protected GetFiltredOperationFacetWidget createWidget() {
+ this.operationFacetW = new GetFiltredOperationFacetWidget(
+ this.getDialogComposite(), this.facet);
+ return this.operationFacetW;
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.Get_customization_property_message;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Select_Customization_property;
+ }
+
+ @Override
+ protected void okPressed() {
+ if (this.operationFacetW.getFacetOperationSelected() != null) {
+ this.getCallback().commited(
+ this.operationFacetW.getFacetOperationSelected());
+ }
+ super.okPressed();
+ }
+
+ @Override
+ protected void execute() {
+ getCallback()
+ .commited(this.operationFacetW.getFacetOperationSelected());
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedAddCaseQueryDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedAddCaseQueryDialog.java
new file mode 100644
index 00000000000..9814251b08a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedAddCaseQueryDialog.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.sync;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.SynchronizedAbstractDialog;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Synchronized class for safe run.
+ */
+public class SynchronizedAddCaseQueryDialog extends
+ SynchronizedAbstractDialog<IDialog> {
+
+ /**
+ * Constructor.
+ *
+ * @param object
+ * the to synchronized.
+ * @param display
+ * the display.
+ */
+ public SynchronizedAddCaseQueryDialog(final IDialog object,
+ final Display display) {
+ super(object, display);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedAddCustomizationPropertyDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedAddCustomizationPropertyDialog.java
new file mode 100644
index 00000000000..836964857a4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedAddCustomizationPropertyDialog.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.sync;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.SynchronizedAbstractDialog;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Synchronized class for safe run.
+ */
+public class SynchronizedAddCustomizationPropertyDialog extends
+ SynchronizedAbstractDialog<IDialog> {
+
+ /**
+ * Constructor.
+ *
+ * @param object
+ * the to synchronized.
+ * @param display
+ * the display.
+ */
+ public SynchronizedAddCustomizationPropertyDialog(
+ final IDialog object, final Display display) {
+ super(object, display);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedCreateEClassCustomizationDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedCreateEClassCustomizationDialog.java
new file mode 100644
index 00000000000..08c59c75812
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedCreateEClassCustomizationDialog.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.sync;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.SynchronizedAbstractDialog;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Synchronized class for safe run.
+ */
+public class SynchronizedCreateEClassCustomizationDialog extends
+ SynchronizedAbstractDialog<IDialog> {
+
+ /**
+ * Constructor.
+ *
+ * @param object
+ * the to synchronized.
+ * @param display
+ * the display.
+ */
+ public SynchronizedCreateEClassCustomizationDialog(
+ final IDialog object, final Display display) {
+ super(object, display);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedCreateFacetCustomizationDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedCreateFacetCustomizationDialog.java
new file mode 100644
index 00000000000..92b1b91f236
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/dialog/sync/SynchronizedCreateFacetCustomizationDialog.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.sync;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.SynchronizedAbstractDialog;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Synchronized class for safe run.
+ */
+public class SynchronizedCreateFacetCustomizationDialog extends
+ SynchronizedAbstractDialog<IDialog> {
+
+ /**
+ * Constructor.
+ *
+ * @param object
+ * the to synchronized.
+ * @param display
+ * the display.
+ */
+ public SynchronizedCreateFacetCustomizationDialog(
+ final IDialog object, final Display display) {
+ super(object, display);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/AddCaseQueryHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/AddCaseQueryHandler.java
new file mode 100644
index 00000000000..da14b5a201e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/AddCaseQueryHandler.java
@@ -0,0 +1,42 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.handler;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.dialog.ICustomizationDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler.AbstractSelectionExpectedTypeHandler;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Handler for the creation of a case query into an {@link ETypedElementCase}.
+ *
+ * @see ETypedElementCase
+ */
+public class AddCaseQueryHandler extends AbstractSelectionExpectedTypeHandler {
+
+ @Override
+ protected Class<?> getSelectionExpectedType() {
+ return ETypedElementCase.class;
+ }
+
+ public Object execute(final ExecutionEvent event) throws ExecutionException {
+ final EditingDomain editingDomain = Utils.getEditingDomain(event);
+ final Display display = Utils.getDisplay(event);
+ return ICustomizationDialogFactory.DEFAULT.openAddCaseQueryDialog(
+ display, editingDomain);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/AddCustomizationPropertyInEClassHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/AddCustomizationPropertyInEClassHandler.java
new file mode 100644
index 00000000000..b437632c520
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/AddCustomizationPropertyInEClassHandler.java
@@ -0,0 +1,42 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.handler;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.dialog.ICustomizationDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler.AbstractSelectionExpectedTypeHandler;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Handler for the creation of an Customization Property into an EClass
+ * Customization.
+ */
+public class AddCustomizationPropertyInEClassHandler extends
+ AbstractSelectionExpectedTypeHandler {
+
+ public Object execute(final ExecutionEvent event) throws ExecutionException {
+ final EditingDomain editingDomain = Utils.getEditingDomain(event);
+ final Display display = Utils.getDisplay(event);
+ return ICustomizationDialogFactory.DEFAULT
+ .openAddCustomizationPropertyDialog(display, editingDomain);
+ }
+
+ @Override
+ protected Class<?> getSelectionExpectedType() {
+ return EClassCustomization.class;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/AddCustomizationPropertyInFacetHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/AddCustomizationPropertyInFacetHandler.java
new file mode 100644
index 00000000000..31ec430ecc5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/AddCustomizationPropertyInFacetHandler.java
@@ -0,0 +1,42 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.handler;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.dialog.ICustomizationDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler.AbstractSelectionExpectedTypeHandler;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Handler for the creation of an Customization Property into a Facet
+ * Customization.
+ */
+public class AddCustomizationPropertyInFacetHandler extends
+ AbstractSelectionExpectedTypeHandler {
+
+ public Object execute(final ExecutionEvent event) throws ExecutionException {
+ final EditingDomain editingDomain = Utils.getEditingDomain(event);
+ final Display display = Utils.getDisplay(event);
+ return ICustomizationDialogFactory.DEFAULT
+ .openAddCustomizationPropertyDialog(display, editingDomain);
+ }
+
+ @Override
+ protected Class<?> getSelectionExpectedType() {
+ return FacetCustomization.class;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/CreateEClassCustomizationHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/CreateEClassCustomizationHandler.java
new file mode 100644
index 00000000000..33dce3d3a57
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/CreateEClassCustomizationHandler.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.handler;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.dialog.ICustomizationDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler.AbstractSelectionExpectedTypeHandler;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Handler for the creation of an EClass Customization.
+ */
+public class CreateEClassCustomizationHandler extends
+ AbstractSelectionExpectedTypeHandler {
+
+ public Object execute(final ExecutionEvent event) throws ExecutionException {
+ final EditingDomain editingDomain = Utils.getEditingDomain(event);
+ final Display display = Utils.getDisplay(event);
+ return ICustomizationDialogFactory.DEFAULT
+ .openCreateEClassCustomizationDialog(display, editingDomain);
+ }
+
+ @Override
+ protected Class<?> getSelectionExpectedType() {
+ return Customization.class;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/CreateFacetCustomizationHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/CreateFacetCustomizationHandler.java
new file mode 100644
index 00000000000..3fb338d0f95
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/CreateFacetCustomizationHandler.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.handler;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.dialog.ICustomizationDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler.AbstractSelectionExpectedTypeHandler;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Handler for the creation of an Facet Customization.
+ */
+public class CreateFacetCustomizationHandler extends AbstractSelectionExpectedTypeHandler {
+
+ public Object execute(final ExecutionEvent event) throws ExecutionException {
+ final EditingDomain editingDomain = Utils.getEditingDomain(event);
+ final Display display = Utils.getDisplay(event);
+ return ICustomizationDialogFactory.DEFAULT
+ .openCreateFacetCustomizationDialog(display, editingDomain);
+ }
+
+ @Override
+ protected Class<?> getSelectionExpectedType() {
+ return Customization.class;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/Utils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/Utils.java
new file mode 100644
index 00000000000..5bdc14789e3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/handler/Utils.java
@@ -0,0 +1,78 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.handler;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.expressions.IEvaluationContext;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PlatformUI;
+
+public final class Utils {
+
+ private Utils() {
+ // Must not be used
+ }
+
+ public static EditingDomain getEditingDomain(final ExecutionEvent event) {
+ final IWorkbenchPart part = getPart(event);
+ IEditingDomainProvider edProvider = null;
+ if (part instanceof IEditingDomainProvider) {
+ edProvider = (IEditingDomainProvider) part;
+ } else {
+ edProvider = (IEditingDomainProvider) part
+ .getAdapter(IEditingDomainProvider.class);
+ }
+ EditingDomain editingDomain = null;
+ if (edProvider != null) {
+ editingDomain = edProvider.getEditingDomain();
+ }
+ return editingDomain;
+ }
+
+ private static IWorkbenchPart getPart(final ExecutionEvent event) {
+ IWorkbenchPart part = null;
+ if (event.getApplicationContext() instanceof IEvaluationContext) {
+ final IEvaluationContext evalContext = (IEvaluationContext) event
+ .getApplicationContext();
+ part = (IWorkbenchPart) evalContext.getVariable("activePart"); //$NON-NLS-1$
+ } else {
+ final IWorkbench workbench = PlatformUI.getWorkbench();
+ final IWorkbenchWindow window = workbench
+ .getActiveWorkbenchWindow();
+ if (window != null) {
+ final IWorkbenchPage page = window.getActivePage();
+ if (page != null) {
+ part = page.getActivePart();
+ }
+ }
+ }
+ return part;
+ }
+
+ public static Display getDisplay(final ExecutionEvent execEvent) {
+ Display display = null;
+ if (execEvent.getTrigger() instanceof Event) {
+ final Event event = (Event) execEvent.getTrigger();
+ display = event.display;
+ } else {
+ display = PlatformUI.getWorkbench().getDisplay();
+ }
+ return display;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/AddCaseQueryWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/AddCaseQueryWidget.java
new file mode 100644
index 00000000000..645188826cc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/AddCaseQueryWidget.java
@@ -0,0 +1,94 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.command;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.papyrus.emf.facet.custom.sdk.core.ICustomizationCommandFactory;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.property.name.GetCaseQueryNameWidget;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.property.name.GetCaseQueryTypeWidget;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.SelectQueryTypeWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractCommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Widget for the creation of a case query. This Widget return a command (
+ * {@link #getCommand()} for the creation of the element into the model.
+ *
+ * </p> This widget uses 3 others widgets:
+ *
+ * <li> {@link GetCaseQueryNameWidget} to display the name of the query.</li> <li>
+ * {@link GetCaseQueryTypeWidget} to display the type of the query.</li> <li>
+ * {@link SelectQueryTypeWidget} to select the query and open the query editor.</li>
+ */
+public class AddCaseQueryWidget extends AbstractCommandWidget {
+
+ private final PropertyElement2<ETypedElementCase> queryCaseProp;
+ private final PropertyElement2<Query> queryProperty;
+ private final ICustomizationCommandFactory customCmdFactory;
+ private final IQueryContext queryContext;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param properties
+ * the properties.
+ * @param customCmdFactory
+ * @param queryCaseProp
+ * @param queryNameProp
+ * @param queryTypeProp
+ * @param queryProperty
+ */
+ public AddCaseQueryWidget(final Composite parent,
+ final ICustomizationCommandFactory customCmdFactory,
+ final PropertyElement2<ETypedElementCase> queryCaseProperty,
+ final PropertyElement2<Query> queryProperty,
+ final IQueryContext queryContext) {
+ super(parent);
+ this.customCmdFactory = customCmdFactory;
+ this.queryCaseProp = queryCaseProperty;
+ this.queryProperty = queryProperty;
+ this.queryContext = queryContext;
+ }
+
+ @Override
+ public Command getCommand() {
+ final ETypedElementCase elementCase = this.queryCaseProp.getValue2();
+ final Query query = this.queryProperty.getValue2();
+ return this.customCmdFactory.addValueInCase(
+ elementCase, query);
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ addSubWidget(new GetCaseQueryNameWidget(this, this.queryCaseProp));
+ final SelectQueryTypeWidget queryTypeWidget = new SelectQueryTypeWidget(
+ this, this.queryProperty, true, this.queryContext);
+ addSubWidget(queryTypeWidget);
+ }
+
+ @Override
+ public void notifyChanged() {
+ // Nothing to do.
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing to do.
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/AddCustomizationPropertyWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/AddCustomizationPropertyWidget.java
new file mode 100644
index 00000000000..aacaed1ec1c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/AddCustomizationPropertyWidget.java
@@ -0,0 +1,119 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.command;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.getorcreate.GetOperationFacetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetCommandFactoryFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractCommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomFactory;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Widget for the selection of a customization property. This Widget return a
+ * command ( {@link #getCommand()} for the creation of the element into the
+ * model.</p>
+ *
+ * This widget uses the {@link GetOperationFacetWidget} widget to display a
+ * dialog where the user select the operation he wants.</p>
+ *
+ * When the operation is selected, a copy of this operation is made and this one
+ * will be added to the model.</p>
+ *
+ * Cases are created to be added to the operation:</p>
+ *
+ * <li>a <code>null</code> case</li> <li>a case for each
+ * {@link EStructuralFeature} of the extended meta-class</li>
+ */
+public class AddCustomizationPropertyWidget extends
+ AbstractCommandWidget {
+
+ private final EClassCustomization eClassCustom;
+ private final PropertyElement2<FacetOperation> facetOpProperty;
+ private final EditingDomain editingDomain;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param properties
+ * the properties.
+ */
+ public AddCustomizationPropertyWidget(final Composite parent,
+ final PropertyElement2<FacetOperation> facetOpProperty,
+ final EClassCustomization eClassCustomProp,
+ final EditingDomain editingDomain) {
+ super(parent);
+ this.facetOpProperty = facetOpProperty;
+ this.eClassCustom = eClassCustomProp;
+ this.editingDomain = editingDomain;
+ }
+
+ @Override
+ public Command getCommand() {
+ final FacetOperation customOperation = (FacetOperation) this.facetOpProperty
+ .getValue();
+ // Copy of the selected operation.
+ final FacetOperation facetOperation = EcoreUtil
+ .copy(customOperation);
+ // Set the selected operation has the override operation of the new one.
+ facetOperation.setOverride(customOperation);
+ // Creation of the Query
+ final ETypedElementSwitchQuery eTypedElementSQ = CustomFactory.eINSTANCE
+ .createETypedElementSwitchQuery();
+ ETypedElementCase elementCase;
+ // Adding a null case
+ elementCase = CustomFactory.eINSTANCE.createETypedElementCase();
+ elementCase.setCase(null);
+ eTypedElementSQ.getCases().add(elementCase);
+ // Adding a Case for each Structural Feature.
+ for (final EStructuralFeature feature : this.eClassCustom
+ .getExtendedMetaclass().getEAllStructuralFeatures()) {
+ elementCase = CustomFactory.eINSTANCE.createETypedElementCase();
+ elementCase.setCase(feature);
+ eTypedElementSQ.getCases().add(elementCase);
+ }
+ // Set the query created to the custom operation.
+ facetOperation.setQuery(eTypedElementSQ);
+ return IFacetCommandFactoryFactory.DEFAULT.createCommandFactory(
+ this.editingDomain).createAddOperationInFacetCommand(
+ this.eClassCustom, facetOperation);
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing to do.
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ final GetOperationFacetWidget widget = new GetOperationFacetWidget(
+ this, this.facetOpProperty, this.eClassCustom);
+ addSubWidget(widget);
+ }
+
+ @Override
+ public void notifyChanged() {
+ // Nothing to do.
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/CreateEClassCustomizationWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/CreateEClassCustomizationWidget.java
new file mode 100644
index 00000000000..6ec1ee883d1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/CreateEClassCustomizationWidget.java
@@ -0,0 +1,180 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.command;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.core.ICustomizationCommandFactory;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.getorcreate.GetExtendedFacetWidget;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.getorcreate.GetOrCreateCustomizationWidget;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.metaclass.GetExtendedMetaclassWidget;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractCommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomFactory;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Widget for the creation of an {@link EClassCustomization}. This Widget return
+ * a command ( {@link #getCommand()} for the creation of the element into the
+ * model.
+ * <p/>
+ *
+ * This widget uses 3 others:
+ * <p/>
+ * <li> {@link GetOrCreateCustomizationWidget} for the selection of the parent.</li>
+ * <p/>
+ * <li> {@link GetExtendedMetaclassWidget} for the selection of the extended
+ * meta-class</li>
+ * <p/>
+ * <li> {@link GetExtendedFacetWidget} for the selection of the extended
+ * {@link Facet}</li>
+ */
+public class CreateEClassCustomizationWidget extends AbstractCommandWidget {
+
+ private final PropertyElement2<Customization> customProperty;
+ private final PropertyElement2<EClass> mClassProperty;
+ private final PropertyElement2<Facet> extFacetProperty;
+
+ private GetOrCreateCustomizationWidget customWidget;
+ private GetExtendedMetaclassWidget extendedMCWidget;
+ private GetExtendedFacetWidget extendedFacetW;
+ private final ICustomizationCommandFactory customCmdFactory;
+ private final EditingDomain editingDomain;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param properties
+ * the properties.
+ */
+ public CreateEClassCustomizationWidget(final Composite parent,
+ final ICustomizationCommandFactory customCmdFactory,
+ final EditingDomain editingDomain,
+ final PropertyElement2<Customization> customProperty,
+ final PropertyElement2<EClass> mClassProperty,
+ final PropertyElement2<Facet> extFacetProperty) {
+ super(parent);
+ this.customCmdFactory = customCmdFactory;
+ this.editingDomain = editingDomain;
+ this.customProperty = customProperty;
+ this.mClassProperty = mClassProperty;
+ this.extFacetProperty = extFacetProperty;
+ }
+
+ @Override
+ public Command getCommand() {
+ final Customization customization = (Customization) this
+ .getCustomizationProperty().getValue();
+ final EClassCustomization eClassCustom = createEClassCustomization();
+ return this.customCmdFactory.createEClassCustomization(customization,
+ eClassCustom);
+ }
+
+ public EClassCustomization createEClassCustomization() {
+ final EClass extendedMetaclass = (EClass) this.getMetaClassProperty()
+ .getValue();
+ final Facet extendedFacet = (Facet) this.getExtendedFacetProperty()
+ .getValue();
+ final String name = extendedMetaclass.getName() + " " //$NON-NLS-1$
+ + extendedFacet.getDocumentation();
+ final EClassCustomization eClassCustom = getEClassCustomization();
+ eClassCustom.setName(name);
+ eClassCustom.setExtendedMetaclass(extendedMetaclass);
+ eClassCustom.getExtendedFacets().add(extendedFacet);
+ return eClassCustom;
+ }
+
+ @SuppressWarnings("static-method")
+ // @SuppressWarnings("static-method") This method is overrode by
+ // EditEClassCustomizationWidget.
+ public EClassCustomization getEClassCustomization() {
+ return CustomFactory.eINSTANCE.createEClassCustomization();
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing.
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ this.customWidget = new GetOrCreateCustomizationWidget(this,
+ this.customProperty, this.editingDomain);
+ addSubWidget(this.customWidget);
+ this.extendedMCWidget = new GetExtendedMetaclassWidget(this,
+ this.mClassProperty, this.customProperty);
+ addSubWidget(this.extendedMCWidget);
+ this.extendedFacetW = new GetExtendedFacetWidget(this,
+ this.extFacetProperty);
+ addSubWidget(this.extendedFacetW);
+ }
+
+ @Override
+ public void notifyChanged() {
+ // Nothing.
+ }
+
+ /**
+ * @return the customizationProperty
+ */
+ public PropertyElement getCustomizationProperty() {
+ return this.customProperty;
+ }
+
+ /**
+ * @return the metaClassProperty
+ */
+ public PropertyElement getMetaClassProperty() {
+ return this.mClassProperty;
+ }
+
+ /**
+ * @return the extendedFacetProperty
+ */
+ public PropertyElement getExtendedFacetProperty() {
+ return this.extFacetProperty;
+ }
+
+ /**
+ * @return the getOrCreateCustomizationWidget
+ */
+ public GetOrCreateCustomizationWidget getGetOrCreateCustomizationWidget() {
+ return this.customWidget;
+ }
+
+ /**
+ * @return the getExtendedMetaclassWidget
+ */
+ public GetExtendedMetaclassWidget getGetExtendedMetaclassWidget() {
+ return this.extendedMCWidget;
+ }
+
+ /**
+ * @return the getExtendedFacetWidget
+ */
+ public GetExtendedFacetWidget getGetExtendedFacetWidget() {
+ return this.extendedFacetW;
+ }
+
+ protected final ICustomizationCommandFactory getCustomCmdFactory() {
+ return this.customCmdFactory;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/CreateFacetCustomizationWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/CreateFacetCustomizationWidget.java
new file mode 100644
index 00000000000..7a586bd57b2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/CreateFacetCustomizationWidget.java
@@ -0,0 +1,123 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.command;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.core.ICustomizationCommandFactory;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.getorcreate.GetCustomizedFacetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomFactory;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Widget for the creation of an {@link FacetCustomization}. This Widget return
+ * a command ( {@link #getCommand()} for the creation of the element into the
+ * model and extends {@link CreateEClassCustomizationWidget}.
+ * <p/>
+ *
+ * This widget add a other widget to the 3 of
+ * {@link CreateEClassCustomizationWidget}:
+ * <p/>
+ * <li> {@link GetCustomizedFacetWidget} for the selection of a {@link Facet}</li>
+ */
+public class CreateFacetCustomizationWidget extends
+ CreateEClassCustomizationWidget {
+
+ private final PropertyElement2<Facet> facetCustomProp;
+ private GetCustomizedFacetWidget getCustomFacetW;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param properties
+ * the properties.
+ * @param mClassProperty
+ * @param customProperty
+ * @param extFacetProperty
+ * @param facetCustomProp
+ * @param facetCustomProp
+ */
+ public CreateFacetCustomizationWidget(final Composite parent,
+ final ICustomizationCommandFactory customCmdFactory,
+ final EditingDomain editingDomain,
+ final PropertyElement2<EClass> mClassProperty,
+ final PropertyElement2<Customization> customProperty,
+ final PropertyElement2<Facet> extFacetProperty,
+ final PropertyElement2<Facet> facetCustomProp) {
+ super(parent, customCmdFactory, editingDomain,
+ customProperty, mClassProperty, extFacetProperty);
+ this.facetCustomProp = facetCustomProp;
+ }
+
+ @Override
+ public Command getCommand() {
+ final Customization customization = (Customization) this
+ .getCustomizationProperty().getValue();
+ final FacetCustomization facetCustom = createFacetCustomization();
+ return getCustomCmdFactory().createFacetCustomization(customization,
+ facetCustom);
+ }
+
+ public FacetCustomization createFacetCustomization() {
+ final EClass extendedMetaclass = (EClass) this.getMetaClassProperty()
+ .getValue();
+ final Facet extendedFacet = (Facet) this.getExtendedFacetProperty()
+ .getValue();
+ final String name = extendedMetaclass.getName() + " " //$NON-NLS-1$
+ + extendedFacet.getDocumentation();
+ final Facet customizedFacet = (Facet) this.facetCustomProp.getValue();
+ final FacetCustomization facetCustom = getFacetCustomization();
+ facetCustom.setName(name);
+ facetCustom.setExtendedMetaclass(extendedMetaclass);
+ facetCustom.getExtendedFacets().add(extendedFacet);
+ facetCustom.setCustomizedFacet(customizedFacet);
+ return facetCustom;
+ }
+
+ @SuppressWarnings("static-method")
+ //@SuppressWarnings("static-method") This method is overrode by EditFacetCustomizationWidget.
+ public FacetCustomization getFacetCustomization() {
+ return CustomFactory.eINSTANCE.createFacetCustomization();
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ super.addSubWidgets();
+ this.getCustomFacetW = new GetCustomizedFacetWidget(this,
+ this.facetCustomProp);
+ addSubWidget(this.getCustomFacetW);
+ }
+
+ /**
+ * @return the facetCustomizedProperty
+ */
+ public PropertyElement getFacetCustomizedProperty() {
+ return this.facetCustomProp;
+ }
+
+ /**
+ * @return the getCustomizedFacetWidget
+ */
+ public GetCustomizedFacetWidget getGetCustomizedFacetWidget() {
+ return this.getCustomFacetW;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/GetOrCreateCustomizationWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/GetOrCreateCustomizationWidget.java
new file mode 100644
index 00000000000..794dc1dc059
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/command/GetOrCreateCustomizationWidget.java
@@ -0,0 +1,101 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.command;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.command.CreateEClassCustomizationDialog;
+import org.eclipse.papyrus.emf.facet.efacet.core.FacetUtils;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractGetOrCreateFilteredElementCommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This widget allow the user to select a Customization.
+ *
+ * @see AbstractGetOrCreateFilteredElementCommandWidget
+ */
+public class GetOrCreateCustomizationWidget extends
+ AbstractGetOrCreateFilteredElementCommandWidget<Customization, ICommandWidget> {
+
+ private final EditingDomain editingDomain;
+ private final PropertyElement2<Customization> customProperty;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param properties
+ * the properties.
+ * @param customProperty
+ */
+ public GetOrCreateCustomizationWidget(final Composite parent,
+ final EditingDomain editingDomain,
+ final PropertyElement2<Customization> customProperty) {
+ super(parent);
+ this.editingDomain = editingDomain;
+ this.customProperty = customProperty;
+ }
+
+ @Override
+ protected Map<String, Customization> getElements() {
+ final Map<String, Customization> result = new HashMap<String, Customization>();
+ final Customization initialSelection = this.customProperty.getValue2();
+ final FacetSet parent = FacetUtils
+ .getContainingFacetSet(initialSelection);
+ final Map<String, FacetSet> allFacetSets = FacetUtils
+ .getAllFacetSetsByName(parent);
+ for (String key : allFacetSets.keySet()) {
+ final FacetSet value = allFacetSets.get(key);
+ if (value instanceof Customization) {
+ final Customization custom = (Customization) value;
+ result.put(key, custom);
+ }
+ }
+ final Object name = initialSelection.getName();
+ result.remove(name);
+ return result;
+ }
+
+ @Override
+ protected IDialog<ICommandWidget> createDialog() {
+ return new CreateEClassCustomizationDialog(
+ this.customProperty.getValue2(), this.editingDomain);
+ }
+
+ @Override
+ public Command getCommand() {
+ // Here, this widget only return a selected element so, no command is
+ // returned.
+ return null;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing.
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/AbstractGetFacetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/AbstractGetFacetWidget.java
new file mode 100644
index 00000000000..5f1b726db36
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/AbstractGetFacetWidget.java
@@ -0,0 +1,61 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.getorcreate;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWithButtonWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWithDialogButtonWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This class extends {@link AbstractGetOrCreateElementWithButtonWidget} and
+ * display to the user a label with a textfield and a button to select the
+ * customized facet.
+ */
+public abstract class AbstractGetFacetWidget<W extends Object> extends
+ AbstractGetOrCreateElementWithDialogButtonWidget<Facet, W> {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param propertyElement
+ * the property element that be edited with this composite.
+ * @param properties
+ * the map of properties of the parent.
+ */
+ public AbstractGetFacetWidget(final Composite parent,
+ final PropertyElement2<Facet> propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getTextFieldInitialText() {
+ return this.getPropertyElement().getValue2().getName();
+ }
+
+ @Override
+ public void notifyChanged() { // NOPMD by gdupe on 24/09/12 16:59
+ // NOPMD This methods will be empty in all the sub classes of this class
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ protected void onCanceled() { // NOPMD by gdupe on 24/09/12 16:59
+ // NOPMD This methods will be empty in all the sub classes of this class
+ // Nothing to do.
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetCustomizedFacetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetCustomizedFacetWidget.java
new file mode 100644
index 00000000000..4b990494860
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetCustomizedFacetWidget.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.getorcreate;
+
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.selection.GetCustomizedFacetDialog;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWithButtonWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This class extends {@link AbstractGetOrCreateElementWithButtonWidget} and
+ * display to the user a label with a textfield and a button to select the
+ * customized facet.
+ */
+public class GetCustomizedFacetWidget extends
+ AbstractGetFacetWidget<GetFiltredCustomizedFacetWidget> {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param propertyElement
+ * the property element that be edited with this composite.
+ * @param properties
+ * the map of properties of the parent.
+ */
+ public GetCustomizedFacetWidget(final Composite parent,
+ final PropertyElement2<Facet> propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.CustomizedFacet;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return Messages.CustomizedFacet_mustSelectCustomizedFacet;
+ }
+
+ @Override
+ protected GetCustomizedFacetDialog getCreationDialog(
+ final IWithResultDialogCallback<Facet> callback) {
+ return new GetCustomizedFacetDialog(callback);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetExtendedFacetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetExtendedFacetWidget.java
new file mode 100644
index 00000000000..defeb57953f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetExtendedFacetWidget.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.getorcreate;
+
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.selection.GetExtendedFacetDialog;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWithButtonWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This class extends {@link AbstractGetOrCreateElementWithButtonWidget}. The
+ * widget open the {@link GetExtendedFacetDialog} dialog when the button [...]
+ * is pressed {@link #createDialog()}.
+ */
+public class GetExtendedFacetWidget extends
+ AbstractGetFacetWidget<GetFiltredExtendedFacetWidget> {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param propertyElement
+ * the property element that be edited with this composite.
+ * @param properties
+ * the map of properties of the parent.
+ */
+ public GetExtendedFacetWidget(final Composite parent,
+ final PropertyElement2<Facet> propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.ExtendedFacet;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return Messages.Facet_mustSelectFacet;
+ }
+
+ @Override
+ protected GetExtendedFacetDialog getCreationDialog(
+ final IWithResultDialogCallback<Facet> callback) {
+ return new GetExtendedFacetDialog(callback);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetFiltredCustomizedFacetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetFiltredCustomizedFacetWidget.java
new file mode 100644
index 00000000000..5f8c2155cf2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetFiltredCustomizedFacetWidget.java
@@ -0,0 +1,121 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.getorcreate;
+
+import java.io.File;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetSetCatalogManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetSetCatalogManagerFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.util.EditingUtil;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractGetOrCreateFilteredElementCommandWidget;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This widget extends {@link AbstractGetOrCreateFilteredElementCommandWidget} and allow
+ * the selection of a {@link Facet} that the Customization will customize. It
+ * displays a selection window with a textfield to filter the element in the
+ * selection window. Extending {@link AbstractGetOrCreateFilteredElementCommandWidget},
+ * a [New...] button can be displayed. Here, no button is displayed because we
+ * only select the extended facet into the existing facet.
+ * <p/>
+ *
+ * The selection window will be full up with the customization properties
+ * returned by {@link IFacetSetCatalogManager}.
+ */
+public class GetFiltredCustomizedFacetWidget extends
+ AbstractGetOrCreateFilteredElementCommandWidget<Facet, Object> {
+
+ protected static final String TMP_NAME = Activator.getDefault()
+ .getBundle().getSymbolicName()
+ + ".tmp"; //$NON-NLS-1$
+ public static final File DEFAULT_FILE = new File(Platform
+ .getStateLocation(Activator.getDefault().getBundle()).toOSString(),
+ GetFiltredCustomizedFacetWidget.TMP_NAME);
+
+ private final IFacetSetCatalogManager facetSetCatMan;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param properties
+ * the map of properties of the parent.
+ */
+ public GetFiltredCustomizedFacetWidget(final Composite parent) {
+ super(parent);
+ this.facetSetCatMan = IFacetSetCatalogManagerFactory.DEFAULT
+ .getOrCreateFacetSetCatalogManager(EditingUtil
+ .createDefaultResource(
+ GetFiltredCustomizedFacetWidget.DEFAULT_FILE)
+ .getResourceSet());
+ }
+
+ @Override
+ protected Map<String, Facet> getElements() {
+ final Map<String, Facet> allFacets = new HashMap<String, Facet>();
+ final Collection<FacetSet> facetSets = this.facetSetCatMan
+ .getRegisteredFacetSets();
+ for (final FacetSet facetSet : facetSets) {
+ for (final EClassifier eClassifier : facetSet.getEClassifiers()) {
+ if ((eClassifier instanceof Facet)
+ && (eClassifier.getName() != null)) {
+ allFacets.put(eClassifier.getName(), (Facet) eClassifier);
+ }
+ }
+ }
+ return allFacets;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public Command getCommand() {
+ // Here, this widget only return a selected element so, no command is
+ // returned.
+ return null;
+ }
+
+ @Override
+ protected IDialog<Object> createDialog() {
+ // No "New..." button.
+ return null;
+ }
+
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing.
+ }
+
+ /**
+ * @return
+ */
+ public Facet getFacetSelected() {
+ return getElementSelected();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetFiltredExtendedFacetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetFiltredExtendedFacetWidget.java
new file mode 100644
index 00000000000..e83066e4024
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetFiltredExtendedFacetWidget.java
@@ -0,0 +1,120 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.getorcreate;
+
+import java.io.File;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.util.EditingUtil;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractGetOrCreateFilteredElementCommandWidget;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationPropertiesCatalogManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationPropertiesCatalogManagerFactory;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This widget extends {@link AbstractGetOrCreateFilteredElementCommandWidget} and allow
+ * the selection of a {@link Facet} that the Customization will extend. It
+ * displays a selection window with a textfield to filter the element in the
+ * selection window. Extending {@link AbstractGetOrCreateFilteredElementCommandWidget},
+ * a [New...] button can be displayed. Here, no button is displayed because we
+ * only select the extended facet into the existing facet.
+ * <p/>
+ *
+ * The selection window will be full up with the customization properties
+ * returned by {@link ICustomizationPropertiesCatalogManager}.
+ */
+public class GetFiltredExtendedFacetWidget extends
+ AbstractGetOrCreateFilteredElementCommandWidget<Facet, Object> {
+
+ protected static final String TMP_NAME = Activator.getDefault()
+ .getBundle().getSymbolicName()
+ + ".tmp"; //$NON-NLS-1$
+ public static final File DEFAULT_FILE = new File(Platform
+ .getStateLocation(Activator.getDefault().getBundle()).toOSString(),
+ GetFiltredExtendedFacetWidget.TMP_NAME);
+
+ private final ICustomizationPropertiesCatalogManager customPropCatMan;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param properties
+ * the map of properties of the parent.
+ */
+ public GetFiltredExtendedFacetWidget(final Composite parent) {
+ super(parent);
+ this.customPropCatMan = ICustomizationPropertiesCatalogManagerFactory.INSTANCE
+ .getOrCreateCustomizationPropertiesCatalogManager(EditingUtil
+ .createDefaultResource(
+ GetFiltredExtendedFacetWidget.DEFAULT_FILE)
+ .getResourceSet());
+ }
+
+ @Override
+ protected Map<String, Facet> getElements() {
+ final Map<String, Facet> allFacets = new HashMap<String, Facet>();
+ final List<FacetSet> facetSets = this.customPropCatMan
+ .getAllRegisteredCustomizationPropertySet();
+ for (final FacetSet facetSet : facetSets) {
+ for (final EClassifier eClassifier : facetSet.getEClassifiers()) {
+ if ((eClassifier instanceof Facet)
+ && (eClassifier.getName() != null)) {
+ allFacets.put(eClassifier.getName(), (Facet) eClassifier);
+ }
+ }
+ }
+ return allFacets;
+ }
+
+ @Override
+ protected IDialog<Object> createDialog() {
+ // No "New..." button.
+ return null;
+ }
+
+ @Override
+ public Command getCommand() {
+ // Here, this widget only return a selected element so, no command is
+ // returned.
+ return null;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing.
+ }
+
+ /**
+ * @return
+ */
+ public Facet getFacetSelected() {
+ return getElementSelected();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetFiltredOperationFacetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetFiltredOperationFacetWidget.java
new file mode 100644
index 00000000000..760914972eb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetFiltredOperationFacetWidget.java
@@ -0,0 +1,97 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.getorcreate;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractGetOrCreateFilteredElementCommandWidget;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This widget provide the selection of a {@link FacetOperation} available of
+ * the selected {@link Facet}. The {@link Facet} is passed in the constructor
+ * parameter.
+ * <p/>
+ *
+ * This widget extends {@link AbstractGetOrCreateFilteredElementCommandWidget}.
+ *
+ * @see AbstractGetOrCreateFilteredElementCommandWidget
+ */
+public class GetFiltredOperationFacetWidget extends
+ AbstractGetOrCreateFilteredElementCommandWidget<FacetOperation, Object> {
+
+ private final Facet selectedFacet;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param facetOpProperty
+ * @param properties
+ * the map of properties of the parent.
+ * @param facetOpProperty
+ */
+ public GetFiltredOperationFacetWidget(final Composite parent,
+ final Facet selectedFacet) {
+ super(parent);
+ this.selectedFacet = selectedFacet;
+ }
+
+ @Override
+ protected Map<String, FacetOperation> getElements() {
+ final Map<String, FacetOperation> allFacetOpes = new HashMap<String, FacetOperation>();
+ for (final Facet facet : this.selectedFacet.getExtendedFacets()) {
+ for (final FacetOperation operation : facet.getFacetOperations()) {
+ allFacetOpes.put(operation.getName(), operation);
+ }
+ }
+ return allFacetOpes;
+ }
+
+ @Override
+ protected IDialog<Object> createDialog() {
+ // No "New..." button.
+ return null;
+ }
+
+ @Override
+ public Command getCommand() {
+ // Here, this widget only return a selected element so, no command is
+ // returned.
+ return null;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing.
+ }
+
+ /**
+ * @return
+ */
+ public FacetOperation getFacetOperationSelected() {
+ return getElementSelected();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetOperationFacetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetOperationFacetWidget.java
new file mode 100644
index 00000000000..036247aa12e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetOperationFacetWidget.java
@@ -0,0 +1,82 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.getorcreate;
+
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.selection.GetFacetOperationDialog;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWithButtonWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWithDialogButtonWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This widget extends {@link AbstractGetOrCreateElementWithButtonWidget}.
+ */
+public class GetOperationFacetWidget
+ extends
+ AbstractGetOrCreateElementWithDialogButtonWidget<FacetOperation, GetFiltredOperationFacetWidget> {
+
+ private final Facet facet;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param propertyElement
+ * the property element that be edited with this composite.
+ * @param properties
+ * the map of properties of the parent.
+ */
+ public GetOperationFacetWidget(final Composite parent,
+ final PropertyElement2<FacetOperation> propertyElement,
+ final Facet facet) {
+ super(parent, propertyElement);
+ this.facet = facet;
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.OperationFacet;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return Messages.OperationFacet_mustSelectOperationFacet;
+ }
+
+ @Override
+ protected String getTextFieldInitialText() {
+ return this.getPropertyElement().getValue2().getName();
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ protected void onCanceled() {
+ // Nothing to do.
+ }
+
+ @Override
+ protected GetFacetOperationDialog getCreationDialog(
+ final IWithResultDialogCallback<FacetOperation> callback) {
+ return new GetFacetOperationDialog(callback, this.facet);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetOrCreateCustomizationWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetOrCreateCustomizationWidget.java
new file mode 100644
index 00000000000..e1a9bf9caad
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/getorcreate/GetOrCreateCustomizationWidget.java
@@ -0,0 +1,85 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.getorcreate;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.dialog.getorcreate.GetOrCreateCustomizationDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWithDialogButtonWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This widget allow the creation of a Customization element.
+ */
+public class GetOrCreateCustomizationWidget
+ extends
+ AbstractGetOrCreateElementWithDialogButtonWidget<Customization, IGetOrCreateFilteredElementCommmandWidget<Customization, ICommandWidget>> {
+
+ private final EditingDomain editingDomain;
+
+ /**
+ * Constructor.*
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param propertyElement
+ * the property element that be edited with this composite.
+ * @param properties
+ * the map of properties of the parent.
+ */
+ public GetOrCreateCustomizationWidget(final Composite parent,
+ final PropertyElement2<Customization> propertyElement,
+ final EditingDomain editingDomain) {
+ super(parent, propertyElement);
+ this.editingDomain = editingDomain;
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Customization;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return Messages.Customization_mustSelectCustomization;
+ }
+
+ @Override
+ protected String getTextFieldInitialText() {
+ return this.getPropertyElement().getValue2().getName();
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ protected void onCanceled() {
+ // Nothing to do.
+ }
+
+ @Override
+ protected IDialog<IGetOrCreateFilteredElementCommmandWidget<Customization, ICommandWidget>> getCreationDialog(
+ final IWithResultDialogCallback<Customization> callback) {
+ return new GetOrCreateCustomizationDialog(callback, this.editingDomain,
+ this.getPropertyElement().getValue2());
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/metaclass/GetExtendedMetaclassWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/metaclass/GetExtendedMetaclassWidget.java
new file mode 100644
index 00000000000..5f8aaaf67b8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/metaclass/GetExtendedMetaclassWidget.java
@@ -0,0 +1,85 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.metaclass;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.widget.component.metaclass.AbstractGetMetaclassWidget;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Concrete implementation of {@link AbstractGetMetaclassWidget} abstract
+ * class.</p>
+ *
+ * Create a simple Label {@link #getLabel()}TextField and a button.</p> This
+ * class provide the selection the extended metaclass. The type used is
+ * {@link ETypeSelectionOptions#ECLASS}
+ *
+ * @since 0.3
+ */
+public class GetExtendedMetaclassWidget extends
+ AbstractGetMetaclassWidget<EClass> {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param propertyElement
+ * the property element that will be edited by this composite.
+ * @param facetSetProp
+ * the property element to get the super, main, facetSet of the
+ * model.
+ */
+ public GetExtendedMetaclassWidget(final Composite parent,
+ final PropertyElement2<EClass> propertyElement,
+ final PropertyElement2<? extends FacetSet> facetSetProp) {
+ super(parent, propertyElement, facetSetProp, EClass.class);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.ExtendedMetaClass;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return Messages.Metaclass_mustSelectMetaclass;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ protected String getTextFieldInitialText() {
+ return getPropertyElement().getValue2().getName();
+ }
+
+ @Override
+ protected EPackage getEPackage() {
+ return this.getEPackageProperty().getValue2();
+ }
+
+ @Override
+ protected ISelectETypeWizard<EClass> createSynchronizedWizard(
+ final ISelectETypeWizard<EClass> wizard) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/property/name/GetCaseQueryNameWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/property/name/GetCaseQueryNameWidget.java
new file mode 100644
index 00000000000..570c54d2c7d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/property/name/GetCaseQueryNameWidget.java
@@ -0,0 +1,68 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.property.name;
+
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name.AbstractPrintElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Display a textfield with the query name on it.
+ */
+public class GetCaseQueryNameWidget extends
+ AbstractPrintElementWidget<ETypedElementCase> {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param propertyElement
+ * the property element that be edited with this composite.
+ */
+ public GetCaseQueryNameWidget(final Composite parent,
+ final PropertyElement2<ETypedElementCase> propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Query_case_name;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return null;
+ }
+
+ @Override
+ protected String getTextFieldInitialText() {
+ String result = "The object node cusomization"; //$NON-NLS-1$
+ final ETypedElementCase eTECase = this.getPropertyElement().getValue2();
+ final ETypedElement eTypedElement = eTECase.getCase();
+ if (eTypedElement != null) {
+ result = eTypedElement.getName();
+ }
+ return result;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // Nothing.
+ }
+
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/property/name/GetCaseQueryTypeWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/property/name/GetCaseQueryTypeWidget.java
new file mode 100644
index 00000000000..4264952c505
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/property/name/GetCaseQueryTypeWidget.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.property.name;
+
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name.AbstractPrintElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Display a textfield with the query type on it.
+ */
+public class GetCaseQueryTypeWidget extends
+ AbstractPrintElementWidget<ETypedElement> {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param propertyElement
+ * the property element that be edited with this composite.
+ */
+ public GetCaseQueryTypeWidget(final Composite parent,
+ final PropertyElement2<ETypedElement> propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Query_case_type;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return null;
+ }
+
+ @Override
+ protected String getTextFieldInitialText() {
+ return this.getPropertyElement().getValue2().getName();
+ }
+
+ @Override
+ public void notifyChanged() {
+ // Nothing.
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/property/name/GetEClassCustomizationNameWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/property/name/GetEClassCustomizationNameWidget.java
new file mode 100644
index 00000000000..b83657b163d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/widget/property/name/GetEClassCustomizationNameWidget.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.widget.property.name;
+
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name.AbstractGetElementNameWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Display a textfield with the customization name on it.
+ */
+public class GetEClassCustomizationNameWidget extends
+ AbstractGetElementNameWidget {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param propertyElement
+ * the property element that be edited with this composite.
+ */
+ public GetEClassCustomizationNameWidget(final Composite parent,
+ final PropertyElement2<String> propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Customization;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return Messages.Customization_mustGiveCustomizationName;
+ }
+
+ @Override
+ protected String getTextFieldInitialText() {
+ return (String) this.getPropertyElement().getValue();
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/wizard/CreateCustimizationWizardImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/wizard/CreateCustimizationWizardImpl.java
new file mode 100644
index 00000000000..2fce227e912
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/wizard/CreateCustimizationWizardImpl.java
@@ -0,0 +1,268 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.wizard;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.papyrus.emf.facet.custom.sdk.core.ICustomizationActions;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.wizard.page.CreateCustomizationWizardPage;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.wizard.page.CustomPropertyWizardPage;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.wizard.page.ICreateCustomizationWizardPage;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.wizard.page.ICustomizationPropertyWizardPage;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.window.Window;
+import org.eclipse.jface.wizard.IWizardPage;
+import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.jface.wizard.WizardDialog;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.IEditorDescriptor;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IEditorRegistry;
+import org.eclipse.ui.INewWizard;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.actions.WorkspaceModifyOperation;
+import org.eclipse.ui.part.FileEditorInput;
+import org.eclipse.ui.part.ISetSelectionTarget;
+
+/**
+ * Wizard for the creation of the "custom" file for customization.
+ */
+public class CreateCustimizationWizardImpl extends Wizard implements INewWizard {
+
+ private WizardDialog dialog;
+
+ private IStructuredSelection selection;
+ private IWorkbench workbench;
+ private final ICreateCustomizationWizardPage customWizardPage;
+ private final ICustomizationPropertyWizardPage propertyWP;
+
+ private boolean openCustom = true;
+
+ public CreateCustimizationWizardImpl() {
+ this(PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+ .getSelectionService().getSelection());
+ }
+
+ public CreateCustimizationWizardImpl(final ISelection selection,
+ final boolean openCustom) {
+ this(selection);
+ this.openCustom = openCustom;
+ }
+
+ public CreateCustimizationWizardImpl(final ISelection selection) {
+ super();
+ if (selection instanceof IStructuredSelection) {
+ this.selection = (IStructuredSelection) selection;
+ }
+ setWindowTitle(Messages.Create_Customization_Model);
+ this.customWizardPage = new CreateCustomizationWizardPage("Whatever", //$NON-NLS-1$
+ this.selection);
+ this.propertyWP = new CustomPropertyWizardPage("Whatever"); //$NON-NLS-1$
+ }
+
+ @Override
+ public void addPages() {
+ addPage(this.customWizardPage);
+ addPage(this.propertyWP);
+ }
+
+ public int open() {
+ this.dialog = new WizardDialog(Display.getDefault().getShells()[0],
+ this);
+ int result = Window.CANCEL;
+
+ if (this.dialog != null) {
+ result = this.dialog.open();
+ }
+ return result;
+ }
+
+ @Override
+ public boolean performFinish() {
+ return finish();
+ }
+
+ protected IWorkbenchWindow selectWorkbenchWindow() {
+ if (this.workbench == null) {
+ this.workbench = PlatformUI.getWorkbench();
+ }
+ final IWorkbenchWindow workbenchWindow = this.workbench
+ .getActiveWorkbenchWindow();
+ return workbenchWindow;
+ }
+
+ protected WorkspaceModifyOperation createOperation(final IFile modelFile) {
+ final WorkspaceModifyOperation operation = new WorkspaceModifyOperation() {
+ @Override
+ protected void execute(final IProgressMonitor progressMonitor) {
+ try {
+ final Customization customization = createInitialCustomization();
+ ICustomizationActions.INSTANCE.saveCustomization(
+ customization, modelFile);
+ } catch (final Exception exception) {
+ Logger.logError(exception, Activator.getDefault());
+ } finally {
+ progressMonitor.done();
+ }
+ }
+ };
+ return operation;
+ }
+
+ protected void openNewFile(final IFile modelFile,
+ final IWorkbenchWindow workbenchWindow, final IWorkbenchPage page) {
+ // Open an editor on the new file.
+ try {
+ final String fileName = modelFile.getName();
+ final IEditorRegistry editorRegistry = this.workbench
+ .getEditorRegistry();
+ final IEditorDescriptor defaultEditor = editorRegistry
+ .getDefaultEditor(fileName);
+ final String editorId = defaultEditor.getId();
+ final FileEditorInput editorInput = new FileEditorInput(modelFile);
+ page.openEditor(editorInput, editorId);
+ } catch (final PartInitException exception) {
+ MessageDialog.openError(workbenchWindow.getShell(),
+ "Open Editor", exception.getMessage()); //$NON-NLS-1$
+ }
+ }
+
+ protected IWorkbenchPage selectNewFile(final IFile modelFile,
+ final IWorkbenchWindow workbenchWindow) {
+ final IWorkbenchPage page = workbenchWindow.getActivePage();
+ final IWorkbenchPart activePart = page.getActivePart();
+ if (activePart instanceof ISetSelectionTarget) {
+ final ISelection targetSelection = new StructuredSelection(
+ modelFile);
+ getShell().getDisplay().asyncExec(new Runnable() {
+ public void run() {
+ ((ISetSelectionTarget) activePart)
+ .selectReveal(targetSelection);
+ }
+ });
+ }
+ return page;
+ }
+
+ @Override
+ public boolean canFinish() {
+ return this.propertyWP.isPageComplete();
+ }
+
+ public void init(final IWorkbench newWorkbench,
+ final IStructuredSelection newSelection) {
+ this.workbench = newWorkbench;
+ this.selection = newSelection;
+ }
+
+ protected Customization createInitialCustomization() {
+ final Customization customization = CustomPackage.eINSTANCE
+ .getCustomFactory().createCustomization();
+ final String projectName = getProjectName();
+ final String modelCustomName = getModelFile().getName().replaceAll(
+ ".custom", ""); //$NON-NLS-1$ //$NON-NLS-2$
+ customization.setName(projectName + "." + modelCustomName); //$NON-NLS-1$
+ customization.setNsURI(this.propertyWP.getNsUri());
+ customization.setNsPrefix(this.propertyWP.getPrefix());
+ return customization;
+ }
+
+ /**
+ * @return
+ */
+ private static String getProjectName() {
+ String activeProjectName = null;
+ final IEditorPart editorPart = PlatformUI.getWorkbench()
+ .getActiveWorkbenchWindow()
+ .getActivePage().getActiveEditor();
+
+ if (editorPart != null) {
+ final FileEditorInput input = (FileEditorInput) editorPart
+ .getEditorInput();
+ final IFile file = input.getFile();
+ final IProject activeProject = file.getProject();
+ activeProjectName = activeProject.getName();
+ }
+ return activeProjectName;
+ }
+
+ public IFile getModelFile() {
+ return this.customWizardPage.getModelFile();
+ }
+
+ public IWizardPage next() {
+ final IWizardPage nextPage = getNextPage(this.getCurrentPage());
+ this.dialog.showPage(nextPage);
+ return nextPage;
+
+ }
+
+ public IWizardPage previous() {
+ final IWizardPage previousPage = getPreviousPage(this.getCurrentPage());
+ this.dialog.showPage(previousPage);
+ return previousPage;
+ }
+
+ public boolean finish() {
+ boolean result = false;
+
+ if (canFinish()) {
+ try {
+ // Remember the file.
+ final IFile modelFile = getModelFile();
+
+ // Do the work within an operation.
+ final WorkspaceModifyOperation operation = createOperation(modelFile);
+
+ getContainer().run(false, false, operation);
+
+ if (this.openCustom) {
+ // Select the new file resource in the current view.
+ final IWorkbenchWindow workbenchWindow = selectWorkbenchWindow();
+ final IWorkbenchPage page = selectNewFile(modelFile,
+ workbenchWindow);
+
+ openNewFile(modelFile, workbenchWindow, page);
+ }
+
+ result = true;
+ } catch (final Exception exception) {
+ Logger.logError(exception, Activator.getDefault());
+ }
+ }
+
+ return result;
+ }
+
+ public WizardDialog getDialog() {
+ return this.dialog;
+ }
+
+ public IWizardPage getCurrentPage() {
+ return this.getContainer().getCurrentPage();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/wizard/page/CreateCustomizationWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/wizard/page/CreateCustomizationWizardPage.java
new file mode 100644
index 00000000000..42880f43e90
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/wizard/page/CreateCustomizationWizardPage.java
@@ -0,0 +1,117 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.wizard.page;
+
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.wizard.page.ICreateCustomizationWizardPage;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+//import org.eclipse.papyrus.emf.facet.util.core.internal.exported.PluginUtils;
+import org.eclipse.jface.dialogs.IMessageProvider;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.dialogs.WizardNewFileCreationPage;
+
+/**
+ * Wizard page for the creation of a custom model file.
+ */
+public class CreateCustomizationWizardPage extends WizardNewFileCreationPage
+ implements ICreateCustomizationWizardPage {
+
+ private static final String FILE_EXTENSION = "custom"; //$NON-NLS-1$
+ private static final String MODEL_BASE = "My"; //$NON-NLS-1$
+
+ /**
+ * @param pageName
+ * @param selection
+ */
+ public CreateCustomizationWizardPage(final String pageName,
+ final IStructuredSelection selection) {
+ super(pageName, selection);
+ setTitle(Messages.CreateCustomizationWizardImpl_customization);
+ setDescription(Messages.CreateCustomizationWizardImpl_Create_new_customization);
+ setFileName(MODEL_BASE + "." + FILE_EXTENSION); //$NON-NLS-1$
+
+ // Try and get the resource selection to determine a current directory
+ // for the file dialog.
+ if ((selection != null) && !selection.isEmpty()) {
+ // Get the resource...
+ final Object selectedElement = selection.iterator().next();
+ if (selectedElement instanceof IResource) {
+ // Get the resource parent, if its a file.
+ getResourceParent(selectedElement);
+ }
+ }
+ }
+
+ private void getResourceParent(final Object selectedElement) {
+ IResource selectedResource = (IResource) selectedElement;
+ if (selectedResource.getType() == IResource.FILE) {
+ selectedResource = selectedResource.getParent();
+ }
+
+ // This gives us a directory...
+ if ((selectedResource instanceof IFolder)
+ || (selectedResource instanceof IProject)) {
+ // Set this for the container.
+ setContainerFullPath(selectedResource.getFullPath());
+
+ // Make up a unique new name here.
+ final String modelFileExt = FILE_EXTENSION;
+ String modelFilename = MODEL_BASE + "." + modelFileExt; //$NON-NLS-1$
+ for (int i = 1; ((IContainer) selectedResource)
+ .findMember(modelFilename) != null; ++i) {
+ modelFilename = MODEL_BASE + i + "." + modelFileExt; //$NON-NLS-1$
+ }
+ setFileName(modelFilename);
+ }
+ }
+
+ @Override
+ protected boolean validatePage() {
+ boolean valid = super.validatePage();
+
+ if (valid) {
+ final String extension = new Path(getFileName()).getFileExtension();
+ if ((extension == null)
+ || !FILE_EXTENSION.equalsIgnoreCase(extension)) {
+ setErrorMessage(Messages.CreateCustomizationWizardImpl_File_extension_restriction);
+ valid = false;
+ }
+ final IPath containerFullPath = getContainerFullPath();
+// try {
+// if (!PluginUtils.isInPluginProject(containerFullPath)) {
+// setMessage(
+// Messages.CreateCustomizationWizardPage_Not_a_Plugin_project,
+// IMessageProvider.WARNING);
+// }
+// } catch (final CoreException e) {
+// Logger.logError(e, Activator.getDefault());
+// }
+ }
+
+ return valid;
+ }
+
+ public IFile getModelFile() {
+ return ResourcesPlugin.getWorkspace().getRoot()
+ .getFile(getContainerFullPath().append(getFileName()));
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/wizard/page/CustomPropertyWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/wizard/page/CustomPropertyWizardPage.java
new file mode 100644
index 00000000000..14a66db95c9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/util/wizard/page/CustomPropertyWizardPage.java
@@ -0,0 +1,112 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.wizard.page;
+
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.wizard.page.ICustomizationPropertyWizardPage;
+import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Text;
+
+/**
+ * Wizard page to enter a NsURI, a prefix and an extended EPackage to a facetSet
+ */
+public class CustomPropertyWizardPage extends WizardPage implements
+ ICustomizationPropertyWizardPage {
+
+ private Text nsUriTextField;
+ private Text prefixTextField;
+
+ /**
+ * @param pageName
+ */
+ public CustomPropertyWizardPage(final String pageName) {
+ super(pageName);
+
+ setTitle(Messages.CreateCustomizationWizardImpl_customization_properties);
+ }
+
+ public void createControl(final Composite parent) {
+ final Composite nsURiContainer = new Composite(parent, SWT.NONE);
+ nsURiContainer.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ nsURiContainer.setLayout(new GridLayout(2, false));
+ // NsURI
+ final Label nsUriLabel = new Label(nsURiContainer, SWT.NONE);
+ nsUriLabel.setText(Messages.Enter_a_nsUri);
+ this.nsUriTextField = new Text(nsURiContainer, SWT.BORDER | SWT.SINGLE);
+ this.nsUriTextField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ this.nsUriTextField.addListener(SWT.Modify, new Listener() {
+ public void handleEvent(final Event event) {
+ updateButtons();
+ }
+ });
+ // PREFIX
+ final Label prefixLabel = new Label(nsURiContainer, SWT.NONE);
+ prefixLabel.setText(Messages.Enter_a_prefix);
+ this.prefixTextField = new Text(nsURiContainer, SWT.BORDER | SWT.SINGLE);
+ this.prefixTextField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ this.prefixTextField.addListener(SWT.Modify, new Listener() {
+ public void handleEvent(final Event event) {
+ updateButtons();
+ }
+ });
+ setControl(nsURiContainer);
+ }
+
+ @Override
+ public boolean isPageComplete() {
+ boolean result = false;
+ if (this.nsUriTextField.getText().length() == 0) {
+ setErrorMessage(Messages.Please_enter_nsUri);
+ }
+ if (this.prefixTextField.getText().length() == 0) {
+ setErrorMessage(Messages.Please_enter_prefix);
+ }
+ if (super.isPageComplete()) {
+ setErrorMessage(null);
+ result = true;
+ } else {
+ setErrorMessage(Messages.Please_select_EPackage);
+ }
+ return result;
+ }
+
+ public String getNsUri() {
+ return this.nsUriTextField.getText();
+ }
+
+ public String getPrefix() {
+ return this.prefixTextField.getText();
+ }
+
+ protected void updateButtons() {
+ getContainer().updateButtons();
+ }
+
+ public void setNsUri(final String nsUri) {
+ this.nsUriTextField.setText(nsUri);
+ }
+
+ public void setPrefix(final String prefix) {
+ this.prefixTextField.setText(prefix);
+ }
+
+ public void setIsPageComplete(final boolean complete) {
+ this.setPageComplete(complete);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/widgets/celleditors/ImageCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/widgets/celleditors/ImageCellEditor.java
new file mode 100644
index 00000000000..ff35cfd3224
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/widgets/celleditors/ImageCellEditor.java
@@ -0,0 +1,51 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 375388 - Cell editor for IImage
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.widgets.celleditors;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.widgets.celleditors.composite.ImageComposite;
+import org.eclipse.papyrus.emf.facet.custom.ui.ImageUtils;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditor;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+/** A cell editor for displaying an {@link IImage} (read-only for now) */
+public class ImageCellEditor implements IModelCellEditor {
+
+ private IImage iimage;
+ private ImageComposite imageComposite;
+
+ protected Image getImage() {
+ return ImageUtils.unwrap(this.iimage);
+ }
+
+ public Control activateCell(final Composite parent, final Object originalValue,
+ final IModelCellEditHandler editHandler, final EStructuralFeature feature,
+ final EObject source) {
+
+ this.imageComposite = new ImageComposite(parent);
+
+ if (originalValue instanceof IImage) {
+ this.imageComposite.setValue((IImage) originalValue);
+ this.iimage = (IImage) originalValue;
+ }
+
+ return this.imageComposite;
+ }
+
+ public Object getValue() {
+ return this.iimage;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/widgets/celleditors/composite/ImageComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/widgets/celleditors/composite/ImageComposite.java
new file mode 100644
index 00000000000..5002faa3dc6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/widgets/celleditors/composite/ImageComposite.java
@@ -0,0 +1,132 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 375388 - Cell editor for IImage
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.widgets.celleditors.composite;
+
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.custom.ui.ImageUtils;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.PaintEvent;
+import org.eclipse.swt.events.PaintListener;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Canvas;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Shell;
+
+/** A composite for displaying an {@link IImage} (read-only for now) */
+public class ImageComposite extends AbstractCellEditorComposite<IImage> {
+
+ private final Button compositeButton;
+ private final Canvas compositeCanvas;
+ private IImage valueImage;
+
+ protected Button getButton() {
+ return this.compositeButton;
+ }
+
+ public Canvas getCanvas() {
+ return this.compositeCanvas;
+ }
+
+ public ImageComposite(final Composite parent) {
+ super(parent);
+
+ final GridLayout layout = new GridLayout(2, false);
+ layout.marginWidth = 0;
+ layout.marginHeight = 0;
+ layout.horizontalSpacing = 0;
+ setLayout(layout);
+
+ this.compositeCanvas = createCanvas(this);
+ this.compositeButton = createButton(this);
+
+ // disposes the composite when the user clicks
+ final Listener disposeListener = new Listener() {
+ public void handleEvent(final Event event) {
+ if (event.widget instanceof Control) {
+ final Control control = (Control) event.widget;
+ if (control.getShell() == getParent().getShell() && event.widget != getButton() && event.widget != getCanvas()) {
+ ImageComposite.this.dispose();
+ Display.getDefault().removeFilter(SWT.MouseDown, this);
+ }
+ }
+ }
+ };
+ Display.getDefault().addFilter(SWT.MouseDown, disposeListener);
+ }
+
+ protected Canvas createCanvas(final Composite parent) {
+ final Canvas canvas = new Canvas(parent, SWT.NONE);
+ canvas.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ canvas.addPaintListener(new PaintListener() {
+ public void paintControl(final PaintEvent e) {
+ final Image img = getImage();
+ if (img != null && !img.isDisposed()) {
+ e.gc.drawImage(img, 0, 0);
+ }
+ }
+ });
+ return canvas;
+ }
+
+ protected Button createButton(final Composite parent) {
+ final Button button = new Button(parent, SWT.PUSH);
+ button.setText("+"); //$NON-NLS-1$
+ final GridData data = new GridData(SWT.FILL, SWT.FILL, false, true);
+ button.setLayoutData(data);
+
+ button.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ openShell();
+ }
+ });
+ return button;
+ }
+
+ protected void openShell() {
+ final Shell shell = new Shell();
+ shell.setText(Messages.ImageComposite_fullImage);
+ shell.setLayout(new GridLayout());
+ final Canvas shellCanvas = createCanvas(shell);
+ final GridData canvasData = new GridData(SWT.FILL, SWT.FILL, true, true);
+ final Image img = getImage();
+ if (img != null && !img.isDisposed()) {
+ canvasData.widthHint = img.getBounds().width;
+ canvasData.heightHint = img.getBounds().height;
+ }
+ shellCanvas.setLayoutData(canvasData);
+ shell.pack();
+ shell.open();
+ }
+
+ protected Image getImage() {
+ return ImageUtils.unwrap(this.valueImage);
+ }
+
+ public IImage getValue() {
+ return this.valueImage;
+ }
+
+ public void setValue(final IImage value) {
+ this.valueImage = value;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/widgets/celleditors/composite/ImageCompositeFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/widgets/celleditors/composite/ImageCompositeFactory.java
new file mode 100644
index 00000000000..6d9bfc94e26
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/widgets/celleditors/composite/ImageCompositeFactory.java
@@ -0,0 +1,28 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 375388 - Cell editor for IImage
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.widgets.celleditors.composite;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage;
+import org.eclipse.swt.widgets.Composite;
+
+/** Factory for {@link ImageComposite} */
+public class ImageCompositeFactory implements ICompositeEditorFactory<IImage> {
+
+ public AbstractCellEditorComposite<IImage> createCompositeEditor(final Composite parent, final int style) {
+ return new ImageComposite(parent);
+ }
+
+ public Class<IImage> getHandledType() {
+ return IImage.class;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/wizard/page/ICreateCustomizationWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/wizard/page/ICreateCustomizationWizardPage.java
new file mode 100644
index 00000000000..9e551eeb594
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/wizard/page/ICreateCustomizationWizardPage.java
@@ -0,0 +1,31 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.wizard.page;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.util.wizard.page.CreateCustomizationWizardPage;
+import org.eclipse.jface.wizard.IWizardPage;
+
+/**
+ * Interface to expose the services of {@link CreateCustomizationWizardPage}.
+ *
+ * @see CreateCustomizationWizardPage
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICreateCustomizationWizardPage extends IWizardPage {
+
+ /**
+ * @return the file where the model is created.
+ */
+ IFile getModelFile();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/wizard/page/ICustomizationPropertyWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/wizard/page/ICustomizationPropertyWizardPage.java
new file mode 100644
index 00000000000..50dcf7678fc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.sdk.ui/src/org/eclipse/papyrus/emf/facet/custom/sdk/ui/internal/wizard/page/ICustomizationPropertyWizardPage.java
@@ -0,0 +1,50 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.custom.sdk.ui.internal.wizard.page;
+
+import org.eclipse.jface.wizard.IWizardPage;
+
+/**
+ * Interface to expose the services of {@link CustomizationPropertyWizardPage}.
+ *
+ * @see CustomizationPropertyWizardPage
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICustomizationPropertyWizardPage extends IWizardPage {
+
+ /**
+ * @return the nsURI of the model.
+ */
+ String getNsUri();
+
+ /**
+ * Set the nsURI of the model.
+ *
+ * @param nsUri
+ * the new nsURI.
+ */
+ void setNsUri(String nsUri);
+
+ /**
+ * @return the prefix of the model.
+ */
+ String getPrefix();
+
+ /**
+ * Set the prefix of the model.
+ *
+ * @param prefix
+ * the new prefix.
+ */
+ void setPrefix(String prefix);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.checkstyle
new file mode 100644
index 00000000000..6858fec30f6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.checkstyle
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2010 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Guyomar (Mia-Software)
+-->
+<fileset-config file-format-version="1.2.0" simple-config="true">
+ <local-check-config name="EmfFacet" location="../org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.options b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.options
new file mode 100644
index 00000000000..d59420c1b50
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.options
@@ -0,0 +1,5 @@
+org.eclipse.papyrus.emf.facet.custom.ui/debug=false
+org.eclipse.papyrus.emf.facet.custom.ui/debug/TreeElementAdapter=false
+org.eclipse.papyrus.emf.facet.custom.ui/debug/CustomizedTreeContentProvider=false
+org.eclipse.papyrus.emf.facet.custom.ui/debug/CustomizedLabelProvider/font=false
+org.eclipse.papyrus.emf.facet.custom.ui/debug/CustomizedLabelProvider/color=false \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.pmd b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.pmd
new file mode 100644
index 00000000000..e8d3e27588f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.pmd
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<pmd>
+ <useProjectRuleSet>true</useProjectRuleSet>
+ <ruleSetFile>../org.eclipse.papyrus.emf.facet.archi.tech.rules/pmd/ruleset.xml</ruleSetFile>
+ <includeDerivedFiles>false</includeDerivedFiles>
+ <violationsAsErrors>true</violationsAsErrors>
+</pmd>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.project
new file mode 100644
index 00000000000..7cc4c2e66be
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.project
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.custom.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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>net.sourceforge.pmd.eclipse.plugin.pmdNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.settings/.api_filters b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.settings/.api_filters
new file mode 100644
index 00000000000..a7f0028210b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.settings/.api_filters
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<component id="org.eclipse.papyrus.emf.facet.custom.ui" version="2">
+ <resource path="META-INF/MANIFEST.MF">
+ <filter comment="Only internal APIs have been modified." id="924844039">
+ <message_arguments>
+ <message_argument value="0.2.0"/>
+ <message_argument value="0.2.0"/>
+ </message_arguments>
+ </filter>
+ </resource>
+ <resource path="META-INF/MANIFEST.MF" type="org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.dialog.ILoadCustomizationsDialogListener">
+ <filter comment="Only internal API have be modified" id="305324134">
+ <message_arguments>
+ <message_argument value="org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.dialog.ILoadCustomizationsDialogListener"/>
+ <message_argument value="org.eclipse.papyrus.emf.facet.custom.ui_0.2.0"/>
+ </message_arguments>
+ </filter>
+ </resource>
+</component>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..51e9a601b77
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,8 @@
+#Tue Oct 25 11:21:53 CEST 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..c1faa445f94
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,28 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.custom.ui;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.custom.ui.internal.Activator
+Bundle-Vendor: %Bundle-Vendor
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.2.0",
+ org.eclipse.emf.edit;bundle-version="2.6.0",
+ org.eclipse.papyrus.emf.facet.query.java.core;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.util.ui;bundle-version="0.2.0",
+ org.eclipse.emf.edit.ui;bundle-version="2.6.0",
+ org.eclipse.papyrus.emf.facet.util.swt;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.util.jface.ui;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.common.ui
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.custom.ui,
+ org.eclipse.papyrus.emf.facet.custom.ui.internal,
+ org.eclipse.papyrus.emf.facet.custom.ui.internal.custompt,
+ org.eclipse.papyrus.emf.facet.custom.ui.internal.exported,
+ org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.dialog,
+ org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.exception,
+ org.eclipse.papyrus.emf.facet.custom.ui.internal.query
+Service-Component: OSGI-INF/component.xml
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/OSGI-INF/component.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/OSGI-INF/component.xml
new file mode 100644
index 00000000000..c797e7bded4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/OSGI-INF/component.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<scr:component xmlns:scr="http://www.osgi.org/xmlns/scr/v1.1.0" name="org.eclipse.papyrus.emf.facet.custom.ui">
+ <implementation class="org.eclipse.papyrus.emf.facet.custom.ui.internal.DefaultCustomOverride"/>
+ <service>
+ <provide interface="org.eclipse.papyrus.emf.facet.custom.ui.ICustomOverride"/>
+ </service>
+</scr:component>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..3cfaf61ed54
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,13 @@
+#Copyright (c) 2011 Mia-Software.
+#
+#All rights reserved. This program and the accompanying materials
+#are made available under the terms of the Eclipse Public License v1.0
+#which accompanies this distribution, and is available at
+#http://www.eclipse.org/legal/epl-v10.html
+#
+#Contributors:
+# Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+#Properties file for org.eclipse.papyrus.emf.facet.custom.ui
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Customization UI (Incubation)
+view.customizations = Customizations \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/about.html
new file mode 100644
index 00000000000..25f1a82997c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.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>October 25, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/build.properties
new file mode 100644
index 00000000000..a71aa3ec9d6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/build.properties
@@ -0,0 +1,20 @@
+#Copyright (c) 2011 Mia-Software.
+#
+#All rights reserved. This program and the accompanying materials
+#are made available under the terms of the Eclipse Public License v1.0
+#which accompanies this distribution, and is available at
+#http://www.eclipse.org/legal/epl-v10.html
+#
+#Contributors:
+# Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ OSGI-INF/,\
+ plugin.xml,\
+ resources/,\
+ about.html,\
+ icons/,\
+ .options
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/aggreg.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/aggreg.gif
new file mode 100644
index 00000000000..2c62284e92b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/aggreg.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/aggreg_unidir.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/aggreg_unidir.gif
new file mode 100644
index 00000000000..30bf63ea561
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/aggreg_unidir.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/attribute_facet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/attribute_facet.gif
new file mode 100644
index 00000000000..bf0e5bec658
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/attribute_facet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/attributes.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/attributes.gif
new file mode 100644
index 00000000000..d4cb4254d92
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/attributes.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/feature.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/feature.gif
new file mode 100644
index 00000000000..46be7a1265a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/feature.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/inv_aggreg.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/inv_aggreg.gif
new file mode 100644
index 00000000000..6f1021d4d1c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/inv_aggreg.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/link.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/link.gif
new file mode 100644
index 00000000000..94c14024075
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/link.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/link_unidir.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/link_unidir.gif
new file mode 100644
index 00000000000..c8169bcfbf8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/link_unidir.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/link_unidir_facet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/link_unidir_facet.gif
new file mode 100644
index 00000000000..143ae199d3e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/link_unidir_facet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/uiCustom.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/uiCustom.gif
new file mode 100644
index 00000000000..bc86fbc897e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/icons/uiCustom.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/plugin.xml
new file mode 100644
index 00000000000..96b066c4840
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/plugin.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<!--
+Copyright (c) 2011 Mia-Software.
+
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ David Couvrand (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ Nicolas Rault (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+-->
+<plugin>
+ <extension point="org.eclipse.papyrus.emf.facet.util.emf.core.modeldeclaration">
+ <modeldeclaration file="resources/customproperties.efacet"/>
+ </extension>
+
+ <extension point="org.eclipse.ui.views">
+ <view
+ category="org.eclipse.papyrus.emf.facet.common.ui.views"
+ class="org.eclipse.papyrus.emf.facet.custom.ui.internal.view.CustomizationsCatalogView"
+ icon="icons/uiCustom.gif"
+ id="org.eclipse.papyrus.emf.facet.custom.ui.view.catalog"
+ name="%view.customizations"
+ restorable="true">
+ </view>
+ </extension>
+ <extension
+ point="org.eclipse.papyrus.emf.facet.efacet.core.queryImplementationRegistration">
+ <queryImplementationRegistration
+ class="org.eclipse.papyrus.emf.facet.custom.ui.internal.query.URIImageQueryImplementationFactory">
+ </queryImplementationRegistration>
+ </extension>
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet
new file mode 100644
index 00000000000..bdce9d8345a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet
@@ -0,0 +1,595 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<efacet:FacetSet
+ xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:efacet="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet"
+ xmlns:javaQuery="http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation/javaquery"
+ xmlns:query="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/query"
+ name="commoncustomproperties"
+ nsURI="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/commoncustomproperties"
+ nsPrefix="commoncustomproperties">
+ <eClassifiers
+ xsi:type="efacet:Facet"
+ name="CustomizedEObject">
+ <extendedMetaclass
+ href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <facetOperations
+ name="label"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="javaQuery:JavaQuery"
+ implementationClassName="org.eclipse.papyrus.emf.facet.custom.ui.internal.query.LabelQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="image"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="javaQuery:JavaQuery"
+ implementationClassName="org.eclipse.papyrus.emf.facet.custom.ui.internal.query.ImageQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="fontName"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="javaQuery:JavaQuery"
+ implementationClassName="org.eclipse.papyrus.emf.facet.custom.ui.internal.query.FontNameQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="fontSize"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="javaQuery:JavaQuery"
+ implementationClassName="org.eclipse.papyrus.emf.facet.custom.ui.internal.query.FontSizeQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="isBold"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:FalseLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="isItalic"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:FalseLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="background"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Color"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="javaQuery:JavaQuery"
+ implementationClassName="org.eclipse.papyrus.emf.facet.custom.ui.internal.query.BackgroundQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="foreground"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Color"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="javaQuery:JavaQuery"
+ implementationClassName="org.eclipse.papyrus.emf.facet.custom.ui.internal.query.ForegroundQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="isUnderlined"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:FalseLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="isStruckthrough"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:FalseLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="topLeftOverlay"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:NullLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="topMiddleOverlay"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:NullLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="topRightOverlay"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:NullLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="bottomLeftOverlay"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:NullLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="bottomMiddleOverlay"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:NullLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="bottomRightOverlay"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:NullLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="isVisible"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:TrueLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="selection"
+ upperBound="-1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="javaQuery:JavaQuery"
+ implementationClassName="org.eclipse.papyrus.emf.facet.custom.ui.internal.query.SelectionQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="collapseLink">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:TrueLiteralQuery"/>
+ </facetOperations>
+ </eClassifiers>
+ <eClassifiers
+ xsi:type="efacet:Facet"
+ name="CustomizedToolTipEObject">
+ <extendedMetaclass
+ href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <facetOperations
+ name="text"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eParameters>
+ <query
+ xsi:type="javaQuery:JavaQuery"
+ implementationClassName="org.eclipse.papyrus.emf.facet.custom.ui.internal.query.ToolTipTextQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="image"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:NullLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="fontName"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="javaQuery:JavaQuery"
+ implementationClassName="org.eclipse.papyrus.emf.facet.custom.ui.internal.query.FontNameQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="fontSize"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="javaQuery:JavaQuery"
+ implementationClassName="org.eclipse.papyrus.emf.facet.custom.ui.internal.query.FontSizeQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="isBold"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:FalseLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="isItalic"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:FalseLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="background"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Color"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="javaQuery:JavaQuery"
+ implementationClassName="org.eclipse.papyrus.emf.facet.custom.ui.internal.query.ToolTipBackgroundQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="foreground"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Color"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="javaQuery:JavaQuery"
+ implementationClassName="org.eclipse.papyrus.emf.facet.custom.ui.internal.query.ForegroundQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="topLeftOverlay"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:NullLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="topMiddleOverlay"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:NullLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="topRightOverlay"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:NullLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="bottomLeftOverlay"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:NullLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="bottomMiddleOverlay"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:NullLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="bottomRightOverlay"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="query:NullLiteralQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="displayDelayTime"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="javaQuery:JavaQuery"
+ implementationClassName="org.eclipse.papyrus.emf.facet.custom.ui.internal.query.ToolTipDelayQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="timeDisplayed"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EDataType"
+ href="http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="javaQuery:JavaQuery"
+ implementationClassName="org.eclipse.papyrus.emf.facet.custom.ui.internal.query.ToolTipDelayQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="alignment"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EEnum"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Alignment"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="javaQuery:JavaQuery"
+ implementationClassName="org.eclipse.papyrus.emf.facet.custom.ui.internal.query.ToolTipAlignmentQuery"/>
+ </facetOperations>
+ <facetOperations
+ name="shadow"
+ lowerBound="1">
+ <eType
+ xsi:type="ecore:EEnum"
+ href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Shadow"/>
+ <eParameters
+ name="eStructuralFeature">
+ <eType
+ xsi:type="ecore:EClass"
+ href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eParameters>
+ <query
+ xsi:type="javaQuery:JavaQuery"
+ implementationClassName="org.eclipse.papyrus.emf.facet.custom.ui.internal.query.ToolTipShadowQuery"/>
+ </facetOperations>
+ </eClassifiers>
+</efacet:FacetSet>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/CustomizedContentProviderUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/CustomizedContentProviderUtils.java
new file mode 100644
index 00000000000..e60394c963f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/CustomizedContentProviderUtils.java
@@ -0,0 +1,77 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Nicolas Bros (Mia-Software) - Bug 380407 - Missing since tag on CustomizedContentProviderUtils
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.core.runtime.Assert;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EAttributeTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement;
+
+/**
+ * A companion utility class for {@link ICustomizedTreeContentProvider}
+ *
+ * @since 0.2
+ */
+public final class CustomizedContentProviderUtils {
+ private CustomizedContentProviderUtils() {
+ // utility class
+ }
+
+ /**
+ * Replace proxy objects by their underlying model elements in the given selection
+ *
+ * @return the unwrapped version of the selection
+ */
+ public static ISelection resolveSelection(final ISelection selection) {
+ Assert.isNotNull(selection);
+ ISelection result;
+ if (selection instanceof IStructuredSelection) {
+ final IStructuredSelection strSelection = (IStructuredSelection) selection;
+ final List<Object> resolvedElements = new ArrayList<Object>();
+ final Iterator<?> iterator = strSelection.iterator();
+ while (iterator.hasNext()) {
+ final Object element = iterator.next();
+ resolvedElements.add(resolve(element));
+ }
+ result = new StructuredSelection(resolvedElements);
+ } else {
+ throw new IllegalArgumentException("Unhandled selection type: " + selection.getClass().getName()); //$NON-NLS-1$
+ }
+ return result;
+ }
+
+ /**
+ * Resolve the given UI element into the underlying model element.
+ *
+ * @param element
+ * a UI element, that may be a proxy for a model element
+ * @return the corresponding model element, or the given element if it is not a proxy
+ */
+ public static Object resolve(final Object element) {
+ Object resolved = element;
+ if (element instanceof EObjectTreeElement) {
+ resolved = ((EObjectTreeElement) element).getEObject();
+ } else if (element instanceof EAttributeTreeElement) {
+ resolved = ((EAttributeTreeElement) element).getEAttribute();
+ } else if (element instanceof EReferenceTreeElement) {
+ resolved = ((EReferenceTreeElement) element).getEReference();
+ }
+ return resolved;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/IContentPropertiesHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/IContentPropertiesHandler.java
new file mode 100644
index 00000000000..015ecff326b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/IContentPropertiesHandler.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+
+/**
+ *
+ * @since 0.2
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IContentPropertiesHandler {
+ FacetOperation getIsVisible();
+ public FacetOperation getCollapseLink();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/IContentPropertiesHandlerFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/IContentPropertiesHandlerFactory.java
new file mode 100644
index 00000000000..f812986fc6a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/IContentPropertiesHandlerFactory.java
@@ -0,0 +1,30 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui;
+
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.PropertiesHandlerFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+
+/**
+ *
+ * @since 0.2
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IContentPropertiesHandlerFactory {
+
+ IContentPropertiesHandlerFactory DEFAULT = new PropertiesHandlerFactory();
+
+ IContentPropertiesHandler createIContentPropertiesHandler(
+ ICustomizationManager customizationMgr);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomOverride.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomOverride.java
new file mode 100644
index 00000000000..99860f9941a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomOverride.java
@@ -0,0 +1,31 @@
+/**
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * David Couvrand (Soft-Maint) - Bug 422058 - Implementation of strikethrough and underline in the CustomizedLabelProvider
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui;
+
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.exception.CustomizationException;
+import org.eclipse.swt.graphics.FontData;
+
+/**
+ * @since 0.4
+ */
+public interface ICustomOverride {
+
+ String getText(String result, Object object,
+ ICustomizationManager customManager,
+ IFontPropertiesHandler propertiesHandler) throws CustomizationException;
+
+ FontData getFont(FontData fontData, Object object,
+ ICustomizationManager customManager,
+ IFontPropertiesHandler propertiesHandler) throws CustomizationException;
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedContentProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedContentProvider.java
new file mode 100644
index 00000000000..68dbf80603c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedContentProvider.java
@@ -0,0 +1,37 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui;
+
+import org.eclipse.jface.viewers.IContentProvider;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+
+/**
+ * This interface allow to used a {@link IContentProvider} which is implemented
+ * and customizable using the EMF Facet customization mechanism.
+ *
+ * @author Gregoire Dupe
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ * @deprecated use {@link ICustomizedTreeContentProvider} (Bug 380229 - [deprecated] ICustomizedContentProvider)
+ */
+@Deprecated
+public interface ICustomizedContentProvider extends IContentProvider {
+ /**
+ * This method returns the customization manager used by the content provider. The
+ * customization stack update have to be done using this
+ * {@link ICustomizationManager}.
+ *
+ * @return the customization manager used by the content provider.
+ */
+ ICustomizationManager getCustomizationManager();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedContentProviderFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedContentProviderFactory.java
new file mode 100644
index 00000000000..109da62630a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedContentProviderFactory.java
@@ -0,0 +1,54 @@
+/*******************************************************************************
+ * Copyright (c) 2011, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ *******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.custom.ui;
+
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.CustomizedContentProviderFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+
+/**
+ * This is a factory for {@link ICustomizedContentProvider} and {@link ICustomizedTreeContentProvider}.
+ *
+ * @author Gregoire Dupe
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ *
+ */
+public interface ICustomizedContentProviderFactory {
+ /**
+ * The default factory instance
+ */
+ ICustomizedContentProviderFactory DEFAULT = new CustomizedContentProviderFactory();
+
+ /**
+ * This method is used to instantiate a {@link ICustomizedContentProvider}
+ *
+ * @param customizationMgr
+ * the customization manager which has to be used by the content provider.
+ * @return a content provider
+ * @deprecated Bug 380229 - [deprecated] ICustomizedContentProvider
+ */
+ @Deprecated
+ ICustomizedContentProvider createCustomizedContentProvider(ICustomizationManager customizationMgr);
+
+ /**
+ * Instantiate an {@link ICustomizedTreeContentProvider}. With this content provider, your viewer's input has to be
+ * an EObject or an array or collection of EObjects.F
+ *
+ * @param customManager
+ * the customization manager used by the content provider
+ * @return a tree content provider
+ * @since 0.2
+ */
+ ICustomizedTreeContentProvider createCustomizedTreeContentProvider(ICustomizationManager customManager);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedLabelProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedLabelProvider.java
new file mode 100644
index 00000000000..e4d106e694e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedLabelProvider.java
@@ -0,0 +1,65 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui;
+
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.jface.viewers.IColorProvider;
+import org.eclipse.jface.viewers.IFontProvider;
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.swt.graphics.Image;
+
+/**
+ * This interface allows to use a {@link ILabelProvider}, an
+ * {@link IColorProvider} and an {@link IFontProvider} which is implemented and
+ * customizable using the EMF Facet customization mechanism.
+ *
+ * @author Gregoire Dupe
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICustomizedLabelProvider extends ILabelProvider,
+ IColorProvider, IFontProvider , ICustomizedToolTipLabelProvider {
+ /**
+ * This method returns the customization manager used by the label provider. The
+ * customization stack updates have to be done using this
+ * {@link ICustomizationManager}.
+ *
+ * @return the customization manager used by the content provider.
+ */
+ ICustomizationManager getCustomizationManager();
+
+ boolean isUnderlined(Object element, ETypedElement eTypedElement);
+
+ boolean isStruckthrough(Object element, ETypedElement eTypedElement);
+
+ Image getTopLeftOverlay(Object element, ETypedElement eTypedElement);
+ Image getTopMiddleOverlay(Object element, ETypedElement eTypedElement);
+ Image getTopRightOverlay(Object element, ETypedElement eTypedElement);
+
+ Image getBottomLeftOverlay(Object element, ETypedElement eTypedElement);
+ Image getBottomMiddleOverlay(Object element, ETypedElement eTypedElement);
+ Image getBottomRightOverlay(Object element, ETypedElement eTypedElement);
+
+ String getText(Object element, ETypedElement eTypedElement);
+
+ Image getImage(Object element, ETypedElement eTypedElement);
+
+ /**
+ * @since 0.2
+ */
+ ICustomizedLabelProvider cloneLabelProvider();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedLabelProviderFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedLabelProviderFactory.java
new file mode 100644
index 00000000000..13ffc43ad6b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedLabelProviderFactory.java
@@ -0,0 +1,39 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui;
+
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.CustomizedLabelProviderFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+
+/**
+ * This class is the factory allowing to get a instance of
+ * {@link ICustomizedLabelProvider}.
+ *
+ * @author Gregoire Dupe
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICustomizedLabelProviderFactory {
+ ICustomizedLabelProviderFactory DEFAULT = new CustomizedLabelProviderFactory();
+
+ /**
+ * This method is used to instantiate a {@link ICustomizedLabelProvider}.
+ *
+ * @param customizationManager
+ * the customization manager which has to used by the content
+ * provider.
+ * @return a label provider
+ */
+ ICustomizedLabelProvider createCustomizedLabelProvider(
+ ICustomizationManager customizationMgr);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedToolTipLabelProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedToolTipLabelProvider.java
new file mode 100644
index 00000000000..d102f9e2536
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedToolTipLabelProvider.java
@@ -0,0 +1,68 @@
+/**
+ * Copyright (c) 2012 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui;
+
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.jface.viewers.ViewerCell;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.Font;
+import org.eclipse.swt.graphics.Image;
+
+/**
+ *
+ * This interface provides methods to customize tooltips
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICustomizedToolTipLabelProvider {
+
+ void update(ViewerCell cell);
+
+ String getToolTipText(Object element, ETypedElement eTypedElement);
+
+ Image getToolTipImage(Object element, ETypedElement eTypedElement);
+
+ Font getToolTipFont(Object element, ETypedElement eTypedElement);
+
+ Color getToolTipBackgroundColor(Object element, ETypedElement eTypedElement);
+
+ Color getToolTipForegroundColor(Object element, ETypedElement eTypedElement);
+
+ Image getToolTipTopLeftOverlay(Object element, ETypedElement eTypedElement);
+
+ Image getToolTipTopMiddleOverlay(Object element, ETypedElement eTypedElement);
+
+ Image getToolTipTopRightOverlay(Object element, ETypedElement eTypedElement);
+
+ Image getToolTipBottomLeftOverlay(Object element,
+ ETypedElement eTypedElement);
+
+ Image getToolTipBottomMiddleOverlay(Object element,
+ ETypedElement eTypedElement);
+
+ Image getToolTipBottomRightOverlay(Object element,
+ ETypedElement eTypedElement);
+
+ int getToolTipTimeDisplayed(Object element, ETypedElement eTypedElement);
+
+ int getToolTipDisplayDelayTime(Object element, ETypedElement eTypedElement);
+
+ /**
+ * The style can be : SWT.LEFT, SWT.CENTER, SWT.RIGHT, SWT.SHADOW_IN, SWT.SHADOW_OUT, SWT.SHADOW_NONE.
+ *
+ * @param element
+ * @return
+ */
+ int getToolTipStyle(Object element, ETypedElement eTypedElement);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedTreeContentProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedTreeContentProvider.java
new file mode 100644
index 00000000000..79522eee302
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ICustomizedTreeContentProvider.java
@@ -0,0 +1,31 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui;
+
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+
+/**
+ * An {@link ITreeContentProvider} which is implemented and customizable using the EMF Facet customization mechanisms.
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ * @since 0.2
+ */
+public interface ICustomizedTreeContentProvider extends ITreeContentProvider {
+ /**
+ * This method returns the customization manager used by the content provider. Updates to the list of loaded
+ * customizations have to be done using the {@link ICustomizationManager} returned by this method.
+ *
+ * @return the customization manager used by this content provider.
+ */
+ ICustomizationManager getCustomizationManager();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/IFontPropertiesHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/IFontPropertiesHandler.java
new file mode 100644
index 00000000000..8fe37afccf4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/IFontPropertiesHandler.java
@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * David Couvrand (Soft-Maint) - Bug 422058 - Implementation of strikethrough and underline in the CustomizedLabelProvider
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+
+/**
+ * @since 0.4
+ */
+public interface IFontPropertiesHandler {
+
+ FacetOperation getBackgroundProperty();
+
+ FacetOperation getForegroundProperty();
+
+ FacetOperation getFontNameProperty();
+
+ FacetOperation getFontSizeProperty();
+
+ FacetOperation getIsBoldProperty();
+
+ FacetOperation getIsItalicProperty();
+
+ FacetOperation getIsVisible();
+
+ FacetOperation getIsUnderlinedProperty();
+
+ FacetOperation getIsStruckthroughProperty();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/IResolvingCustomizedLabelProviderFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/IResolvingCustomizedLabelProviderFactory.java
new file mode 100644
index 00000000000..50f81a2d034
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/IResolvingCustomizedLabelProviderFactory.java
@@ -0,0 +1,35 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui;
+
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.ResolvingCustomizedLabelProviderFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+
+/**
+ * A factory to create instances of {@link ICustomizedLabelProvider} that work on proxy UI elements, by customizing the
+ * resolved elements.
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ * @since 0.2
+ */
+public interface IResolvingCustomizedLabelProviderFactory {
+ IResolvingCustomizedLabelProviderFactory DEFAULT = new ResolvingCustomizedLabelProviderFactory();
+
+ /**
+ * This method is used to instantiate a {@link ICustomizedLabelProvider}.
+ *
+ * @param customizationManager
+ * the customization manager which has to used by the content provider.
+ * @return a label provider
+ */
+ ICustomizedLabelProvider createCustomizedLabelProvider(ICustomizationManager customizationMgr);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ISelectionPropertiesHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ISelectionPropertiesHandler.java
new file mode 100644
index 00000000000..d69290795b2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ISelectionPropertiesHandler.java
@@ -0,0 +1,24 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 377866 - selection customization
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+
+/**
+ *
+ * @since 0.2
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ISelectionPropertiesHandler {
+ /** This customization property returns the selection for a given source EObject and a given ETypedElement parameter */
+ FacetOperation getSelectionProperty();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ISelectionPropertiesHandlerFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ISelectionPropertiesHandlerFactory.java
new file mode 100644
index 00000000000..102521a3579
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ISelectionPropertiesHandlerFactory.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 377866 - selection customization
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui;
+
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.PropertiesHandlerFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+
+/**
+ * Factory for {@link ISelectionPropertiesHandler}
+ *
+ * @since 0.2
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ISelectionPropertiesHandlerFactory {
+
+ ISelectionPropertiesHandlerFactory DEFAULT = new PropertiesHandlerFactory();
+
+ ISelectionPropertiesHandler createSelectionPropertiesHandler(
+ ICustomizationManager customManager);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ImageUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ImageUtils.java
new file mode 100644
index 00000000000..ffd82786028
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/ImageUtils.java
@@ -0,0 +1,57 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 374941 - To be able to customize overlay icons on EClass
+ * Nicolas Bros (Mia-Software) - Bug 375388 - Cell editor for IImage
+ * Nicolas Rault (Soft-Maint) - Bug 412565 - Need an URIImage Constructor
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui;
+
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.custompt.ImageWrapper;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.custompt.URIImage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage;
+import org.eclipse.swt.graphics.Image;
+
+/**
+ * @since 0.2
+ */
+public final class ImageUtils {
+
+ private ImageUtils() {
+ // Must not be used
+ }
+
+ /** Creates an {@link IImage} that wraps the given SWT {@link Image} */
+ public static IImage wrap(final Image image) {
+ return new ImageWrapper(image);
+ }
+
+ /**
+ * Returns the SWT {@link Image} represented by this {@link IImage}
+ *
+ * @param image
+ * the image to unwrap
+ * @return the SWT image, or <code>null</code> if the {@link IImage} doesn't wrap a SWT image
+ */
+ public static Image unwrap(final IImage image) {
+ Image result = null;
+ if (image instanceof ImageWrapper) {
+ final ImageWrapper imageWrapper = (ImageWrapper) image;
+ result = imageWrapper.getImage();
+ }
+ return result;
+ }
+
+ /**
+ * Creates an {@link IImage} that wraps the given uri
+ * @since 0.4
+ */
+ public static IImage wrap(final String uri) {
+ return new URIImage(uri);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/Activator.java
new file mode 100644
index 00000000000..75806da4db9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/Activator.java
@@ -0,0 +1,63 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+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.facet.custom.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)
+ */
+ @Override
+ public void start(final BundleContext context) throws Exception {
+ super.start(context);
+ Activator.plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+ */
+ @Override
+ public void stop(final BundleContext context) throws Exception {
+ Activator.plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizationCommandFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizationCommandFactory.java
new file mode 100644
index 00000000000..c9a51fba50b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizationCommandFactory.java
@@ -0,0 +1,247 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Nicolas Bros (Mia-Software) - Bug 378271 - [Table] Select Columns To Hide is broken
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.common.command.CompoundCommand;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.EcoreFactory;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.exception.CustomizationEditRuntimeException;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.ICustomizationCommandFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.util.emf.core.command.ICommandFactoryResult;
+import org.eclipse.papyrus.emf.facet.util.emf.core.command.ICommandFactoryResultFactory;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.exported.ICommandFactory;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomFactory;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.CustomPackage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementSwitchQuery;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization;
+
+public class CustomizationCommandFactory implements ICustomizationCommandFactory {
+
+ private static final String CONFORM_ATT_NAME = "isConforming"; //$NON-NLS-1$
+ private final EditingDomain editingDomain;
+ private final ICommandFactory commandFactory;
+
+ public CustomizationCommandFactory(final EditingDomain editingDomain, final ICommandFactory commandFactory) {
+ this.editingDomain = editingDomain;
+ this.commandFactory = commandFactory;
+ }
+
+ public ICommandFactoryResult<EClassCustomization> createEClassCustomization(
+ final Customization customization, final EClass customedEClass,
+ final Query conformanceQuery) {
+ final EClassCustomization eClassCustom = CustomFactory.eINSTANCE.createEClassCustomization();
+ final CompoundCommand resultCmd = new CompoundCommand(
+ "Create one instance of EClassCustomization for " + customedEClass.getName()); //$NON-NLS-1$
+ final Command linkToContainer = this.commandFactory
+ .createAddCommand(
+ this.editingDomain,
+ customization,
+ EcorePackage.eINSTANCE
+ .getEPackage_EClassifiers(),
+ eClassCustom);
+ resultCmd.append(linkToContainer);
+ final Command linkToEClass = this.commandFactory
+ .createSetCommand(
+ this.editingDomain,
+ eClassCustom,
+ EFacetPackage.eINSTANCE
+ .getFacet_ExtendedMetaclass(),
+ customedEClass);
+ resultCmd.append(linkToEClass);
+ if (conformanceQuery != null) {
+ final ICommandFactoryResult<FacetAttribute> attResult = createConformanceOperation(eClassCustom, conformanceQuery);
+ resultCmd.append(attResult.getCommand());
+ }
+
+ return ICommandFactoryResultFactory.DEFAULT.createCommandFactoryResult(resultCmd, eClassCustom);
+ }
+
+ //TODO Move to FacetCommandFactory
+ private ICommandFactoryResult<FacetAttribute> createConformanceOperation(final Facet facet, final Query query) {
+ final CompoundCommand resultCmd = new CompoundCommand("Creates a facet conformance attribute"); //$NON-NLS-1$
+ final FacetAttribute conformanceAtt = EFacetFactory.eINSTANCE.createFacetAttribute();
+ conformanceAtt.setName(CustomizationCommandFactory.CONFORM_ATT_NAME);
+ conformanceAtt.setEType(EcorePackage.eINSTANCE.getEBoolean());
+ conformanceAtt.setQuery(query);
+ conformanceAtt.setDerived(true);
+
+ final Command conformance = this.commandFactory.createSetCommand(this.editingDomain, facet, EFacetPackage.eINSTANCE.getFacet_ConformanceTypedElement(), conformanceAtt);
+ resultCmd.append(conformance);
+ final Command addToFacet = this.commandFactory.createAddCommand(this.editingDomain, facet, EFacetPackage.eINSTANCE.getFacet_FacetElements(), conformanceAtt);
+ resultCmd.append(addToFacet);
+ return ICommandFactoryResultFactory.DEFAULT.createCommandFactoryResult(resultCmd, conformanceAtt);
+ }
+
+ public ICommandFactoryResult<FacetCustomization> createFacetCustomization(
+ final Customization customization, final Facet customizedFacet) {
+ final FacetCustomization eFacetCustom = CustomFactory.eINSTANCE.createFacetCustomization();
+ final CompoundCommand resultCmd = new CompoundCommand(
+ "Create one instance of FacetCustomization for " + customizedFacet.getName()); //$NON-NLS-1$
+ final Command linkToContainer = this.commandFactory
+ .createAddCommand(this.editingDomain, customization,
+ EcorePackage.eINSTANCE.getEPackage_EClassifiers(),
+ eFacetCustom);
+ resultCmd.append(linkToContainer);
+ final Command linkToFacet = this.commandFactory
+ .createAddCommand(
+ this.editingDomain,
+ customization,
+ CustomPackage.eINSTANCE
+ .getFacetCustomization_CustomizedFacet(),
+ customizedFacet);
+ resultCmd.append(linkToFacet);
+ return ICommandFactoryResultFactory.DEFAULT.createCommandFactoryResult(resultCmd, eFacetCustom);
+ }
+
+ public ICommandFactoryResult<Facet> setPropertyConfig(
+ final Facet typeCustomization,
+ final ETypedElement customizedTElt, // customized typed element
+ final FacetOperation customProperty, final Query query) {
+ final CompoundCommand resultCmd = new CompoundCommand(
+ "Set the value of the customization property '" + customProperty.getName() + "'"); //$NON-NLS-1$ //$NON-NLS-2$
+ FacetOperation fOpToModifiy = null; // Facet operation to modify
+ for (FacetOperation facetOperation : typeCustomization
+ .getFacetOperations()) {
+ if (facetOperation.getOverride().equals(customProperty)) {
+ fOpToModifiy = facetOperation;
+ }
+ }
+ if (fOpToModifiy == null) {
+ createPropertySetting(typeCustomization, customizedTElt,
+ customProperty, query, resultCmd);
+ } else {
+ final Query fOpQuery = fOpToModifiy.getQuery();
+ if (fOpQuery instanceof ETypedElementSwitchQuery) {
+ final ETypedElementSwitchQuery switchQuery = (ETypedElementSwitchQuery) fOpQuery;
+ final Command setCase = setOrCreateETypedElementCase(switchQuery, customizedTElt, query);
+ resultCmd.append(setCase);
+ } else {
+ throw new CustomizationEditRuntimeException();
+ }
+ }
+ return ICommandFactoryResultFactory.DEFAULT.createCommandFactoryResult(resultCmd, typeCustomization);
+ }
+
+ private void createPropertySetting(
+ final Facet typeCustomization,
+ final ETypedElement customizedTElt,
+ final FacetOperation customProperty, final Query query,
+ final CompoundCommand resultCmd) {
+ FacetOperation facetOperation = EFacetFactory.eINSTANCE.createFacetOperation();
+ // link the instance of FacetOperation to its parent
+ final Command linkFOpToParent = this.commandFactory.createAddCommand(
+ this.editingDomain, typeCustomization,
+ EFacetPackage.eINSTANCE.getFacet_FacetOperations(),
+ facetOperation);
+ resultCmd.append(linkFOpToParent);
+ // Link the instance of FacetOperation to the overridden custom property operation.
+ final Command linkToOverride = this.commandFactory.createSetCommand(
+ this.editingDomain, facetOperation,
+ EFacetPackage.eINSTANCE.getDerivedTypedElement_Override(),
+ customProperty);
+ resultCmd.append(linkToOverride);
+ facetOperation.setName(customProperty.getName());
+ facetOperation.setEType(customProperty.getEType());
+ facetOperation.setLowerBound(customProperty.getLowerBound());
+ facetOperation.setUpperBound(customProperty.getUpperBound());
+
+ // add the "eStructuralFeature" EParameter that every customization operation must have
+ final EParameter eParameter = EcoreFactory.eINSTANCE.createEParameter();
+ eParameter.setName("eStructuralFeature"); //$NON-NLS-1$
+ eParameter.setEType(EcorePackage.eINSTANCE.getETypedElement());
+ facetOperation.getEParameters().add(eParameter);
+
+ final ETypedElementSwitchQuery switchQuery = CustomFactory.eINSTANCE.createETypedElementSwitchQuery();
+ // Link the instance of ETypedElementSwitchQuery to its parent
+ final Command switchToParent = this.commandFactory
+ .createSetCommand(this.editingDomain, facetOperation,
+ EFacetPackage.eINSTANCE
+ .getDerivedTypedElement_Query(),
+ switchQuery);
+ resultCmd.append(switchToParent);
+ final Command setCase = setOrCreateETypedElementCase(switchQuery, customizedTElt, query);
+ resultCmd.append(setCase);
+ }
+
+ private Command setOrCreateETypedElementCase(
+ final ETypedElementSwitchQuery switchQuery,
+ final ETypedElement customizedTElt, final Query query) {
+ final CompoundCommand resultCmd = new CompoundCommand("Set or create an instance of ETypedElementCase"); //$NON-NLS-1$
+ ETypedElementCase caseToModify = getCaseByETypedElement(switchQuery, customizedTElt);
+ if (caseToModify == null) {
+ caseToModify = CustomFactory.eINSTANCE.createETypedElementCase();
+ final Command linkToParent = this.commandFactory.createAddCommand(
+ this.editingDomain, switchQuery,
+ CustomPackage.eINSTANCE.getETypedElementSwitchQuery_Cases(),
+ caseToModify);
+ resultCmd.append(linkToParent);
+ }
+ final Command setCase = this.commandFactory.createSetCommand(
+ this.editingDomain, caseToModify,
+ CustomPackage.eINSTANCE.getETypedElementCase_Case(),
+ customizedTElt);
+ resultCmd.append(setCase);
+ final Command setQuery = this.commandFactory.createSetCommand(
+ this.editingDomain, caseToModify,
+ CustomPackage.eINSTANCE.getETypedElementCase_Value(),
+ query);
+ resultCmd.append(setQuery);
+ return resultCmd;
+ }
+
+ private static ETypedElementCase getCaseByETypedElement(
+ final ETypedElementSwitchQuery switchQuery,
+ final ETypedElement customizedTElt) {
+ ETypedElementCase caseToModify = null;
+ for (ETypedElementCase casee : switchQuery.getCases()) {
+ //casee has to be null if we want to customize the EObject itself.
+ if (casee.getCase() == null) {
+ if (customizedTElt == null) {
+ caseToModify = casee;
+ }
+ } else {
+ if (casee.getCase().equals(customizedTElt)) {
+ caseToModify = casee;
+ break;
+ }
+ }
+ }
+ return caseToModify;
+ }
+
+ public ICommandFactoryResult<Customization> createCustomization(
+ final String name) {
+ final Customization customization = CustomFactory.eINSTANCE
+ .createCustomization();
+ final Command setName = this.commandFactory.createSetCommand(
+ this.editingDomain, customization,
+ EcorePackage.eINSTANCE.getENamedElement_Name(), name);
+ return ICommandFactoryResultFactory.DEFAULT.createCommandFactoryResult(setName, customization);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizationCommandFactoryFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizationCommandFactoryFactory.java
new file mode 100644
index 00000000000..4a714c9a4ca
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizationCommandFactoryFactory.java
@@ -0,0 +1,29 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.ICustomizationCommandFactory;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.ICustomizationCommandFactoryFactory;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.exported.ICommandFactory;
+
+public class CustomizationCommandFactoryFactory implements
+ ICustomizationCommandFactoryFactory {
+
+ public ICustomizationCommandFactory createCustomizationCommandFactory(
+ final EditingDomain editingDomain,
+ final ICommandFactory commandFactory) {
+ return new CustomizationCommandFactory(editingDomain, commandFactory);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedContentProviderFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedContentProviderFactory.java
new file mode 100644
index 00000000000..090bf6f0f8b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedContentProviderFactory.java
@@ -0,0 +1,32 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomizedContentProvider;
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomizedContentProviderFactory;
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomizedTreeContentProvider;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+
+@SuppressWarnings("deprecation")
+//@SuppressWarnings("deprecation") : Bug 380229 - [deprecated] ICustomizedContentProvider
+public class CustomizedContentProviderFactory implements ICustomizedContentProviderFactory {
+
+ public ICustomizedContentProvider createCustomizedContentProvider(final ICustomizationManager customManager) {
+ return new CustomizedTreeContentProvider(customManager);
+ }
+
+ public ICustomizedTreeContentProvider createCustomizedTreeContentProvider(final ICustomizationManager customManager) {
+ return new CustomizedTreeContentProvider(customManager);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedLabelDecorator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedLabelDecorator.java
new file mode 100644
index 00000000000..5520d0ef658
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedLabelDecorator.java
@@ -0,0 +1,124 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Soft-Maint.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * David Couvrand (Soft-Maint) - Bug 418418 - [Customization] Overlay icons not implemented
+ * David Couvrand (Soft-Maint) - [Customization] NPE for CustomizableLabelProvider when no image found for image customization
+ * Thomas Cicognani (Soft-Maint) - Bug 424414 - ImageManager doesn't cache images
+ * Thomas Cicognani (Soft-Maint) - Bug 424416 - Plug-in for JFace Utilities
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.util.jface.ui.imageprovider.IImageProvider;
+import org.eclipse.papyrus.emf.facet.util.jface.ui.imageprovider.IImageProviderFactory;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.jface.viewers.DecorationOverlayIcon;
+import org.eclipse.jface.viewers.IDecorationContext;
+import org.eclipse.jface.viewers.ILabelProviderListener;
+import org.eclipse.jface.viewers.LabelDecorator;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.internal.exported.CustomizationUtils;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage;
+import org.eclipse.swt.graphics.Image;
+
+public class CustomizedLabelDecorator extends LabelDecorator {
+
+ private final ICustomizationManager customizationMgr;
+ private final PropertiesHandler propertiesHandler;
+ private final ImageManager imageManager;
+
+ public CustomizedLabelDecorator(final ICustomizationManager customizationMgr) {
+ super();
+ this.customizationMgr = customizationMgr;
+ this.propertiesHandler = new PropertiesHandler(customizationMgr);
+ this.imageManager = new ImageManager();
+ }
+
+ public Image decorateImage(final Image image, final Object element) {
+ return null;
+ }
+
+ public String decorateText(final String text, final Object element) {
+ return null;
+ }
+
+ public void addListener(final ILabelProviderListener listener) {
+ // Nothing to do
+ }
+
+ public void dispose() {
+ // Nothing to do
+ }
+
+ public boolean isLabelProperty(final Object element, final String property) {
+ return false;
+ }
+
+ public void removeListener(final ILabelProviderListener listener) {
+ // Nothing to do
+ }
+
+ @Override
+ public Image decorateImage(final Image image, final Object element,
+ final IDecorationContext context) {
+ Image result = null;
+ if ((image != null) && (element instanceof EObject)) {
+ final IImage bLeftIImage = getPropertyValue(element,
+ this.propertiesHandler.getBottomLeftOverlayProperty(),
+ null, IImage.class);
+ final ImageDescriptor bottomLeftImDesc = this.imageManager
+ .getImageDescriptor(bLeftIImage);
+ final IImage tLeftIImage = getPropertyValue(element,
+ this.propertiesHandler.getTopLeftOverlayProperty(), null,
+ IImage.class);
+ final ImageDescriptor topLeftImDesc = this.imageManager
+ .getImageDescriptor(tLeftIImage);
+ final IImage bRightIImage = getPropertyValue(element,
+ this.propertiesHandler.getBottomRightOverlayProperty(),
+ null, IImage.class);
+ final ImageDescriptor bottomRightImDesc = this.imageManager
+ .getImageDescriptor(bRightIImage);
+ final IImage tRightIImage = getPropertyValue(element,
+ this.propertiesHandler.getTopRightOverlayProperty(), null,
+ IImage.class);
+ final ImageDescriptor topRightImDesc = this.imageManager
+ .getImageDescriptor(tRightIImage);
+ final ImageDescriptor[] overlaysArray = new ImageDescriptor[] {
+ topLeftImDesc, topRightImDesc, bottomLeftImDesc,
+ bottomRightImDesc, null };
+ final DecorationOverlayIcon overlayIcon = new DecorationOverlayIcon(
+ image, overlaysArray);
+ final IImageProvider imageProvider = IImageProviderFactory.DEFAULT
+ .createIImageProvider(Activator.getDefault());
+ result = imageProvider.getImage(overlayIcon);
+ }
+ return result;
+ }
+
+ @Override
+ public String decorateText(final String text, final Object element,
+ final IDecorationContext context) {
+ return null;
+ }
+
+ @Override
+ public boolean prepareDecoration(final Object element,
+ final String originalText, final IDecorationContext context) {
+ return false;
+ }
+
+ private <T> T getPropertyValue(final Object element,
+ final FacetOperation property, final ETypedElement eTypedElement,
+ final Class<T> classs) {
+ return CustomizationUtils.getPropertyValue(this.customizationMgr,
+ element, property, eTypedElement, classs);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedLabelProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedLabelProvider.java
new file mode 100644
index 00000000000..164ef31b817
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedLabelProvider.java
@@ -0,0 +1,594 @@
+/**
+ * Copyright (c) 2011, 2012, 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 372198 - resource leak in org.eclipse.papyrus.emf.facet.custom.ui.internal.CustomizedLabelProvider
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Nicolas Bros (Mia-Software) - Bug 374941 - To be able to customize overlay icons on EClass
+ * Gregoire Dupe (Mia-Software) - Bug 374941 - To be able to customize overlay icons on EClass
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Vincent Lorenzo (CEA-LIST) - Bug 352603 - [Table] A tooltip which displays the full label of a String cell editor
+ * Grégoire Dupé(Mia-Software) - Bug 352603 - [Table] A tooltip which displays the full label of a String cell editor
+ * David Couvrand (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ * Nicolas Rault (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ * David Couvrand (Soft-Maint) - Bug 418418 - [Customization] Overlay icons not implemented
+ * David Couvrand (Soft-Maint) - Bug 422058 - Implementation of strikethrough and underline in the CustomizedLabelProvider
+ * Grégoire Dupé (Mia-Software) - Bug 424122 - [Table] Images, fonts and colors are not shared between the instances of table
+ * Thomas Cicognani (Soft-Maint) - Bug 424414 - ImageManager doesn't cache images
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomOverride;
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomizedLabelProvider;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.util.core.DebugUtils;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.swt.colorprovider.IColorProvider;
+import org.eclipse.papyrus.emf.facet.util.swt.colorprovider.IColorProviderFactory;
+import org.eclipse.papyrus.emf.facet.util.swt.fontprovider.IFontProvider;
+import org.eclipse.papyrus.emf.facet.util.swt.fontprovider.IFontProviderFactory;
+import org.eclipse.jface.viewers.CellLabelProvider;
+import org.eclipse.jface.viewers.DelegatingStyledCellLabelProvider.IStyledLabelProvider;
+import org.eclipse.jface.viewers.ILabelProviderListener;
+import org.eclipse.jface.viewers.StyledString;
+import org.eclipse.jface.viewers.ViewerCell;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManagerFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.exception.CustomizationException;
+import org.eclipse.papyrus.emf.facet.custom.core.internal.exported.CustomizationUtils;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IColor;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Alignment;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Shadow;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.Font;
+import org.eclipse.swt.graphics.FontData;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.graphics.RGB;
+import org.eclipse.swt.widgets.Display;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.BundleContext;
+import org.osgi.framework.ServiceReference;
+
+public class CustomizedLabelProvider extends CellLabelProvider implements
+ ICustomizedLabelProvider, IStyledLabelProvider {
+
+ private static final boolean DEBUG_FONT = DebugUtils.getDebugStatus(Activator.getDefault(), "font"); //$NON-NLS-1$
+ private static final boolean DEBUG_COLOR = DebugUtils.getDebugStatus(Activator.getDefault(), "color"); //$NON-NLS-1$
+ private static final int RGB_MAX = 255;
+ private static final RGB DEFAULT_BCKGND = new RGB(
+ CustomizedLabelProvider.RGB_MAX, CustomizedLabelProvider.RGB_MAX,
+ CustomizedLabelProvider.RGB_MAX);
+ private static final RGB DEFAULT_FOREGND = new RGB(0, 0, 0);
+ private final ICustomizationManager customManager;
+ private final PropertiesHandler propertiesHandler;
+ private final List<ILabelProviderListener> listeners = new ArrayList<ILabelProviderListener>();
+ private final ImageManager imageManager;
+ private final ICustomOverride customOverride;
+
+ @Deprecated
+ public CustomizedLabelProvider(final ResourceSet resourceSet) {
+ this(ICustomizationManagerFactory.DEFAULT
+ .getOrCreateICustomizationManager(resourceSet));
+ }
+
+ public CustomizedLabelProvider(final ICustomizationManager customManager) {
+ super();
+ this.customManager = customManager;
+ this.propertiesHandler = new PropertiesHandler(customManager);
+ this.imageManager = new ImageManager();
+ this.customOverride = getICustomOverride();
+ }
+
+ private <T> T getPropertyValue(final Object element,
+ final FacetOperation property, final ETypedElement eTypedElement, final Class<T> classs) {
+ return CustomizationUtils.getPropertyValue(this.customManager, element,
+ property, eTypedElement, classs);
+ }
+
+ public String getText(final Object element) {
+ String result;
+ if (element instanceof EObject) {
+ result = getPropertyValue(element,
+ this.propertiesHandler.getLabelProperty(), null, String.class);
+ } else if (element == null) {
+ result = Messages.CustomizedLabelProvider_null;
+ } else if (element instanceof List<?>) {
+ // Here we do not add any square brackets because the square
+ // brackets are useful to emphases the sublists and here we will non
+ // meet any sublists.
+ final StringBuffer strBuffer = new StringBuffer();
+ final List<?> list = (List<?>) element;
+ final Iterator<?> iter = list.iterator();
+ while (iter.hasNext()) {
+ final Object current = iter.next();
+ strBuffer.append(getText(current));
+ if (iter.hasNext()) {
+ strBuffer.append(", "); //$NON-NLS-1$
+ }
+ }
+ result = strBuffer.toString();
+ } else {
+ result = element.toString();
+ }
+ if (this.customOverride != null) {
+ try {
+ result = this.customOverride.getText(result, element,
+ this.customManager, this.propertiesHandler);
+ } catch (final CustomizationException e) {
+ result = "ERROR, cf. log"; //$NON-NLS-1$
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+ return result;
+ }
+
+ private static ICustomOverride getICustomOverride() {
+ final Bundle bundle = Activator.getDefault().getBundle();
+ final BundleContext bundleContext = bundle.getBundleContext();
+ final ServiceReference serviceReference = bundleContext
+ .getServiceReference(ICustomOverride.class.getName());
+ final ICustomOverride customOverride = (ICustomOverride) bundleContext
+ .getService(serviceReference);
+ return customOverride;
+ }
+
+ public String getText(final Object object, final ETypedElement eTypedElement) {
+ String result;
+ if (object == null) {
+ result = Messages.CustomizedLabelProvider_null;
+ } else {
+ if (object instanceof EObject) {
+ final EObject eObject = (EObject) object;
+ try {
+ result = this.customManager.getCustomValueOf(eObject,
+ eTypedElement,
+ this.propertiesHandler.getLabelProperty(),
+ String.class);
+ } catch (CustomizationException e) {
+ Logger.logError(e, Activator.getDefault());
+ result = "!!! Error, cf log !!!";
+ }
+ } else {
+ result = object.toString();
+ }
+
+ }
+ return result;
+
+//TODO Remove before to commit
+// if (structuralFeature.getUpperBound() == 1) {
+// final Object object = this.customManager.getFacetManager().get(eObject,
+// structuralFeature, Object.class);
+// result = getText(object);
+// } else {
+// final StringBuffer stringBuffer = new StringBuffer();
+// final List<Object> objects = this.customManager.getFacetManager()
+// .getMultiValued(eObject, structuralFeature, Object.class);
+// final Iterator<Object> objectsIter = objects.iterator();
+// while (objectsIter.hasNext()) {
+// final Object object = objectsIter.next();
+// stringBuffer.append(this.getText(object));
+// if (objectsIter.hasNext()) {
+// stringBuffer.append(", ");
+// }
+// }
+// result = stringBuffer.toString();
+// }
+//TODO (end)
+ }
+
+ @Override
+ public void addListener(final ILabelProviderListener listener) {
+ this.listeners.add(listener);
+ }
+
+ @Override
+ public void dispose() {
+ this.listeners.clear();
+ }
+
+ @Override
+ public boolean isLabelProperty(final Object element, final String property) {
+ return false;
+ }
+
+ @Override
+ public void removeListener(final ILabelProviderListener listener) {
+ this.listeners.remove(listener);
+ }
+
+ private static Color getColor(final RGB rgb) {
+ final Display display = Display.getDefault();
+ final IColorProvider colorProvider = IColorProviderFactory.DEFAULT
+ .getOrCreateIColorProvider(display);
+ return colorProvider.getColor(rgb);
+ }
+
+ public Color getForeground(final Object element) {
+ final IColor color = getPropertyValue(element,
+ this.propertiesHandler.getForegroundProperty(),
+ null, IColor.class);
+ Color result;
+ if (color == null) {
+ result = getColor(CustomizedLabelProvider.DEFAULT_FOREGND);
+ } else {
+ result = getColor(new RGB(color.getRed(), color.getGreen(),
+ color.getBlue()));
+ }
+ return result;
+ }
+
+ public Color getBackground(final Object element) {
+ final IColor color = getPropertyValue(element,
+ this.propertiesHandler.getBackgroundProperty(), null, IColor.class);
+ Color result;
+ if (color == null) {
+ result = getColor(CustomizedLabelProvider.DEFAULT_BCKGND);
+ } else {
+ result = getColor(new RGB(color.getRed(), color.getGreen(),
+ color.getBlue()));
+ }
+ return result;
+ }
+
+ private Font getFont(final FontData fontData) {
+ final IFontProvider fontProvider = IFontProviderFactory.DEFAULT
+ .getOrCreateIFontProvider(Display.getDefault());
+ return fontProvider.getFont(fontData);
+ }
+
+ public Font getFont(final Object element) {
+
+ String fontName = getPropertyValue(element,
+ this.propertiesHandler.getFontNameProperty(), null, String.class);
+ if (fontName == null) {
+ final FontData[] fontData = Display.getDefault().getSystemFont()
+ .getFontData();
+ fontName = fontData[0].getName();
+ }
+
+ Integer fontSize = getPropertyValue(element,
+ this.propertiesHandler.getFontSizeProperty(), null, Integer.class);
+ if (fontSize == null) {
+ final FontData[] fontData = Display.getDefault().getSystemFont()
+ .getFontData();
+ fontSize = Integer.valueOf(fontData[0].getHeight());
+ }
+
+ Boolean isBold = getPropertyValue(element,
+ this.propertiesHandler.getIsBoldProperty(), null, Boolean.class);
+ if (isBold == null) {
+ isBold = Boolean.FALSE;
+ }
+
+ Boolean isItalic = getPropertyValue(element,
+ this.propertiesHandler.getIsItalicProperty(), null, Boolean.class);
+ if (isItalic == null) {
+ isItalic = Boolean.FALSE;
+ }
+
+ int fontStyle = 0;
+ if (isBold.booleanValue()) {
+ fontStyle = fontStyle | SWT.BOLD;
+ }
+ if (isItalic.booleanValue()) {
+ fontStyle = fontStyle | SWT.ITALIC;
+ }
+ FontData fontData = new FontData(fontName, fontSize.intValue(),
+ fontStyle);
+ try {
+ fontData = this.customOverride.getFont(fontData, element,
+ this.customManager, this.propertiesHandler);
+ } catch (final CustomizationException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ return getFont(fontData);
+ }
+
+ public Image getImage(final Object element) {
+ final IImage image = getPropertyValue(element,
+ this.propertiesHandler.getImageProperty(), null, IImage.class);
+ return this.imageManager.getImage(image);
+ }
+
+ public Image getImage(final Object element, final ETypedElement featureColumn) {
+ return getImage(element, this.propertiesHandler.getImageProperty(), featureColumn);
+ }
+
+ public ICustomizationManager getCustomizationManager() {
+ return this.customManager;
+ }
+
+ public boolean isUnderlined(final Object element,
+ final ETypedElement eTypedElement) {
+ return getPropertyValue(element,
+ this.propertiesHandler.getIsUnderlinedProperty(), null, Boolean.class).booleanValue();
+ }
+
+ public boolean isStruckthrough(final Object element,
+ final ETypedElement eTypedElement) {
+ final Boolean propertyValue = getPropertyValue(element,
+ this.propertiesHandler.getIsStruckthroughProperty(),
+ eTypedElement, Boolean.class);
+ boolean result = false;
+ if (propertyValue != null) {
+ result = propertyValue.booleanValue();
+ }
+ return result;
+ }
+
+ private Image getImage(final Object element, final FacetOperation operation, final ETypedElement feature) {
+ final IImage iimage = getPropertyValue(element, operation, feature,
+ IImage.class);
+ return this.imageManager.getImage(iimage);
+ }
+
+ public Image getTopLeftOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return getImage(element, this.propertiesHandler.getTopLeftOverlayProperty(), eTypedElement);
+ }
+
+ public Image getTopMiddleOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return getImage(element, this.propertiesHandler.getTopMiddleOverlayProperty(), eTypedElement);
+ }
+
+ public Image getTopRightOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return getImage(element, this.propertiesHandler.getTopRightOverlayProperty(), eTypedElement);
+ }
+
+ public Image getBottomLeftOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return getImage(element, this.propertiesHandler.getBottomLeftOverlayProperty(), eTypedElement);
+ }
+
+ public Image getBottomMiddleOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return getImage(element, this.propertiesHandler.getBottomMiddleOverlayProperty(), eTypedElement);
+ }
+
+ public Image getBottomRightOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return getImage(element, this.propertiesHandler.getBottomRightOverlayProperty(), eTypedElement);
+ }
+
+
+ @Override
+ public String getToolTipText(final Object element) {
+ return getPropertyValue(element,
+ this.propertiesHandler.getToolTipTextProperty(), null, String.class);
+ }
+
+ @Override
+ public int getToolTipStyle(final Object element) {
+ int style = 0;
+ final Shadow shadow = getPropertyValue(element,
+ this.propertiesHandler.getToolTipShadowProperty(), null,
+ Shadow.class);
+ switch (shadow) {
+ case NONE :
+ style = SWT.SHADOW_NONE;
+ break;
+ case IN :
+ style = SWT.SHADOW_IN;
+ break;
+ case OUT:
+ style = SWT.SHADOW_OUT;
+ break;
+ default:
+ throw new IllegalStateException("Un expected value"); //$NON-NLS-1$
+ }
+
+ final Alignment alignment = getPropertyValue(element,
+ this.propertiesHandler.getToolTipAlignmentProperty(), null,
+ Alignment.class);
+ switch (alignment) {
+ case LEFT:
+ style |= SWT.LEFT;
+ break;
+ case CENTER:
+ style |= SWT.CENTER;
+ break;
+ case RIGHT:
+ style |= SWT.RIGHT;
+ break;
+ default:
+ throw new IllegalStateException("Un expected value"); //$NON-NLS-1$
+ }
+
+ return style;
+ }
+
+ @Override
+ public Image getToolTipImage(final Object element) {
+ return getPropertyValue(element,
+ this.propertiesHandler.getToolTipImageProperty(), null, Image.class);
+ }
+
+ @Override
+ public Color getToolTipBackgroundColor(final Object element) {
+ final IColor color = getPropertyValue(element,
+ this.propertiesHandler.getToolTipBackgroundProperty(),
+ null, IColor.class);
+ return getColor(new RGB(color.getRed(), color.getGreen(), color.getBlue()));
+ }
+
+ @Override
+ public Color getToolTipForegroundColor(final Object element) {
+ final IColor color = getPropertyValue(element,
+ this.propertiesHandler.getToolTipForegroundProperty(),
+ null, IColor.class);
+ return getColor(new RGB(color.getRed(), color.getGreen(), color.getBlue()));
+ }
+
+ public Image getToolTipTopLeftOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return getPropertyValue(element,
+ this.propertiesHandler.getToolTipTopLeftOverlayProperty(),
+ null, Image.class);
+ }
+
+ public Image getToolTipTopMiddleOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return getPropertyValue(element,
+ this.propertiesHandler.getToolTipTopMiddleOverlayProperty(),
+ null, Image.class);
+ }
+
+ public Image getToolTipTopRightOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return getPropertyValue(element,
+ this.propertiesHandler.getToolTipTopRightOverlayProperty(),
+ null, Image.class);
+ }
+
+ public Image getToolTipBottomLeftOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return getPropertyValue(element,
+ this.propertiesHandler.getToolTipBottomLeftOverlayProperty(),
+ null, Image.class);
+ }
+
+ public Image getToolTipBottomMiddleOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return getPropertyValue(element,
+ this.propertiesHandler.getToolTipBottomMiddleOverlayProperty(),
+ null, Image.class);
+ }
+
+ public Image getToolTipBottomRightOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return getPropertyValue(element,
+ this.propertiesHandler.getToolTipBottomRightOverlayProperty(),
+ null, Image.class);
+ }
+
+ @Override
+ public int getToolTipDisplayDelayTime(final Object element) {
+ return getPropertyValue(element,
+ this.propertiesHandler.getToolTipDisplayDelayTimeProperty(),
+ null, Integer.class).intValue();
+ }
+
+ @Override
+ public int getToolTipTimeDisplayed(final Object element) {
+ return getPropertyValue(element,
+ this.propertiesHandler.getToolTipTimeDisplayedProperty(), null,
+ Integer.class).intValue();
+
+ }
+
+ @Override
+ public Font getToolTipFont(final Object element) {
+
+ final String fontName = getPropertyValue(element,
+ this.propertiesHandler.getToolTipFontNameProperty(), null,
+ String.class);
+ final Integer fontSize = getPropertyValue(element,
+ this.propertiesHandler.getToolTipFontSizeProperty(), null,
+ Integer.class);
+ final Boolean isBold = getPropertyValue(element,
+ this.propertiesHandler.getToolTipIsBoldProperty(), null,
+ Boolean.class);
+ final Boolean isItalic = getPropertyValue(element,
+ this.propertiesHandler.getToolTipIsItalicProperty(), null,
+ Boolean.class);
+ int fontStyle = 0;
+ if (isBold.booleanValue()) {
+ fontStyle = fontStyle | SWT.BOLD;
+ }
+ if (isItalic.booleanValue()) {
+ fontStyle = fontStyle | SWT.ITALIC;
+ }
+ final FontData fontData = new FontData(fontName, fontSize.intValue(),
+ fontStyle);
+ final IFontProvider fontProvider = IFontProviderFactory.DEFAULT
+ .getOrCreateIFontProvider(Display.getDefault());
+ return fontProvider.getFont(fontData);
+ }
+
+ @Override
+ public void update(final ViewerCell cell) {
+ final Object element = cell.getElement();
+ cell.setText(getText(element));
+ cell.setBackground(getBackground(element));
+ cell.setFont(getFont(element));
+ cell.setForeground(getForeground(element));
+ cell.setImage(getImage(element));
+ }
+
+ public String getToolTipText(final Object element,
+ final ETypedElement eTypedElement) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public Image getToolTipImage(final Object element,
+ final ETypedElement eTypedElement) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public Font getToolTipFont(final Object element,
+ final ETypedElement eTypedElement) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public Color getToolTipBackgroundColor(final Object element,
+ final ETypedElement eTypedElement) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public Color getToolTipForegroundColor(final Object element,
+ final ETypedElement eTypedElement) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public int getToolTipTimeDisplayed(final Object element,
+ final ETypedElement eTypedElement) {
+ // TODO Auto-generated method stub
+ return 0;
+ }
+
+ public int getToolTipDisplayDelayTime(final Object element,
+ final ETypedElement eTypedElement) {
+ // TODO Auto-generated method stub
+ return 0;
+ }
+
+ public int getToolTipStyle(final Object element,
+ final ETypedElement eTypedElement) {
+ // TODO Auto-generated method stub
+ return 0;
+ }
+
+ public ICustomizedLabelProvider cloneLabelProvider() {
+ return new CustomizedLabelProvider(this.customManager);
+ }
+
+ public StyledString getStyledText(final Object element) {
+ return new StyledString(getText(element));
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedLabelProviderFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedLabelProviderFactory.java
new file mode 100644
index 00000000000..3c41a4d0d9e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedLabelProviderFactory.java
@@ -0,0 +1,28 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * David Couvrand (Soft-Maint) - Bug 418418 - [Customization] Overlay icons not implemented
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomizedLabelProvider;
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomizedLabelProviderFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+
+public class CustomizedLabelProviderFactory implements
+ ICustomizedLabelProviderFactory {
+
+ public ICustomizedLabelProvider createCustomizedLabelProvider(
+ final ICustomizationManager customizationMgr) {
+ return new DecoratingCustomizedLabelProvider(
+ customizationMgr);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedTreeContentProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedTreeContentProvider.java
new file mode 100644
index 00000000000..03f85f9b10d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/CustomizedTreeContentProvider.java
@@ -0,0 +1,529 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 385292 - [CustomizedTreeContentProvider] StackOverFlow when refreshing a TreeViewer with ICustomizedTreeContentProvider
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.ui.IContentPropertiesHandler;
+import org.eclipse.papyrus.emf.facet.custom.ui.IContentPropertiesHandlerFactory;
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomizedContentProvider;
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomizedTreeContentProvider;
+import org.eclipse.papyrus.emf.facet.efacet.core.FacetUtils;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.FacetManagerException;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.exception.CustomizationException;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EAttributeTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeproxyFactory;
+
+@SuppressWarnings("deprecation")
+// @SuppressWarnings("deprecation") : Bug 380229 - [deprecated] ICustomizedContentProvider
+public class CustomizedTreeContentProvider implements ICustomizedTreeContentProvider, ICustomizedContentProvider {
+
+ private final ICustomizationManager customManager;
+ private final IContentPropertiesHandler contentHandler;
+ private Object previousInput;
+ private Object[] rootElements;
+
+ private final Map<EObjectCacheElement, TreeElement> cache;
+
+ private class EObjectCacheElement {
+
+ //Not null
+ private final EObject element;
+
+ //May be null
+ private final TreeElement parent;
+
+ public EObjectCacheElement(EObject element, TreeElement parent) {
+ this.element = element;
+ this.parent = parent;
+ }
+
+ @Override
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + getOuterType().hashCode();
+ result = prime * result + ((element == null) ? 0 : element.hashCode());
+ result = prime * result + ((parent == null) ? 0 : parent.hashCode());
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if(this == obj) {
+ return true;
+ }
+ if(obj == null) {
+ return false;
+ }
+ if(!(obj instanceof EObjectCacheElement)) {
+ return false;
+ }
+ EObjectCacheElement other = (EObjectCacheElement)obj;
+ if(!getOuterType().equals(other.getOuterType())) {
+ return false;
+ }
+ if(element == null) {
+ if(other.element != null) {
+ return false;
+ }
+ } else if(!element.equals(other.element)) {
+ return false;
+ }
+ if(parent == null) {
+ if(other.parent != null) {
+ return false;
+ }
+ } else if(!parent.equals(other.parent)) {
+ return false;
+ }
+ return true;
+ }
+
+ private CustomizedTreeContentProvider getOuterType() {
+ return CustomizedTreeContentProvider.this;
+ }
+ }
+
+ public CustomizedTreeContentProvider(final ICustomizationManager customManager) {
+ this.customManager = customManager;
+ this.contentHandler = IContentPropertiesHandlerFactory.DEFAULT.createIContentPropertiesHandler(customManager);
+ this.cache = new HashMap<EObjectCacheElement, TreeElement>();
+ }
+
+ protected Object[] getRootElements(final Object inputElement) {
+ Object[] result;
+ if (inputElement == null) {
+ result = new Object[0];
+ } else if (inputElement instanceof EObject) {
+ result = new EObject[] { (EObject) inputElement };
+ } else if (inputElement instanceof Collection<?>) {
+ result = ((Collection<?>) inputElement).toArray();
+ } else if (inputElement instanceof EObject[]) {
+ result = (EObject[]) inputElement;
+ } else {
+ throw new IllegalArgumentException("Unhandled input element type: " + inputElement.getClass().getSimpleName()); //$NON-NLS-1$
+ }
+ return result;
+ }
+
+ public Object[] getElements(final Object inputElement) {
+ Object[] result;
+ if (this.previousInput == inputElement) {
+ result = this.rootElements;
+ } else {
+ this.previousInput = inputElement;
+ final Object[] elements = getRootElements(inputElement);
+ final List<Object> elementList = new ArrayList<Object>();
+ for (final Object element : elements) {
+ if (!isVisible(element, null)) {
+ continue;
+ }
+ if (element instanceof EObject) {
+ final EObjectTreeElement eObjectProxy = createEObjectProxy(element, null);
+ elementList.add(eObjectProxy);
+ } else {
+ elementList.add(element);
+ }
+ }
+ result = elementList.toArray();
+ this.rootElements = result;
+ }
+ return result;
+ }
+
+ protected static EObjectTreeElement createEObjectProxy(final Object element, final TreeElement parent) {
+ final EObject eObject = (EObject)element;
+ final EObjectTreeElement eObjectProxy = TreeproxyFactory.eINSTANCE.createEObjectTreeElement();
+ eObjectProxy.setEObject(eObject);
+ return eObjectProxy;
+ }
+
+ public Object[] getChildren(final Object parentElement) {
+ Object[] result;
+ if (parentElement == null) {
+ result = new Object[0];
+ } else if (parentElement instanceof EObjectTreeElement) {
+ final EObjectTreeElement eObjectProxy = (EObjectTreeElement) parentElement;
+ result = getChildren(eObjectProxy);
+ } else if (parentElement instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement attributeProxy = (EAttributeTreeElement) parentElement;
+ result = getChildren(attributeProxy);
+ } else if (parentElement instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement referenceProxy = (EReferenceTreeElement) parentElement;
+ result = getChildren(referenceProxy);
+ } else {
+ Logger.logError("Unknown element in tree: " + parentElement.getClass(), Activator.getDefault()); //$NON-NLS-1$
+ result = new Object[0];
+ }
+ return result;
+ }
+
+ public Object[] getChildren(final EObjectTreeElement treeElement) {
+ final ArrayList<Object> children = new ArrayList<Object>();
+ children.addAll(createAttributes(treeElement));
+ children.addAll(createReferences(treeElement));
+ return children.toArray();
+ }
+
+ public Object[] getChildren(final EAttributeTreeElement attributeProxy) {
+ final List<Object> children = new ArrayList<Object>();
+ final EAttribute eAttribute = attributeProxy.getEAttribute();
+ if (eAttribute.isMany()) {
+ final TreeElement parent = attributeProxy.getParent();
+ if (!(parent instanceof EObjectTreeElement)) {
+ throw new IllegalStateException("An attribute should appear only under a model element"); //$NON-NLS-1$
+ }
+ final EObjectTreeElement parentProxy = (EObjectTreeElement) parent;
+ final EObject eObject = parentProxy.getEObject();
+
+ try {
+ final IFacetManager facetManager = this.customManager.getFacetManager();
+ final List<Object> result = facetManager.getOrInvokeMultiValued(eObject, eAttribute, null);
+ for (final Object object : result) {
+ if (object instanceof EObject) {
+ final EObject childEObject = (EObject) object;
+ children.add(createEObjectProxy(childEObject, attributeProxy));
+ }
+ children.add(object);
+ }
+ } catch (final FacetManagerException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+ return children.toArray();
+ }
+
+ public Object[] getChildren(final EReferenceTreeElement referenceProxy) {
+ List<? extends Object> result;
+ final EReference eReference = referenceProxy.getEReference();
+ final TreeElement parent = referenceProxy.getParent();
+ if (!(parent instanceof EObjectTreeElement)) {
+ throw new IllegalStateException("A reference should appear only under a model element"); //$NON-NLS-1$
+ }
+ final EObjectTreeElement parentProxy = (EObjectTreeElement) parent;
+ final EObject eObject = parentProxy.getEObject();
+ if (eReference.isMany()) {
+ result = getMultiValuedReferenceChildren(eReference, eObject, referenceProxy);
+ } else {
+ final Object child = getSingleValuedReferenceChild(eReference, eObject, referenceProxy);
+ if (child == null) {
+ result = Collections.emptyList();
+ } else {
+ result = Collections.singletonList(child);
+ }
+ }
+ return result.toArray();
+ }
+
+ private TreeElement getSingleValuedReferenceChild(final EReference eReference,
+ final EObject eObject, final EReferenceTreeElement parent) {
+ TreeElement child = null;
+ if (parent.getReferedEObjectTE() == null || parent.getReferedEObjectTE().size() == 0) {
+ try {
+ final IFacetManager facetManager = this.customManager
+ .getFacetManager();
+ final EObject referedEObject = facetManager.getOrInvoke(
+ eObject, eReference, EObject.class);
+ if (referedEObject != null) {
+ child = createEObjectProxy(referedEObject, parent);
+ }
+ } catch (final FacetManagerException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ } else {
+ child = parent.getReferedEObjectTE().get(0);
+ }
+ return child;
+ }
+
+ private List<EObjectTreeElement> getMultiValuedReferenceChildren(
+ final EReference eReference, final EObject eObject,
+ final EReferenceTreeElement parent) {
+ List<EObjectTreeElement> children = new ArrayList<EObjectTreeElement>();
+ if (parent.getReferedEObjectTE() == null || parent.getReferedEObjectTE().size() == 0) {
+ try {
+ final IFacetManager facetManager = this.customManager
+ .getFacetManager();
+ final List<Object> result = facetManager
+ .getOrInvokeMultiValued(eObject, eReference, null);
+ for (final Object object : result) {
+ if (object instanceof EObject) {
+ final EObject childEObject = (EObject) object;
+ children.add(createEObjectProxy(childEObject, parent));
+ }
+ }
+ } catch (final FacetManagerException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ } else {
+ children = parent.getReferedEObjectTE();
+ }
+ return children;
+ }
+
+
+
+ private Collection<EAttributeTreeElement> createAttributeProxies(final List<EAttribute> allAttributes, final EObjectTreeElement parent) {
+ final EObject eObject = parent.getEObject();
+ final List<EAttributeTreeElement> result = new ArrayList<EAttributeTreeElement>();
+ for (final EAttribute eAttribute : allAttributes) {
+ if (isVisible(eObject, eAttribute)) {
+ final EAttributeTreeElement attributeProxy = TreeproxyFactory.eINSTANCE.createEAttributeTreeElement();
+ attributeProxy.setEAttribute(eAttribute);
+ attributeProxy.setParent(parent);
+ result.add(attributeProxy);
+ }
+ }
+ return result;
+ }
+
+
+
+ private Collection<? extends Object> createReferenceProxies(final List<EReference> allReferences, final EObjectTreeElement parent) {
+ final EObject eObject = parent.getEObject();
+ final List<EReferenceTreeElement> result = new ArrayList<EReferenceTreeElement>();
+ for (final EReference eReference : allReferences) {
+ if (isVisible(eObject, eReference)) {
+ if(!(collapseLink(eObject, eReference))) {
+ final EReferenceTreeElement referenceProxy = TreeproxyFactory.eINSTANCE.createEReferenceTreeElement();
+ referenceProxy.setEReference(eReference);
+ referenceProxy.setParent(parent);
+ result.add(referenceProxy);
+ }
+ else{
+ System.err.println("Do not Create an eReference"+ eReference+" create directly its childreen");
+ }
+
+ }
+ }
+ return result;
+ }
+
+ public Object getParent(final Object element) {
+ Object result = null;
+ if (element instanceof TreeElement) {
+ final TreeElement treeElement = (TreeElement) element;
+ result = treeElement.eContainer();
+ }
+ return result;
+ }
+
+ public boolean hasChildren(final Object element) {
+ return getChildren(element).length > 0;
+ }
+
+
+
+ public void inputChanged(final Viewer viewer, final Object oldInput, final Object newInput) {
+ // nothing to do
+ }
+
+ public ICustomizationManager getCustomizationManager() {
+ return this.customManager;
+ }
+
+ public boolean isVisible(final Object object, final ETypedElement eTypedElement) {
+ Boolean result = Boolean.TRUE;
+ if (object instanceof EObject) {
+ final EObject eObject = (EObject) object;
+ try {
+ result = this.customManager.getCustomValueOf(eObject, eTypedElement, this.contentHandler.getIsVisible(), Boolean.class);
+ } catch (final CustomizationException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+ return result.booleanValue();
+ }
+
+ private boolean collapseLink(final Object object, final EReference eTypedElement) {
+ Boolean result = Boolean.TRUE;
+ if (object instanceof EObject) {
+ final EObject eObject = (EObject) object;
+ try {
+ result = this.customManager.getCustomValueOf(eObject, eTypedElement, this.contentHandler.getCollapseLink(), Boolean.class);
+ } catch (final CustomizationException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+ return result.booleanValue();
+ }
+
+
+
+ private Collection<? extends Object> createReferences(final EObjectTreeElement treeElement) {
+ final EObject eObject = treeElement.getEObject();
+ final EClass eClass = eObject.eClass();
+ final IFacetManager facetManager = this.customManager.getFacetManager();
+ final List<EReference> allReferences = new ArrayList<EReference>();
+ allReferences.addAll(eClass.getEAllReferences());
+ try {
+ final Set<EReference> facetReferences = FacetUtils.getETypedElements(eObject, EReference.class, facetManager);
+ allReferences.addAll(facetReferences);
+ } catch (final FacetManagerException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+
+ Collection<Object> result = new LinkedList<Object>();
+
+ for(EReference reference : allReferences) {
+ if(isVisible(eObject, reference)) {
+ if(collapseLink(eObject, reference)) {
+ if(reference.getUpperBound() != 1) {
+ result.addAll(getMultiValuedReferenceChildren(reference, eObject, treeElement));
+ } else {
+ Object child = getSingleValuedReferenceChild(reference, eObject, treeElement);
+ if(child != null) {
+ result.add(child);
+ }
+ }
+ } else {
+ result.add(getEReferenceProxy(reference, treeElement));
+ }
+ }
+ }
+
+ return result;
+ }
+
+ private Collection<? extends Object> createAttributes(final EObjectTreeElement treeElement) {
+ final EObject eObject = treeElement.getEObject();
+ final EClass eClass = eObject.eClass();
+ final IFacetManager facetManager = this.customManager.getFacetManager();
+ final List<EAttribute> allAttributes = new ArrayList<EAttribute>();
+ allAttributes.addAll(eClass.getEAllAttributes());
+ try {
+ final Set<EAttribute> facetAttributes = FacetUtils.getETypedElements(eObject, EAttribute.class, facetManager);
+ allAttributes.addAll(facetAttributes);
+ } catch (final FacetManagerException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+
+
+ List<TreeElement> result = new LinkedList<TreeElement>();
+ for(EAttribute eAttribute : allAttributes) {
+ if(isVisible(eObject, eAttribute)) {
+ TreeElement eAttributeTreeElement = getEAttributeProxy(eAttribute, treeElement);
+ if(eAttributeTreeElement != null) {
+ result.add(eAttributeTreeElement);
+ }
+ }
+ }
+ return result;
+ }
+
+
+
+ private EReferenceTreeElement createReferenceProxy(final EReference reference, final EObjectTreeElement parent) {
+ final EObject eObject = parent.getEObject();
+ if(isVisible(eObject, reference)) {
+ final EReferenceTreeElement referenceProxy = TreeproxyFactory.eINSTANCE.createEReferenceTreeElement();
+ referenceProxy.setEReference(reference);
+ referenceProxy.setParent(parent);
+ return referenceProxy;
+ }
+ return null;
+ }
+
+ private EAttributeTreeElement createAttributeProxy(final EAttribute attribute, final EObjectTreeElement parent) {
+ final EObject eObject = parent.getEObject();
+ if(isVisible(eObject, attribute)) {
+ final EAttributeTreeElement attributeProxy = TreeproxyFactory.eINSTANCE.createEAttributeTreeElement();
+ attributeProxy.setEAttribute(attribute);
+ attributeProxy.setParent(parent);
+ return attributeProxy;
+ }
+ return null;
+ }
+
+ private Object getSingleValuedReferenceChild(final EReference eReference, final EObject eObject, final TreeElement parent) {
+ Object child = null;
+ try {
+ final IFacetManager facetManager = this.customManager.getFacetManager();
+ final Object result = facetManager.getOrInvoke(eObject, eReference, null);
+ if(result instanceof EObject) {
+ final EObject childEObject = (EObject)result;
+ child = getEObjectProxy(childEObject, parent);
+ }
+ } catch (final FacetManagerException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ return child;
+ }
+
+ private List<Object> getMultiValuedReferenceChildren(final EReference eReference, final EObject eObject, final TreeElement parent) {
+ final List<Object> children = new ArrayList<Object>();
+ try {
+ final IFacetManager facetManager = this.customManager.getFacetManager();
+ final List<Object> result = facetManager.getOrInvokeMultiValued(eObject, eReference, null);
+ for(final Object object : result) {
+ if(object instanceof EObject) {
+ final EObject childEObject = (EObject)object;
+ children.add(getEObjectProxy(childEObject, parent));
+ }
+ }
+ } catch (final FacetManagerException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ return children;
+ }
+
+ protected EObjectTreeElement getEObjectProxy(final Object element, final TreeElement parent) {
+ EObjectCacheElement cacheElement = new EObjectCacheElement((EObject)element, parent);
+ if(!(cache.containsKey(cacheElement))) {
+ cache.put(cacheElement, createEObjectProxy(element, parent));
+ }
+ return (EObjectTreeElement)cache.get(cacheElement);
+ }
+
+ protected EAttributeTreeElement getEAttributeProxy(final Object element, final TreeElement parent) {
+ EObjectCacheElement cacheElement = new EObjectCacheElement((EObject)element, parent);
+ if(!(cache.containsKey(cacheElement))) {
+ cache.put(cacheElement, createAttributeProxy((EAttribute)element, (EObjectTreeElement)parent));
+ }
+ return (EAttributeTreeElement)cache.get(cacheElement);
+ }
+
+ protected EReferenceTreeElement getEReferenceProxy(final Object element, final EObjectTreeElement parent) {
+ EObjectCacheElement cacheElement = new EObjectCacheElement((EObject)element, parent);
+ if(!(cache.containsKey(cacheElement))) {
+ cache.put(cacheElement, createReferenceProxy((EReference)element, parent));
+ }
+ return (EReferenceTreeElement)cache.get(cacheElement);
+ }
+
+ public void dispose() {
+ cache.clear();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/DecoratingCustomizedLabelProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/DecoratingCustomizedLabelProvider.java
new file mode 100644
index 00000000000..3985d65f023
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/DecoratingCustomizedLabelProvider.java
@@ -0,0 +1,182 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Soft-Maint.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * David Couvrand (Soft-Maint) - Bug 418418 - [Customization] Overlay icons not implemented
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomizedLabelProvider;
+import org.eclipse.jface.viewers.DecoratingStyledCellLabelProvider;
+import org.eclipse.jface.viewers.IDecorationContext;
+import org.eclipse.jface.viewers.ILabelDecorator;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.Font;
+import org.eclipse.swt.graphics.Image;
+
+public class DecoratingCustomizedLabelProvider extends
+ DecoratingStyledCellLabelProvider implements ICustomizedLabelProvider {
+
+ private ICustomizedLabelProvider lblProvider;
+
+ private DecoratingCustomizedLabelProvider(
+ final IStyledLabelProvider labelProvider,
+ final ILabelDecorator decorator,
+ final IDecorationContext decorationContext) {
+ super(labelProvider, decorator, decorationContext);
+ }
+
+ public DecoratingCustomizedLabelProvider(
+ final ICustomizationManager customizationMgr) {
+ this(new CustomizedLabelProvider(customizationMgr),
+ new CustomizedLabelDecorator(customizationMgr), null);
+ this.lblProvider = (ICustomizedLabelProvider) getStyledStringProvider();
+ }
+
+ public String getText(final Object element) {
+ return this.lblProvider.getText(element);
+ }
+
+ public String getToolTipText(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getToolTipText(element, eTypedElement);
+ }
+
+ public Image getToolTipImage(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getToolTipImage(element, eTypedElement);
+ }
+
+ public Font getToolTipFont(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getToolTipFont(element, eTypedElement);
+ }
+
+ public Color getToolTipBackgroundColor(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getToolTipBackgroundColor(element,
+ eTypedElement);
+ }
+
+ public Color getToolTipForegroundColor(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getToolTipForegroundColor(element,
+ eTypedElement);
+ }
+
+ public Image getToolTipTopLeftOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider
+ .getToolTipTopLeftOverlay(element, eTypedElement);
+ }
+
+ public Image getToolTipTopMiddleOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getToolTipTopMiddleOverlay(element,
+ eTypedElement);
+ }
+
+ public Image getToolTipTopRightOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getToolTipTopRightOverlay(element,
+ eTypedElement);
+ }
+
+ public Image getToolTipBottomLeftOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getToolTipBottomLeftOverlay(element,
+ eTypedElement);
+ }
+
+ public Image getToolTipBottomMiddleOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getToolTipBottomMiddleOverlay(element,
+ eTypedElement);
+ }
+
+ public Image getToolTipBottomRightOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getToolTipBottomRightOverlay(element,
+ eTypedElement);
+ }
+
+ public int getToolTipTimeDisplayed(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getToolTipTimeDisplayed(element, eTypedElement);
+ }
+
+ public int getToolTipDisplayDelayTime(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getToolTipDisplayDelayTime(element,
+ eTypedElement);
+ }
+
+ public int getToolTipStyle(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getToolTipStyle(element, eTypedElement);
+ }
+
+ public ICustomizationManager getCustomizationManager() {
+ return this.lblProvider.getCustomizationManager();
+ }
+
+ public boolean isUnderlined(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.isUnderlined(element, eTypedElement);
+ }
+
+ public boolean isStruckthrough(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.isStruckthrough(element, eTypedElement);
+ }
+
+ public Image getTopLeftOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getTopLeftOverlay(element, eTypedElement);
+ }
+
+ public Image getTopMiddleOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getTopMiddleOverlay(element, eTypedElement);
+ }
+
+ public Image getTopRightOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getTopRightOverlay(element, eTypedElement);
+ }
+
+ public Image getBottomLeftOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getBottomLeftOverlay(element, eTypedElement);
+ }
+
+ public Image getBottomMiddleOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getBottomMiddleOverlay(element, eTypedElement);
+ }
+
+ public Image getBottomRightOverlay(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getBottomRightOverlay(element, eTypedElement);
+ }
+
+ public String getText(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getText(element, eTypedElement);
+ }
+
+ public Image getImage(final Object element,
+ final ETypedElement eTypedElement) {
+ return this.lblProvider.getImage(element, eTypedElement);
+ }
+
+ public ICustomizedLabelProvider cloneLabelProvider() {
+ return this.lblProvider.cloneLabelProvider();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/DefaultCustomOverride.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/DefaultCustomOverride.java
new file mode 100644
index 00000000000..adf0823c4e5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/DefaultCustomOverride.java
@@ -0,0 +1,55 @@
+/**
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * David Couvrand (Soft-Maint) - Bug 422058 - Implementation of strikethrough and underline in the CustomizedLabelProvider
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomOverride;
+import org.eclipse.papyrus.emf.facet.custom.ui.IFontPropertiesHandler;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.exception.CustomizationException;
+import org.eclipse.swt.graphics.FontData;
+
+public class DefaultCustomOverride implements ICustomOverride {
+
+ public String getText(final String result, final Object object,
+ final ICustomizationManager customManager,
+ final IFontPropertiesHandler propertiesHandler)
+ throws CustomizationException {
+ String newResult = result;
+ if (object instanceof EObject) {
+ final EObject eObject = (EObject) object;
+ final FacetOperation isStruckProp = propertiesHandler
+ .getIsStruckthroughProperty();
+ final boolean isStruckthrough = customManager.getCustomValueOf(
+ eObject, isStruckProp, Boolean.class).booleanValue();
+ if (isStruckthrough) {
+ newResult = String.format("--%s--", newResult); //$NON-NLS-1$
+ }
+ final FacetOperation isUnderlinedProp = propertiesHandler
+ .getIsUnderlinedProperty();
+ final boolean isUnderlined = customManager.getCustomValueOf(
+ eObject, isUnderlinedProp, Boolean.class).booleanValue();
+ if (isUnderlined) {
+ newResult = String.format("__%s__", newResult); //$NON-NLS-1$
+ }
+ }
+ return newResult;
+ }
+
+ public FontData getFont(final FontData fontData, final Object object,
+ final ICustomizationManager customManager,
+ final IFontPropertiesHandler propertiesHandler) {
+ return fontData;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ImageManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ImageManager.java
new file mode 100644
index 00000000000..b260377a850
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ImageManager.java
@@ -0,0 +1,98 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Soft-Maint.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * David Couvrand (Soft-Maint) - Bug 418418 - [Customization] Overlay icons not implemented
+ * Thomas Cicognani (Soft-Maint) - Bug 424414 - ImageManager doesn't cache images
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+import java.net.URL;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.custompt.ImageWrapper;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.custompt.URIImage;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.swt.imageprovider.IImageProvider;
+import org.eclipse.papyrus.emf.facet.util.swt.imageprovider.IImageProviderFactory;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage;
+import org.eclipse.swt.graphics.Device;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.ui.PlatformUI;
+import org.osgi.framework.Bundle;
+
+public class ImageManager {
+
+ private final Map<String, ImageDescriptor> uriImageCache = new HashMap<String, ImageDescriptor>();
+
+ private Image getImage(final URIImage uriImage) {
+ Image result;
+ final String uriStr = uriImage.getUri();
+ ImageDescriptor imageDescriptor;
+ if (this.uriImageCache.keySet().contains(uriStr)) {
+ imageDescriptor = this.uriImageCache.get(uriStr);
+ } else {
+ imageDescriptor = createImageDescriptor(uriStr);
+ this.uriImageCache.put(uriStr, imageDescriptor);
+ }
+ final IImageProvider imageProvider = IImageProviderFactory.DEFAULT
+ .createIImageProvider(Activator.getDefault());
+ result = imageProvider.getImage(imageDescriptor);
+ return result;
+ }
+
+
+ private ImageDescriptor createImageDescriptor(final String uriStr) {
+ ImageDescriptor imgDecriptor;
+ final URI uri = URI.createURI(uriStr);
+ final String bundleId = uri.segment(1);
+ final Bundle bundle = Platform.getBundle(bundleId);
+ final URI baseURI = URI.createPlatformPluginURI(bundleId + '/',
+ false);
+ final String resourcePath = uri.deresolve(baseURI).toString();
+ final URL url = bundle.getResource(resourcePath);
+
+ if (url == null) {
+ Logger.logError(NLS.bind("Resource not found: {0}", //$NON-NLS-1$
+ resourcePath), Activator.getDefault());
+ imgDecriptor = ImageDescriptor.getMissingImageDescriptor();
+ } else {
+ imgDecriptor = ImageDescriptor.createFromURL(url);
+ }
+ return imgDecriptor;
+ }
+
+
+ public Image getImage(final IImage image) {
+ Image result = null;
+ final Device device = PlatformUI.getWorkbench().getDisplay();
+ if (image instanceof ImageWrapper) {
+ final ImageWrapper wrapper = (ImageWrapper) image;
+ result = wrapper.getImage();
+ } else if (image instanceof URIImage) {
+ final URIImage uriImage = (URIImage) image;
+ result = getImage(uriImage);
+ } else if (image != null) {
+ result = new Image(device, image.getInputStream());
+ }
+ return result;
+ }
+
+ public ImageDescriptor getImageDescriptor(final IImage image) {
+ ImageDescriptor result = null;
+ if (image instanceof URIImage) {
+ final URIImage uriImage = (URIImage) image;
+ result = createImageDescriptor(uriImage.getUri());
+ }
+ return result;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ImageProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ImageProvider.java
new file mode 100644
index 00000000000..1e968f4339f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ImageProvider.java
@@ -0,0 +1,181 @@
+/*******************************************************************************
+ * Copyright (c) 2008, 2010 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Vincent Lorenzo (CEA-LIST) - bug 341238 - We need to be able to specify which column have to be hidden/visible using the customization mechanism
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ *******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+import java.net.URL;
+
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.widgets.Display;
+
+/** A singleton image provider, which caches image descriptors */
+public final class ImageProvider {
+
+ private ImageProvider() {
+ // This class must only be instantiated by getInstance().
+ }
+
+ private static ImageProvider instance;
+
+ public static ImageProvider getInstance() {
+ if (ImageProvider.instance == null) {
+ ImageProvider.instance = new ImageProvider();
+ }
+ return ImageProvider.instance;
+ }
+
+ private Image uiCustomIcon = null;
+ private Image grayedUiCustomIcon;
+
+ private Image linkIcon = null;
+ private Image linkUniDirIcon = null;
+ private Image linkFacetIcon = null;
+ private Image aggregIcon = null;
+ private Image aggregUniDirIcon = null;
+ private Image invAggregIcon = null;
+
+ private Image attributeIcon = null;
+ private Image attribFacetIcon = null;
+ private Image featureIcon = null;
+
+ private static final String UI_CUSTOM = "icons/uiCustom.gif"; //$NON-NLS-1$
+
+ private static final String AGGREG_UNIDIR = "icons/aggreg_unidir.gif"; //$NON-NLS-1$
+ private static final String AGGREG_ICON_PATH = "icons/aggreg.gif"; //$NON-NLS-1$
+ private static final String ATTRIBUTE_FACET = "icons/attribute_facet"; //$NON-NLS-1$
+ private static final String ATTRIBUTE = "icons/attributes.gif"; //$NON-NLS-1$
+ private static final String INV_AGGREG = "icons/inv_aggreg.gif"; //$NON-NLS-1$
+ private static final String LINK_FACET = "icons/link_unidir_facet.gif"; //$NON-NLS-1$
+ private static final String LINK_UNIDIR = "icons/link_unidir.gif"; //$NON-NLS-1$
+ private static final String LINK_ICON_PATH = "icons/link.gif"; //$NON-NLS-1$
+ private static final String FEATURE_ICON_PATH = "icons/feature.gif"; //$NON-NLS-1$
+
+ /**
+ * Create an image descriptor from a resource
+ *
+ * @param resourcePath
+ * the path of the resource (in the bundle)
+ * @return the image descriptor
+ */
+ private static ImageDescriptor createImageDescriptor(final String resourcePath) {
+ final URL url = Activator.getDefault().getBundle().getResource(resourcePath);
+ ImageDescriptor result;
+ if (url == null) {
+ Logger.logError(NLS.bind("Resource not found: {0}", //$NON-NLS-1$
+ resourcePath), Activator.getDefault());
+ result = ImageDescriptor.getMissingImageDescriptor();
+ } else {
+ result = ImageDescriptor.createFromURL(url);
+ }
+ return result;
+ }
+
+ /** Return an icon for "uiCustom" */
+ public Image getUiCustomIcon() {
+ if (this.uiCustomIcon == null) {
+ this.uiCustomIcon = createImageDescriptor(ImageProvider.UI_CUSTOM)
+ .createImage();
+ }
+ return this.uiCustomIcon;
+ }
+
+ public Image getGrayedUiCustomIcon() {
+ if (this.grayedUiCustomIcon == null) {
+ this.grayedUiCustomIcon = new Image(Display.getCurrent(), getUiCustomIcon(), SWT.IMAGE_GRAY);
+ }
+ return this.grayedUiCustomIcon;
+ }
+
+ /** Return the icon representing a bidirectional link */
+ public Image getLinkIcon() {
+ if (this.linkIcon == null) {
+ this.linkIcon = createImageDescriptor(ImageProvider.LINK_ICON_PATH).createImage();
+ }
+ return this.linkIcon;
+ }
+
+ /** Return the icon representing an unidirectional link */
+ public Image getUnidirectionalLinkIcon() {
+ if (this.linkUniDirIcon == null) {
+ this.linkUniDirIcon = createImageDescriptor(ImageProvider.LINK_UNIDIR)
+ .createImage();
+ }
+ return this.linkUniDirIcon;
+ }
+
+ /** Return the icon representing a facet reference */
+ public Image getFacetLinkIcon() {
+ if (this.linkFacetIcon == null) {
+ this.linkFacetIcon = createImageDescriptor(ImageProvider.LINK_FACET)
+ .createImage();
+ }
+ return this.linkFacetIcon;
+ }
+
+ /** Return the icon representing a composition link */
+ public Image getAggregIcon() {
+ if (this.aggregIcon == null) {
+ this.aggregIcon = createImageDescriptor(ImageProvider.AGGREG_ICON_PATH).createImage();
+ }
+ return this.aggregIcon;
+ }
+
+ /** Return the icon representing an unidirectional composition link */
+ public Image getUnidirectionalAggregIcon() {
+ if (this.aggregUniDirIcon == null) {
+ this.aggregUniDirIcon = createImageDescriptor(ImageProvider.AGGREG_UNIDIR)
+ .createImage();
+ }
+ return this.aggregUniDirIcon;
+ }
+
+ /** Return the icon representing a reverse composition link */
+ public Image getInvAggregIcon() {
+ if (this.invAggregIcon == null) {
+ this.invAggregIcon = createImageDescriptor(ImageProvider.INV_AGGREG)
+ .createImage();
+ }
+ return this.invAggregIcon;
+ }
+
+ /** Return the "attribute" icon */
+ public Image getAttributeIcon() {
+ if (this.attributeIcon == null) {
+ this.attributeIcon = createImageDescriptor(ImageProvider.ATTRIBUTE)
+ .createImage();
+ }
+ return this.attributeIcon;
+ }
+
+ /** Return the "facet attribute" icon */
+ public Image getFacetAttributeIcon() {
+ if (this.attribFacetIcon == null) {
+ this.attribFacetIcon = createImageDescriptor(ImageProvider.ATTRIBUTE_FACET)
+ .createImage();
+ }
+ return this.attribFacetIcon;
+ }
+
+ /** Return the "feature" icon */
+ public Image getFeatureIcon() {
+ if (this.featureIcon == null) {
+ this.featureIcon = createImageDescriptor(ImageProvider.FEATURE_ICON_PATH).createImage();
+ }
+ return this.featureIcon;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/Messages.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/Messages.java
new file mode 100644
index 00000000000..ce1f53830c3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/Messages.java
@@ -0,0 +1,70 @@
+/*******************************************************************************
+ * Copyright (c) 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 372732 - [Facet] Rewrite the catalog views for 0.2
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Vincent Lorenzo (CEA-LIST) - Bug 373255 - Add tooltips providing a documentation for the selected elements in the Select ETypedElement Dialog
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+import org.eclipse.osgi.util.NLS;
+
+public final class Messages extends NLS {
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.emf.facet.custom.ui.internal.messages"; //$NON-NLS-1$
+ public static String CustomizationsCatalogView_title;
+ public static String CustomizationsView_allQuerySets;
+ public static String CustomizationsView_jobName_RefreshCustomizationsView;
+ public static String CustomizationsView_extendsColumn;
+ public static String CustomizationsView_nameColumn;
+ public static String CustomizationsView_documentationColumn;
+ public static String CustomizedLabelProvider_null;
+ public static String NewCustomizationFilePage_browserCustomization;
+ public static String NewCustomizationFilePage_createsBrowserCustomization;
+ public static String NewCustomizationFilePage_customizationInNonEmfFacetProject;
+ public static String NewCustomizationWizard_newBrowserCustomization;
+ public static String QuerySetsSelectionControl_allExistingQuerySets;
+ public static String QuerySetsSelectionControl_availableQuerySets;
+ public static String QuerySetsSelectionControl_deselectAll;
+ public static String QuerySetsSelectionControl_querySetsSelectedBelowOnly;
+ public static String QuerySetsSelectionControl_selectAll;
+ public static String SelectMetamodelsPage_selectMetamodel;
+ public static String SelectMetamodelsPage_selectMetamodelToCustomize;
+ public static String SelectQuerySetsPage_selectAvailableQuerySets;
+ public static String SelectQuerySetsPage_selectAvailableQuerySetsInCustomization;
+ public static String LoadCustomizationsDialog_Add;
+ public static String LoadCustomizationsDialog_Add2;
+ public static String LoadCustomizationsDialog_AddAll;
+ public static String LoadCustomizationsDialog_AddAll2;
+ public static String LoadCustomizationsDialog_AvailiableCustom;
+ public static String LoadCustomizationsDialog_Can_not_be_unload;
+ public static String LoadCustomizationsDialog_Down;
+ public static String LoadCustomizationsDialog_LoadedCustomizations;
+ public static String LoadCustomizationsDialog_LoadCustomizationWarning;
+ public static String LoadCustomizationsDialog_Loading;
+ public static String LoadCustomizationsDialog_loadReferencedFacetsCheckbox;
+ public static String LoadCustomizationsDialog_OK;
+ public static String LoadCustomizationsDialog_Remove;
+ public static String LoadCustomizationsDialog_Remove2;
+ public static String LoadCustomizationsDialog_RemoveAll;
+ public static String LoadCustomizationsDialog_RemoveAll2;
+ public static String LoadCustomizationsDialog_title_LoadCustomizations;
+ public static String LoadCustomizationsDialog_type_filter_test;
+ public static String LoadCustomizationsDialog_Up;
+ public static String ToolTipTextQuery_Documentation;
+ public static String ToolTipTextQuery_NoDocumentation;
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(Messages.BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ // cannot be instantiated
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/PropertiesHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/PropertiesHandler.java
new file mode 100644
index 00000000000..820771916c8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/PropertiesHandler.java
@@ -0,0 +1,308 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ * Gregoire Dupe (Mia-Software) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Nicolas Bros (Mia-Software) - Bug 377866 - selection customization
+ * David Couvrand (Soft-Maint) - Bug 422058 - Implementation of strikethrough and underline in the CustomizedLabelProvider
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.custom.ui.IContentPropertiesHandler;
+import org.eclipse.papyrus.emf.facet.custom.ui.IFontPropertiesHandler;
+import org.eclipse.papyrus.emf.facet.custom.ui.ISelectionPropertiesHandler;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.ILabelPropertiesHandler;
+import org.eclipse.papyrus.emf.facet.efacet.core.FacetUtils;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+
+public class PropertiesHandler implements IContentPropertiesHandler,
+ ILabelPropertiesHandler, ISelectionPropertiesHandler, IFontPropertiesHandler {
+ private static final String SEPARATOR = "::"; //$NON-NLS-1$
+ private static final String CUSTOM_PROPERTIES = "resources/customproperties.efacet"; //$NON-NLS-1$
+
+ private static final String CUSTOM = "CustomizedEObject"; //$NON-NLS-1$
+ private static final String TT_CUSTOM = "CustomizedToolTipEObject"; //$NON-NLS-1$
+
+ private static final String IMAGE = "image"; //$NON-NLS-1$
+ private static final String LABEL = "label"; //$NON-NLS-1$
+ private static final String BACKGROUND = "background"; //$NON-NLS-1$
+ private static final String FOREGROUND = "foreground"; //$NON-NLS-1$
+ private static final String FONT = "fontName"; //$NON-NLS-1$
+ private static final String FONT_SIZE = "fontSize"; //$NON-NLS-1$
+ private static final String IS_BOLD = "isBold"; //$NON-NLS-1$
+ private static final String IS_ITALIC = "isItalic"; //$NON-NLS-1$
+ private static final String COLLAPSE_LINK = "collapseLink"; //$NON-NLS-1$
+ private static final String IS_VISIBLE = "isVisible"; //$NON-NLS-1$
+ private static final String IS_UNDERLINED = "isUnderlined"; //$NON-NLS-1$
+ private static final String IS_STRUCKTHROUGH = "isStruckthrough"; //$NON-NLS-1$
+ private static final String TOP_L_OVERLAY = "topLeftOverlay"; //$NON-NLS-1$
+ private static final String TOP_M_OVERLAY = "topMiddleOverlay"; //$NON-NLS-1$
+ private static final String TOP_R_OVERLAY = "topRightOverlay"; //$NON-NLS-1$
+ private static final String BOTTOM_L_OVERLAY = "bottomLeftOverlay"; //$NON-NLS-1$
+ private static final String BOTTOM_M_OVERLAY = "bottomMiddleOverlay"; //$NON-NLS-1$
+ private static final String BOTTOM_R_OVERLAY = "bottomRightOverlay"; //$NON-NLS-1$
+ private static final String SELECTION = "selection"; //$NON-NLS-1$
+
+ //for tooltips
+ private static final String TEXT = "text"; //$NON-NLS-1$
+ private static final String TIME_DISPLAYED = "timeDisplayed"; //$NON-NLS-1$
+ private static final String DISPLAY_DELAY = "displayDelayTime"; //$NON-NLS-1$
+ private static final String SHADOW = "shadow"; //$NON-NLS-1$
+ private static final String ALIGNMENT = "alignment"; //$NON-NLS-1$
+
+ private final Resource resource;
+ private final Map<String, FacetOperation> map = new HashMap<String, FacetOperation>();
+
+ /**
+ *
+ * @deprecated Must be replaced by
+ * org.eclipse.papyrus.emf.facet.custom.ui.internal.PropertiesHandler
+ * .PropertiesHandler(ICustomizationManager)
+ */
+ @Deprecated
+ public PropertiesHandler(final ResourceSet resourceSet) {
+ final String bundleName = Activator.getDefault().getBundle().getSymbolicName();
+ URI propertiesUri = URI.createPlatformPluginURI(bundleName, true);
+ propertiesUri = propertiesUri
+ .appendSegments(PropertiesHandler.CUSTOM_PROPERTIES.split("/")); //$NON-NLS-1$
+ this.resource = resourceSet.getResource(propertiesUri, true);
+ }
+
+ public PropertiesHandler(final ICustomizationManager customizationMgr) {
+ final String bundleName = Activator.getDefault().getBundle().getSymbolicName();
+ URI propertiesUri = URI.createPlatformPluginURI(bundleName, true);
+ propertiesUri = propertiesUri
+ .appendSegments(PropertiesHandler.CUSTOM_PROPERTIES.split("/")); //$NON-NLS-1$
+ final ResourceSet resourceSet = customizationMgr.getResourceSet();
+ this.resource = resourceSet.getResource(propertiesUri, true);
+ final FacetSet facetSet = (FacetSet) this.resource.getContents().get(0);
+ customizationMgr.getFacetManager().getManagedFacetSets()
+ .add(0, facetSet);
+ }
+
+ private FacetOperation getPropertyByName(final String facetName,
+ final String propertyName) {
+ final String key = facetName + PropertiesHandler.SEPARATOR + propertyName;
+ FacetOperation result = this.map.get(key);
+ if (result == null) {
+ final FacetSet facetSet = (FacetSet) this.resource.getContents()
+ .get(0);
+ final Facet facet = FacetUtils.getFacet(
+ FacetUtils.getFacets(facetSet),
+ facetName);
+ final ETypedElement eTypedElement = FacetUtils
+ .getETypedElement(facet, propertyName,
+ ETypedElement.class);
+ if (eTypedElement instanceof FacetOperation) {
+ result = (FacetOperation) eTypedElement;
+ this.map.put(key, result);
+ }
+ }
+ return result;
+ }
+
+ public FacetOperation getImageProperty() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.IMAGE);
+ }
+
+
+ public FacetOperation getCollapseLink() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.COLLAPSE_LINK);
+ }
+ public FacetOperation getLabelProperty() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.LABEL);
+ }
+
+ public FacetOperation getBackgroundProperty() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.BACKGROUND);
+ }
+
+ public FacetOperation getForegroundProperty() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.FOREGROUND);
+ }
+
+ public FacetOperation getFontNameProperty() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.FONT);
+ }
+
+ public FacetOperation getFontSizeProperty() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.FONT_SIZE);
+ }
+
+ public FacetOperation getIsBoldProperty() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.IS_BOLD);
+ }
+
+ public FacetOperation getIsItalicProperty() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.IS_ITALIC);
+ }
+
+ public FacetOperation getIsVisible() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.IS_VISIBLE);
+ }
+
+ public FacetOperation getIsUnderlinedProperty() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.IS_UNDERLINED);
+ }
+
+ public FacetOperation getIsStruckthroughProperty() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.IS_STRUCKTHROUGH);
+ }
+
+ public FacetOperation getTopLeftOverlayProperty() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.TOP_L_OVERLAY);
+ }
+
+ public FacetOperation getTopMiddleOverlayProperty() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.TOP_M_OVERLAY);
+ }
+
+ public FacetOperation getTopRightOverlayProperty() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.TOP_R_OVERLAY);
+ }
+
+ public FacetOperation getBottomLeftOverlayProperty() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.BOTTOM_L_OVERLAY);
+ }
+
+ public FacetOperation getBottomMiddleOverlayProperty() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.BOTTOM_M_OVERLAY);
+ }
+
+ public FacetOperation getBottomRightOverlayProperty() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.BOTTOM_R_OVERLAY);
+ }
+
+ public FacetOperation getSelectionProperty() {
+ return getPropertyByName(PropertiesHandler.CUSTOM,
+ PropertiesHandler.SELECTION);
+ }
+
+ // methods for tooltips
+ public FacetOperation getToolTipTextProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.TEXT);
+ }
+
+ public FacetOperation getToolTipImageProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.IMAGE);
+ }
+
+ public FacetOperation getToolTipFontNameProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.FONT);
+ }
+
+ public FacetOperation getToolTipFontSizeProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.FONT_SIZE);
+ }
+
+ public FacetOperation getToolTipIsBoldProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.IS_BOLD);
+ }
+
+ public FacetOperation getToolTipIsItalicProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.IS_ITALIC);
+ }
+
+ public FacetOperation getToolTipBackgroundProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.BACKGROUND);
+ }
+
+ public FacetOperation getToolTipForegroundProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.FOREGROUND);
+ }
+
+ public FacetOperation getToolTipTopLeftOverlayProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.TOP_L_OVERLAY);
+ }
+
+ public FacetOperation getToolTipTopMiddleOverlayProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.TOP_M_OVERLAY);
+ }
+
+ public FacetOperation getToolTipTopRightOverlayProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.TOP_R_OVERLAY);
+ }
+
+ public FacetOperation getToolTipBottomLeftOverlayProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.BOTTOM_L_OVERLAY);
+ }
+
+ public FacetOperation getToolTipBottomMiddleOverlayProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.BOTTOM_M_OVERLAY);
+ }
+
+ public FacetOperation getToolTipBottomRightOverlayProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.BOTTOM_R_OVERLAY);
+ }
+
+ public FacetOperation getToolTipTimeDisplayedProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.TIME_DISPLAYED);
+ }
+
+ public FacetOperation getToolTipDisplayDelayTimeProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.DISPLAY_DELAY);
+ }
+
+ public FacetOperation getToolTipAlignmentProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.ALIGNMENT);
+ }
+
+ public FacetOperation getToolTipShadowProperty() {
+ return getPropertyByName(PropertiesHandler.TT_CUSTOM,
+ PropertiesHandler.SHADOW);
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/PropertiesHandlerFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/PropertiesHandlerFactory.java
new file mode 100644
index 00000000000..93dfc066a0a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/PropertiesHandlerFactory.java
@@ -0,0 +1,53 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Nicolas Bros (Mia-Software) - Bug 377866 - selection customization
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.custom.ui.IContentPropertiesHandler;
+import org.eclipse.papyrus.emf.facet.custom.ui.IContentPropertiesHandlerFactory;
+import org.eclipse.papyrus.emf.facet.custom.ui.ISelectionPropertiesHandler;
+import org.eclipse.papyrus.emf.facet.custom.ui.ISelectionPropertiesHandlerFactory;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.ILabelPropertiesHandler;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.ILabelPropertiesHandlerFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+
+public class PropertiesHandlerFactory implements
+ IContentPropertiesHandlerFactory, ILabelPropertiesHandlerFactory, ISelectionPropertiesHandlerFactory {
+
+ /**
+ * @deprecated must be replaced by
+ * org.eclipse.papyrus.emf.facet.custom.ui.internal.PropertiesHandlerFactory
+ * .createIContentPropertiesHandler(ICustomizationManager)
+ */
+ @Deprecated
+ public IContentPropertiesHandler createIContentPropertiesHandler(
+ final ResourceSet resourceSet) {
+ return new PropertiesHandler(resourceSet);
+ }
+
+ public IContentPropertiesHandler createIContentPropertiesHandler(
+ final ICustomizationManager customizationMgr) {
+ return new PropertiesHandler(customizationMgr);
+ }
+
+ public ILabelPropertiesHandler createLabelPropertiesHandler(
+ final ICustomizationManager customizationMgr) {
+ return new PropertiesHandler(customizationMgr);
+ }
+
+ public ISelectionPropertiesHandler createSelectionPropertiesHandler(final ICustomizationManager customManager) {
+ return new PropertiesHandler(customManager);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ResolvingCustomizedLabelProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ResolvingCustomizedLabelProvider.java
new file mode 100644
index 00000000000..579ea41c864
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ResolvingCustomizedLabelProvider.java
@@ -0,0 +1,492 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.custom.ui.CustomizedContentProviderUtils;
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomizedLabelProvider;
+import org.eclipse.jface.viewers.ILabelProviderListener;
+import org.eclipse.jface.viewers.ViewerCell;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EAttributeTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.Font;
+import org.eclipse.swt.graphics.Image;
+
+public class ResolvingCustomizedLabelProvider implements ICustomizedLabelProvider {
+
+ private final ICustomizedLabelProvider delegate;
+
+ public ResolvingCustomizedLabelProvider(final ICustomizedLabelProvider delegate) {
+ super();
+ this.delegate = delegate;
+ }
+
+ public Image getImage(final Object element) {
+ Image image;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ image = this.delegate.getImage(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ image = this.delegate.getImage(parent.getEObject(), treeElement.getEAttribute());
+ }
+
+ else {
+ image = this.delegate.getImage(CustomizedContentProviderUtils.resolve(element));
+ }
+ return image;
+ }
+
+ public String getText(final Object element) {
+ String result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getText(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getText(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getText(CustomizedContentProviderUtils.resolve(element));
+ }
+ return result;
+ }
+
+ public void addListener(final ILabelProviderListener listener) {
+ this.delegate.addListener(listener);
+ }
+
+ public void dispose() {
+ this.delegate.dispose();
+ }
+
+ public boolean isLabelProperty(final Object element, final String property) {
+ return this.delegate.isLabelProperty(CustomizedContentProviderUtils.resolve(element), property);
+ }
+
+ public void removeListener(final ILabelProviderListener listener) {
+ this.delegate.removeListener(listener);
+ }
+
+ public Color getForeground(final Object element) {
+ return this.delegate.getForeground(CustomizedContentProviderUtils.resolve(element));
+ }
+
+ public Color getBackground(final Object element) {
+ return this.delegate.getBackground(CustomizedContentProviderUtils.resolve(element));
+ }
+
+ public Font getFont(final Object element) {
+ return this.delegate.getFont(CustomizedContentProviderUtils.resolve(element));
+ }
+
+ public void update(final ViewerCell cell) {
+ this.delegate.update(cell);
+ }
+
+ public String getToolTipText(final Object element, final ETypedElement eTypedElement) {
+ String result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipText(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipText(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getToolTipText(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public Image getToolTipImage(final Object element, final ETypedElement eTypedElement) {
+ Image result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipImage(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipImage(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getToolTipImage(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public Font getToolTipFont(final Object element, final ETypedElement eTypedElement) {
+ Font result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipFont(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipFont(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getToolTipFont(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public Color getToolTipBackgroundColor(final Object element, final ETypedElement eTypedElement) {
+ Color result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipBackgroundColor(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipBackgroundColor(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getToolTipBackgroundColor(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public Color getToolTipForegroundColor(final Object element, final ETypedElement eTypedElement) {
+ Color result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipForegroundColor(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipForegroundColor(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getToolTipForegroundColor(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public Image getToolTipTopLeftOverlay(final Object element, final ETypedElement eTypedElement) {
+ Image result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipTopLeftOverlay(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipTopLeftOverlay(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getToolTipTopLeftOverlay(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public Image getToolTipTopMiddleOverlay(final Object element, final ETypedElement eTypedElement) {
+ Image result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipTopMiddleOverlay(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipTopMiddleOverlay(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getToolTipTopMiddleOverlay(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public Image getToolTipTopRightOverlay(final Object element, final ETypedElement eTypedElement) {
+ Image result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipTopRightOverlay(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipTopRightOverlay(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getToolTipTopRightOverlay(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public Image getToolTipBottomLeftOverlay(final Object element, final ETypedElement eTypedElement) {
+ Image result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipBottomLeftOverlay(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipBottomLeftOverlay(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getToolTipBottomLeftOverlay(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public Image getToolTipBottomMiddleOverlay(final Object element, final ETypedElement eTypedElement) {
+ Image result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipBottomMiddleOverlay(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipBottomMiddleOverlay(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getToolTipBottomMiddleOverlay(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public Image getToolTipBottomRightOverlay(final Object element, final ETypedElement eTypedElement) {
+ Image result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipBottomRightOverlay(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipBottomRightOverlay(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getToolTipBottomRightOverlay(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public int getToolTipTimeDisplayed(final Object element, final ETypedElement eTypedElement) {
+ int result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipTimeDisplayed(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipTimeDisplayed(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getToolTipTimeDisplayed(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public int getToolTipDisplayDelayTime(final Object element, final ETypedElement eTypedElement) {
+ int result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipDisplayDelayTime(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipDisplayDelayTime(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getToolTipDisplayDelayTime(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public int getToolTipStyle(final Object element, final ETypedElement eTypedElement) {
+ int result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipStyle(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getToolTipStyle(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getToolTipStyle(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public ICustomizationManager getCustomizationManager() {
+ return this.delegate.getCustomizationManager();
+ }
+
+ public boolean isUnderlined(final Object element, final ETypedElement eTypedElement) {
+ boolean result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.isUnderlined(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.isUnderlined(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.isUnderlined(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public boolean isStruckthrough(final Object element, final ETypedElement eTypedElement) {
+ boolean result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.isStruckthrough(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.isStruckthrough(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.isStruckthrough(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public Image getTopLeftOverlay(final Object element, final ETypedElement eTypedElement) {
+ Image result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getTopLeftOverlay(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getTopLeftOverlay(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getTopLeftOverlay(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public Image getTopMiddleOverlay(final Object element, final ETypedElement eTypedElement) {
+ Image result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getTopMiddleOverlay(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getTopMiddleOverlay(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getTopMiddleOverlay(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public Image getTopRightOverlay(final Object element, final ETypedElement eTypedElement) {
+ Image result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getTopRightOverlay(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getTopRightOverlay(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getTopRightOverlay(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public Image getBottomLeftOverlay(final Object element, final ETypedElement eTypedElement) {
+ Image result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getBottomLeftOverlay(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getBottomLeftOverlay(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getBottomLeftOverlay(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public Image getBottomMiddleOverlay(final Object element, final ETypedElement eTypedElement) {
+ Image result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getBottomMiddleOverlay(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getBottomMiddleOverlay(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getBottomMiddleOverlay(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public Image getBottomRightOverlay(final Object element, final ETypedElement eTypedElement) {
+ Image result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getBottomRightOverlay(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getBottomRightOverlay(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getBottomRightOverlay(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public String getText(final Object element, final ETypedElement eTypedElement) {
+ String result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getText(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getText(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getText(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public Image getImage(final Object element, final ETypedElement eTypedElement) {
+ Image result;
+ if (element instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement treeElement = (EReferenceTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getImage(parent.getEObject(), treeElement.getEReference());
+ } else if (element instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement treeElement = (EAttributeTreeElement) element;
+ final EObjectTreeElement parent = (EObjectTreeElement) treeElement.getParent();
+ result = this.delegate.getImage(parent.getEObject(), treeElement.getEAttribute());
+ } else {
+ result = this.delegate.getImage(CustomizedContentProviderUtils.resolve(element), eTypedElement);
+ }
+ return result;
+ }
+
+ public ICustomizedLabelProvider cloneLabelProvider() {
+ return new ResolvingCustomizedLabelProvider(this.delegate.cloneLabelProvider());
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ResolvingCustomizedLabelProviderFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ResolvingCustomizedLabelProviderFactory.java
new file mode 100644
index 00000000000..abe9b091d0a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/ResolvingCustomizedLabelProviderFactory.java
@@ -0,0 +1,26 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * David Couvrand (Soft-Maint) - Bug 418418 - [Customization] Overlay icons not implemented
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomizedLabelProvider;
+import org.eclipse.papyrus.emf.facet.custom.ui.IResolvingCustomizedLabelProviderFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+
+public class ResolvingCustomizedLabelProviderFactory implements IResolvingCustomizedLabelProviderFactory {
+
+ public ICustomizedLabelProvider createCustomizedLabelProvider(final ICustomizationManager customManager) {
+ return new ResolvingCustomizedLabelProvider(
+ new DecoratingCustomizedLabelProvider(
+ customManager));
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/TreeElementAdapter.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/TreeElementAdapter.java
new file mode 100644
index 00000000000..6169e1e61c6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/TreeElementAdapter.java
@@ -0,0 +1,86 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui.internal;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.exception.CustomizedContentProviderRuntimeException;
+import org.eclipse.papyrus.emf.facet.util.core.DebugUtils;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EAttributeTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement;
+
+public class TreeElementAdapter implements Adapter {
+
+ private static final boolean DEBUG = DebugUtils.getDebugStatus(Activator
+ .getDefault());
+
+ private final EObjectTreeElement treeElement;
+
+ public TreeElementAdapter(final EObjectTreeElement treeElement) {
+ this.treeElement = treeElement;
+ }
+
+ public void notifyChanged(final Notification notification) {
+ DebugUtils.debug(DEBUG,
+ "Modified element=" + this.treeElement.getEObject()); //$NON-NLS-1$
+ DebugUtils.debug(DEBUG,
+ "Notification feature=" + notification.getFeature()); //$NON-NLS-1$
+ for (Object subElement : this.treeElement
+ .getSfTreeElmement()) {
+ if( subElement instanceof EStructuralFeatureTreeElement){
+ final EStructuralFeature feature = getSF((EStructuralFeatureTreeElement)subElement);
+ if (feature.equals(notification.getFeature())) {
+ ((EStructuralFeatureTreeElement)subElement).getReferedEObjectTE().clear();
+ DebugUtils.debug(
+ DEBUG,
+ NLS.bind(
+ "Cleanning= {0}::{1}", //$NON-NLS-1$
+ feature.getContainerClass().getName(),
+ feature.getName()));
+ }
+ }
+ }
+}
+
+private static EStructuralFeature getSF(
+ final EStructuralFeatureTreeElement structFeatuteTE) {
+ EStructuralFeature result;
+ if (structFeatuteTE instanceof EAttributeTreeElement) {
+ final EAttributeTreeElement eAttributeTE = (EAttributeTreeElement) structFeatuteTE;
+ result = eAttributeTE.getEAttribute();
+ } else if (structFeatuteTE instanceof EReferenceTreeElement) {
+ final EReferenceTreeElement eReferenceTE = (EReferenceTreeElement) structFeatuteTE;
+ result = eReferenceTE.getEReference();
+ } else {
+ throw new CustomizedContentProviderRuntimeException(
+ "Illegal agrument: " + structFeatuteTE); //$NON-NLS-1$
+ }
+ return result;
+}
+
+public Notifier getTarget() {
+ return null;
+}
+
+public void setTarget(final Notifier newTarget) {
+ // Nothing to do
+}
+
+public boolean isAdapterForType(final Object type) {
+ return false;
+}
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/custompt/Color.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/custompt/Color.java
new file mode 100644
index 00000000000..f6eff6490c0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/custompt/Color.java
@@ -0,0 +1,67 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.custompt;
+
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IColor;
+
+public class Color implements IColor {
+
+ private static final long serialVersionUID = 240076770346261769L;
+ private static final int BYTE_SIZE = Byte.SIZE;
+ private static final int TWO_BYTE_SIZE = Byte.SIZE * 2;
+ public static final int MAX_VALUE = 255;
+
+ private final int red;
+ private final int green;
+ private final int blue;
+
+ public Color(final int red, final int green, final int blue) {
+ this.red = red;
+ this.green = green;
+ this.blue = blue;
+ }
+
+ public Color getColor() {
+ return this.getColor();
+ }
+
+ public int getRed() {
+ return this.red;
+ }
+
+ public int getGreen() {
+ return this.green;
+ }
+
+ public int getBlue() {
+ return this.blue;
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ boolean result = false;
+ if (obj instanceof Color) {
+ final Color color = (Color) obj;
+ result = (color.getRed() == this.red)
+ && (color.getGreen() == this.green)
+ && (color.getBlue() == this.blue);
+ }
+ return result;
+ }
+
+ @Override
+ public int hashCode() {
+ return this.red & (this.green << Color.BYTE_SIZE)
+ & (this.blue << Color.TWO_BYTE_SIZE);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/custompt/ImageWrapper.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/custompt/ImageWrapper.java
new file mode 100644
index 00000000000..ad12b304653
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/custompt/ImageWrapper.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Nicolas Bros (Mia-Software) - Bug 374941 - To be able to customize overlay icons on EClass
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.custompt;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.InputStream;
+
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.graphics.ImageData;
+import org.eclipse.swt.graphics.ImageLoader;
+
+public class ImageWrapper implements IImage {
+
+ private static final long serialVersionUID = -2538802017710069448L;
+ private final Image wrappedImage;
+
+ public ImageWrapper(final Image image) {
+ this.wrappedImage = image;
+ }
+
+ public InputStream getInputStream() {
+ // note: this is an inefficient way to get an inputStream from the wrapped Image
+ final ByteArrayOutputStream stream = new ByteArrayOutputStream();
+ final ImageLoader loader = new ImageLoader();
+ loader.data = new ImageData[] { this.wrappedImage.getImageData() };
+ loader.save(stream, SWT.IMAGE_PNG);
+ final byte[] byteArray = stream.toByteArray();
+ return new ByteArrayInputStream(byteArray);
+ }
+
+ public Image getImage() {
+ return this.wrappedImage;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/custompt/URIImage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/custompt/URIImage.java
new file mode 100644
index 00000000000..d086010c012
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/custompt/URIImage.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * David Couvrand (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ * Nicolas Rault (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.custompt;
+
+import java.io.InputStream;
+
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage;
+
+public class URIImage implements IImage {
+
+ private static final long serialVersionUID = 6801140731857137834L;
+ private String uri;
+
+ public URIImage(final String uri) {
+ this.uri = uri;
+ }
+
+ public InputStream getInputStream() {
+ return null;
+ }
+
+ public String getUri() {
+ return this.uri;
+ }
+
+ public void setUri(final String uri) {
+ this.uri = uri;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/dialog/ColorLabelProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/dialog/ColorLabelProvider.java
new file mode 100644
index 00000000000..37801c148ef
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/dialog/ColorLabelProvider.java
@@ -0,0 +1,61 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.dialog;
+
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.ImageProvider;
+import org.eclipse.jface.viewers.IColorProvider;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.widgets.Display;
+
+public class ColorLabelProvider extends LabelProvider implements IColorProvider {
+
+ private final LoadCustomizationsDialog loadCustomDialog;
+
+ public ColorLabelProvider(final LoadCustomizationsDialog loadCustomDialog) {
+ super();
+ this.loadCustomDialog = loadCustomDialog;
+ }
+
+ @Override
+ public String getText(final Object element) {
+ final Customization customization = (Customization) element;
+ return customization.getName();
+ }
+
+ @Override
+ public Image getImage(final Object element) {
+ Image result;
+ if (this.loadCustomDialog.getLockedCustoms().contains(element)) {
+ result = ImageProvider.getInstance().getGrayedUiCustomIcon();
+ } else {
+ result = ImageProvider.getInstance().getUiCustomIcon();
+ }
+ return result;
+ }
+
+ public Color getForeground(final Object element) {
+ Color result = null;
+ if (this.loadCustomDialog.getLockedCustoms().contains(element)) {
+ result = Display.getDefault().getSystemColor(SWT.COLOR_DARK_GRAY);
+ }
+ return result;
+ }
+
+ public Color getBackground(final Object element) {
+ return null;
+ }
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/dialog/LoadCustomizationsDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/dialog/LoadCustomizationsDialog.java
new file mode 100644
index 00000000000..b5ce87c654e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/dialog/LoadCustomizationsDialog.java
@@ -0,0 +1,699 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2010, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Vincent Lorenzo (CEA-LIST) - Bug 341328 - We need to be able to specify which column have to be hidden/visible using the customization mechanism
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.dialog;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.ListIterator;
+
+import org.eclipse.emf.common.util.BasicEList;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.dialog.ILoadCustomizationsDialog;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.exception.IllegalParameterException;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallbackWithPreCommit;
+import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.viewers.DoubleClickEvent;
+import org.eclipse.jface.viewers.IContentProvider;
+import org.eclipse.jface.viewers.IDoubleClickListener;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.swt.widgets.Tree;
+import org.eclipse.ui.dialogs.PatternFilter;
+
+public class LoadCustomizationsDialog<D> extends Dialog implements
+ ILoadCustomizationsDialog<D> {
+
+ private static final int TREE_WIDTH = 300;
+ private static final int TREE_HEIGHT = 250;
+ private static final int NUM_COLUMNS = 4;
+ private final List<Customization> availableCustoms;
+ private final LabelProvider labelProvider;
+ private final IContentProvider contentProvider = new ITreeContentProvider() {
+
+ public Object[] getElements(final Object inputElement) {
+ @SuppressWarnings("unchecked")
+ final List<Customization> customizations = (List<Customization>) inputElement;
+ return customizations.toArray();
+ }
+
+ public void inputChanged(final Viewer viewer, final Object oldInput,
+ final Object newInput) {
+ // nothing
+ }
+
+ public void dispose() {
+ // nothing
+ }
+
+ public Object[] getChildren(final Object parentElement) {
+ return new Object[]{};
+ }
+
+ public Object getParent(final Object element) {
+ return null;
+ }
+
+ public boolean hasChildren(final Object element) {
+ return false;
+ }
+ };
+ private final EList<Customization> selectedCustomizations;
+ private TreeViewer availableCustomizationsTreeViewer;
+ private TreeViewer selectedCustomizationsTreeViewer;
+ private Button addButton;
+ private Button removeButton;
+ private Button addAllButton;
+ private Button removeAllButton;
+ private Button upButton;
+ private Button downButton;
+ private Button loadRequiredFacetsCheckbox;
+ private boolean loadRequiredFacetsSelected = false;
+ private final IDialogCallbackWithPreCommit<List<Customization>, Boolean, D> callback;
+ private final List<Customization> lockedCustoms;
+ private final String lockMsg;
+
+ public LoadCustomizationsDialog(final Shell parent,
+ final List<Customization> availableCustomizations,
+ final List<Customization> selectedCustoms,
+ final List<Customization> lockedCustoms,
+ final IDialogCallbackWithPreCommit<List<Customization>, Boolean, D> callback,
+ final String lockMsg) {
+ super(parent);
+ this.labelProvider = new ColorLabelProvider(this);
+ this.callback = callback;
+ this.selectedCustomizations = new BasicEList<Customization>();
+ this.availableCustoms = new ArrayList<Customization>(availableCustomizations);
+ this.lockedCustoms = lockedCustoms;
+ this.lockMsg = lockMsg;
+ setShellStyle(getShellStyle() | SWT.RESIZE | SWT.MAX);
+ // initial selection
+ for (final Customization initiallySelectedCustomization : selectedCustoms) {
+ final URI initiallySelectedCustomizationURI = EcoreUtil
+ .getURI(initiallySelectedCustomization);
+ final ListIterator<Customization> availableCustomizationsIterator = this.availableCustoms
+ .listIterator();
+ while (availableCustomizationsIterator.hasNext()) {
+ final Customization availableCustomization = availableCustomizationsIterator
+ .next();
+ final URI availableCustomizationURI = EcoreUtil
+ .getURI(availableCustomization);
+ if (availableCustomizationURI
+ .equals(initiallySelectedCustomizationURI)) {
+ availableCustomizationsIterator.remove();
+ LoadCustomizationsDialog.this.selectedCustomizations
+ .add(initiallySelectedCustomization);
+ }
+
+ }
+ }
+ for (Customization lockedCustom : this.lockedCustoms) {
+ if (!this.selectedCustomizations.contains(lockedCustom)) {
+ this.selectedCustomizations.add(lockedCustom);
+ }
+ }
+//TODO: Remove before to commit
+// LoadCustomizationsDialog.this.availableCustomizationsTreeViewer
+// .refresh();
+// LoadCustomizationsDialog.this.selectedCustomizationsTreeViewer
+// .refresh();
+//TODO(end): Remove before to commit
+ }
+
+ //TODO Remove before to commit
+ /** Keep only customizations that apply to the given metamodel */
+ /*
+ private List<Customization> filterForMetamodel(
+ final Collection<Customization> allCustomizations, final Collection<EPackage> ePackages) {
+ List<Customization> filteredCustomizations = new ArrayList<Customization>();
+
+ // show only Customizations corresponding to the current EPackages or
+ // referenced EPackages
+ final Set<EPackage> allReferencedPackages = new HashSet<EPackage>();
+
+ for (EPackage ePackage : ePackages) {
+ allReferencedPackages.add(ePackage);
+ final Set<EPackage> referencedPackages = ModelUtils.computeReferencedPackages(ePackage);
+ allReferencedPackages.addAll(referencedPackages);
+ }
+
+ for (Customization metamodelView : Customization) {
+ String nsURI = metamodelView.getMetamodelURI();
+ EPackage ePackage = EPackage.Registry.INSTANCE.getEPackage(nsURI);
+ while (ePackage != null) {
+ if (allReferencedPackages.contains(ePackage)) {
+ filteredCustomizations.add(metamodelView);
+ break;
+ }
+ // allow customizations on Facets
+ if (ePackage instanceof FacetSet) {
+ FacetSet facetSet = (FacetSet) ePackage;
+ ePackage = facetSet.getExtendedPackage();
+ } else {
+ // allow customizations on sub-packages
+ ePackage = ePackage.getESuperPackage();
+ }
+ }
+ }
+ return filteredCustomizations;
+ }
+ */
+ //TODO (end) Remove before to commit
+
+ @Override
+ protected void configureShell(final Shell shell) {
+ super.configureShell(shell);
+ shell.setText(Messages.LoadCustomizationsDialog_title_LoadCustomizations);
+ }
+
+ @Override
+ protected Control createDialogArea(final Composite parent) {
+ final Composite contents = (Composite) super.createDialogArea(parent);
+
+ final GridLayout contentsGridLayout = (GridLayout) contents.getLayout();
+ contentsGridLayout.numColumns = LoadCustomizationsDialog.NUM_COLUMNS;
+
+ final GridData contentsGridData = (GridData) contents.getLayoutData();
+ contentsGridData.horizontalAlignment = SWT.FILL;
+ contentsGridData.verticalAlignment = SWT.FILL;
+
+ createLeftPane(contents);
+ createMiddleButtonsPane(contents);
+ createRightPane(contents);
+ createRightButtonsPane(contents);
+ createLoadRequiredFacetsCheckbox(contents);
+
+ this.availableCustomizationsTreeViewer.addDoubleClickListener(new IDoubleClickListener() {
+
+ public void doubleClick(final DoubleClickEvent event) {
+ loadSelectedCustoms();
+ }
+ });
+
+ this.selectedCustomizationsTreeViewer.addDoubleClickListener(new IDoubleClickListener() {
+ public void doubleClick(final DoubleClickEvent event) {
+ unloadSelectedCustoms();
+ }
+ });
+
+ this.upButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ upButtonClicked();
+ }
+ });
+
+ this.downButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ downButtonClicked();
+ }
+ });
+
+ this.addButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ loadSelectedCustoms();
+ }
+ });
+
+ this.addAllButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ addAllButtonClicked();
+ }
+ });
+
+ this.removeButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ unloadSelectedCustoms();
+ }
+ });
+
+ this.removeAllButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ removeAllButtonClicked();
+ }
+ });
+
+ return contents;
+ }
+
+ public final void upButtonClicked() {
+ final IStructuredSelection selection = (IStructuredSelection) LoadCustomizationsDialog.this.selectedCustomizationsTreeViewer
+ .getSelection();
+ int minIndex = 0;
+ for (Object selectedObject : selection.toList()) {
+ if (selectedObject instanceof Customization) {
+ final Customization customization = (Customization) selectedObject;
+ final int index = this.selectedCustomizations
+ .indexOf(customization);
+ this.selectedCustomizations.move(
+ Math.max(index - 1, minIndex++), customization);
+ }
+ }
+ LoadCustomizationsDialog.this.selectedCustomizationsTreeViewer.refresh();
+ }
+
+ public final void downButtonClicked() {
+ final IStructuredSelection selection = (IStructuredSelection) LoadCustomizationsDialog.this.selectedCustomizationsTreeViewer
+ .getSelection();
+ final ArrayList<Object> selectedObjects = new ArrayList<Object>();
+ for (final Object selectedObject : selection.toArray()) {
+ selectedObjects.add(selectedObject);
+ }
+
+ // prevent the last two elements from swapping
+ boolean canMove = !selectedObjects
+ .contains(LoadCustomizationsDialog.this.selectedCustomizations
+ .get(LoadCustomizationsDialog.this.selectedCustomizations.size() - 1));
+ for (int i = LoadCustomizationsDialog.this.selectedCustomizations.size() - 2; i >= 0; i--) {
+ final Customization selectedCustomization = LoadCustomizationsDialog.this.selectedCustomizations
+ .get(i);
+ if (selectedObjects.contains(selectedCustomization)) {
+ if (canMove) {
+ LoadCustomizationsDialog.this.selectedCustomizations.move(i + 1,
+ selectedCustomization);
+ }
+ } else {
+ canMove = true;
+ }
+
+ }
+
+ LoadCustomizationsDialog.this.selectedCustomizationsTreeViewer.refresh();
+ }
+
+ public final void loadSelectedCustoms() {
+ final IStructuredSelection selection = (IStructuredSelection) LoadCustomizationsDialog.this.availableCustomizationsTreeViewer
+ .getSelection();
+ for (Object object : selection.toList()) {
+ if (object instanceof Customization) {
+ final Customization custom = (Customization) object;
+ if (!this.selectedCustomizations.contains(custom)) {
+ this.selectedCustomizations.add(custom);
+ this.availableCustoms.remove(custom);
+ }
+ }
+ }
+ refresh();
+ this.selectedCustomizationsTreeViewer.setSelection(selection);
+ }
+
+ public final void addAllButtonClicked() {
+ final ListIterator<Customization> listIterator = this.availableCustoms
+ .listIterator();
+ while (listIterator.hasNext()) {
+ final Customization element = listIterator.next();
+ this.selectedCustomizations.add(element);
+ listIterator.remove();
+ }
+ refresh();
+ }
+
+ public final void unloadSelectedCustoms() {
+ final IStructuredSelection selection = (IStructuredSelection) LoadCustomizationsDialog.this.selectedCustomizationsTreeViewer
+ .getSelection();
+ final List<Customization> toBeRemoved = new ArrayList<Customization>();
+ boolean lockedCustomFound = false;
+ for (Object object : selection.toList()) {
+ if (this.lockedCustoms.contains(object)) {
+ lockedCustomFound = true;
+ } else if (object instanceof Customization) {
+ final Customization element = (Customization) object;
+ toBeRemoved.add(element);
+ }
+ }
+ if (lockedCustomFound) {
+ final MessageDialog dialog = new MessageDialog(
+ null,
+ Messages.LoadCustomizationsDialog_LoadCustomizationWarning,
+ null,
+ Messages.LoadCustomizationsDialog_Can_not_be_unload + this.lockMsg,
+ MessageDialog.WARNING, new String[] { Messages.LoadCustomizationsDialog_OK }, 1);
+ dialog.open();
+ }
+ removeFromSelection(toBeRemoved);
+ refresh();
+ }
+
+ protected void removeFromSelection(final List<Customization> toBeRemoved) {
+ for (final Customization element : toBeRemoved) {
+ LoadCustomizationsDialog.this.selectedCustomizations.remove(element);
+ LoadCustomizationsDialog.this.availableCustoms.add(element);
+ }
+ if (LoadCustomizationsDialog.this.selectedCustomizations.size() > 0) {
+ LoadCustomizationsDialog.this.selectedCustomizationsTreeViewer
+ .setSelection(new StructuredSelection(
+ LoadCustomizationsDialog.this.selectedCustomizations.get(0)));
+ }
+ }
+
+ public final void removeAllButtonClicked() {
+ removeFromSelection(this.selectedCustomizations);
+ refresh();
+ }
+
+ private void createLeftPane(final Composite contents) {
+ final Composite choiceComposite = new Composite(contents, SWT.NONE);
+ final GridData data = new GridData(SWT.FILL, SWT.FILL, true, true);
+ data.horizontalAlignment = SWT.END;
+ choiceComposite.setLayoutData(data);
+
+ final GridLayout layout = new GridLayout();
+ data.horizontalAlignment = SWT.FILL;
+ layout.marginHeight = 0;
+ layout.marginWidth = 0;
+ layout.numColumns = 1;
+ choiceComposite.setLayout(layout);
+
+ final Label choiceLabel = new Label(choiceComposite, SWT.NONE);
+ choiceLabel.setText(Messages.LoadCustomizationsDialog_AvailiableCustom);
+
+ final GridData choiceLabelGridData = new GridData();
+ choiceLabelGridData.verticalAlignment = SWT.FILL;
+ choiceLabelGridData.horizontalAlignment = SWT.FILL;
+ choiceLabel.setLayoutData(choiceLabelGridData);
+
+ final Text patternText = createFilterText(choiceComposite);
+
+ final Tree availableCustomizationsTree = new Tree(choiceComposite, SWT.MULTI | SWT.BORDER);
+ final GridData availableCustomizationsGridData = new GridData();
+ availableCustomizationsGridData.widthHint = LoadCustomizationsDialog.TREE_WIDTH;
+ availableCustomizationsGridData.heightHint = LoadCustomizationsDialog.TREE_HEIGHT;
+ availableCustomizationsGridData.horizontalAlignment = SWT.FILL;
+ availableCustomizationsGridData.verticalAlignment = SWT.FILL;
+ availableCustomizationsGridData.grabExcessHorizontalSpace = true;
+ availableCustomizationsGridData.grabExcessVerticalSpace = true;
+ availableCustomizationsTree.setLayoutData(availableCustomizationsGridData);
+
+ this.availableCustomizationsTreeViewer = new TreeViewer(availableCustomizationsTree);
+ this.availableCustomizationsTreeViewer.setContentProvider(this.contentProvider);
+ this.availableCustomizationsTreeViewer.setLabelProvider(this.labelProvider);
+ final PatternFilter filter = new PatternFilter();
+ this.availableCustomizationsTreeViewer.addFilter(filter);
+
+ this.availableCustomizationsTreeViewer.setInput(this.availableCustoms);
+
+ //TODO Remove before to commit
+// final TreeItem treeItem = new TreeItem(availableCustomizationsTree, SWT.NONE);
+// treeItem.setText(Messages.LoadCustomizationsDialog_Loading);
+ //TODO (end) Remove before to commit
+
+ patternText.addModifyListener(new ModifyListener() {
+ public void modifyText(final ModifyEvent event) {
+ filter.setPattern(patternText.getText());
+ LoadCustomizationsDialog.this.availableCustomizationsTreeViewer.refresh();
+ }
+ });
+ }
+
+ private void createMiddleButtonsPane(final Composite contents) {
+ final Composite buttonsComposite = new Composite(contents, SWT.NONE);
+ final GridData buttonsCompositeGridData = new GridData();
+ buttonsCompositeGridData.verticalAlignment = SWT.CENTER;
+ buttonsCompositeGridData.horizontalAlignment = SWT.FILL;
+ buttonsComposite.setLayoutData(buttonsCompositeGridData);
+ buttonsComposite.setLayout(new GridLayout());
+
+ // new Label(buttonsComposite, SWT.NONE);
+
+ this.addButton = new Button(buttonsComposite, SWT.PUSH);
+ this.addButton.setText(Messages.LoadCustomizationsDialog_Add);
+ this.addButton.setToolTipText(Messages.LoadCustomizationsDialog_Add2);
+ final GridData addButtonGridData = new GridData();
+ addButtonGridData.verticalAlignment = SWT.FILL;
+ addButtonGridData.horizontalAlignment = SWT.FILL;
+ this.addButton.setLayoutData(addButtonGridData);
+
+ this.removeButton = new Button(buttonsComposite, SWT.PUSH);
+ this.removeButton.setText(Messages.LoadCustomizationsDialog_Remove);
+ this.removeButton.setToolTipText(Messages.LoadCustomizationsDialog_Remove2);
+ final GridData removeButtonGridData = new GridData();
+ removeButtonGridData.verticalAlignment = SWT.FILL;
+ removeButtonGridData.horizontalAlignment = SWT.FILL;
+ this.removeButton.setLayoutData(removeButtonGridData);
+
+ spacer(buttonsComposite);
+
+ this.addAllButton = new Button(buttonsComposite, SWT.PUSH);
+ this.addAllButton.setText(Messages.LoadCustomizationsDialog_AddAll);
+ this.addAllButton.setToolTipText(Messages.LoadCustomizationsDialog_AddAll2);
+
+ this.removeAllButton = new Button(buttonsComposite, SWT.PUSH);
+ this.removeAllButton.setText(Messages.LoadCustomizationsDialog_RemoveAll);
+ this.removeAllButton.setToolTipText(Messages.LoadCustomizationsDialog_RemoveAll2);
+ }
+
+ private static void spacer(final Composite parent) {
+ Label label = new Label(parent, SWT.NONE);
+ }
+
+ private void createRightButtonsPane(final Composite contents) {
+ final Composite buttonsComposite = new Composite(contents, SWT.NONE);
+ final GridData buttonsCompositeGridData = new GridData();
+ buttonsCompositeGridData.verticalAlignment = SWT.FILL;
+ buttonsCompositeGridData.horizontalAlignment = SWT.FILL;
+ buttonsComposite.setLayoutData(buttonsCompositeGridData);
+ buttonsComposite.setLayout(new GridLayout());
+
+ // spacer
+ spacer(buttonsComposite);
+
+ this.upButton = new Button(buttonsComposite, SWT.PUSH);
+ this.upButton.setText(Messages.LoadCustomizationsDialog_Up);
+ final GridData upButtonGridData = new GridData();
+ upButtonGridData.verticalAlignment = SWT.FILL;
+ upButtonGridData.horizontalAlignment = SWT.FILL;
+ this.upButton.setLayoutData(upButtonGridData);
+
+ this.downButton = new Button(buttonsComposite, SWT.PUSH);
+ this.downButton.setText(Messages.LoadCustomizationsDialog_Down);
+ final GridData downButtonGridData = new GridData();
+ downButtonGridData.verticalAlignment = SWT.FILL;
+ downButtonGridData.horizontalAlignment = SWT.FILL;
+ this.downButton.setLayoutData(downButtonGridData);
+ }
+
+ private void createRightPane(final Composite contents) {
+ final Composite featureComposite = new Composite(contents, SWT.NONE);
+ final GridData featureCompositeData = new GridData(SWT.FILL, SWT.FILL, true, true);
+ featureCompositeData.horizontalAlignment = SWT.END;
+ featureComposite.setLayoutData(featureCompositeData);
+
+ final GridLayout featureCompositeLayout = new GridLayout();
+ featureCompositeData.horizontalAlignment = SWT.FILL;
+ featureCompositeLayout.marginHeight = 0;
+ featureCompositeLayout.marginWidth = 0;
+ featureCompositeLayout.numColumns = 1;
+ featureComposite.setLayout(featureCompositeLayout);
+
+ final Label featureLabel = new Label(featureComposite, SWT.NONE);
+ featureLabel.setText(Messages.LoadCustomizationsDialog_LoadedCustomizations);
+ final GridData featureLabelGridData = new GridData();
+ featureLabelGridData.horizontalSpan = 2;
+ featureLabelGridData.horizontalAlignment = SWT.FILL;
+ featureLabelGridData.verticalAlignment = SWT.FILL;
+ featureLabel.setLayoutData(featureLabelGridData);
+
+ final Tree loadedCustomizationsTree = new Tree(featureComposite, SWT.MULTI | SWT.BORDER);
+ final GridData loadedCustomizationsGridData = new GridData();
+ loadedCustomizationsGridData.widthHint = LoadCustomizationsDialog.TREE_WIDTH;
+ loadedCustomizationsGridData.heightHint = LoadCustomizationsDialog.TREE_HEIGHT;
+ loadedCustomizationsGridData.verticalAlignment = SWT.FILL;
+ loadedCustomizationsGridData.horizontalAlignment = SWT.FILL;
+ loadedCustomizationsGridData.grabExcessHorizontalSpace = true;
+ loadedCustomizationsGridData.grabExcessVerticalSpace = true;
+ loadedCustomizationsTree.setLayoutData(loadedCustomizationsGridData);
+
+ this.selectedCustomizationsTreeViewer = new TreeViewer(loadedCustomizationsTree);
+ this.selectedCustomizationsTreeViewer.setContentProvider(this.contentProvider);
+ this.selectedCustomizationsTreeViewer.setLabelProvider(this.labelProvider);
+ this.selectedCustomizationsTreeViewer.setInput(this.selectedCustomizations);
+ }
+
+ private void createLoadRequiredFacetsCheckbox(final Composite contents) {
+ spacer(contents);
+ spacer(contents);
+ this.loadRequiredFacetsCheckbox = new Button(contents, SWT.CHECK);
+ this.loadRequiredFacetsCheckbox
+ .setText(Messages.LoadCustomizationsDialog_loadReferencedFacetsCheckbox);
+ this.loadRequiredFacetsCheckbox.setSelection(true);
+ this.loadRequiredFacetsCheckbox
+ .setLayoutData(new GridData(SWT.END, SWT.FILL, false, false));
+
+ }
+
+ private static Text createFilterText(final Composite contents) {
+ final Text patternText = new Text(contents, SWT.BORDER | SWT.SEARCH);
+ patternText.setMessage(Messages.LoadCustomizationsDialog_type_filter_test);
+ patternText.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ return patternText;
+ }
+
+ @Override
+ protected void okPressed() {
+ pressOk();
+ }
+
+ public void commit(final Boolean result) {
+ this.callback.committed(this.selectedCustomizations, result);
+ super.okPressed();
+ }
+
+ public boolean isLoadRequiredFacetsSelected() {
+ return this.loadRequiredFacetsSelected;
+ }
+
+ // @Override
+ // public boolean close() {
+ // fContentProvider.dispose();
+ // return super.close();
+ // }
+
+ public List<Customization> getSelectedCustomizations() {
+ return this.selectedCustomizations;
+ }
+
+ private void refresh() {
+ LoadCustomizationsDialog.this.availableCustomizationsTreeViewer.refresh();
+ LoadCustomizationsDialog.this.selectedCustomizationsTreeViewer.refresh();
+ }
+
+ public void asyncOpen() {
+ Display display;
+ if (this.getShell() == null) {
+ display = Display.getDefault();
+ } else {
+ display = this.getShell().getDisplay();
+ }
+ display.asyncExec(new Runnable() {
+ public void run() {
+ LoadCustomizationsDialog.this.open();
+ }
+ });
+ }
+
+ public D pressOk() {
+ this.loadRequiredFacetsSelected = this.loadRequiredFacetsCheckbox
+ .getSelection();
+ final D preCommitDialog = this.callback
+ .openPrecommitDialog(this.selectedCustomizations,
+ new IDialogCallback<Boolean>() {
+ public void committed(final Boolean result) {
+ if (result.booleanValue()) {
+ LoadCustomizationsDialog.this
+ .commit(result);
+ }
+ }
+ });
+ if (preCommitDialog == null) {
+ this.callback.committed(this.selectedCustomizations, Boolean.TRUE);
+ super.okPressed();
+ }
+ return preCommitDialog;
+ }
+
+ public void selectAvailableCustom(final Customization customization) {
+ final ISelection selection = new StructuredSelection(customization);
+ this.availableCustomizationsTreeViewer.setSelection(selection);
+ }
+
+ public void selectSelectedCustom(final Customization customization) {
+ final ISelection selection = new StructuredSelection(customization);
+ this.selectedCustomizationsTreeViewer.setSelection(selection);
+
+ }
+
+ public List<Customization> getLockedCustoms() {
+ return this.lockedCustoms;
+ }
+
+ public void addCustomization(final Customization customization)
+ throws IllegalParameterException {
+ // TODO Auto-generated method stub
+
+ }
+
+ public void addCustomizations(final List<Customization> customizations)
+ throws IllegalParameterException {
+ // TODO Auto-generated method stub
+
+ }
+
+ public void removeCustomization(final Customization customization)
+ throws IllegalParameterException {
+ // TODO Auto-generated method stub
+
+ }
+
+ public void removeCustomizations(final List<Customization> customizations)
+ throws IllegalParameterException {
+ // TODO Auto-generated method stub
+
+ }
+
+ public void cancel() {
+ // TODO Auto-generated method stub
+
+ }
+
+ public void validate() {
+ // TODO Auto-generated method stub
+
+ }
+
+ public List<Customization> getAvailableCustomizations() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public void pushUp(final Customization customization)
+ throws IllegalParameterException {
+ // TODO Auto-generated method stub
+
+ }
+
+ public void pushDown(final Customization customization)
+ throws IllegalParameterException {
+ // TODO Auto-generated method stub
+
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/dialog/LoadCustomizationsDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/dialog/LoadCustomizationsDialogFactory.java
new file mode 100644
index 00000000000..d49af6c65f2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/dialog/LoadCustomizationsDialogFactory.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.dialog;
+
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.dialog.ILoadCustomizationsDialog;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.dialog.ILoadCustomizationsDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallbackWithPreCommit;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.swt.widgets.Shell;
+
+public class LoadCustomizationsDialogFactory implements ILoadCustomizationsDialogFactory {
+
+ public <D> ILoadCustomizationsDialog<D> createLoadCustomizationDialog(
+ final Shell parent,
+ final List<Customization> availableCustoms,
+ final List<Customization> selectedCustoms,
+ final IDialogCallbackWithPreCommit<List<Customization>, Boolean, D> callback) {
+ return new SynchronizedLoadCustomizationsDialog(parent,
+ availableCustoms, selectedCustoms,
+ Collections.<Customization> emptyList(), callback, ""); //$NON-NLS-1$
+ }
+
+ public <D> ILoadCustomizationsDialog<D> createLoadCustomizationDialog(
+ final Shell parent,
+ final List<Customization> availableCustoms,
+ final List<Customization> selectedCustoms,
+ final List<Customization> lockedCustoms,
+ final IDialogCallbackWithPreCommit<List<Customization>, Boolean, D> callback,
+ final String lockMsg) {
+ return new SynchronizedLoadCustomizationsDialog(parent,
+ availableCustoms, selectedCustoms, lockedCustoms, callback,
+ lockMsg);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/dialog/SynchronizedLoadCustomizationsDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/dialog/SynchronizedLoadCustomizationsDialog.java
new file mode 100644
index 00000000000..372fd032c66
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/dialog/SynchronizedLoadCustomizationsDialog.java
@@ -0,0 +1,222 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Nicolas Bros (Mia-Software) - Bug 372626 - Aggregates
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.dialog;
+
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.dialog.ILoadCustomizationsDialog;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.exception.IllegalParameterException;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallbackWithPreCommit;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Shell;
+
+public class SynchronizedLoadCustomizationsDialog<D> extends
+ SynchronizedObject<LoadCustomizationsDialog<D>> implements
+ ILoadCustomizationsDialog<D> { // NOPMD by gdupe on 03/02/12 12:13 - We cannot do more. This class is a facade/wrapper of an other class.
+
+ public SynchronizedLoadCustomizationsDialog(final Shell parent,
+ final List<Customization> availableCustoms,
+ final List<Customization> selectedCustoms,
+ final List<Customization> lockedCustoms,
+ final IDialogCallbackWithPreCommit<List<Customization>, Boolean, D> callback,
+ final String lockMsg) {
+ super(new LoadCustomizationsDialog(parent, availableCustoms,
+ selectedCustoms, lockedCustoms, callback, lockMsg),
+ initDisplay(parent));
+ }
+
+ private static Display initDisplay(final Shell parent) {
+ Display display;
+ if (parent == null) {
+ display = Display.getDefault();
+ } else {
+ display = parent.getDisplay();
+ }
+ return display;
+ }
+
+ public int open() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Integer>() {
+ @Override
+ public Integer safeRun() {
+ return Integer.valueOf(SynchronizedLoadCustomizationsDialog.this
+ .getSynchronizedObject().open());
+ }
+ }).intValue();
+ }
+
+ public void asyncOpen() {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedLoadCustomizationsDialog.this
+ .getSynchronizedObject().asyncOpen();
+ }
+ });
+ }
+
+ public D pressOk() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<D>() {
+ @Override
+ public D safeRun() {
+ return SynchronizedLoadCustomizationsDialog.this
+ .getSynchronizedObject().pressOk();
+ }
+ });
+ }
+
+ public void selectAvailableCustom(final Customization customization) {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedLoadCustomizationsDialog.this
+ .getSynchronizedObject().selectAvailableCustom(
+ customization);
+ }
+ });
+ }
+
+ public void loadSelectedCustoms() {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedLoadCustomizationsDialog.this
+ .getSynchronizedObject().loadSelectedCustoms();
+ }
+ });
+ }
+
+ public void selectSelectedCustom(final Customization customization) {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedLoadCustomizationsDialog.this
+ .getSynchronizedObject().selectSelectedCustom(
+ customization);
+ }
+ });
+ }
+
+ public void unloadSelectedCustoms() {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedLoadCustomizationsDialog.this
+ .getSynchronizedObject().unloadSelectedCustoms();
+ }
+ });
+ }
+
+ public void addCustomization(final Customization customization)
+ throws IllegalParameterException {
+ voidSyncExec(new AbstractVoidRunnable<IllegalParameterException>() {
+ @Override
+ public void voidRun() throws IllegalParameterException {
+ getSynchronizedObject().addCustomization(customization);
+ }
+ });
+ }
+
+ public void addCustomizations(final List<Customization> customizations)
+ throws IllegalParameterException {
+ voidSyncExec(new AbstractVoidRunnable<IllegalParameterException>() {
+ @Override
+ public void voidRun() throws IllegalParameterException {
+ getSynchronizedObject().addCustomizations(customizations);
+ }
+ });
+ }
+
+ public void removeCustomization(final Customization customization)
+ throws IllegalParameterException {
+ voidSyncExec(new AbstractVoidRunnable<IllegalParameterException>() {
+ @Override
+ public void voidRun() throws IllegalParameterException {
+ getSynchronizedObject().removeCustomization(customization);
+ }
+ });
+ }
+
+ public void removeCustomizations(final List<Customization> customizations)
+ throws IllegalParameterException {
+ voidSyncExec(new AbstractVoidRunnable<IllegalParameterException>() {
+ @Override
+ public void voidRun() throws IllegalParameterException {
+ getSynchronizedObject().removeCustomizations(customizations);
+ }
+ });
+ }
+
+ public void cancel() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ getSynchronizedObject().cancel();
+ }
+ });
+ }
+
+ public void validate() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ getSynchronizedObject().validate();
+ }
+ });
+ }
+
+ public List<Customization> getSelectedCustomizations() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<List<Customization>>() {
+ @Override
+ public List<Customization> safeRun() {
+ return getSynchronizedObject().getSelectedCustomizations();
+ }
+ });
+ }
+
+ public List<Customization> getAvailableCustomizations() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<List<Customization>>() {
+ @Override
+ public List<Customization> safeRun() {
+ return getSynchronizedObject().getAvailableCustomizations();
+ }
+ });
+ }
+
+ public void pushUp(final Customization customization)
+ throws IllegalParameterException {
+ voidSyncExec(new AbstractVoidRunnable<IllegalParameterException>() {
+ @Override
+ public void voidRun() throws IllegalParameterException {
+ getSynchronizedObject().pushUp(customization);
+ }
+ });
+ }
+
+ public void pushDown(final Customization customization)
+ throws IllegalParameterException {
+ voidSyncExec(new AbstractVoidRunnable<IllegalParameterException>() {
+ @Override
+ public void voidRun() throws IllegalParameterException {
+ getSynchronizedObject().pushDown(customization);
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exception/CustomizationEditRuntimeException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exception/CustomizationEditRuntimeException.java
new file mode 100644
index 00000000000..d487ca4cd3e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exception/CustomizationEditRuntimeException.java
@@ -0,0 +1,35 @@
+
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.exception;
+
+public class CustomizationEditRuntimeException extends RuntimeException {
+
+ private static final long serialVersionUID = -632229513667261515L;
+
+ public CustomizationEditRuntimeException() {
+ super();
+ }
+
+ public CustomizationEditRuntimeException(final String message) {
+ super(message);
+ }
+
+ public CustomizationEditRuntimeException(final Throwable cause) {
+ super(cause);
+ }
+
+ public CustomizationEditRuntimeException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exception/CustomizedContentProviderRuntimeException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exception/CustomizedContentProviderRuntimeException.java
new file mode 100644
index 00000000000..b4a1b3522df
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exception/CustomizedContentProviderRuntimeException.java
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 386387 - [CustomizedTreeContentProvider] The TreeElements are not preserved between two calls to getElements()
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.exception;
+
+public class CustomizedContentProviderRuntimeException extends RuntimeException {
+
+ private static final long serialVersionUID = 6962461313131533003L;
+
+ public CustomizedContentProviderRuntimeException() {
+ super();
+ }
+
+ public CustomizedContentProviderRuntimeException(final String message) {
+ super(message);
+ }
+
+ public CustomizedContentProviderRuntimeException(final Throwable cause) {
+ super(cause);
+ }
+
+ public CustomizedContentProviderRuntimeException(final String message,
+ final Throwable cause) {
+ super(message, cause);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/CustomizationUIConstants.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/CustomizationUIConstants.java
new file mode 100644
index 00000000000..80a9220172b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/CustomizationUIConstants.java
@@ -0,0 +1,27 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372626 - Aggregates
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.exported;
+
+/**
+ * @since 0.2
+ */
+public final class CustomizationUIConstants {
+
+ private static final String CATALOG_VIEW_ID = "org.eclipse.papyrus.emf.facet.custom.ui.view.catalog"; //$NON-NLS-1$
+
+ private CustomizationUIConstants() {
+ // utility class
+ }
+
+ public static String getCustomizationCatalogViewId() {
+ return CustomizationUIConstants.CATALOG_VIEW_ID;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/ICustomizationCommandFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/ICustomizationCommandFactory.java
new file mode 100644
index 00000000000..388ee7b7a6a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/ICustomizationCommandFactory.java
@@ -0,0 +1,39 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.exported;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.util.emf.core.command.ICommandFactoryResult;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.EClassCustomization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.FacetCustomization;
+
+public interface ICustomizationCommandFactory {
+
+ ICommandFactoryResult<Customization> createCustomization(
+ String name);
+
+ ICommandFactoryResult<EClassCustomization> createEClassCustomization(
+ Customization customization, EClass customedEClass, Query conformanceQuery);
+
+ ICommandFactoryResult<FacetCustomization> createFacetCustomization(
+ Customization customization, Facet customizedFacet);
+
+ ICommandFactoryResult<Facet> setPropertyConfig(Facet typeCustomization,
+ ETypedElement customizedTElt, // customized typed element
+ FacetOperation customProperty,
+ Query query);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/ICustomizationCommandFactoryFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/ICustomizationCommandFactoryFactory.java
new file mode 100644
index 00000000000..22e5a1b7570
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/ICustomizationCommandFactoryFactory.java
@@ -0,0 +1,24 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.exported;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.CustomizationCommandFactoryFactory;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.exported.ICommandFactory;
+
+public interface ICustomizationCommandFactoryFactory {
+
+ ICustomizationCommandFactoryFactory DEFAULT = new CustomizationCommandFactoryFactory();
+
+ ICustomizationCommandFactory createCustomizationCommandFactory(
+ EditingDomain editingDomain, ICommandFactory commandFactory);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/ILabelPropertiesHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/ILabelPropertiesHandler.java
new file mode 100644
index 00000000000..e67e69d76dd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/ILabelPropertiesHandler.java
@@ -0,0 +1,24 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.exported;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+
+/**
+ *
+ * @since 0.2
+ *
+ */
+public interface ILabelPropertiesHandler {
+ FacetOperation getLabelProperty();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/ILabelPropertiesHandlerFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/ILabelPropertiesHandlerFactory.java
new file mode 100644
index 00000000000..7c2788767c7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/ILabelPropertiesHandlerFactory.java
@@ -0,0 +1,29 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.exported;
+
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.PropertiesHandlerFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+
+/**
+ *
+ * @since 0.2
+ *
+ */
+public interface ILabelPropertiesHandlerFactory {
+
+ ILabelPropertiesHandlerFactory DEFAULT = new PropertiesHandlerFactory();
+
+ ILabelPropertiesHandler createLabelPropertiesHandler(
+ ICustomizationManager customizationMgr);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/dialog/ILoadCustomizationsDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/dialog/ILoadCustomizationsDialog.java
new file mode 100644
index 00000000000..fe493345953
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/dialog/ILoadCustomizationsDialog.java
@@ -0,0 +1,168 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.dialog;
+
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.exception.IllegalParameterException;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+
+/**
+ * A dialog to load {@link Customization}s.
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ * @since 0.2.0
+ */
+public interface ILoadCustomizationsDialog<D> {
+
+ /**
+ * Opens the dialog and blocks until it closes.
+ *
+ * @return the dialog's return code
+ */
+ int open();
+
+ /** Opens the dialog asynchronously */
+ void asyncOpen();
+
+ /**
+ * Emulate a press on the OK button
+ *
+ * @since 0.2
+ */
+ D pressOk();
+
+ /** Selects the given customization in the left "available customizations" pane */
+ void selectAvailableCustom(Customization customization);
+
+ /**
+ * Moves the customizations selected in the left "available customizations" pane to the right
+ * "loaded customizations" pane.
+ */
+ void loadSelectedCustoms();
+
+ /** Selects the given customization in the right "loaded customizations" pane */
+ void selectSelectedCustom(Customization customization);
+
+ /**
+ * Moves the customizations selected in the right "loaded customizations" pane to the left
+ * "available customizations" pane.
+ */
+ void unloadSelectedCustoms();
+
+ /**
+ * This method is used to add a customization on the top of the
+ * customization stack.
+ *
+ * @param customization
+ * must be one element of the list returned by {@link
+ * ICustomizationLoaderDialo.getAvailableCustomizations()}
+ * @throws IllegalParameterException
+ * when the parameter is not one element of the list returned by
+ * {@link
+ * ICustomizationLoaderDialo.getAvailableCustomizations()}
+ */
+ void addCustomization(Customization customization)
+ throws IllegalParameterException;
+
+ /**
+ * This method is used to add customizations on the top of the customization
+ * stack.
+ *
+ * @param customizations
+ * must be one element of the list returned by {@link
+ * ICustomizationLoaderDialo.getAvailableCustomizations()}
+ * @throws IllegalParameterException
+ * when one of the element of the parameter list in not one
+ * element of the list returned by {@link
+ * ICustomizationLoaderDialo.getAvailableCustomizations()}
+ */
+ void addCustomizations(List<Customization> customizations)
+ throws IllegalParameterException;
+
+ /**
+ * This method is used to remove a customization from the list.
+ *
+ * @param customization
+ * must be one element of the list returned by {@link
+ * ICustomizationLoaderDialo.getSelectedCustomizations()}
+ * @throws IllegalParameterException
+ * when the parameter is not one element of the list returned by
+ * {@link ICustomizationLoaderDialo.getSelectedCustomizations()}
+ */
+ void removeCustomization(Customization customization)
+ throws IllegalParameterException;
+
+ /**
+ * This method is used to remove a list of customization from the list.
+ *
+ * @param customizations
+ * must be one element of the list returned by {@link
+ * ICustomizationLoaderDialo.getSelectedCustomizations()}
+ * @throws IllegalParameterException
+ * when one of the element of the parameter list in not one
+ * element of the list returned by {@link
+ * ICustomizationLoaderDialo.getSelectedCustomizations()}
+ */
+ void removeCustomizations(List<Customization> customizations)
+ throws IllegalParameterException;
+
+ /**
+ * Cancel the dialog
+ */
+ void cancel();
+
+ /**
+ * Validate the dialog
+ */
+ void validate();
+
+ /**
+ * The intersection between getSelectedCustomizations() and
+ * getAvailableCustomizations') has to be empty.
+ *
+ * @return the customizations selected using the dialog.
+ */
+ List<Customization> getSelectedCustomizations();
+
+ /**
+ * The intersection between getSelectedCustomizations() and
+ * getAvailableCustomizations') has to be empty.
+ *
+ * @return the available and not yet selected customizations
+ */
+ List<Customization> getAvailableCustomizations();
+
+ /**
+ * This method is used to push up a customization.
+ *
+ * @param customization
+ * a selected customization.
+ * @throws IllegalParameterException
+ * when the parameter in not on element of the list returned by
+ * getSelectedCustomizations().
+ */
+ void pushUp(Customization customization) throws IllegalParameterException;
+
+ /**
+ * This method is used to push down a customization.
+ *
+ * @param customization
+ * a selected customization.
+ * @throws IllegalParameterException
+ * when the parameter in not on element of the list returned by
+ * getSelectedCustomizations().
+ */
+ void pushDown(Customization customization) throws IllegalParameterException;
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/dialog/ILoadCustomizationsDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/dialog/ILoadCustomizationsDialogFactory.java
new file mode 100644
index 00000000000..0f8bd3653e8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/dialog/ILoadCustomizationsDialogFactory.java
@@ -0,0 +1,72 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.dialog;
+
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.dialog.LoadCustomizationsDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallbackWithPreCommit;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.swt.widgets.Shell;
+
+/**
+ * Factory for {@link ILoadCustomizationsDialog}.
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ * @since 0.2.0
+ */
+public interface ILoadCustomizationsDialogFactory {
+ /** The default implementation */
+ ILoadCustomizationsDialogFactory DEFAULT = new LoadCustomizationsDialogFactory();
+
+ /**
+ * @param parent
+ * the parent shell
+ * @param availableCustoms
+ * the customizations that the user will be able to select
+ * @param selectedCustoms
+ * the customizations that will be selected when the dialog opens
+ * @param listener
+ * called when the dialog closes
+ * @return the dialog
+ * @since 0.2
+ */
+ <D> ILoadCustomizationsDialog<D> createLoadCustomizationDialog(final Shell parent,
+ final List<Customization> availableCustoms,
+ final List<Customization> selectedCustoms,
+ IDialogCallbackWithPreCommit<List<Customization>, Boolean, D> callback);
+
+ /**
+ * @param parent
+ * the parent shell
+ * @param availableCustoms
+ * the customizations that the user will be able to select
+ * @param selectedCustoms
+ * the customizations that will be selected when the dialog opens
+ * @param lockedCustoms
+ * a list of customizations that the user will not be able to unload
+ * @param listener
+ * called when the dialog closes
+ * @param lockMsg
+ * a message indicating why certain customizations cannot be unloaded
+ * @return the dialog
+ * @since 0.2
+ */
+ <D> ILoadCustomizationsDialog<D> createLoadCustomizationDialog(final Shell parent,
+ final List<Customization> availableCustoms,
+ final List<Customization> selectedCustoms,
+ final List<Customization> lockedCustoms,
+ IDialogCallbackWithPreCommit<List<Customization>, Boolean, D> callback,
+ String lockMsg);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/exception/IllegalParameterException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/exception/IllegalParameterException.java
new file mode 100644
index 00000000000..3b1792de8bc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/exported/exception/IllegalParameterException.java
@@ -0,0 +1,53 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.exception;
+
+import java.util.List;
+
+public class IllegalParameterException extends Exception {
+
+ private static final long serialVersionUID = 2470355059500176931L;
+ private final List<? extends Object> illegalParameters;
+
+ public IllegalParameterException(
+ final List<? extends Object> illegalParameters) {
+ super();
+ this.illegalParameters = illegalParameters;
+ }
+
+ public IllegalParameterException(final String message,
+ final List<? extends Object> illegalParameters) {
+ super(message);
+ this.illegalParameters = illegalParameters;
+ }
+
+ public IllegalParameterException(final Throwable cause,
+ final List<? extends Object> illegalParameters) {
+ super(cause);
+ this.illegalParameters = illegalParameters;
+ }
+
+ public IllegalParameterException(final String message,
+ final Throwable cause,
+ final List<? extends Object> illegalParameters) {
+ super(message, cause);
+ this.illegalParameters = illegalParameters;
+ }
+
+ /**
+ * @return the illegalParameters
+ */
+ public List<? extends Object> getIllegalParameters() {
+ return this.illegalParameters;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/messages.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/messages.properties
new file mode 100644
index 00000000000..2c6eb227231
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/messages.properties
@@ -0,0 +1,55 @@
+###############################################################################
+# Copyright (c) 2009 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - initial API and implementation
+# Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+# Nicolas Bros (Mia-Software) - Bug 372732 - [Facet] Rewrite the catalog views for 0.2
+# Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+# Vincent Lorenzo (CEA-LIST) - Bug 373255 - Add tooltips providing a documentation for the selected elements in the Select ETypedElement Dialog
+###############################################################################
+CustomizationsCatalogView_title=Customizations
+CustomizationsView_allQuerySets=all
+CustomizationsView_jobName_RefreshCustomizationsView=Refresh Customizations View
+CustomizationsView_extendsColumn=Extends
+CustomizationsView_nameColumn=Name
+CustomizationsView_documentationColumn=Documentation
+CustomizedLabelProvider_null=null
+NewCustomizationFilePage_browserCustomization=Browser Customization
+NewCustomizationFilePage_createsBrowserCustomization=Creates a new Browser Customization
+NewCustomizationFilePage_customizationInNonEmfFacetProject=Warning : you are creating this Customization in a non-EmfFacet project. It will not be available until moved to a EmfFacet project.
+NewCustomizationWizard_newBrowserCustomization=New Browser Customization
+QuerySetsSelectionControl_allExistingQuerySets=all existing query sets
+QuerySetsSelectionControl_availableQuerySets=Available query sets:
+QuerySetsSelectionControl_deselectAll=Deselect All
+QuerySetsSelectionControl_querySetsSelectedBelowOnly=query sets selected below only
+QuerySetsSelectionControl_selectAll=Select All
+SelectMetamodelsPage_selectMetamodel=Select Metamodel
+SelectMetamodelsPage_selectMetamodelToCustomize=Select the metamodel to which the new browser customization will apply
+SelectQuerySetsPage_selectAvailableQuerySets=Select Available Query Sets
+SelectQuerySetsPage_selectAvailableQuerySetsInCustomization=Select the query sets that will be available in the customization
+ToolTipTextQuery_Documentation={0}
+ToolTipTextQuery_NoDocumentation=No documentation
+LoadCustomizationsDialog_Add=>
+LoadCustomizationsDialog_Add2=Add
+LoadCustomizationsDialog_AddAll=>>
+LoadCustomizationsDialog_AddAll2=Add All
+LoadCustomizationsDialog_AvailiableCustom=Available Customizations
+LoadCustomizationsDialog_Can_not_be_unload=The local customization can't be unloaded.
+LoadCustomizationsDialog_Down=Down
+LoadCustomizationsDialog_LoadedCustomizations=Loaded Customizations
+LoadCustomizationsDialog_LoadCustomizationWarning=Load Customizations Warning
+LoadCustomizationsDialog_Loading=Loading...
+LoadCustomizationsDialog_loadReferencedFacetsCheckbox=Load referenced facets
+LoadCustomizationsDialog_OK=OK
+LoadCustomizationsDialog_Remove=<
+LoadCustomizationsDialog_Remove2=Remove
+LoadCustomizationsDialog_RemoveAll=<<
+LoadCustomizationsDialog_RemoveAll2=Remove All
+LoadCustomizationsDialog_title_LoadCustomizations=Load Customizations
+LoadCustomizationsDialog_type_filter_test=type filter text
+LoadCustomizationsDialog_Up=Up
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/BackgroundQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/BackgroundQuery.java
new file mode 100644
index 00000000000..d445e56c5bb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/BackgroundQuery.java
@@ -0,0 +1,32 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] EMF Facet customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.query;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.custompt.Color;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IColor;
+
+public class BackgroundQuery implements IJavaQuery2<EObject, IColor> {
+
+ public IColor evaluate(final EObject source,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ return new Color(Color.MAX_VALUE, Color.MAX_VALUE, Color.MAX_VALUE);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/FontNameQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/FontNameQuery.java
new file mode 100644
index 00000000000..d383da278c7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/FontNameQuery.java
@@ -0,0 +1,31 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] EMF Facet customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.query;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+import org.eclipse.swt.widgets.Display;
+
+public class FontNameQuery implements IJavaQuery2<EObject, String> {
+
+ public String evaluate(final EObject source,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ return Display.getDefault().getSystemFont().getFontData()[0].getName();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/FontSizeQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/FontSizeQuery.java
new file mode 100644
index 00000000000..0d2f5e4abcd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/FontSizeQuery.java
@@ -0,0 +1,31 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] EMF Facet customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.query;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+import org.eclipse.swt.widgets.Display;
+
+public class FontSizeQuery implements IJavaQuery2<EObject, Integer> {
+
+ public Integer evaluate(final EObject source,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ return Integer.valueOf(Display.getDefault().getSystemFont().getFontData()[0].getHeight());
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ForegroundQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ForegroundQuery.java
new file mode 100644
index 00000000000..c29d8c816b6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ForegroundQuery.java
@@ -0,0 +1,32 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] EMF Facet customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.query;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.custompt.Color;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IColor;
+
+public class ForegroundQuery implements IJavaQuery2<EObject, IColor> {
+
+ public IColor evaluate(final EObject source,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ return new Color(0, 0, 0);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ImageQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ImageQuery.java
new file mode 100644
index 00000000000..232c67c5999
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ImageQuery.java
@@ -0,0 +1,131 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] EMF Facet customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ * Gregoire Dupe (Mia-Software) - Bug 424122 - [Table] Images, fonts and colors are not shared between the instances of table
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.query;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedImage;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.ui.provider.ExtendedImageRegistry;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.ImageProvider;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.custompt.ImageWrapper;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+import org.eclipse.papyrus.emf.facet.util.swt.imageprovider.IImageProvider;
+import org.eclipse.papyrus.emf.facet.util.swt.imageprovider.IImageProviderFactory;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage;
+import org.eclipse.swt.graphics.Image;
+
+public class ImageQuery implements IJavaQuery2<EObject, IImage> {
+
+ public IImage evaluate(final EObject source,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ IImage result = null;
+ ETypedElement sfParam = null;
+ if (parameterValues != null) {
+ sfParam = (ETypedElement) parameterValues
+ .getParameterValueByName("eStructuralFeature").getValue(); //$NON-NLS-1$
+ }
+ if (sfParam == null) {
+ result = getEObjectImage(source);
+ } else {
+ result = getLinkImage(sfParam);
+ }
+ return result;
+ }
+
+ public static IImage getEObjectImage(final EObject source) {
+ IImage result = null;
+ final ComposedAdapterFactory adapterFactory = new ComposedAdapterFactory(
+ ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
+ final IItemLabelProvider itemLabelProvider = (IItemLabelProvider) adapterFactory
+ .adapt(source, IItemLabelProvider.class);
+ if (itemLabelProvider != null) {
+ Object imageObject = itemLabelProvider.getImage(source);
+ Image image = ExtendedImageRegistry.getInstance().getImage(imageObject);
+ result = new ImageWrapper(image);
+//// final ImageDescriptor imgDescriptor = ExtendedImageRegistry
+//// .getInstance().getImageDescriptor(source);
+// final IImageProvider imgProvider = IImageProviderFactory.DEFAULT
+// .createIImageProvider(Activator.getDefault());
+// if (imgDescriptor != null) {
+// final Image image = imgProvider.getImage(imgDescriptor);
+// result = new ImageWrapper(image);
+// }
+ }
+ return result;
+ }
+
+ /**
+ * Returns the image for an attribute or reference link.
+ *
+ * @param sfParam
+ * the attribute or reference
+ * @param source
+ * the EObject under which the attribute or reference appears
+ * @return the image
+ */
+ private static IImage getLinkImage(final ETypedElement sfParam) {
+ Image image = null;
+ if (sfParam instanceof FacetReference) {
+ image = ImageProvider.getInstance().getFacetLinkIcon();
+ } else if (sfParam instanceof EReference) {
+ image = getReferenceImage((EReference) sfParam);
+ } else if (sfParam instanceof FacetAttribute) {
+ image = ImageProvider.getInstance().getFacetAttributeIcon();
+ } else if (sfParam instanceof EAttribute) {
+ image = getAttributeImage();
+ } else {
+ image = ImageProvider.getInstance().getFeatureIcon();
+ }
+ return new ImageWrapper(image);
+ }
+
+ private static Image getReferenceImage(final EReference reference) {
+ Image result;
+ final EReference opposite = reference.getEOpposite();
+ if (reference.isContainment()) {
+ if (opposite == null) {
+ result = ImageProvider.getInstance().getUnidirectionalAggregIcon();
+ } else {
+ result = ImageProvider.getInstance().getAggregIcon();
+ }
+ } else {
+ if (opposite != null && opposite.isContainment()) {
+ result = ImageProvider.getInstance().getInvAggregIcon();
+ } else if (opposite == null) {
+ result = ImageProvider.getInstance().getUnidirectionalLinkIcon();
+ } else {
+ result = ImageProvider.getInstance().getLinkIcon();
+ }
+ }
+ return result;
+ }
+
+ private static Image getAttributeImage() {
+ return ImageProvider.getInstance().getAttributeIcon();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/LabelQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/LabelQuery.java
new file mode 100644
index 00000000000..0d0d0130c20
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/LabelQuery.java
@@ -0,0 +1,136 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] EMF Facet customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List<ETypedElement>, List<FacetSet>)
+ * Nicolas Bros (Mia-Software) - Bug 379683 - customizable Tree content provider
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.query;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.util.FeatureMap;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.ReflectiveItemProvider;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ModelUtils;
+
+public class LabelQuery implements IJavaQuery2<EObject, String> {
+
+ private static final String NAME = "name"; //$NON-NLS-1$
+
+ public String evaluate(final EObject source,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ ETypedElement sfParam = null;
+ if (parameterValues != null) {
+ sfParam = (ETypedElement) parameterValues
+ .getParameterValueByName("eStructuralFeature").getValue(); //$NON-NLS-1$
+ }
+ String result = null;
+ if (sfParam == null) {
+ final ComposedAdapterFactory adapterFactory = new ComposedAdapterFactory(
+ ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
+ final IItemLabelProvider itemLabelProvider = (IItemLabelProvider) adapterFactory
+ .adapt(source, IItemLabelProvider.class);
+ // We don't want to use a ReflectiveItemProvider because it provides
+ // a string prefixed with the eObject's meta-class name.
+ if (itemLabelProvider instanceof ReflectiveItemProvider) {
+ result = LabelQuery.getDefaultName(source);
+ } else if (itemLabelProvider == null) {
+ result = ModelUtils.getDefaultName(source);
+ } else {
+ result = itemLabelProvider.getText(source);
+ }
+ } else {
+ try {
+ if (sfParam instanceof EAttribute && sfParam.getUpperBound() == 1) {
+ final Object object = facetManager.getOrInvoke(source, sfParam, Object.class);
+ final String objectLabel = getObjectLabel(object, facetManager);
+ result = sfParam.getName() + " = " + objectLabel; //$NON-NLS-1$
+ } else {
+ result = sfParam.getName();
+ }
+ } catch (final Exception e) {
+ throw new DerivedTypedElementException(e);
+ }
+ }
+ return result;
+ }
+
+ private String getObjectLabel(final Object object,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ String result;
+ if (object instanceof EObject) {
+ final EObject eObject = (EObject) object;
+ result = evaluate(eObject, null, facetManager);
+ } else {
+ result = String.valueOf(object);
+ }
+ return result;
+ }
+
+ /**
+ * @return a default name based on a string feature of the given
+ * {@link EObject}
+ */
+ // from org.eclipse.papyrus.emf.facet.infra.common.core.internal.utils.ModelUtils
+ public static String getDefaultName(final EObject eObject) {
+ String result = ""; //$NON-NLS-1$
+ // find a feature that can be used as a name
+ final EStructuralFeature feature = LabelQuery.getLabelFeature(eObject
+ .eClass());
+ if (feature != null) {
+ result = (String) eObject.eGet(feature);
+ }
+ return result;
+ }
+
+ /**
+ * This method searches for a structural feature that can be used as a name
+ *
+ * @param eClass
+ * in which class to search a structural feature that can be used as
+ * a name
+ * @return an EStructuralFeature
+ */
+ // Copied from org.eclipse.emf.edit.provider.ReflectiveItemProvider to org.eclipse.papyrus.emf.facet.infra.common.core.internal.utils.ModelUtils
+ // Copied from org.eclipse.papyrus.emf.facet.infra.common.core.internal.utils.ModelUtils
+ private static EStructuralFeature getLabelFeature(final EClass eClass) {
+ EAttribute result = null;
+ for (final EAttribute eAttribute : eClass.getEAllAttributes()) {
+ if (!eAttribute.isMany()
+ && eAttribute.getEType().getInstanceClass() != FeatureMap.Entry.class) {
+ if (LabelQuery.NAME.equalsIgnoreCase(eAttribute
+ .getName())) {
+ result = eAttribute;
+ break;
+ } else if (result == null) {
+ result = eAttribute;
+ } else if (eAttribute.getEAttributeType().getInstanceClass() == String.class
+ && result.getEAttributeType().getInstanceClass() != String.class) {
+ result = eAttribute;
+ }
+ }
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/SelectionQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/SelectionQuery.java
new file mode 100644
index 00000000000..048b1a6c1d2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/SelectionQuery.java
@@ -0,0 +1,59 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 377866 - selection customization
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.query;
+
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.FacetManagerException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+
+/**
+ * This is the query that returns the default selection for a given source and feature (i.e. row and column in a table).
+ * By default, the selection is the {@link EObject} (or list of {@link EObject}s) returned by evaluating the feature on
+ * the source.
+ */
+public class SelectionQuery implements IJavaQuery2<EObject, List<Object>> {
+
+ // @SuppressWarnings("unchecked") : facet manager is not type safe
+ @SuppressWarnings("unchecked")
+ public List<Object> evaluate(final EObject source,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ if (parameterValues.size() != 1) {
+ throw new DerivedTypedElementException("the selection query expects one argument"); //$NON-NLS-1$
+ }
+ final Object param1 = parameterValues.get(0).getValue();
+ if (!(param1 instanceof ETypedElement)) {
+ throw new DerivedTypedElementException("the selection query expects an ETypedElement argument"); //$NON-NLS-1$
+ }
+ final ETypedElement feature = (ETypedElement) param1;
+
+ final List<Object> result;
+ try {
+ final Object featureResult = facetManager.getOrInvoke(source, feature, null);
+ if (feature.isMany()) {
+ result = (List<Object>) featureResult;
+ } else {
+ result = Collections.singletonList(featureResult);
+ }
+ } catch (FacetManagerException e) {
+ throw new DerivedTypedElementException(e);
+ }
+ return result;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipAlignmentQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipAlignmentQuery.java
new file mode 100644
index 00000000000..100babe0511
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipAlignmentQuery.java
@@ -0,0 +1,37 @@
+/*****************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.query;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Alignment;
+
+/**
+ *
+ * This query is used to get the default alignment for the tooltip texts
+ *
+ */
+public class ToolTipAlignmentQuery implements IJavaQuery2<EObject, Alignment> {
+
+ public Alignment evaluate(final EObject source,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ return Alignment.LEFT;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipBackgroundQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipBackgroundQuery.java
new file mode 100644
index 00000000000..8b852224a6c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipBackgroundQuery.java
@@ -0,0 +1,41 @@
+/*****************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.query;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.custompt.Color;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IColor;
+
+/**
+ *
+ * This query is used to get the default background color for the tooltips (255,255,225)
+ *
+ */
+public class ToolTipBackgroundQuery implements IJavaQuery2<EObject, IColor> {
+
+ private static final int BCK_GND_BLUE = 225;
+
+ public IColor evaluate(final EObject source,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ //default yellow background for tooltip
+ return new Color(Color.MAX_VALUE, Color.MAX_VALUE, ToolTipBackgroundQuery.BCK_GND_BLUE);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipDelayQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipDelayQuery.java
new file mode 100644
index 00000000000..2cc5e483f49
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipDelayQuery.java
@@ -0,0 +1,35 @@
+/*****************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.query;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+
+/**
+ *
+ * This query is used to get the default time for the tooltips
+ *
+ */
+public class ToolTipDelayQuery implements IJavaQuery2<EObject, Integer> {
+
+ public Integer evaluate(final EObject source,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ return Integer.valueOf(0);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipShadowQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipShadowQuery.java
new file mode 100644
index 00000000000..1f22edac96a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipShadowQuery.java
@@ -0,0 +1,37 @@
+/*****************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.query;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custompt.Shadow;
+
+/**
+ *
+ * This query is used to get the default shadow for the tooltips
+ *
+ */
+public class ToolTipShadowQuery implements IJavaQuery2<EObject, Shadow> {
+
+ public Shadow evaluate(final EObject source,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ return Shadow.NONE;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipTextQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipTextQuery.java
new file mode 100644
index 00000000000..27e240f2f91
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/ToolTipTextQuery.java
@@ -0,0 +1,76 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA-LIST) - Bug 373255 - Add tooltips providing a documentation for the selected elements in the Select ETypedElement Dialog
+ *
+ *******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.query;
+
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+import org.eclipse.osgi.util.NLS;
+
+/**
+ *
+ * This query returns the tooltip to display for DocumentedElement and
+ * EModelElement
+ *
+ */
+public class ToolTipTextQuery implements IJavaQuery2<EObject, String> {
+
+ /** the URI used by EAnnotation for the documentation for the documentation */
+ public static final String URI_GEN_MODEL = "http://www.eclipse.org/emf/2002/GenModel"; //$NON-NLS-1$
+
+ /** the key to get the documentation in an EAnnotation */
+ public static final String DOCUMENTATION = "documentation"; //$NON-NLS-1$
+
+ /** the String displayed when there is no documentation */
+ public static final String NO_DOCUMENTATION = Messages.ToolTipTextQuery_NoDocumentation;
+
+ public String evaluate(final EObject source,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager) {
+ String result = null;
+ final String documentation = getDocumentation(source);
+ if (documentation != null) {
+ result = NLS.bind(Messages.ToolTipTextQuery_Documentation,
+ documentation);
+ }
+ return result;
+ }
+
+ /**
+ *
+ * @param source
+ * @param parameterValues
+ * @param facetManager
+ * @return the documentation for DocumentedElement and EModelElement
+ */
+ private static String getDocumentation(final EObject source) {
+ String documentation = ""; //$NON-NLS-1$
+ if (source instanceof DocumentedElement) {
+ documentation = ((DocumentedElement) source).getDocumentation();
+ } else if (source instanceof EModelElement) {
+ final EAnnotation eAnnotation = ((EModelElement) source)
+ .getEAnnotation(ToolTipTextQuery.URI_GEN_MODEL);
+ if (eAnnotation != null) {
+ documentation = eAnnotation.getDetails().get(
+ ToolTipTextQuery.DOCUMENTATION);
+ }
+ }
+ return documentation;
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/URIImageQueryImplementationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/URIImageQueryImplementationFactory.java
new file mode 100644
index 00000000000..7f4d3fc7ce7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/query/URIImageQueryImplementationFactory.java
@@ -0,0 +1,39 @@
+/**
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * David Couvrand (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ * Nicolas Rault (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ */
+
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.query;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.querytype.URIImageQueryEvaluator;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.QueryPackage;
+import org.osgi.framework.Bundle;
+
+public class URIImageQueryImplementationFactory implements
+ IQueryImplementationFactory {
+
+ public IQueryImplementation create(final Query query,
+ final Bundle queryBundle, final IDerivedTypedElementManager manager)
+ throws DerivedTypedElementException {
+ return new URIImageQueryEvaluator();
+ }
+
+ public EClass getManagedQueryType() {
+ return QueryPackage.eINSTANCE.getURIImageQuery();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/querytype/URIImageQueryEvaluator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/querytype/URIImageQueryEvaluator.java
new file mode 100644
index 00000000000..846552c83a3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/querytype/URIImageQueryEvaluator.java
@@ -0,0 +1,53 @@
+/**
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * David Couvrand (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ * Nicolas Rault (Soft-Maint) - Bug 402725 - Need a query to get an image from an URI
+ */
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.querytype;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.custompt.URIImage;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_3_0.query.URIImageQuery;
+
+public class URIImageQueryEvaluator implements IQueryImplementation {
+
+ public void setValue(final Query query,
+ final DerivedTypedElement feature, final EObject source,
+ final List<ParameterValue> parameterValues,
+ final Object newValue) throws DerivedTypedElementException {
+ throw new DerivedTypedElementException("Not implemented method"); //$NON-NLS-1$
+ }
+
+ public boolean isCheckResultType() {
+ return false;
+ }
+
+ public Object getValue(final Query query,
+ final DerivedTypedElement feature, final EObject source,
+ final List<ParameterValue> parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ // This cast is safe. The framework should only pass a query
+ // instance of URIImageQuery, because it has been declared in
+ // the method 'getManagedQueryType' that this query
+ // implementation is dedicated to the URIImageQuery type.
+ final String uri = ((URIImageQuery) query).getUri();
+ return new URIImage(uri);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/view/CustomizationsCatalogView.java b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/view/CustomizationsCatalogView.java
new file mode 100644
index 00000000000..72812d77154
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.custom.ui/src/org/eclipse/papyrus/emf/facet/custom/ui/internal/view/CustomizationsCatalogView.java
@@ -0,0 +1,223 @@
+/*******************************************************************************
+ * Copyright (c) 2009-2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ * Nicolas Bros (Mia-Software) - Bug 372732 - [Facet] Rewrite the catalog views for 0.2
+ * Nicolas Bros (Mia-Software) - Bug 372626 - Aggregates
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.custom.ui.internal.view;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IExecutableExtensionFactory;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.ImageProvider;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.jface.viewers.ColumnLabelProvider;
+import org.eclipse.jface.viewers.IOpenListener;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.OpenEvent;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.exported.views.IColumnDescription;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.exported.views.IElementsViewFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationCatalogManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationCatalogManagerFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.internal.exported.CustomizationUtils;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.swt.graphics.Image;
+
+public class CustomizationsCatalogView implements IExecutableExtensionFactory, IOpenListener {
+
+ public Object create() throws CoreException {
+ this.customizationCatalogManager = ICustomizationCatalogManagerFactory.DEFAULT.getOrCreateCustomizationCatalogManager(new ResourceSetImpl());
+ Collection<IColumnDescription> columnDescriptions = new ArrayList<IColumnDescription>();
+ columnDescriptions.add(createNameColumnDescription());
+ columnDescriptions.add(createExtendsColumnDescription());
+ columnDescriptions.add(createDocumentationColumnDescription());
+ return IElementsViewFactory.DEFAULT.createElementsView(columnDescriptions, getContentProvider(), getInput(),
+ Messages.CustomizationsCatalogView_title, ImageProvider.getInstance().getUiCustomIcon(), this);
+ }
+
+ private static final String NAME_COLUMN = "CustomizationsView_NameColumn"; //$NON-NLS-1$
+ private static final String EXTENDS_COLUMN = "CustomizationsView_ExtendsColumn"; //$NON-NLS-1$
+ private static final String DOCUMENTATION_COLUMN = "CustomizationsView_DocumentationColumn"; //$NON-NLS-1$
+
+ private static final int NAME_COLUMN_WIDTH = 300;
+ private static final int EXTENDS_COLUMN_WIDTH = 300;
+ private static final int DOCUMENTATION_COLUMN_WIDTH = 400;
+
+ private ICustomizationCatalogManager customizationCatalogManager;
+
+ private static IColumnDescription createNameColumnDescription() {
+ ColumnLabelProvider columnLabelProvider = new ColumnLabelProvider() {
+ @Override
+ public String getText(final Object element) {
+ String result;
+ if (element instanceof ENamedElement) {
+ ENamedElement namedElement = (ENamedElement) element;
+ result = namedElement.getName();
+ } else {
+ result = "<" + element.getClass().getName() + ">"; //$NON-NLS-1$//$NON-NLS-2$
+ }
+ return result;
+ }
+
+ @Override
+ public Image getImage(final Object element) {
+ return ImageProvider.getInstance().getUiCustomIcon();
+ }
+ };
+ return IElementsViewFactory.DEFAULT.createColumnDescription(Messages.CustomizationsView_nameColumn, CustomizationsCatalogView.NAME_COLUMN,
+ CustomizationsCatalogView.NAME_COLUMN_WIDTH, columnLabelProvider);
+ }
+
+ private static IColumnDescription createExtendsColumnDescription() {
+ ColumnLabelProvider columnLabelProvider = new ColumnLabelProvider() {
+ @Override
+ public String getText(final Object element) {
+ String result = null;
+ if (element instanceof Customization) {
+ Customization customization = (Customization) element;
+ EPackage customizedEPackage = CustomizationUtils
+ .getCustomizedEPackage(customization);
+ if (customizedEPackage != null) {
+ result = customizedEPackage.getNsURI();
+ }
+ } else if (element instanceof Facet) {
+ Facet facet = (Facet) element;
+ EClass extendedMetaclass = facet.getExtendedMetaclass();
+ if (extendedMetaclass != null) {
+ result = extendedMetaclass.getName();
+ }
+ }
+ return result;
+ }
+ };
+ return IElementsViewFactory.DEFAULT.createColumnDescription(Messages.CustomizationsView_extendsColumn,
+ CustomizationsCatalogView.EXTENDS_COLUMN,
+ CustomizationsCatalogView.EXTENDS_COLUMN_WIDTH, columnLabelProvider);
+ }
+
+ private static IColumnDescription createDocumentationColumnDescription() {
+ ColumnLabelProvider columnLabelProvider = new ColumnLabelProvider() {
+ @Override
+ public String getText(final Object element) {
+ String result = null;
+ if (element instanceof DocumentedElement) {
+ DocumentedElement documentedElement = (DocumentedElement) element;
+ result = documentedElement.getDocumentation();
+ }
+ return result;
+ }
+ };
+ return IElementsViewFactory.DEFAULT.createColumnDescription(Messages.CustomizationsView_documentationColumn,
+ CustomizationsCatalogView.DOCUMENTATION_COLUMN, CustomizationsCatalogView.DOCUMENTATION_COLUMN_WIDTH,
+ columnLabelProvider);
+ }
+
+ protected static ITreeContentProvider getContentProvider() {
+ return new ITreeContentProvider() {
+ public Object[] getElements(final Object inputElement) {
+ @SuppressWarnings("unchecked")
+ final Collection<Customization> customizations = (Collection<Customization>) inputElement;
+ return customizations.toArray();
+ }
+
+ public void inputChanged(final Viewer viewer, final Object oldInput,
+ final Object newInput) {
+ // nothing
+ }
+
+ public void dispose() {
+ // nothing
+ }
+
+ public boolean hasChildren(final Object element) {
+ Object[] children = getChildren(element);
+ return children != null && children.length > 0;
+ }
+
+ public Object getParent(final Object element) {
+
+ Object result;
+ if (element instanceof EObject) {
+ EObject eObject = (EObject) element;
+ result = eObject.eContainer();
+ } else {
+ result = null;
+ }
+ return result;
+ }
+
+ public Object[] getChildren(final Object parentElement) {
+ Object[] result;
+ if (parentElement instanceof Customization) {
+ final Customization customization = (Customization) parentElement;
+ final List<Object> contents = new ArrayList<Object>();
+ // Aggregate
+ for (final FacetSet facetSet : customization.getFacetSets()) {
+ if (facetSet instanceof Customization) {
+ final Customization childCustom = (Customization) facetSet;
+ contents.add(childCustom);
+ }
+ }
+ contents.addAll(customization.getEClassifiers());
+ result = contents.toArray();
+ } else {
+ result = new Object[0];
+ }
+ return result;
+ }
+ };
+ }
+
+ protected Object getInput() {
+ return this.customizationCatalogManager.getRegisteredCustomizations();
+ }
+
+ public void open(final OpenEvent event) {
+ // TODO: re-enable once the customization editor is written
+
+ // final MetamodelView metamodelView = (MetamodelView) element;
+ // // open customization in editor
+ // try {
+ // org.eclipse.emf.common.util.URI uri = org.eclipse.emf.common.util.URI
+ // .createURI(metamodelView.getLocation());
+ // if (uri.isPlatformResource()) {
+ // IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(
+ // new Path(uri.toPlatformString(true)));
+ // FileEditorInput fileEditorInput = new FileEditorInput(file);
+ // IDE.openEditor(
+ // PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(),
+ // fileEditorInput, Activator.CUSTOMIZATION_EDITOR_ID, true);
+ // } else {
+ // final URIEditorInput uriEditorInput = new URIEditorInput(
+ // org.eclipse.emf.common.util.URI.createURI(uri.toString()));
+ // IDE.openEditor(
+ // PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(),
+ // uriEditorInput, Activator.CUSTOMIZATION_EDITOR_ID, true);
+ // }
+ //
+ // } catch (final Exception e) {
+ // Activator.logException(e);
+ // }
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.checkstyle
new file mode 100644
index 00000000000..0bd8d65aa47
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.checkstyle
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2011 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Guyomar (Mia-Software) - initial API and implementation
+-->
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+ <local-check-config name="EmfFacet" location="../org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+ <filter name="FilesFromPackage" enabled="true">
+ <filter-data value="src/org/eclipse/emf/facet/efacet/catalog/efacetcatalog"/>
+ <filter-data value="src/org/eclipse/emf/facet/efacet/catalog/v0_2_0"/>
+ </filter>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.classpath
new file mode 100644
index 00000000000..45f024e850e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.project
new file mode 100644
index 00000000000..022c84d4f19
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.efacet.catalog</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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..bd87dd8a73f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,3 @@
+#Wed Sep 21 10:44:03 CEST 2011
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..1602c39b6fa
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,81 @@
+#Tue Oct 25 17:54:12 CEST 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+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.annotationSuperInterface=warning
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.autoboxing=warning
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.deadCode=warning
+org.eclipse.jdt.core.compiler.problem.deprecation=ignore
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=warning
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=warning
+org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=warning
+org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=warning
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=warning
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
+org.eclipse.jdt.core.compiler.problem.nullReference=warning
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=warning
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=warning
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=warning
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=warning
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=warning
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=warning
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=warning
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=warning
+org.eclipse.jdt.core.compiler.problem.unusedImport=warning
+org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
+org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=warning
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..a0e7b66692c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/META-INF/MANIFEST.MF
@@ -0,0 +1,16 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.efacet.catalog;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: %Bundle-Vendor
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore,
+ org.eclipse.papyrus.emf.facet.util.emf.catalog,
+ org.eclipse.papyrus.emf.facet.efacet,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel;bundle-version="0.2.0"
+Bundle-ActivationPolicy: lazy
+Bundle-Activator: org.eclipse.papyrus.emf.facet.efacet.catalog.plugin.Activator
+Export-Package: org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..e44968679e6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,13 @@
+###############################################################################
+# Copyright (c) 2011 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+###############################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.efacet.core
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet eFacet catalog (Deprecated) (Incubation) \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/about.html
new file mode 100644
index 00000000000..05cdf47ada9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/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>January 10, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/build.properties
new file mode 100644
index 00000000000..d37e40ae981
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/build.properties
@@ -0,0 +1,22 @@
+###########################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Design
+# Nicolas Guyomar (Mia-Software) - Implementation - Bug 333553 - The user has not to deal with two files to create a facet
+###########################################################################
+bin.includes = .,\
+ model/,\
+ META-INF/,\
+ plugin.xml,\
+ OSGI-INF/,\
+ about.html
+jars.compile.order = .
+source.. = src/
+output.. = bin/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/model/efacetcatalog.ecore b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/model/efacetcatalog.ecore
new file mode 100644
index 00000000000..de2949db421
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/model/efacetcatalog.ecore
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="efacetcatalog"
+ nsURI="http://www.eclipse.org/papyrus/emf/facet/eFacetCatalog/0.1.incubation" nsPrefix="efacetcatalog">
+ <eClassifiers xsi:type="ecore:EClass" name="QuerySetCatalog" eSuperTypes="platform:/plugin/org.eclipse.papyrus.emf.facet.util.emf.catalog/model/catalog.ecore#//Catalog">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A QuerySetCatalog aims at referencing EMF Facet QuerySet."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="installedQuerySets" upperBound="-1"
+ eType="ecore:EClass platform:/plugin/org.eclipse.papyrus.emf.facet.efacet/model/efacet.ecore#//QuerySet"
+ volatile="true" transient="true" derived="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
+ <details key="validationDelegates" value="self.installedQuerySets = self.installedEntries"/>
+ </eAnnotations>
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="&quot;installedQuerySets&quot; derived link aims at providing a direct access to QuerySet objects in the catalog."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="FacetSetCatalog" eSuperTypes="platform:/plugin/org.eclipse.papyrus.emf.facet.util.emf.catalog/model/catalog.ecore#//Catalog">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A FacetSetCatalog aims at referencing EMF Facet FacetSet."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="installedFacetSets" upperBound="-1"
+ eType="ecore:EClass platform:/plugin/org.eclipse.papyrus.emf.facet.efacet/model/efacet.ecore#//FacetSet"
+ volatile="true" transient="true" derived="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
+ <details key="validationDelegates" value="self.installedFacetSets = self.installedEntries"/>
+ </eAnnotations>
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="&quot;installedFacetSets&quot; derived link aims at providing a direct access to FacetSet objects in the catalog."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/model/efacetcatalog.genmodel b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/model/efacetcatalog.genmodel
new file mode 100644
index 00000000000..e39aeafc4c2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/model/efacetcatalog.genmodel
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText=" Copyright (c) 2011 Mia-Software.&#xD;&#xA; &#xD;&#xA; All rights reserved. This program and the accompanying materials&#xD;&#xA; are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA; which accompanies this distribution, and is available at&#xD;&#xA; http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA; &#xD;&#xA; Contributors:&#xD;&#xA;&#x9;Gregoire Dupe (Mia-Software) - Design&#xD;&#xA;&#x9;Nicolas Guyomar (Mia-Software) - Implementation&#xD;&#xA; "
+ modelDirectory="/org.eclipse.papyrus.emf.facet.efacet.catalog/src" editDirectory="/org.eclipse.papyrus.emf.facet.efacet.catalog.edit/src"
+ editorDirectory="/org.eclipse.papyrus.emf.facet.efacet.catalog.editor/src" modelPluginID="org.eclipse.papyrus.emf.facet.efacet.catalog"
+ modelName="Efacetcatalog" nonNLSMarkers="true" importerID="org.eclipse.emf.importer.ecore"
+ complianceLevel="5.0" copyrightFields="false" editPluginID="org.eclipse.papyrus.emf.facet.efacet.catalog.edit"
+ editorPluginID="org.eclipse.papyrus.emf.facet.efacet.catalog.editor" runtimeVersion="2.6"
+ usedGenPackages="platform:/plugin/org.eclipse.papyrus.emf.facet.util.emf.catalog/model/catalog.genmodel#//catalog platform:/plugin/org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore platform:/plugin/org.eclipse.papyrus.emf.facet.efacet/model/efacet.genmodel#//efacet">
+ <foreignModel>efacetcatalog.ecore</foreignModel>
+ <genPackages prefix="Efacetcatalog" basePackage="org.eclipse.papyrus.emf.facet.efacet.catalog"
+ disposableProviderFactory="true" ecorePackage="efacetcatalog.ecore#/">
+ <genClasses ecoreClass="efacetcatalog.ecore#//QuerySetCatalog">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacetcatalog.ecore#//QuerySetCatalog/installedQuerySets"/>
+ </genClasses>
+ <genClasses ecoreClass="efacetcatalog.ecore#//FacetSetCatalog">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacetcatalog.ecore#//FacetSetCatalog/installedFacetSets"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/plugin.xml
new file mode 100644
index 00000000000..241cca926fd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/plugin.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Nicolas Guyomar (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+-->
+
+<plugin>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri="http://www.eclipse.org/papyrus/emf/facet/eFacetCatalog/0.1.incubation"
+ class="org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogPackage"
+ genModel="model/efacetcatalog.genmodel"/>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/EfacetcatalogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/EfacetcatalogFactory.java
new file mode 100644
index 00000000000..e81ac6b0bb8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/EfacetcatalogFactory.java
@@ -0,0 +1,63 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc --> The <b>Factory</b> for the model. It provides a create method for each
+ * non-abstract class of the model. <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogPackage
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface EfacetcatalogFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EfacetcatalogFactory eINSTANCE = org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.EfacetcatalogFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Query Set Catalog</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Query Set Catalog</em>'.
+ * @generated
+ */
+ QuerySetCatalog createQuerySetCatalog();
+
+ /**
+ * Returns a new object of class '<em>Facet Set Catalog</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Facet Set Catalog</em>'.
+ * @generated
+ */
+ FacetSetCatalog createFacetSetCatalog();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ EfacetcatalogPackage getEfacetcatalogPackage();
+
+} //EfacetcatalogFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/EfacetcatalogPackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/EfacetcatalogPackage.java
new file mode 100644
index 00000000000..bd4dec871aa
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/EfacetcatalogPackage.java
@@ -0,0 +1,266 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage;
+
+/**
+ * <!-- begin-user-doc --> The <b>Package</b> for the model. It contains accessors for the meta
+ * objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogFactory
+ * @model kind="package"
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface EfacetcatalogPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "efacetcatalog"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/eFacetCatalog/0.1.incubation"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "efacetcatalog"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EfacetcatalogPackage eINSTANCE = org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.EfacetcatalogPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.QuerySetCatalogImpl <em>Query Set Catalog</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.QuerySetCatalogImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.EfacetcatalogPackageImpl#getQuerySetCatalog()
+ * @generated
+ */
+ int QUERY_SET_CATALOG = 0;
+
+ /**
+ * The feature id for the '<em><b>Installed Entries</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int QUERY_SET_CATALOG__INSTALLED_ENTRIES = CatalogPackage.CATALOG__INSTALLED_ENTRIES;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int QUERY_SET_CATALOG__NAME = CatalogPackage.CATALOG__NAME;
+
+ /**
+ * The feature id for the '<em><b>Installed Query Sets</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int QUERY_SET_CATALOG__INSTALLED_QUERY_SETS = CatalogPackage.CATALOG_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Query Set Catalog</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int QUERY_SET_CATALOG_FEATURE_COUNT = CatalogPackage.CATALOG_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.FacetSetCatalogImpl <em>Facet Set Catalog</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.FacetSetCatalogImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.EfacetcatalogPackageImpl#getFacetSetCatalog()
+ * @generated
+ */
+ int FACET_SET_CATALOG = 1;
+
+ /**
+ * The feature id for the '<em><b>Installed Entries</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET_CATALOG__INSTALLED_ENTRIES = CatalogPackage.CATALOG__INSTALLED_ENTRIES;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET_CATALOG__NAME = CatalogPackage.CATALOG__NAME;
+
+ /**
+ * The feature id for the '<em><b>Installed Facet Sets</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET_CATALOG__INSTALLED_FACET_SETS = CatalogPackage.CATALOG_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Facet Set Catalog</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET_CATALOG_FEATURE_COUNT = CatalogPackage.CATALOG_FEATURE_COUNT + 1;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.QuerySetCatalog <em>Query Set Catalog</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Query Set Catalog</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.QuerySetCatalog
+ * @generated
+ */
+ EClass getQuerySetCatalog();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.QuerySetCatalog#getInstalledQuerySets <em>Installed Query Sets</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Installed Query Sets</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.QuerySetCatalog#getInstalledQuerySets()
+ * @see #getQuerySetCatalog()
+ * @generated
+ */
+ EReference getQuerySetCatalog_InstalledQuerySets();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.FacetSetCatalog <em>Facet Set Catalog</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Facet Set Catalog</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.FacetSetCatalog
+ * @generated
+ */
+ EClass getFacetSetCatalog();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.FacetSetCatalog#getInstalledFacetSets <em>Installed Facet Sets</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Installed Facet Sets</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.FacetSetCatalog#getInstalledFacetSets()
+ * @see #getFacetSetCatalog()
+ * @generated
+ */
+ EReference getFacetSetCatalog_InstalledFacetSets();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ EfacetcatalogFactory getEfacetcatalogFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.QuerySetCatalogImpl <em>Query Set Catalog</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.QuerySetCatalogImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.EfacetcatalogPackageImpl#getQuerySetCatalog()
+ * @generated
+ */
+ EClass QUERY_SET_CATALOG = eINSTANCE.getQuerySetCatalog();
+
+ /**
+ * The meta object literal for the '<em><b>Installed Query Sets</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference QUERY_SET_CATALOG__INSTALLED_QUERY_SETS = eINSTANCE.getQuerySetCatalog_InstalledQuerySets();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.FacetSetCatalogImpl <em>Facet Set Catalog</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.FacetSetCatalogImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.EfacetcatalogPackageImpl#getFacetSetCatalog()
+ * @generated
+ */
+ EClass FACET_SET_CATALOG = eINSTANCE.getFacetSetCatalog();
+
+ /**
+ * The meta object literal for the '<em><b>Installed Facet Sets</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference FACET_SET_CATALOG__INSTALLED_FACET_SETS = eINSTANCE.getFacetSetCatalog_InstalledFacetSets();
+
+ }
+
+} //EfacetcatalogPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/FacetSetCatalog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/FacetSetCatalog.java
new file mode 100644
index 00000000000..1a9900205b9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/FacetSetCatalog.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Facet Set Catalog</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc --> A FacetSetCatalog aims at referencing EMF Facet FacetSet. <!--
+ * end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.FacetSetCatalog#getInstalledFacetSets
+ * <em>Installed Facet Sets</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogPackage#getFacetSetCatalog()
+ * @model
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface FacetSetCatalog extends Catalog {
+ /**
+ * Returns the value of the '<em><b>Installed Facet Sets</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.efacet.FacetSet}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * "installedFacetSets" derived link aims at providing a direct access to FacetSet objects in the catalog.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Installed Facet Sets</em>' reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogPackage#getFacetSetCatalog_InstalledFacetSets()
+ * @model transient="true" volatile="true" derived="true"
+ * annotation="http://www.eclipse.org/emf/2002/Ecore validationDelegates='self.installedFacetSets = self.installedEntries'"
+ * @generated
+ */
+ EList<FacetSet> getInstalledFacetSets();
+
+} // FacetSetCatalog
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/QuerySetCatalog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/QuerySetCatalog.java
new file mode 100644
index 00000000000..7c0fec44deb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/QuerySetCatalog.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.papyrus.emf.facet.efacet.QuerySet;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Query Set Catalog</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc --> A QuerySetCatalog aims at referencing EMF Facet QuerySet. <!--
+ * end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.QuerySetCatalog#getInstalledQuerySets
+ * <em>Installed Query Sets</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogPackage#getQuerySetCatalog()
+ * @model
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface QuerySetCatalog extends Catalog {
+ /**
+ * Returns the value of the '<em><b>Installed Query Sets</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.efacet.QuerySet}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * "installedQuerySets" derived link aims at providing a direct access to QuerySet objects in the catalog.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Installed Query Sets</em>' reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogPackage#getQuerySetCatalog_InstalledQuerySets()
+ * @model transient="true" volatile="true" derived="true"
+ * annotation="http://www.eclipse.org/emf/2002/Ecore validationDelegates='self.installedQuerySets = self.installedEntries'"
+ * @generated
+ */
+ EList<QuerySet> getInstalledQuerySets();
+
+} // QuerySetCatalog
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/impl/EfacetcatalogFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/impl/EfacetcatalogFactoryImpl.java
new file mode 100644
index 00000000000..ed687be99cf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/impl/EfacetcatalogFactoryImpl.java
@@ -0,0 +1,118 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogFactory;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogPackage;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.FacetSetCatalog;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.QuerySetCatalog;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model <b>Factory</b>. <!-- end-user-doc -->
+ *
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class EfacetcatalogFactoryImpl extends EFactoryImpl implements EfacetcatalogFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static EfacetcatalogFactory init() {
+ try {
+ EfacetcatalogFactory theEfacetcatalogFactory = (EfacetcatalogFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/emf/facet/eFacetCatalog/0.1.incubation"); //$NON-NLS-1$
+ if (theEfacetcatalogFactory != null) {
+ return theEfacetcatalogFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new EfacetcatalogFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EfacetcatalogFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(final EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case EfacetcatalogPackage.QUERY_SET_CATALOG: return createQuerySetCatalog();
+ case EfacetcatalogPackage.FACET_SET_CATALOG: return createFacetSetCatalog();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public QuerySetCatalog createQuerySetCatalog() {
+ QuerySetCatalogImpl querySetCatalog = new QuerySetCatalogImpl();
+ return querySetCatalog;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FacetSetCatalog createFacetSetCatalog() {
+ FacetSetCatalogImpl facetSetCatalog = new FacetSetCatalogImpl();
+ return facetSetCatalog;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EfacetcatalogPackage getEfacetcatalogPackage() {
+ return (EfacetcatalogPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static EfacetcatalogPackage getPackage() {
+ return EfacetcatalogPackage.eINSTANCE;
+ }
+
+} //EfacetcatalogFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/impl/EfacetcatalogPackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/impl/EfacetcatalogPackageImpl.java
new file mode 100644
index 00000000000..d2ed820c258
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/impl/EfacetcatalogPackageImpl.java
@@ -0,0 +1,257 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogFactory;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogPackage;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.FacetSetCatalog;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.QuerySetCatalog;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model <b>Package</b>. <!-- end-user-doc -->
+ *
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class EfacetcatalogPackageImpl extends EPackageImpl implements EfacetcatalogPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass querySetCatalogEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass facetSetCatalogEClass = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private EfacetcatalogPackageImpl() {
+ super(eNS_URI, EfacetcatalogFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 EfacetcatalogPackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static EfacetcatalogPackage init() {
+ if (isInited) return (EfacetcatalogPackage)EPackage.Registry.INSTANCE.getEPackage(EfacetcatalogPackage.eNS_URI);
+
+ // Obtain or create and register package
+ EfacetcatalogPackageImpl theEfacetcatalogPackage = (EfacetcatalogPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof EfacetcatalogPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new EfacetcatalogPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ CatalogPackage.eINSTANCE.eClass();
+ EFacetPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theEfacetcatalogPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theEfacetcatalogPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theEfacetcatalogPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(EfacetcatalogPackage.eNS_URI, theEfacetcatalogPackage);
+ return theEfacetcatalogPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getQuerySetCatalog() {
+ return querySetCatalogEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getQuerySetCatalog_InstalledQuerySets() {
+ return (EReference)querySetCatalogEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFacetSetCatalog() {
+ return facetSetCatalogEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getFacetSetCatalog_InstalledFacetSets() {
+ return (EReference)facetSetCatalogEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EfacetcatalogFactory getEfacetcatalogFactory() {
+ return (EfacetcatalogFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ querySetCatalogEClass = createEClass(QUERY_SET_CATALOG);
+ createEReference(querySetCatalogEClass, QUERY_SET_CATALOG__INSTALLED_QUERY_SETS);
+
+ facetSetCatalogEClass = createEClass(FACET_SET_CATALOG);
+ createEReference(facetSetCatalogEClass, FACET_SET_CATALOG__INSTALLED_FACET_SETS);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ CatalogPackage theCatalogPackage = (CatalogPackage)EPackage.Registry.INSTANCE.getEPackage(CatalogPackage.eNS_URI);
+ EFacetPackage theEFacetPackage = (EFacetPackage)EPackage.Registry.INSTANCE.getEPackage(EFacetPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ querySetCatalogEClass.getESuperTypes().add(theCatalogPackage.getCatalog());
+ facetSetCatalogEClass.getESuperTypes().add(theCatalogPackage.getCatalog());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(querySetCatalogEClass, QuerySetCatalog.class, "QuerySetCatalog", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getQuerySetCatalog_InstalledQuerySets(), theEFacetPackage.getQuerySet(), null, "installedQuerySets", null, 0, -1, QuerySetCatalog.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(facetSetCatalogEClass, FacetSetCatalog.class, "FacetSetCatalog", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getFacetSetCatalog_InstalledFacetSets(), theEFacetPackage.getFacetSet(), null, "installedFacetSets", null, 0, -1, FacetSetCatalog.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http://www.eclipse.org/emf/2002/Ecore
+ createEcoreAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>http://www.eclipse.org/emf/2002/Ecore</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createEcoreAnnotations() {
+ String source = "http://www.eclipse.org/emf/2002/Ecore"; //$NON-NLS-1$
+ addAnnotation
+ (getQuerySetCatalog_InstalledQuerySets(),
+ source,
+ new String[] {
+ "validationDelegates", "self.installedQuerySets = self.installedEntries" //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ addAnnotation
+ (getFacetSetCatalog_InstalledFacetSets(),
+ source,
+ new String[] {
+ "validationDelegates", "self.installedFacetSets = self.installedEntries" //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ }
+
+} //EfacetcatalogPackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/impl/FacetSetCatalogImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/impl/FacetSetCatalogImpl.java
new file mode 100644
index 00000000000..268566016f4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/impl/FacetSetCatalogImpl.java
@@ -0,0 +1,248 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectEList;
+import org.eclipse.emf.ecore.util.EObjectEList.Unsettable;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogPackage;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.FacetSetCatalog;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Facet Set Catalog</b></em>
+ * '. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.FacetSetCatalogImpl#getInstalledEntries
+ * <em>Installed Entries</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.FacetSetCatalogImpl#getName
+ * <em>Name</em>}</li>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.FacetSetCatalogImpl#getInstalledFacetSets
+ * <em>Installed Facet Sets</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class FacetSetCatalogImpl extends EObjectImpl implements FacetSetCatalog {
+ /**
+ * The cached value of the '{@link #getInstalledEntries() <em>Installed Entries</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getInstalledEntries()
+ * @generated
+ * @ordered
+ */
+ protected EList<EObject> installedEntries;
+ /**
+ * 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;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetSetCatalogImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EfacetcatalogPackage.Literals.FACET_SET_CATALOG;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<EObject> getInstalledEntries() {
+ if (installedEntries == null) {
+ installedEntries = new EObjectResolvingEList<EObject>(EObject.class, this, EfacetcatalogPackage.FACET_SET_CATALOG__INSTALLED_ENTRIES);
+ }
+ return installedEntries;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(final String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EfacetcatalogPackage.FACET_SET_CATALOG__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public EList<FacetSet> getInstalledFacetSets() {
+ Unsettable<FacetSet> unsettableList = new EObjectEList.Unsettable<FacetSet>(
+ FacetSet.class, this, EfacetcatalogPackage.eINSTANCE
+ .getFacetSetCatalog_InstalledFacetSets().getFeatureID());
+ for (Object object : this.installedEntries) {
+ if (object instanceof FacetSet) {
+ FacetSet querySetImpl = (FacetSet) object;
+ unsettableList.add(querySetImpl);
+ }
+ }
+ return unsettableList;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EfacetcatalogPackage.FACET_SET_CATALOG__INSTALLED_ENTRIES:
+ return getInstalledEntries();
+ case EfacetcatalogPackage.FACET_SET_CATALOG__NAME:
+ return getName();
+ case EfacetcatalogPackage.FACET_SET_CATALOG__INSTALLED_FACET_SETS:
+ return getInstalledFacetSets();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EfacetcatalogPackage.FACET_SET_CATALOG__INSTALLED_ENTRIES:
+ getInstalledEntries().clear();
+ getInstalledEntries().addAll((Collection<? extends EObject>)newValue);
+ return;
+ case EfacetcatalogPackage.FACET_SET_CATALOG__NAME:
+ setName((String)newValue);
+ return;
+ case EfacetcatalogPackage.FACET_SET_CATALOG__INSTALLED_FACET_SETS:
+ getInstalledFacetSets().clear();
+ getInstalledFacetSets().addAll((Collection<? extends FacetSet>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EfacetcatalogPackage.FACET_SET_CATALOG__INSTALLED_ENTRIES:
+ getInstalledEntries().clear();
+ return;
+ case EfacetcatalogPackage.FACET_SET_CATALOG__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ case EfacetcatalogPackage.FACET_SET_CATALOG__INSTALLED_FACET_SETS:
+ getInstalledFacetSets().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EfacetcatalogPackage.FACET_SET_CATALOG__INSTALLED_ENTRIES:
+ return installedEntries != null && !installedEntries.isEmpty();
+ case EfacetcatalogPackage.FACET_SET_CATALOG__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case EfacetcatalogPackage.FACET_SET_CATALOG__INSTALLED_FACET_SETS:
+ return !getInstalledFacetSets().isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: "); //$NON-NLS-1$
+ result.append(name);
+ result.append(')');
+ return result.toString();
+ }
+
+} //FacetSetCatalogImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/impl/QuerySetCatalogImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/impl/QuerySetCatalogImpl.java
new file mode 100644
index 00000000000..56716853ef4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/impl/QuerySetCatalogImpl.java
@@ -0,0 +1,248 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectEList;
+import org.eclipse.emf.ecore.util.EObjectEList.Unsettable;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.papyrus.emf.facet.efacet.QuerySet;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogPackage;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.QuerySetCatalog;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Query Set Catalog</b></em>
+ * '. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.QuerySetCatalogImpl#getInstalledEntries
+ * <em>Installed Entries</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.QuerySetCatalogImpl#getName
+ * <em>Name</em>}</li>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.impl.QuerySetCatalogImpl#getInstalledQuerySets
+ * <em>Installed Query Sets</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class QuerySetCatalogImpl extends EObjectImpl implements QuerySetCatalog {
+ /**
+ * The cached value of the '{@link #getInstalledEntries() <em>Installed Entries</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getInstalledEntries()
+ * @generated
+ * @ordered
+ */
+ protected EList<EObject> installedEntries;
+ /**
+ * 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;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected QuerySetCatalogImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EfacetcatalogPackage.Literals.QUERY_SET_CATALOG;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<EObject> getInstalledEntries() {
+ if (installedEntries == null) {
+ installedEntries = new EObjectResolvingEList<EObject>(EObject.class, this, EfacetcatalogPackage.QUERY_SET_CATALOG__INSTALLED_ENTRIES);
+ }
+ return installedEntries;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(final String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EfacetcatalogPackage.QUERY_SET_CATALOG__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public EList<QuerySet> getInstalledQuerySets() {
+ Unsettable<QuerySet> unsettableList = new EObjectEList.Unsettable<QuerySet>(
+ QuerySet.class, this, EfacetcatalogPackage.eINSTANCE
+ .getQuerySetCatalog_InstalledQuerySets().getFeatureID());
+ for (Object object : this.getInstalledEntries()) {
+ if (object instanceof QuerySet) {
+ QuerySet querySetImpl = (QuerySet) object;
+ unsettableList.add(querySetImpl);
+ }
+ }
+ return unsettableList;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EfacetcatalogPackage.QUERY_SET_CATALOG__INSTALLED_ENTRIES:
+ return getInstalledEntries();
+ case EfacetcatalogPackage.QUERY_SET_CATALOG__NAME:
+ return getName();
+ case EfacetcatalogPackage.QUERY_SET_CATALOG__INSTALLED_QUERY_SETS:
+ return getInstalledQuerySets();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EfacetcatalogPackage.QUERY_SET_CATALOG__INSTALLED_ENTRIES:
+ getInstalledEntries().clear();
+ getInstalledEntries().addAll((Collection<? extends EObject>)newValue);
+ return;
+ case EfacetcatalogPackage.QUERY_SET_CATALOG__NAME:
+ setName((String)newValue);
+ return;
+ case EfacetcatalogPackage.QUERY_SET_CATALOG__INSTALLED_QUERY_SETS:
+ getInstalledQuerySets().clear();
+ getInstalledQuerySets().addAll((Collection<? extends QuerySet>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EfacetcatalogPackage.QUERY_SET_CATALOG__INSTALLED_ENTRIES:
+ getInstalledEntries().clear();
+ return;
+ case EfacetcatalogPackage.QUERY_SET_CATALOG__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ case EfacetcatalogPackage.QUERY_SET_CATALOG__INSTALLED_QUERY_SETS:
+ getInstalledQuerySets().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EfacetcatalogPackage.QUERY_SET_CATALOG__INSTALLED_ENTRIES:
+ return installedEntries != null && !installedEntries.isEmpty();
+ case EfacetcatalogPackage.QUERY_SET_CATALOG__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case EfacetcatalogPackage.QUERY_SET_CATALOG__INSTALLED_QUERY_SETS:
+ return !getInstalledQuerySets().isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: "); //$NON-NLS-1$
+ result.append(name);
+ result.append(')');
+ return result.toString();
+ }
+
+} //QuerySetCatalogImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/util/EfacetcatalogAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/util/EfacetcatalogAdapterFactory.java
new file mode 100644
index 00000000000..64d1399c3e0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/util/EfacetcatalogAdapterFactory.java
@@ -0,0 +1,168 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogPackage;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.FacetSetCatalog;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.QuerySetCatalog;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog;
+
+/**
+ * <!-- begin-user-doc --> The <b>Adapter Factory</b> for the model. It provides an adapter
+ * <code>createXXX</code> method for each class of the model. <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogPackage
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class EfacetcatalogAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static EfacetcatalogPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EfacetcatalogAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = EfacetcatalogPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(final Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EfacetcatalogSwitch<Adapter> modelSwitch =
+ new EfacetcatalogSwitch<Adapter>() {
+ @Override
+ public Adapter caseQuerySetCatalog(final QuerySetCatalog object) {
+ return createQuerySetCatalogAdapter();
+ }
+ @Override
+ public Adapter caseFacetSetCatalog(final FacetSetCatalog object) {
+ return createFacetSetCatalogAdapter();
+ }
+ @Override
+ public Adapter caseCatalog(final Catalog object) {
+ return createCatalogAdapter();
+ }
+ @Override
+ public Adapter defaultCase(final EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(final Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.QuerySetCatalog <em>Query Set Catalog</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.emf.facet.efacet.catalog.efacetcatalog.QuerySetCatalog
+ * @generated
+ */
+ public Adapter createQuerySetCatalogAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.FacetSetCatalog <em>Facet Set Catalog</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.emf.facet.efacet.catalog.efacetcatalog.FacetSetCatalog
+ * @generated
+ */
+ public Adapter createFacetSetCatalogAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog <em>Catalog</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.emf.facet.util.emf.catalog.Catalog
+ * @generated
+ */
+ public Adapter createCatalogAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //EfacetcatalogAdapterFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/util/EfacetcatalogSwitch.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/util/EfacetcatalogSwitch.java
new file mode 100644
index 00000000000..8541cc4e5cb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/efacetcatalog/util/EfacetcatalogSwitch.java
@@ -0,0 +1,176 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogPackage;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.FacetSetCatalog;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.QuerySetCatalog;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog;
+
+/**
+ * <!-- begin-user-doc --> The <b>Switch</b> for the model's inheritance hierarchy. It supports the
+ * call {@link #doSwitch(EObject) doSwitch(object)} to invoke the <code>caseXXX</code> method for
+ * each class of the model, starting with the actual class of the object and proceeding up the
+ * inheritance hierarchy until a non-null result is returned, which is the result of the switch.
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogPackage
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class EfacetcatalogSwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static EfacetcatalogPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EfacetcatalogSwitch() {
+ if (modelPackage == null) {
+ modelPackage = EfacetcatalogPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(final EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(final EClass theEClass, final EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(final int classifierID, final EObject theEObject) {
+ switch (classifierID) {
+ case EfacetcatalogPackage.QUERY_SET_CATALOG: {
+ QuerySetCatalog querySetCatalog = (QuerySetCatalog)theEObject;
+ T result = caseQuerySetCatalog(querySetCatalog);
+ if (result == null) result = caseCatalog(querySetCatalog);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EfacetcatalogPackage.FACET_SET_CATALOG: {
+ FacetSetCatalog facetSetCatalog = (FacetSetCatalog)theEObject;
+ T result = caseFacetSetCatalog(facetSetCatalog);
+ if (result == null) result = caseCatalog(facetSetCatalog);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Query Set Catalog</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>Query Set Catalog</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseQuerySetCatalog(final QuerySetCatalog object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Facet Set Catalog</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>Facet Set Catalog</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFacetSetCatalog(final FacetSetCatalog object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Catalog</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>Catalog</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCatalog(final Catalog object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(final EObject object) {
+ return null;
+ }
+
+} //EfacetcatalogSwitch
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/plugin/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/plugin/Activator.java
new file mode 100644
index 00000000000..7a1a1c40fd1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.catalog/src/org/eclipse/papyrus/emf/facet/efacet/catalog/plugin/Activator.java
@@ -0,0 +1,45 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ */
+package org.eclipse.papyrus.emf.facet.efacet.catalog.plugin;
+
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+/**
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class Activator implements BundleActivator {
+
+ private static BundleContext context;
+
+ static BundleContext getContext() {
+ return Activator.context;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
+ */
+ public void start(final BundleContext bundleContext) throws Exception {
+ Activator.context = bundleContext;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
+ */
+ public void stop(final BundleContext bundleContext) throws Exception {
+ Activator.context = null;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.checkstyle
new file mode 100644
index 00000000000..f49f0db3e06
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.checkstyle
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+ <local-check-config name="EmfFacet" location="../org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.classpath
new file mode 100644
index 00000000000..45f024e850e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.pmd b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.pmd
new file mode 100644
index 00000000000..e8d3e27588f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.pmd
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<pmd>
+ <useProjectRuleSet>true</useProjectRuleSet>
+ <ruleSetFile>../org.eclipse.papyrus.emf.facet.archi.tech.rules/pmd/ruleset.xml</ruleSetFile>
+ <includeDerivedFiles>false</includeDerivedFiles>
+ <violationsAsErrors>true</violationsAsErrors>
+</pmd>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.project
new file mode 100644
index 00000000000..36917046a94
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.project
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.efacet.core</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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ <nature>net.sourceforge.pmd.eclipse.plugin.pmdNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..2f4820bebf6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,3 @@
+eclipse.preferences.version=1
+encoding//src/org/eclipse/papyrus/emf/facet/efacet/core/internal/messages.properties=ISO-8859-1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..060c5ee3d2e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,11 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+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.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..9e02f011c47
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/META-INF/MANIFEST.MF
@@ -0,0 +1,26 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.efacet.core;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.efacet.core.internal.Activator
+Require-Bundle: org.eclipse.core.runtime;bundle-version="3.6.0",
+ org.eclipse.emf.ecore;bundle-version="2.6.0",
+ org.eclipse.papyrus.emf.facet.efacet.catalog;bundle-version="0.1.0";visibility:=reexport,
+ org.eclipse.papyrus.emf.facet.util.emf.core;bundle-version="0.1.0";visibility:=reexport,
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.1.0",
+ org.eclipse.emf.edit;bundle-version="2.6.0",
+ org.eclipse.papyrus.emf.facet.efacet.metamodel;bundle-version="0.2.0",
+ org.eclipse.core.resources;bundle-version="3.6.0",
+ org.eclipse.papyrus.emf.facet.efacet;bundle-version="0.2.0";visibility:=reexport,
+ org.eclipse.papyrus.emf.facet.util.emf.ui;bundle-version="0.3.0",
+ org.eclipse.papyrus.emf.facet.util.pde.core;bundle-version="0.4.0"
+Bundle-ActivationPolicy: lazy
+Bundle-Vendor: %Bundle-Vendor
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Export-Package: org.eclipse.papyrus.emf.facet.efacet.core,
+ org.eclipse.papyrus.emf.facet.efacet.core.exception,
+ org.eclipse.papyrus.emf.facet.efacet.core.internal.exported,
+ org.eclipse.papyrus.emf.facet.efacet.core.internal.incubatingapi,
+ org.eclipse.papyrus.emf.facet.efacet.core.internal.query,
+ org.eclipse.papyrus.emf.facet.efacet.core.query
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..62fbd3285cc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,17 @@
+###########################################################################
+# Copyright (c) 2011, 2012 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+# Nicolas Guyomar (Mia-Software) - Bug 339899 - everything must be externalized before UI freeze
+###########################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.efacet.core
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Core (Incubation)
+queryEvaluatorRegistration.extension-point.name = QueryEvaluatorRegistration
+derivedTypedElementImplementationRegistration.extension-point.name = Derived Typed Element Evaluator Registration \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/about.html
new file mode 100644
index 00000000000..05cdf47ada9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/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>January 10, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/build.properties
new file mode 100644
index 00000000000..f7d2767d4da
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/build.properties
@@ -0,0 +1,21 @@
+###########################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+# Nicolas Guyomar (Mia-Software) - Bug 339899 - everything must be externalized before UI freeze
+###########################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ OSGI-INF/,\
+ about.html,\
+ plugin.xml,\
+ schema/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/plugin.xml
new file mode 100644
index 00000000000..95cd93807bb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/plugin.xml
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+
+<!--
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Nicolas Guyomar (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ Nicolas Guyomar (Mia-Software) - Bug 339899 - everything must be externalized before UI freeze
+ Nicolas Bros (Mia-Software) - Bug 362191 - [Restructuring] Query mechanism for eFacet2
+ Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List<ETypedElement>, List<FacetSet>)
+ Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ -->
+
+<plugin>
+ <extension-point id="org.eclipse.papyrus.emf.facet.efacet.core.query.evaluatorregistration" name="%queryEvaluatorRegistration.extension-point.name" schema="schema/org.eclipse.papyrus.emf.facet.efacet.core.query.evaluatorregistration.exsd"/>
+ <extension-point id="derivedTypedElementImplementationRegistration" name="%derivedTypedElementImplementationRegistration.extension-point.name" schema="schema/derivedTypedElementImplementationRegistration.exsd"/>
+ <extension-point id="queryImplementationRegistration" name="EMF Facet Query implementation registration" schema="schema/queryImplementationRegistration.exsd"/>
+ <extension-point id="org.eclipse.papyrus.emf.facet.efacet.core.internal.resolver" name="Resolver" schema="schema/internal.resolver.exsd"/>
+
+ <extension point="org.eclipse.papyrus.emf.facet.util.emf.core.catalogmanager">
+ <catalog class="org.eclipse.papyrus.emf.facet.efacet.core.internal.catalog.EFacetCatalogManager"/>
+ <catalog class="org.eclipse.papyrus.emf.facet.efacet.core.internal.catalog.EFacetCatalogManager2"/>
+ </extension>
+
+ <extension point="org.eclipse.papyrus.emf.facet.efacet.core.queryImplementationRegistration">
+ <queryImplementationRegistration class="org.eclipse.papyrus.emf.facet.efacet.core.internal.query.NavigationQueryImplementationFactory"/>
+ <queryImplementationRegistration class="org.eclipse.papyrus.emf.facet.efacet.core.internal.query.IsOneOfQueryImplementationFactory"/>
+ <queryImplementationRegistration class="org.eclipse.papyrus.emf.facet.efacet.core.internal.query.StringLiteralQueryImplementationFactory"/>
+ <queryImplementationRegistration class="org.eclipse.papyrus.emf.facet.efacet.core.internal.query.FalseLiteralQueryImplementationFactory"/>
+ <queryImplementationRegistration class="org.eclipse.papyrus.emf.facet.efacet.core.internal.query.TrueLiteralQueryImplementationFactory"/>
+ <queryImplementationRegistration class="org.eclipse.papyrus.emf.facet.efacet.core.internal.query.NullLiteralQueryImplementationFactory"/>
+ <queryImplementationRegistration class="org.eclipse.papyrus.emf.facet.efacet.core.internal.query.EObjectLiteralQueryImplementationFactory"/>
+ <queryImplementationRegistration class="org.eclipse.papyrus.emf.facet.efacet.core.internal.query.FloatLiteralQueryImplementationFactory"/>
+ <queryImplementationRegistration class="org.eclipse.papyrus.emf.facet.efacet.core.internal.query.IntegerLiteralQueryImplementationFactory"/>
+ <queryImplementationRegistration class="org.eclipse.papyrus.emf.facet.efacet.core.internal.query.OperationCallQueryImplementationFactory"/>
+ </extension>
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/schema/derivedTypedElementImplementationRegistration.exsd b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/schema/derivedTypedElementImplementationRegistration.exsd
new file mode 100644
index 00000000000..ee936a0449b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/schema/derivedTypedElementImplementationRegistration.exsd
@@ -0,0 +1,127 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.papyrus.emf.facet.efacet.core" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appinfo>
+ <meta.schema plugin="org.eclipse.papyrus.emf.facet.efacet.core" id="derivedTypedElementImplementationRegistration" name="Derived Typed Element Evaluator Registration"/>
+ </appinfo>
+ <documentation>
+ Allow the registration of an IderivedTypedElementImplementationFactory, that instantiates IDerivedTypedElementImplementation that conform to the EMF Facet framework.
+The IDerivedTypedElementImplementation provides an implementation for a given type of queries (e.g. Java queries, OCL queries, ...)
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appinfo>
+ <meta.element deprecated="true" replacement="queryImplementationRegistration" />
+ </appinfo>
+ </annotation>
+ <complexType>
+ <sequence>
+ <element ref="derivedTypedElementImplementationRegistration" minOccurs="1" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute translatable="true"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="derivedTypedElementImplementationRegistration">
+ <annotation>
+ <appinfo>
+ <meta.element deprecated="true"/>
+ </appinfo>
+ </annotation>
+ <complexType>
+ <attribute name="class" type="string" use="required">
+ <annotation>
+ <documentation>
+ Provides an implementation for a IDerivedTypedElementImplementationFactory, which instantiates IDerivedTypedElementImplementation for a given type of queries.
+ </documentation>
+ <appinfo>
+ <meta.attribute kind="java" basedOn=":org.eclipse.papyrus.emf.facet.efacet.core.query.IDerivedTypedElementImplementationFactory"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="since"/>
+ </appinfo>
+ <documentation>
+ 0.2.0
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="examples"/>
+ </appinfo>
+ <documentation>
+ &lt;pre&gt;
+ &lt;extension point=&quot;org.eclipse.papyrus.emf.facet.efacet.core.derivedTypedElementImplementationRegistration&quot;&gt;
+ &lt;derivedTypedElementImplementationRegistration
+ class=&quot;org.eclipse.papyrus.emf.facet.efacet.core.tests.internal.DummyQueryEvaluatorFactory&quot;&gt;
+ &lt;/derivedTypedElementImplementationRegistration&gt;
+ &lt;/extension&gt;
+&lt;/pre&gt;
+ </documentation>
+ </annotation>
+
+
+ <annotation>
+ <appinfo>
+ <meta.section type="implementation"/>
+ </appinfo>
+ <documentation>
+ &lt;p&gt;
+See plug-ins:
+&lt;ul&gt;
+&lt;li&gt;org.eclipse.papyrus.emf.facet.query.java.core
+&lt;/ul&gt;
+&lt;/p&gt;
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="copyright"/>
+ </appinfo>
+ <documentation>
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Bros (Mia-Software) - Bug 362191 - [Restructuring] Query mechanism for eFacet2
+ </documentation>
+ </annotation>
+
+</schema>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/schema/internal.resolver.exsd b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/schema/internal.resolver.exsd
new file mode 100644
index 00000000000..bf42c96a2a6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/schema/internal.resolver.exsd
@@ -0,0 +1,108 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.papyrus.emf.facet.efacet.core" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appinfo>
+ <meta.schema plugin="org.eclipse.papyrus.emf.facet.efacet.core" id="internal.resolver" name="Resolver"/>
+ </appinfo>
+ <documentation>
+ This is an internal extension point. It must only be used by EMF Facet&apos;s components.
+
+This extension allows to plug specific behavior in to the facet components. It has been created avoid to have dependences from the main EMF Facet components to the aggregate components.
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appinfo>
+ <meta.element />
+ </appinfo>
+ </annotation>
+ <complexType>
+ <sequence>
+ <element ref="resolver"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute translatable="true"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="resolver">
+ <complexType>
+ <attribute name="class" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute kind="java" basedOn=":org.eclipse.papyrus.emf.facet.efacet.core.internal.exported.IResolver"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="since"/>
+ </appinfo>
+ <documentation>
+ 0.2
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="examples"/>
+ </appinfo>
+ <documentation>
+ &lt;extension
+ point=&quot;org.eclipse.papyrus.emf.facet.efacet.core.internal.resolver&quot;&gt;
+ &lt;resolver
+ class=&quot;org.eclipse.papyrus.emf.facet.aggregate.metamodel.notgenerated.internal.Resolver&quot;&gt;
+ &lt;/resolver&gt;
+ &lt;/extension&gt;
+ </documentation>
+ </annotation>
+
+
+
+ <annotation>
+ <appinfo>
+ <meta.section type="copyright"/>
+ </appinfo>
+ <documentation>
+ Copyright (c) 2012 CEA-LIST.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List&lt;ETypedElement&gt;, List&lt;FacetSet&gt;)
+ </documentation>
+ </annotation>
+
+</schema>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/schema/org.eclipse.emf.facet.efacet.core.query.evaluatorregistration.exsd b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/schema/org.eclipse.emf.facet.efacet.core.query.evaluatorregistration.exsd
new file mode 100644
index 00000000000..847dcf985ab
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/schema/org.eclipse.emf.facet.efacet.core.query.evaluatorregistration.exsd
@@ -0,0 +1,95 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.papyrus.emf.facet.efacet.core.query.evaluatorregistration" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appinfo>
+ <meta.schema plugin="org.eclipse.papyrus.emf.facet.efacet.core.query.evaluatorregistration" id="evaluatorregistration" name="QueryEvaluatorRegistration"/>
+ </appinfo>
+ <documentation>
+ Allow the registration of a queryEvaluatorFactory.
+This factory allows the user to create queryEvaluators conform to the EMF Facet framework.
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appinfo>
+ <meta.element />
+ </appinfo>
+ </annotation>
+ <complexType>
+ <sequence>
+ <element ref="queryEvaluatorRegistration" minOccurs="1" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute translatable="true"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="queryEvaluatorRegistration">
+ <complexType>
+ <attribute name="class" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute kind="java" basedOn=":org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryEvaluatorFactory"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="since"/>
+ </appinfo>
+ <documentation>
+ 0.1.0
+ </documentation>
+ </annotation>
+
+
+
+
+ <annotation>
+ <appinfo>
+ <meta.section type="copyright"/>
+ </appinfo>
+ <documentation>
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ - Nicolas Guyomar (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ </documentation>
+ </annotation>
+
+</schema>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/schema/queryImplementationRegistration.exsd b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/schema/queryImplementationRegistration.exsd
new file mode 100644
index 00000000000..7d5a45cc173
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/schema/queryImplementationRegistration.exsd
@@ -0,0 +1,122 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.papyrus.emf.facet.efacet.core" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appinfo>
+ <meta.schema plugin="org.eclipse.papyrus.emf.facet.efacet.core" id="queryImplementationRegistration" name="EMF Facet Query Implementation Registration"/>
+ </appinfo>
+ <documentation>
+ Used to register an IQueryImplementationFactory, that creates instances of IQueryImplementation. The IQueryImplementation provides an implementation for a given type of queries (e.g. Java queries, OCL queries, ...)
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appinfo>
+ <meta.element />
+ </appinfo>
+ </annotation>
+ <complexType>
+ <sequence>
+ <element ref="queryImplementationRegistration" minOccurs="1" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute translatable="true"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="queryImplementationRegistration">
+ <complexType>
+ <attribute name="class" type="string" use="required">
+ <annotation>
+ <documentation>
+ Provides an implementation for an IQueryImplementationFactory, which instantiates IQueryImplementation for a given type of queries.
+ </documentation>
+ <appinfo>
+ <meta.attribute kind="java" basedOn=":org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementationFactory"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="since"/>
+ </appinfo>
+ <documentation>
+ 0.2.0
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="examples"/>
+ </appinfo>
+ <documentation>
+ &lt;pre&gt;
+ &lt;extension point=&quot;org.eclipse.papyrus.emf.facet.efacet.core.queryImplementationRegistration&quot;&gt;
+ &lt;queryImplementationRegistration
+ class=&quot;org.eclipse.papyrus.emf.facet.efacet.core.tests.internal.DummyQueryEvaluatorFactory&quot;&gt;
+ &lt;/queryImplementationRegistration&gt;
+ &lt;/extension&gt;
+&lt;/pre&gt;
+ </documentation>
+ </annotation>
+
+
+ <annotation>
+ <appinfo>
+ <meta.section type="implementation"/>
+ </appinfo>
+ <documentation>
+ &lt;p&gt;
+See plug-ins:
+&lt;ul&gt;
+&lt;li&gt;org.eclipse.papyrus.emf.facet.query.java.core
+&lt;/ul&gt;
+&lt;/p&gt;
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="copyright"/>
+ </appinfo>
+ <documentation>
+ Copyright (c) 2011, 2012 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Bros (Mia-Software) - Bug 362191 - [Restructuring] Query mechanism for eFacet2
+ Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ </documentation>
+ </annotation>
+
+</schema>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/FacetUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/FacetUtils.java
new file mode 100644
index 00000000000..e6054d19699
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/FacetUtils.java
@@ -0,0 +1,705 @@
+/*******************************************************************************
+ * Copyright (c) 2011, 2012 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Nicolas Bros (Mia-Software) - Bug 361817 - [Restructuring] Dynamic load to the facet catalog
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 371367 - Hierarchical FacetSets
+ * Gregoire Dupe (Mia-Software) - Bug 371367 - Hierarchical FacetSets
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Gregoire Dupe (Mia-Software) - Bug 373510 - EditingDomain, ResourceSet, Catalogs, etc. have to be properly managed between editors and views
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 374903 - [Table] ITableWidget.setLoadedFacetSets
+ * Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List<ETypedElement>, List<FacetSet>)
+ * Olivier Remaud (Soft-Maint) - Bug 361794 - [Restructuring] EMF Facet customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] EMF Facet customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ * Nicolas Bros (Mia-Software) - Bug 372626 - Aggregates
+ * Gregoire Dupe (Mia-Software) - Bug 376576 - [EFacet] Change the multiplicity of Facet::extendedFacet
+ * Vincent Lorenzo (CEA-LIST) - Bug 357621 - Improve the label displayed for Customization and Facets
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Gregoire Dupe (Mia-Software) - Bug 377870 - [EFacet] ETypedElementDialog doesn't show all available ETypedElement (library example problem?)
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 391442 - Select ETypedElement Dialog doesn't used the subpackages (subEFacetSet)
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.FacetManagerException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exported.IResolverManager;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ModelUtils;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.EMFUtils;
+
+/**
+ * @since 0.2
+ */
+public final class FacetUtils {
+
+ private FacetUtils() {
+ // static methods only
+ }
+
+ /**
+ * Find a Facet in a FacetSet
+ *
+ * @param facetSet
+ * the FacetSet
+ * @param facetName
+ * the name of the Facet to look for
+ * @return the Facet with the given name in the given FacetSet
+ */
+ public static Facet getFacet(final FacetSet facetSet, final String facetName) {
+ Facet result = null;
+ final List<Facet> facets = FacetUtils.getFacets(facetSet);
+ for (Facet facet : facets) {
+ if (facetName.equals(facet.getName())) {
+ result = facet;
+ break;
+ }
+ }
+ return result;
+ }
+
+ public static <T extends ETypedElement> T getETypedElement(
+ final Facet facet, final String name, final Class<T> classs) {
+ T result = null;
+ final List<ETypedElement> eTypedElements = new ArrayList<ETypedElement>();
+ eTypedElements.addAll(facet.getFacetElements());
+ eTypedElements.addAll(facet.getFacetOperations());
+ for (ETypedElement eTypedElement : eTypedElements) {
+ if (name.equals(eTypedElement.getName())
+ && classs.isInstance(eTypedElement)) {
+ @SuppressWarnings("unchecked")
+ // @SuppressWarnings("unchecked") This assignment is check by
+ // the call 'classs.isInstance(structuralFeature)'
+ final T castResult = (T) eTypedElement;
+ result = castResult;
+ break;
+ }
+ }
+ return result;
+ }
+
+ public static Object getResultValue(final ETypedElementResult eTEresult) {
+ Object result = null;
+ if (eTEresult instanceof ETypedElementEObjectListResult<?>) {
+ final ETypedElementEObjectListResult<?> eObjectList = (ETypedElementEObjectListResult<?>) eTEresult;
+ result = eObjectList.getResultList();
+ } else if (eTEresult instanceof ETypedElementEObjectResult<?>) {
+ final ETypedElementEObjectResult<?> eObjectRef = (ETypedElementEObjectResult<?>) eTEresult;
+ result = eObjectRef.getResult();
+ } else if (eTEresult instanceof ETypedElementPrimitiveTypeListResult<?>) {
+ final ETypedElementPrimitiveTypeListResult<?> objectList = (ETypedElementPrimitiveTypeListResult<?>) eTEresult;
+ result = objectList.getDerivedTypedElement();
+ } else if (eTEresult instanceof ETypedElementPrimitiveTypeResult<?>) {
+ final ETypedElementPrimitiveTypeResult<?> objectRef = (ETypedElementPrimitiveTypeResult<?>) eTEresult;
+ result = objectRef.getResult();
+ } else {
+ throw new IllegalStateException(
+ "Unknown ETypedElementResult type: " + eTEresult.getClass()); //$NON-NLS-1$
+ }
+ return result;
+ }
+
+ /**
+ * Find a FacetSet with the given name among the given list of FacetSets. If several FacetSets have the same name,
+ * then return the first one.
+ *
+ * @param facetSets
+ * where to look for
+ * @param name
+ * the name of the FacetSet to find
+ * @return the FacetSet, or <code>null</code> if not found in the given list
+ */
+ public static FacetSet getFacetSet(final Collection<FacetSet> facetSets, final String name) {
+ FacetSet result = null;
+ for (FacetSet facetSet : facetSets) {
+ if (name.equals(facetSet.getName())) {
+ result = facetSet;
+ }
+ }
+ return result;
+ }
+
+ /**
+ * Find all FacetSets with the given name among the given list of FacetSets.
+ *
+ * @param facetSets
+ * where to look for
+ * @param name
+ * the name of the FacetSets to find
+ * @return the FacetSets with the given name
+ */
+ public static List<FacetSet> getFacetSets(
+ final Collection<FacetSet> facetSets, final String name) {
+ final List<FacetSet> result = new ArrayList<FacetSet>();
+ for (FacetSet facetSet : facetSets) {
+ if (name.equals(facetSet.getName())) {
+ result.add(facetSet);
+ }
+ }
+ return result;
+ }
+
+ /**
+ *
+ * @param facetSet
+ * a facetSet
+ * @return a set with all the EPackage extended by the facetSet and its
+ * owned facetSet
+ * @since 0.2
+ */
+ public static Set<EPackage> getAllExtendedEPackage(final FacetSet facetSet) {
+ final Set<EPackage> extendedEPackages = new HashSet<EPackage>();
+ final EPackage res1 = getExtendedEPackage(facetSet);
+ if (res1 != null) {
+ extendedEPackages.add(res1);
+ }
+ for (FacetSet current : facetSet.getFacetSets()) {
+ extendedEPackages.addAll(getAllExtendedEPackage(current));
+ }
+ final EList<EPackage> pack = facetSet.getESubpackages();
+ for (EPackage current : pack) {
+ if (current instanceof FacetSet) {
+ extendedEPackages
+ .addAll(getAllExtendedEPackage((FacetSet) current));
+ }
+ }
+ return extendedEPackages;
+ }
+
+ /**
+ * Find all the FacetSets with the given path among the given list of root
+ * FacetSets. For example: <code>getFacetSetsByPath("a", "b", "c")</code>
+ * returns a FacetSet named "c", contained in a FacetSet named "b",
+ * contained in a registered FacetSet named "a".
+ *
+ * @param path
+ * a list of FacetSet names, starting from the root registered
+ * FacetSets, and leading to the wanted FacetSet(s)
+ * @return the FacetSets that have the given path
+ */
+ public static List<FacetSet> getFacetSetsByPath(
+ final Collection<FacetSet> rootFacetSets, final String... path) {
+ if (path.length == 0) {
+ throw new IllegalArgumentException("The given path cannot be empty"); //$NON-NLS-1$
+ }
+ List<FacetSet> facetSets = new ArrayList<FacetSet>(rootFacetSets);
+ for (int i = 0; i < path.length; i++) {
+ if (i > 0) {
+ facetSets = getSubFacetSets(facetSets);
+ }
+ final String name = path[i];
+ facetSets = getFacetSets(facetSets, name);
+ if (facetSets.isEmpty()) {
+ break;
+ }
+
+ }
+ return facetSets;
+ }
+
+ private static List<FacetSet> getSubFacetSets(
+ final Collection<FacetSet> parents) {
+ final List<FacetSet> subFacetSets = new ArrayList<FacetSet>();
+ for (FacetSet facetSet : parents) {
+ final EList<EPackage> eSubpackages = facetSet.getESubpackages();
+ for (EPackage ePackage : eSubpackages) {
+ if (ePackage instanceof FacetSet) {
+ final FacetSet subFacetSet = (FacetSet) ePackage;
+ subFacetSets.add(subFacetSet);
+ }
+ }
+ }
+ return subFacetSets;
+ }
+
+ /**
+ * Find a Facet with the given name among the given list of Facets.
+ *
+ * @param facets
+ * where to look
+ * @param name
+ * the name of the Facet that is being looked for
+ * @return the first {@link Facet} with this name, or <code>null</code> if
+ * none
+ */
+ public static Facet getFacet(final Collection<Facet> facets,
+ final String name) {
+ Facet result = null;
+ for (Facet facet : facets) {
+ if (name.equals(facet.getName())) {
+ result = facet;
+ }
+ }
+ return result;
+ }
+
+ public static FacetSet getRootFacetSet(final Facet facet) {
+ FacetSet result = (FacetSet) facet.eContainer();
+ while (result != null && result.eContainer() instanceof FacetSet) {
+ result = (FacetSet) result.eContainer();
+ }
+ return result;
+ }
+
+ public static FacetSet getRootFacetSet(final FacetSet facetSet) {
+ FacetSet result = facetSet;
+ while (result != null && result.eContainer() instanceof FacetSet) {
+ result = (FacetSet) result.eContainer();
+ }
+ return result;
+ }
+
+ /**
+ * This methods returns all the known (registered) eTypedElements.
+ *
+ * @param resourceSet
+ * the eTypedElement search will be done in/using this resourceSet
+ * @return all the known (registered) eTypedElements
+ */
+ public static Set<? extends ETypedElement> getETypedElements(
+ final ResourceSet resourceSet) {
+ final Set<ETypedElement> result = new HashSet<ETypedElement>();
+ final Collection<Object> ePackages = EPackage.Registry.INSTANCE
+ .values();
+ for (Object object : ePackages) {
+ EPackage ePackage = null;
+ if (object instanceof EPackage) {
+ ePackage = (EPackage) object;
+ } else if (object instanceof EPackage.Descriptor) {
+ final EPackage.Descriptor descriptor = (EPackage.Descriptor) object;
+ ePackage = descriptor.getEPackage();
+ }
+ if (ePackage != null) {
+ result.addAll(getETypedElements(ePackage));
+ }
+ }
+ result.addAll(getFacetETypedElements(resourceSet));
+ return result;
+ }
+
+ /**
+ * @since 0.3
+ */
+ public static Set<? extends ETypedElement> getFacetETypedElements(
+ final ResourceSet resourceSet) {
+ final Set<ETypedElement> result = new HashSet<ETypedElement>();
+ final Collection<FacetSet> facetSets = IFacetSetCatalogManagerFactory.DEFAULT
+ .getOrCreateFacetSetCatalogManager(resourceSet)
+ .getRegisteredFacetSets();
+ for (FacetSet facetSet : facetSets) {
+ result.addAll(getETypedElements(facetSet));
+ }
+ return result;
+ }
+
+ public static List<ETypedElement> getETypedElements(final EPackage ePackage) {
+ final List<ETypedElement> result = new LinkedList<ETypedElement>();
+ for (EClassifier eClassifier : ePackage.getEClassifiers()) {
+ result.addAll(getETypedElements(eClassifier));
+ }
+ for (EPackage subPackage : ePackage.getESubpackages()) {
+ result.addAll(getETypedElements(subPackage));
+ }
+ return result;
+ }
+
+ /**
+ * @since 0.3
+ */
+ public static List<ETypedElement> getETypedElements(
+ final EClassifier eClassifier) {
+ final List<ETypedElement> result = new ArrayList<ETypedElement>();
+ if (eClassifier instanceof Facet) {
+ final Facet facet = (Facet) eClassifier;
+ result.addAll(facet.getFacetElements());
+ result.addAll(facet.getFacetOperations());
+ } else if (eClassifier instanceof EClass) {
+ final EClass eClass = (EClass) eClassifier;
+ result.addAll(eClass.getEAllStructuralFeatures());
+ result.addAll(eClass.getEAllOperations());
+ }
+ return result;
+ }
+
+ public static List<Facet> getFacets(final FacetSet facetSet) {
+ final List<Facet> result = new LinkedList<Facet>();
+ for (EClassifier eClassifier : facetSet.getEClassifiers()) {
+ if (eClassifier instanceof Facet) {
+ final Facet facet = (Facet) eClassifier;
+ result.add(facet);
+ }
+ }
+ return result;
+ }
+
+ public static FacetSet getFacetSet(final Facet facet) {
+ FacetSet result = null;
+ if (facet.getEPackage() instanceof FacetSet) {
+ result = (FacetSet) facet.getEPackage();
+ }
+ return result;
+ }
+
+ // Moved from
+ // org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetSetImpl
+ public static EPackage getExtendedEPackage(final FacetSet facetSet) {
+ final List<Facet> facets = FacetUtils.getFacets(facetSet);
+ EPackage result = null;
+ for (Facet facet : facets) {
+ final EClass extendedMetaclass = facet.getExtendedMetaclass();
+ if (extendedMetaclass != null) {
+ final EPackage ePackage = extendedMetaclass.getEPackage();
+ if (ePackage != null) {
+ if (result != null && !ePackage.equals(result)) {
+ throw new IllegalStateException(
+ "The Facets in a FacetSet must all extend EClasses from the same EPackage"); //$NON-NLS-1$
+ }
+ result = ePackage;
+ }
+ }
+ }
+ return result;
+ }
+
+ // Copied (and refactored) from
+ // org.eclipse.papyrus.emf.facet.efacet.core.internal.FacetManager
+ public static <T extends ETypedElement> Set<T> getETypedElements(
+ final EObject eObject, final Class<T> classs,
+ final IFacetManager facetManager) throws FacetManagerException {
+ final Set<T> result = new HashSet<T>();
+ for (FacetSet facetSet : facetManager.getManagedFacetSets()) {
+ result.addAll(getETypedElements(eObject, facetSet, classs,
+ facetManager));
+ }
+ return result;
+ }
+
+ // Copied (and refactored) from
+ // org.eclipse.papyrus.emf.facet.efacet.core.internal.FacetManager
+ private static <T extends ETypedElement> Set<T> getETypedElements(
+ final EObject eObject, final FacetSet facetSet,
+ final Class<T> classs, final IFacetManager manager)
+ throws FacetManagerException {
+ final Set<T> result = new HashSet<T>();
+ for (EClassifier eClassifier : facetSet.getEClassifiers()) {
+ if (eClassifier instanceof Facet) {
+ final Facet facet = (Facet) eClassifier;
+ if (manager.isConforming(eObject, facet)) {
+ result.addAll(getETypedElement(classs, facet));
+ }
+ }
+ }
+ // hierarchical FacetSets
+ for (EPackage ePackage : facetSet.getESubpackages()) {
+ if (ePackage instanceof FacetSet) {
+ final FacetSet subFacetSet = (FacetSet) ePackage;
+ result.addAll(getETypedElements(eObject, subFacetSet, classs,
+ manager));
+ }
+ }
+ // aggregates
+ for (FacetSet subFacetSet : facetSet.getFacetSets()) {
+ result.addAll(getETypedElements(eObject, subFacetSet, classs,
+ manager));
+ }
+ return result;
+ }
+
+ private static <T> Set<T> getETypedElement(final Class<T> classs,
+ final Facet facet) {
+ final Set<T> result = new HashSet<T>();
+ for (ETypedElement eTypedElement : getAllETypedElements(facet)) {
+ if (classs.isInstance(eTypedElement)) {
+ @SuppressWarnings("unchecked")
+ // @SuppressWarnings("unchecked") This type has been
+ // checked using isInstance
+ final T typedSF = (T) eTypedElement;
+ final T resolvedTE = IResolverManager.DEFAULT
+ .resolve(typedSF, classs);
+ if (resolvedTE == null) {
+ result.add(typedSF);
+ } else {
+ result.add(resolvedTE);
+ }
+ }
+ }
+ return result;
+ }
+
+ // Copied (and refactored) from
+ // org.eclipse.papyrus.emf.facet.efacet.core.internal.FacetManager
+ private static List<ETypedElement> getAllETypedElements(
+ final Facet facet) {
+ final List<ETypedElement> structFeatures = new LinkedList<ETypedElement>();
+ structFeatures.addAll(facet.getFacetElements());
+ structFeatures.addAll(facet.getFacetOperations());
+ for (Facet extFacet : facet.getExtendedFacets()) {
+ structFeatures.addAll(getAllETypedElements(extFacet));
+ }
+ return structFeatures;
+ }
+
+ /**
+ * @param eTypedElement
+ * @return
+ * @since 0.2
+ */
+ public static FacetSet getFacetSet(final ETypedElement eTypedElement) {
+ FacetSet result = null;
+ if (eTypedElement.eContainer() instanceof Facet) {
+ final Facet facet = (Facet) eTypedElement.eContainer();
+ if (facet.eContainer() instanceof FacetSet) {
+ result = (FacetSet) facet.eContainer();
+ }
+ }
+ return result;
+ }
+
+ /**
+ *
+ * @param facetOperation
+ * @return
+ * @since 0.2
+ */
+ public static DerivedTypedElement getSignature(
+ final FacetOperation facetOperation) {
+ DerivedTypedElement current = facetOperation;
+ while (current.getOverride() != null) {
+ current = current.getOverride();
+ }
+ return current;
+ }
+
+ /**
+ *
+ * @param facet
+ * @return
+ * @since 0.2
+ */
+ public static EClass getExtendedMetaclass(final Facet facet) {
+ EClass result = facet.getExtendedMetaclass();
+ if (result == null) {
+ final List<EClass> eClasses = new LinkedList<EClass>();
+ for (Facet extfacet : facet.getExtendedFacets()) {
+ eClasses.add(getExtendedMetaclass(extfacet));
+ }
+ result = EMFUtils.computeLeastCommonSupertype(eClasses);
+ }
+ return result;
+ }
+
+ /**
+ * Find the top level feature in the override chain
+ *
+ * @param feature
+ * @return The top level feature in the override chain or the feature
+ * parameter itself if no override
+ * @throws FacetManagerException
+ * @since 0.2
+ *
+ */
+ // Copied from
+ // org.eclipse.papyrus.emf.facet.efacet.core.internal.FacetManagerContext
+ // * Contributors:
+ // * Olivier Remaud (Soft-Maint) - Bug 361794 - [Restructuring] EMF Facet
+ // customization meta-model
+ // * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user
+ // must be able to navigate into a model using the Facet.
+ // * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] EMF Facet
+ // customization meta-model
+ // * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ @SuppressWarnings("unchecked")
+ // @SuppressWarnings("unchecked") cf. comment in the method body
+ public static <T extends DerivedTypedElement> T getTopOverrideFeature(
+ final T feature) throws FacetManagerException {
+ T signatureFeature = feature;
+ while (signatureFeature.getOverride() != null) {
+ if (feature.getClass().isInstance(signatureFeature.getOverride())) {
+ // @SuppressWarnings("unchecked") the if test check the
+ // assignment using the method 'isInstance'
+ signatureFeature = (T) signatureFeature.getOverride();
+ } else {
+ // signature feature type name
+ final String sfTypeName = signatureFeature.eClass().getName();
+ // signature feature name
+ final String sfName = ModelUtils
+ .getQualifiedName(signatureFeature);
+ final String ofName = signatureFeature.getOverride().eClass()
+ .getName(); // overridden feature type name
+ throw new FacetManagerException("The " + sfTypeName + " '" //$NON-NLS-1$ //$NON-NLS-2$
+ + sfName + "' overides a " + ofName); //$NON-NLS-1$
+ }
+ }
+ return signatureFeature;
+ }
+
+ /**
+ * @since 0.3
+ */
+ public static EClass findExtendedEClass(final Facet facet) {
+ EClass result = facet.getExtendedMetaclass();
+ if (result == null) {
+ for (Facet extFacet : facet.getExtendedFacets()) {
+ result = findExtendedEClass(extFacet);
+ if (result != null) {
+ break;
+ }
+ }
+ }
+ return result;
+ }
+
+ /**
+ * @since 0.3
+ */
+ public static DerivedTypedElement getContainingDerivedTypedElement(
+ final EObject eObject) {
+ DerivedTypedElement dte = null;
+ if (eObject instanceof DerivedTypedElement) {
+ dte = (DerivedTypedElement) eObject;
+ } else if (eObject != null) {
+ dte = getContainingDerivedTypedElement(eObject.eContainer());
+ }
+ return dte;
+ }
+
+ /**
+ * Return the main facetSet.
+ *
+ * @param eObject
+ * the element in the model selected.
+ * @return the main facetSet.
+ * @since 0.3
+ */
+ public static FacetSet getContainingFacetSet(final EObject eObject) {
+ FacetSet result = null;
+ if (eObject instanceof FacetSet) {
+ result = (FacetSet) eObject;
+ } else {
+ final EObject container = eObject.eContainer();
+ if (container != null) {
+ result = getContainingFacetSet(container);
+ }
+ }
+ return result;
+ }
+
+ /**
+ * Return all the operations of the model.
+ *
+ * @param parent
+ * the first FacetSet of the model.
+ * @return the list of operations.
+ * @since 0.3
+ */
+ public static Map<String, FacetOperation> getAllOperationsByName(
+ final FacetSet parent) {
+ final Map<String, FacetOperation> operations = new HashMap<String, FacetOperation>();
+ for (final EClassifier facet : parent.getEClassifiers()) {
+ for (final FacetOperation operation : ((Facet) facet)
+ .getFacetOperations()) {
+ operations.put(operation.getName(), operation);
+ }
+ }
+ for (final EPackage element : parent.getESubpackages()) {
+ operations.putAll(getAllOperationsByName((FacetSet) element));
+ }
+ return operations;
+ }
+
+ /**
+ * Return all the facets of the model.
+ *
+ * @param parent
+ * the first FacetSet of the model.
+ * @return the list of facets.
+ * @since 0.3
+ */
+ public static Map<String, Facet> getAllFacetsByName(final FacetSet parent) {
+ final Map<String, Facet> facets = new HashMap<String, Facet>();
+ for (final EClassifier facet : parent.getEClassifiers()) {
+ facets.put(facet.getName(), (Facet) facet);
+ }
+ for (final EPackage element : parent.getESubpackages()) {
+ facets.putAll(getAllFacetsByName((FacetSet) element));
+ }
+
+ return facets;
+ }
+
+ /**
+ * Return all the facets of the model.
+ *
+ * @param parent
+ * the first FacetSet of the model.
+ * @return the list of facets.
+ * @since 0.3
+ */
+ public static Map<String, FacetSet> getAllFacetSetsByName(
+ final EPackage parent) {
+ final Map<String, FacetSet> facetSets = new HashMap<String, FacetSet>();
+ if (parent instanceof FacetSet) {
+ final FacetSet facetSet = (FacetSet) parent;
+ facetSets.put(parent.getName(), facetSet);
+ }
+ for (final EPackage element : parent.getESubpackages()) {
+ facetSets.putAll(getAllFacetSetsByName(element));
+ }
+ return facetSets;
+ }
+
+ /**
+ * @since 0.3
+ */
+ public static List<Facet> getAllFacet(final FacetSet facetSet) {
+ final List<Facet> result = new ArrayList<Facet>();
+ for (EClassifier eClassifier : facetSet.getEClassifiers()) {
+ if (eClassifier instanceof Facet) {
+ final Facet facet = (Facet) eClassifier;
+ result.add(facet);
+ }
+ }
+ for (EPackage ePackage : facetSet.getESubpackages()) {
+ if (ePackage instanceof FacetSet) {
+ final FacetSet subFacetSet = (FacetSet) ePackage;
+ result.addAll(getAllFacet(subFacetSet));
+ }
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IDerivedTypedElementManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IDerivedTypedElementManager.java
new file mode 100644
index 00000000000..b0c23996d51
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IDerivedTypedElementManager.java
@@ -0,0 +1,201 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Nicolas Bros (Mia-Software) - Bug 362191 - [Restructuring] Query mechanism for eFacet2
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.DerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult;
+
+/**
+ * Used to evaluate derived typed elements through their queries.
+ *
+ * @since 0.2
+ */
+public interface IDerivedTypedElementManager {
+ IDerivedTypedElementManager INSTANCE = new DerivedTypedElementManager();
+
+ /**
+ * Evaluates a derived typed element on a model element.
+ * <p>
+ * <b>Note:</b> this method does not return a typed result, and it does not
+ * check the result type. Use
+ * {@link IDerivedTypedElementManager#evaluateSingleValued(DerivedTypedElement, EObject, List, Class)
+ * evaluateSingleValued} or
+ * {@link IDerivedTypedElementManager#evaluateMultiValued(DerivedTypedElement, EObject, List, Class)
+ * evaluateMultiValued} instead if you want a typed and type-checked result.
+ *
+ * @param derivedTE
+ * the derived typed element to evaluate
+ * @param source
+ * the model element on which the derived typed element must be
+ * evaluated
+ * @param parameterValues
+ * the arguments of the derived typed element (in the case of a
+ * {@link FacetOperation}; can be <code>null</code> if there are
+ * no parameters)
+ * @return the derived typed element result: a single Object in the case of
+ * a single-valued derived typed element, or a List in the case of a
+ * multi-valued derived typed element.
+ * @throws DerivedTypedElementException
+ * <ul>
+ * <li>in case of error in the derived typed element</li> <li>in
+ * case of error when evaluating the derived typed element</li>
+ * </ul>
+ */
+ Object evaluate(DerivedTypedElement derivedTE, EObject source,
+ List<ParameterValue> parameterValues, IFacetManager facetManager)
+ throws DerivedTypedElementException;
+
+ /**
+ * Evaluates a query on a model element. Calling this method is discouraged. You should evaluate a
+ * {@link DerivedTypedElement}s (which contains a query) instead of trying to evaluate a {@link Query} directly.
+ * Since the source type, return type and multiplicity of a query are carried by the {@link DerivedTypedElement}
+ * that normally contains it, this method doesn't check the source type, return type or multiplicity.
+ *
+ * @param query
+ * the query to evaluate
+ * @param source
+ * the model element on which the query must be evaluated
+ * @param parameterValues
+ * the arguments of the query (in the case of a query for a {@link FacetOperation}; can be
+ * <code>null</code> if there are no parameters)
+ * @return the query result: may be a single Object or a List.
+ * @throws DerivedTypedElementException
+ * if the evaluation failed
+ */
+ Object evaluate(Query query, EObject source, List<ParameterValue> parameterValues, IFacetManager facetManager)
+ throws DerivedTypedElementException;
+
+ /**
+ * Evaluates a single valued derived typed element on a model element.
+ *
+ * @param derivedTE
+ * the derived typed element to evaluate
+ * @param source
+ * the model element on which the derived typed element is
+ * evaluated
+ * @param parameterValues
+ * the arguments of the derived typed element (in the case of a
+ * {@link FacetOperation}; can be <code>null</code> if there are
+ * no parameters)
+ * @param resultType
+ * the type that the returned value must have
+ * @return the result of the evaluation
+ * @throws DerivedTypedElementException
+ * <ul>
+ * <li>in case of error in the derived typed element</li>
+ * <li>in case of error when evaluating the derived typed
+ * element</li>
+ * <li>
+ * if the effective return type does not match the expected type
+ * </li>
+ * </ul>
+ */
+ <T> T evaluateSingleValued(DerivedTypedElement derivedTE, EObject source,
+ List<ParameterValue> parameterValues, Class<T> resultType,
+ IFacetManager facetManager) throws DerivedTypedElementException;
+
+ /**
+ * Evaluates a multi-valued derived typed element on a model element.
+ *
+ * @param derivedTypedElement
+ * the derived typed element to evaluate
+ * @param source
+ * the model element on which the derived typed element must be
+ * evaluated
+ * @param parameterValues
+ * the arguments of the derived typed element (in the case of a
+ * {@link FacetOperation}; can be <code>null</code> if there are
+ * no parameters)
+ * @param resultType
+ * the type that the returned value must have
+ * @return the result of the evaluation
+ * @throws DerivedTypedElementException
+ * <ul>
+ * <li>in case of error in the derived typed element</li>
+ * <li>in case of error when evaluating the derived typed
+ * element</li>
+ * <li>if the effective return type does not match the expected
+ * type</li>
+ * </ul>
+ */
+ <T> List<T> evaluateMultiValued(DerivedTypedElement derivedTE,
+ EObject source, List<ParameterValue> parameterValues,
+ Class<T> resultType, IFacetManager facetManager)
+ throws DerivedTypedElementException;
+
+ /**
+ * Evaluates a derived typed element on a list of model elements in a single
+ * call.
+ *
+ * @param derivedTE
+ * the derived typed element to evaluate
+ * @param sources
+ * the model elements on which the derived typed element must be
+ * evaluated
+ * @param parameterValues
+ * the arguments of the derived typed element (in the case of a
+ * {@link FacetOperation}; can be <code>null</code> if there are
+ * no parameters)
+ * @param resultType
+ * the expected type of the returned list:
+ * <ul>
+ * <li> {@link DerivedTypedElementEObjectResult} if the
+ * {@link DerivedTypedElement} is a single-valued
+ * {@link EReference} or {@link EOperation} that returns EObjects
+ * <li>{@link DerivedTypedElementEObjectListResult} if the
+ * {@link DerivedTypedElement} is a multi-valued
+ * {@link EReference} or {@link EOperation} that returns EObjects
+ * <li>{@link DerivedTypedElementPrimitiveTypeResult} if the
+ * {@link DerivedTypedElement} is a single-valued
+ * {@link EAttribute} or {@link EOperation} that returns a
+ * primitive type value
+ * <li>{@link DerivedTypedElementPrimitiveTypeListResult} if the
+ * {@link DerivedTypedElement} is a multi-valued
+ * {@link EAttribute} or {@link EOperation} that returns a list
+ * of primitive type values
+ * </ul>
+ * @return one derived typed element result for each source element that was
+ * evaluated
+ * @throws DerivedTypedElementException
+ * <ul>
+ * <li>in case of error in the derived typed element.
+ * <b>Note</b>: an error that happens when evaluating the
+ * derived typed element on any of the given sources is not
+ * thrown but stored in the corresponding element result.</li>
+ * <li>if the effective return type does not match the expected
+ * type</li>
+ * </ul>
+ */
+ <T extends ETypedElementResult> List<T> batchEvaluate(
+ DerivedTypedElement derivedTE,
+ Collection<? extends EObject> sources,
+ List<ParameterValue> parameterValues, Class<T> resultType,
+ IFacetManager facetManager) throws DerivedTypedElementException;
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IEFacetManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IEFacetManager.java
new file mode 100644
index 00000000000..a519466e0a6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IEFacetManager.java
@@ -0,0 +1,87 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ * Nicolas Bros (Mia-Software) - Bug 361617 - Deprecation of APIs for the old Facet metamodels
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.QueryContext;
+import org.eclipse.papyrus.emf.facet.efacet.QueryResult;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.QueryException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.EFacetManager;
+
+/**
+ * This interface allows the user to use the EMF Facet API for Query and Facet.
+ *
+ * @deprecated use {@link IDerivedTypedElementManager} with the new eFacet2 metamodel (https://bugs.eclipse.org/bugs/show_bug.cgi?id=381225)
+ */
+@Deprecated
+public interface IEFacetManager {
+ IEFacetManager INSTANCE = new EFacetManager();
+
+ /**
+ * This method is used to evaluate the given {@link Query} on the given {@link EObject} taking
+ * into consideration some {@link ParameterValue}
+ */
+ QueryResult evaluate(final Query query, final EObject eObject,
+ final List<ParameterValue> parameterValues);
+
+ /**
+ * This method is used to evaluate the given {@link Query} on the given {@link EObject}
+ */
+ QueryResult evaluate(final Query query, final EObject eObject);
+
+ /**
+ * This method is equivalent to {@link IEFacetManager#evaluate(Query, EObject, List)} but rather
+ * than return the errors into a {@link QueryResult} instance, it throws an exception.
+ *
+ * @param eObject
+ * The query evaluation context
+ * @return The query result.
+ * @throws QueryException
+ */
+ Object basicEvaluate(final Query query, final EObject eObject,
+ final List<ParameterValue> parameterValues) throws QueryException;
+
+ /**
+ * This method is equivalent to {@link IEFacetManager#evaluate(Query, EObject)} but rather than
+ * return the errors into a {@link QueryResult} instance, it throws an exception.
+ *
+ * @param eObject
+ * The query evaluation context
+ * @return The query result.
+ * @throws QueryException
+ */
+ Object basicEvaluate(final Query query, final EObject eObject)
+ throws QueryException;
+
+ /**
+ * Evaluate the query on a set of models and model elements described by the
+ * <code>queryContext</code> parameter.
+ *
+ * The query is evaluated on each contextually referred model element and on each element of a
+ * contextually referred model.
+ *
+ * @param queryContext
+ * The query evaluation context described by a QueryContext instance.
+ * @param parameterValues
+ * The query parameter values.
+ * @return A list of QueryResult (one per evaluation)
+ * @throws QueryException
+ */
+ List<QueryResult> evaluate(final Query query,
+ final QueryContext queryContext,
+ final List<ParameterValue> parameterValues) throws QueryException;
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetAction.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetAction.java
new file mode 100644
index 00000000000..fbe4ce44732
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetAction.java
@@ -0,0 +1,135 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 338813 - [EMF Facet Framework] basic Facet actions
+ * Nicolas Bros (Mia-Software) - Bug 361617 - Deprecation of APIs for the old Facet metamodels
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core;
+
+import java.io.IOException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.FacetActionImpl;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.incubatingapi.IFacetActions2;
+import org.eclipse.papyrus.emf.facet.util.emf.core.exception.InvalidFacetSetException;
+
+/**
+ * This interface contains methods declaration to deal with {@link Facet} and
+ * {@link FacetSet}.
+ *
+ * @since 0.1
+ * @noimplement
+ * @noextend
+ * @deprecated use {@link IFacetActions2} with the new eFacet2 metamodel (https://bugs.eclipse.org/bugs/show_bug.cgi?id=381226)
+ */
+@Deprecated
+public interface IFacetAction {
+
+ IFacetAction INSTANCE = new FacetActionImpl();
+
+ /**
+ * Add the given facetSet to the given facetSet model file, which will be created
+ *
+ * @param facetSet
+ * the facetSet to be created. Cannot be <code>null</code>
+ * @param project
+ * the new file in which the facetSet has to be created. Cannot be <code>null</code>,
+ * and cannot already exist
+ * @since 0.2
+ */
+ void createFacetSet(FacetSet facetSet, IFile file) throws IOException,
+ InvalidFacetSetException;
+
+ /**
+ * Add the given {@link Facet} to the given {@link FacetSet}
+ *
+ * @param facetSet
+ * the parent facetSet, cannot be null
+ * @param facet
+ * the {@link Facet}, cannot be null, or contained by a resource
+ * @param editingDomain
+ * the editing domain needed to perform the Add EMF command, cannot be null
+ */
+ Facet createFacetInFacetSet(FacetSet facetSet, Facet facet,
+ EditingDomain editingDomain);
+
+ /**
+ * Add the given {@link FacetAttribute} to the given {@link Facet}
+ *
+ * @param facet
+ * the parent {@link Facet}, cannot be null
+ * @param facetAttribute
+ * the {@link FacetAttribute}, cannot be null, or contained by a resource
+ * @param editingDomain
+ * the editing domain needed to perform the Add Emf command, cannot be null
+ */
+ void addAttributeInFacet(Facet facet, FacetAttribute facetAttribute,
+ EditingDomain editingDomain);
+
+ /**
+ * Add the given {@link FacetReference} to the given {@link Facet}
+ *
+ * @param facet
+ * the parent {@link Facet}, cannot be null
+ * @param facetReference
+ * the {@link FacetReference}, cannot be null, or contained by a resource
+ * @param editingDomain
+ * the editing domain needed to perform the Add Emf command, cannot be null
+ */
+ void addReferenceInFacet(Facet facet, FacetReference facetReference,
+ EditingDomain editingDomain);
+
+ /**
+ * Add a new {@link FacetOperation} to the given {@link Facet}
+ *
+ * @param facet
+ * the parent {@link Facet}, cannot be null
+ * @param facetOperation
+ * the new {@link FacetOperation}, cannot be null, or contained by a resource
+ * @param editingDomain
+ * the editing domain needed to perform the Add Emf command, cannot be null
+ */
+ void addOperationInFacet(Facet facet, FacetOperation facetOperation,
+ EditingDomain editingDomain);
+
+ /**
+ * Add a new {@link EParameter} to the given {@link FacetOperation}
+ *
+ * @param operation
+ * the parent {@link EOperation}
+ * @param parameter
+ * the new {@link EParameter}
+ * @param editingDomain
+ * the editing domain needed to perform the Add Emf command, cannot be null
+ */
+ void addParameterInOperation(FacetOperation operation,
+ EParameter parameter, EditingDomain editingDomain);
+
+ /**
+ * Set the given URI to the given {@link FacetSet}
+ *
+ * @param facetSet
+ * the {@link FacetSet} to be modified
+ * @param nsUri
+ * the Uri
+ * @param editingDomain
+ * the editing domain needed to perform the Set Emf command, cannot be null
+ */
+ void setFacetSetNsUri(FacetSet facetSet, String nsUri,
+ EditingDomain editingDomain);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetActions.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetActions.java
new file mode 100644
index 00000000000..f8b6b71cda9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetActions.java
@@ -0,0 +1,45 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core;
+
+import java.io.IOException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.FacetActionsImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.util.emf.core.exception.InvalidFacetSetException;
+
+/**
+ * This interface contains methods to create {@link FacetSet}s.
+ *
+ * @since 0.3
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IFacetActions {
+
+ IFacetActions INSTANCE = new FacetActionsImpl();
+
+ /**
+ * Add the given facetSet to the given facetSet model file, which will be
+ * created
+ *
+ * @param facetSet
+ * the facetSet to be created. Cannot be <code>null</code>
+ * @param file
+ * the new file in which the facetSet has to be created. Cannot
+ * be <code>null</code>, and cannot already exist
+ */
+ void saveFacetSet(FacetSet facetSet, IFile file) throws IOException,
+ InvalidFacetSetException;
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetCommandFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetCommandFactory.java
new file mode 100644
index 00000000000..b845ef0608d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetCommandFactory.java
@@ -0,0 +1,193 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * This interface provide a command factory. A command modify the editingDomain.
+ *
+ * @since 0.3
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IFacetCommandFactory {
+
+ /**
+ * Create the command to add a FacetSet (facetSet) to an existing FacetSet
+ * (parent).
+ *
+ * @param parent
+ * the parent of the facetSet to add.
+ * @param facetSet
+ * the facetSet to add.
+ * @return the command.
+ */
+ Command createFacetSetInFacetSetCommand(FacetSet parent, FacetSet facetSet);
+
+ /**
+ * Create the command to add a Facet (facet) to an existing FacetSet
+ * (parent).
+ *
+ * @param parent
+ * the parent of the facet to add.
+ * @param facet
+ * the facet to add.
+ * @return the command.
+ */
+ Command createFacetInFacetSetCommand(FacetSet parent, Facet facet);
+
+ /**
+ * Create the command to add an Attribute (facetAttrbute) to an existing
+ * Facet (parent).
+ *
+ * @param parent
+ * the parent of the attribute to add.
+ * @param facetAttrbute
+ * the attribute to add.
+ * @return the command.
+ */
+ Command createEditFacetStructuralFeatureCommand(
+ final DerivedTypedElement feature, final Facet container,
+ final String name, final int lowerBd, final int upperBd,
+ final EClassifier type, final boolean ordered,
+ final boolean unique, final Query query, final boolean volatilee,
+ final boolean change, final boolean derived,
+ final boolean transientt);
+
+ /**
+ * Create the command to add a Reference (facetReference) to an existing
+ * Facet (parent).
+ *
+ * @param parent
+ * the parent of the reference to add.
+ * @param facetReference
+ * the reference to add.
+ * @return the command.
+ */
+ Command createAddReferenceInFacetCommand(Facet parent,
+ FacetReference facetReference);
+
+ /**
+ * Create the command to add an Operation (FacetOperation) to an existing
+ * Facet (parent).
+ *
+ * @param parent
+ * the parent of the operation to add.
+ * @param facetOperation
+ * the operation to add.
+ * @return the command.
+ */
+ Command createAddOperationInFacetCommand(Facet parent,
+ FacetOperation facetOperation);
+
+ /**
+ * Create the command to add a Parameter (operationParameter) to an existing
+ * Operation (parent).
+ *
+ * @param parent
+ * the parent of the operation to add.
+ * @param facetOperation
+ * the operation to add.
+ * @return the command.
+ */
+ Command createAddParameterInOperationCommand(FacetOperation parent,
+ EParameter opeParameter);
+
+ /**
+ * Create the command to change the owner of an element.
+ *
+ * @param element
+ * @param newOwner
+ * @return
+ */
+ Command createChangeOwnerCommand(Object element, Object newOwner);
+
+ /**
+ * Create the command to change the attributes of a FacetSet.
+ *
+ * @param initialElement
+ * @param newElement
+ * @param newElement
+ * @return
+ */
+ Command createEditFacetSetCommand(final FacetSet editedFacetSet,
+ final FacetSet container, final String name);
+
+ /**
+ * Create the command to change the attributes of a Facet.
+ *
+ * @param initialElement
+ * @param newElement
+ * @return
+ */
+ Command createEditFacetCommand(Facet facet, FacetSet container,
+ String name, ETypedElement conformance, EClass extendEClass,
+ FacetSet extendedFacetSet);
+
+ /**
+ * Create the command to change the attributes of a FacetAttribute.
+ *
+ * @param initialElement
+ * @param newElement
+ * @return
+ */
+ Command createSetFacetAttributeCommand(final Facet initialContainer,
+ final FacetAttribute initialElement,
+ final FacetAttribute newElement);
+
+ /**
+ * Create the command to change the attributes of a FacetReference.
+ *
+ * @param initialElement
+ * @param newElement
+ * @return
+ */
+ Command createSetFacetReferenceCommand(final Facet initialContainer,
+ final FacetReference initialElement,
+ final FacetReference newElement);
+
+ /**
+ * Create the command to change the attributes of a FacetOperation.
+ *
+ * @param initialElement
+ * @param newElement
+ * @return
+ */
+ Command createEditFacetOperationCommand(DerivedTypedElement dte,
+ Facet facetContainer, String name, int lowerBound, int upperBound,
+ EClassifier type, boolean ordered, boolean unique, Query query);
+
+ /**
+ * Create the command to change the attributes of a FacetAttribute.
+ *
+ * @param initialElement
+ * @param newElement
+ * @return
+ */
+ Command createEditOperationParameterCommand(EParameter parameter,
+ FacetOperation container, String name, int lowerBound,
+ int upperBound, EClassifier type, boolean ordered, boolean unique);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetCommandFactoryFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetCommandFactoryFactory.java
new file mode 100644
index 00000000000..adfd3c4f441
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetCommandFactoryFactory.java
@@ -0,0 +1,25 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.FacetCommandFactoryFactory;
+
+/**
+ * @since 0.3
+ */
+public interface IFacetCommandFactoryFactory {
+
+ IFacetCommandFactoryFactory DEFAULT = new FacetCommandFactoryFactory();
+
+ IFacetCommandFactory createCommandFactory(EditingDomain editingDomain);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetManager.java
new file mode 100644
index 00000000000..2f5110414d6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetManager.java
@@ -0,0 +1,244 @@
+/*******************************************************************************
+ * Copyright (c) 2011, 2012 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Olivier Remaud (Soft-Maint) - Bug 361794 - [Restructuring] EMF Facet customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Thomas Cicognani (Soft-Maint) - Bug 416221 - New methods to get references in FacetManager API
+ * Thomas Cicognani (Soft-Maint) - Bug 420193 - Listener on FacetManager
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core;
+
+import java.util.Collection;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.ETypedElement;
+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.facet.efacet.core.exception.FacetManagerException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult;
+
+/**
+ * This interface allows clients to use the EMF Facet API to get and set the values of virtually
+ * added {@link EReference}s and {@link EAttribute}s, and invoke {@link EOperation}s.
+ * <p>
+ * Derived {@link FacetAttribute}s and {@link FacetReference}s are computed by queries, whereas
+ * non-derived {@link FacetAttribute}s and {@link EAttribute}s and {@link EReference}s and
+ * {@link FacetReference}s are stored in the serialization {@link Resource} specified in the
+ * {@link IFacetManagerFactory} that created this {@link IFacetManager}.
+ *
+ * @since 0.2
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IFacetManager {
+
+ /**
+ * Serialize the model containing the structural feature instances.
+ */
+ void saveStructuralFeatureInstanceModel() throws FacetManagerException;
+
+ /**
+ * Returns whether the given model element conforms to the given Facet
+ *
+ * @param eObject
+ * the model element
+ * @param facet
+ * the Facet the applicability of which is being tested
+ * @throws FacetManagerException
+ * if there is an error evaluating the Facet's conformance typed element
+ * @return whether the given model element should be seen as an instance of the given Facet
+ */
+ boolean isConforming(final EObject eObject, final Facet facet)
+ throws FacetManagerException;
+
+ /**
+ * Set the value of the given {@link EStructuralFeature} on the given
+ * {@link EObject} to the given {@link Object} value.
+ *
+ * @param eObject
+ * the model element whose feature must be set
+ * @param structuralFeature
+ * the feature to set
+ * @param newValue
+ * the new value
+ * @param editingDomain
+ * @throws FacetManagerException
+ * <ul>
+ * <li>if the eObject doesn't conform to the Facet of the given
+ * attribute (in the case of a FacetAttribute)</li>
+ * <li>if the Facet of the given attribute is not applicable to
+ * the given eObject (in the case of a FacetAttribute)</li>
+ * <li>
+ * if there is an error evaluating the Facet's conformance typed
+ * element</li>
+ * </ul>
+ */
+ void set(EObject eObject, EStructuralFeature structuralFeature,
+ Object newValue, EditingDomain editingDomain)
+ throws FacetManagerException;
+
+ /**
+ * Evaluate the given {@link EOperation} of the given {@link EObject}. The
+ * returned value has to be of the given expectedType {@link Class}
+ *
+ * @param eObject
+ * the model element on which the operation is evaluated
+ * @param operation
+ * the operation to evaluate
+ * @param resultType
+ * the expected type of the returned value; if the effective type
+ * is not compatible, an UnmatchingExpectedTypeException will be
+ * thrown
+ * @param arguments
+ * the values of the parameters of the EOperation that is
+ * evaluated: they must match both in size, types and
+ * multiplicity
+ * @return the return value of the operation
+ * @throws FacetManagerException
+ * <ul>
+ * <li>if the effective type does not match the expected type</li>
+ * <li>in case of an error in the query that returns the value
+ * (can only happen in the case of a FacetOperation)</li>
+ * <li>in case of an error when delegating to the Ecore
+ * reflexive API (if the given EOperation is not a
+ * FacetOperation)</li>
+ * <li>if the eObject doesn't conform to the Facet of the given
+ * operation (in the case of a FacetOperation)</li>
+ * <li>if the Facet of the given operation is not applicable to
+ * the given eObject (in the case of a FacetOperation)</li>
+ * <li>if there is an error evaluating the Facet's conformance
+ * typed element</li>
+ * <li>if the given actual parameters don't match the
+ * EOperation's formal parameters</li>
+ * </ul>
+ */
+ <T> T invoke(EObject eObject, EOperation operation,
+ Class<T> resultType, EditingDomain editingDomain,
+ Object... arguments) throws FacetManagerException;
+
+ /**
+ * Invoke the given {@link EOperation} on each element of the given
+ * collection of {@link EObject}s.
+ *
+ * @param eObjects
+ * the model elements on which the operation is evaluated
+ * @param operation
+ * the operation to evaluate
+ * @param arguments
+ * the values of the parameters of the EOperation that is
+ * evaluated: they must match both in size, types and
+ * multiplicity
+ * @return the list of results, one for each model element of the given
+ * <code>eObjects</code>
+ * @throws FacetManagerException
+ * <ul>
+ * <li>in case of an error when delegating to the Ecore
+ * reflexive API (if the given EOperation is not a
+ * FacetOperation)</li>
+ * <li>
+ * in case of an error in the derived typed element that returns
+ * the value</li>
+ * </ul>
+ */
+ List<ETypedElementResult> batchInvoke(Collection<EObject> eObjects,
+ EOperation operation, Object... arguments)
+ throws FacetManagerException;
+
+ /**
+ * This method returns the list of loaded facet sets.
+ *
+ * @return a modifiable list of all FacetSets that
+ * constitute the working context of the FacetManager
+ */
+ List<FacetSet> getManagedFacetSets();
+
+ /** @return the resourceSet used to manage the facet models. */
+ ResourceSet getResourceSet();
+
+ <T> T getOrInvoke(EObject element, ETypedElement query, Class<T> aClass)
+ throws FacetManagerException;
+
+ <T> List<T> getOrInvokeMultiValued(EObject eObject, ETypedElement feature,
+ Class<T> aClass) throws FacetManagerException;
+
+ <T> List<ETypedElementResult> batchGetOrInvoke(Collection<EObject> sources,
+ ETypedElement query, Class<T> aClass) throws FacetManagerException;
+
+ /**
+ * Get virtual references from an EObject. References must be defined in a
+ * FacetSet
+ *
+ * @param eObject
+ * Model element
+ * @return All not duplicated virtual references
+ * @throws FacetManagerException
+ * @since 0.4
+ */
+ Set<EReference> getReferences(EObject eObject) throws FacetManagerException;
+
+ /**
+ * Get virtual attributes from an EObject. References must be defined in a
+ * FacetSet
+ *
+ * @param eObject
+ * Model element
+ * @return All not duplicated virtual attributes
+ * @throws FacetManagerException
+ * @since 0.4
+ */
+ Set<EAttribute> getAttributes(EObject eObject) throws FacetManagerException;
+
+ /**
+ * Get virtual references and attributes from an EObject. References must be
+ * defined in a FacetSet
+ *
+ * @param eObject
+ * Model element
+ * @return All not duplicated virtual references and attributes
+ * @throws FacetManagerException
+ * @since 0.4
+ */
+ Set<EStructuralFeature> getStructuralFeature(EObject eObject)
+ throws FacetManagerException;
+
+ /**
+ * Adds a listener to this manager that will be notified when this manager's
+ * state changes.
+ *
+ * @param listener
+ * The listener to be added
+ * @since 0.4
+ */
+ void addListener(IFacetManagerListener listener);
+
+ /**
+ * Removes a listener from this manager.
+ *
+ * @param listener
+ * The listener to be removed
+ * @since 0.4
+ */
+ void removeListener(IFacetManagerListener listener);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetManagerFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetManagerFactory.java
new file mode 100644
index 00000000000..55c3bc9c7a5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetManagerFactory.java
@@ -0,0 +1,51 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.FacetManagerFactory;
+
+/**
+ * Factory for {@link IFacetManager}.
+ *
+ * @since 0.2
+ */
+public interface IFacetManagerFactory {
+
+ /**
+ * The singleton instance of the factory.
+ */
+ IFacetManagerFactory DEFAULT = new FacetManagerFactory();
+
+ /**
+ * Create an {@link IFacetManager}.
+ *
+ * @param resource
+ * the {@link Resource} in which virtual {@link EStructuralFeature}s are serialized.
+ * Can be null if no EStructuralFeature provided a Facet are used.
+ */
+ IFacetManager getOrCreateFacetManager(Resource resource);
+
+ /**
+ * Create an {@link IFacetManager}.
+ *
+ * @param resourceSet
+ * the resourceSet which will be used to manage the facet models.
+ *
+ */
+ IFacetManager getOrCreateFacetManager(ResourceSet resourceSet);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetManagerListener.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetManagerListener.java
new file mode 100644
index 00000000000..b3e9f5c631e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetManagerListener.java
@@ -0,0 +1,28 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Mia-Maint
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Thomas Cicognani (Soft-Maint) - Bug 420193 - Listener on FacetManager
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core;
+
+/**
+ * This interface allows clients to manage listeners added on the
+ * {@link IFacetManager}
+ *
+ * @since 0.4
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IFacetManagerListener {
+
+ /**
+ * Notifies that the {@link IFacetManager} has changed.
+ */
+ void facetManagerChanged();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetSetCatalogManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetSetCatalogManager.java
new file mode 100644
index 00000000000..4e658188180
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetSetCatalogManager.java
@@ -0,0 +1,26 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core;
+
+import java.util.Collection;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+
+/**
+ * @since 0.2
+ */
+public interface IFacetSetCatalogManager {
+
+ Collection<FacetSet> getRegisteredFacetSets();
+
+ void registerFacetSet(FacetSet facetSet);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetSetCatalogManagerFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetSetCatalogManagerFactory.java
new file mode 100644
index 00000000000..f74ae438d5c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/IFacetSetCatalogManagerFactory.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core;
+
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.FacetCatalogManagerFactory;
+
+/**
+ * @since 0.2
+ */
+public interface IFacetSetCatalogManagerFactory {
+
+ IFacetSetCatalogManagerFactory DEFAULT = new FacetCatalogManagerFactory();
+
+ IFacetSetCatalogManager getOrCreateFacetSetCatalogManager(ResourceSet resourceSet);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/DerivedTypedElementException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/DerivedTypedElementException.java
new file mode 100644
index 00000000000..dcbc98e144d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/DerivedTypedElementException.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 362191 - [Restructuring] Query mechanism for eFacet2
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.exception;
+
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.DerivedTypedElementEvaluationException;
+
+/**
+ * This exception is raised when something is wrong with a query, and there is not a more specific
+ * sub-class to describe the error (e.g. {@link DerivedTypedElementEvaluationException} )
+ * @since 0.2
+ */
+public class DerivedTypedElementException extends Exception {
+
+ // This class is a copy of :
+ // org.eclipse.papyrus.emf.facet.infra.query.core.exception.ModelQueryException
+
+ private static final long serialVersionUID = -3203874059325745157L;
+
+ public DerivedTypedElementException(final String message) {
+ super(message);
+ }
+
+ public DerivedTypedElementException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+ public DerivedTypedElementException(final Throwable cause) {
+ super(cause);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/FacetManagerException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/FacetManagerException.java
new file mode 100644
index 00000000000..f3c8556e64b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/FacetManagerException.java
@@ -0,0 +1,37 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.exception;
+
+/**
+ * @since 0.2
+ */
+public class FacetManagerException extends Exception {
+
+ private static final long serialVersionUID = -4670132391244495825L;
+
+ public FacetManagerException() {
+ super();
+ }
+
+ public FacetManagerException(final String message) {
+ super(message);
+ }
+
+ public FacetManagerException(final Throwable cause) {
+ super(cause);
+ }
+
+ public FacetManagerException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/QueryException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/QueryException.java
new file mode 100644
index 00000000000..c5a45f63fad
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/QueryException.java
@@ -0,0 +1,39 @@
+/**
+ * Copyright (c) 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.exception;
+
+/**
+ * This exception is raised when something is wrong with a query, and there is not a more specific
+ * sub-class to describe the error (e.g. {@link QueryExecutionException} )
+ *
+ * @deprecated replaced by {@link DerivedTypedElementException}
+ */
+@Deprecated
+public class QueryException extends Exception {
+
+ // This class is a copy of :
+ // org.eclipse.papyrus.emf.facet.infra.query.core.exception.ModelQueryException
+
+ private static final long serialVersionUID = -3203874059325745157L;
+
+ public QueryException(final String message) {
+ super(message);
+ }
+
+ public QueryException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+ public QueryException(final Throwable cause) {
+ super(cause);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/QueryExecutionException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/QueryExecutionException.java
new file mode 100644
index 00000000000..ae58194f65a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/QueryExecutionException.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.exception;
+
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.DerivedTypedElementEvaluationException;
+
+/**
+ * This exception occurs when something goes wrong during the execution of a
+ * query.
+ *
+ * @deprecated replaced by {@link DerivedTypedElementEvaluationException} cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=374678
+ */
+@Deprecated
+public class QueryExecutionException extends QueryException {
+ // This class is a copy of
+ // org.eclipse.papyrus.emf.facet.infra.query.core.ModelQueryExecutionException
+
+ private static final long serialVersionUID = -8464252257666617685L;
+
+ public QueryExecutionException(final String message) {
+ super(message);
+ }
+
+ public QueryExecutionException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+ public QueryExecutionException(final Throwable cause) {
+ super(cause);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/QueryTypeCheckingException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/QueryTypeCheckingException.java
new file mode 100644
index 00000000000..133ff6cfefc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/exception/QueryTypeCheckingException.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.exception;
+
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.DerivedTypedElementTypeCheckingException;
+
+/**
+ * This exception occurs when the type of a query result is not the one expected
+ *
+ * @deprecated replaced by {@link DerivedTypedElementTypeCheckingException}
+ */
+@Deprecated
+public class QueryTypeCheckingException extends QueryException {
+
+ private static final long serialVersionUID = -9064274334817642819L;
+
+ public QueryTypeCheckingException(final String message) {
+ super(message);
+ }
+
+ public QueryTypeCheckingException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+ public QueryTypeCheckingException(final Throwable cause) {
+ super(cause);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/Activator.java
new file mode 100644
index 00000000000..28887c6e111
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/Activator.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+public class Activator extends Plugin {
+
+ private static BundleContext context;
+
+ static BundleContext getContext() {
+ return Activator.context;
+ }
+
+ @Override
+ public void start(final BundleContext bundleContext) throws Exception {
+ super.start(bundleContext);
+ Activator.context = bundleContext;
+ Activator.plugin = this;
+ }
+
+ @Override
+ public void stop(final BundleContext bundleContext) throws Exception {
+ Activator.context = null;
+ Activator.plugin = null;
+ super.stop(bundleContext);
+ }
+
+ // The shared instance
+ private static Activator plugin;
+
+ public static Plugin getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/CastUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/CastUtils.java
new file mode 100644
index 00000000000..c4c1993064a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/CastUtils.java
@@ -0,0 +1,88 @@
+/*******************************************************************************
+ * Copyright (c) 2011, 2012 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Grégoire Dupé (Mia-Software) - Bug 361612 - [Restructuring] New core for new version of the Facet metamodel
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal;
+
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.UnmatchingExpectedTypeException;
+
+public final class CastUtils {
+
+ private CastUtils() {
+ //Must no be used.
+ }
+
+ /**
+ * Cast the given value to a List of the given type
+ *
+ * @param value
+ * the list
+ * @param expectedType
+ * the expected type of the list elements
+ * @param checkType
+ * whether to check the type of each element in the given list; should be
+ * <code>true</code> if the list comes from outside the framework, and
+ * <code>false</code> if the list is managed by the framework (and so already
+ * checked)
+ * @return the cast list
+ * @throws UnmatchingExpectedTypeException
+ */
+ @SuppressWarnings("unchecked")
+ //@SuppressWarnings("unchecked") The cast is checked by the both if statement.
+ public static <T> List<T> castToExpectedListType(final Object value, final Class<T> expectedType, final boolean checkType)
+ throws UnmatchingExpectedTypeException {
+ List<T> newList = new LinkedList<T>();
+ if (value instanceof List) {
+ newList = (List<T>) value;
+ } else {
+ newList.add((T) value);
+ }
+ final List<T> list = newList;
+ if (checkType) {
+ checkTypeOfAllListElements(list, expectedType);
+ }
+ return list;
+ }
+
+ @SuppressWarnings("unchecked")
+ //@SuppressWarnings("unchecked") This method is used to isolate unsafe cast.
+ public static <T> T castToExpectedType(final Object value, final Class<T> expectedType)
+ throws UnmatchingExpectedTypeException {
+ try {
+ return (T) value;
+ } catch (ClassCastException e) {
+ throw new UnmatchingExpectedTypeException("Type mismatch. Expected: " + //$NON-NLS-1$
+ expectedType.getClass().getName() + ", got " + value.getClass().getName(), e); //$NON-NLS-1$);
+ }
+ }
+
+ public static void checkTypeOfAllListElements(final List<?> list, final Class<?> expectedType) throws UnmatchingExpectedTypeException {
+ if (expectedType == null) {
+ // null means match everything
+ return;
+ }
+ final Iterator<?> iterator = list.iterator();
+ int index = -1;
+ while (iterator.hasNext()) {
+ final Object object = iterator.next();
+ index++;
+ if (object != null && !expectedType.isInstance(object)) {
+ throw new UnmatchingExpectedTypeException("Type mismatch at index " + index, expectedType, object); //$NON-NLS-1$
+ }
+ }
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/DerivedTypedElementManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/DerivedTypedElementManager.java
new file mode 100644
index 00000000000..6c25a18383e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/DerivedTypedElementManager.java
@@ -0,0 +1,877 @@
+/**
+ * Copyright (c) 2011, 2012, 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Nicolas Bros (Mia-Software) - Bug 362191 - [Restructuring] Query mechanism for eFacet2
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Gregoire Dupe (Mia-Software) - Bug 418885 - ETypedElementSwitchQuery implemented using a deprecated query evaluator extension point
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal;
+
+import java.util.Collection;
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.DerivedTypedElementEvaluationException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.DerivedTypedElementTypeCheckingException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.UnmatchingExpectedTypeException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.query.DerivedTypedElementImplementationFactoryRegistry;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.query.QueryImplementationFactoryRegistry;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.query.QueryUtils;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IDerivedTypedElementImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+
+public class DerivedTypedElementManager implements IDerivedTypedElementManager {
+
+ public Object evaluate(final DerivedTypedElement derivedTypedElement,
+ final EObject source, final List<ParameterValue> parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ Object result;
+ if (derivedTypedElement.isMany()) {
+ result = evaluateMultiValued(derivedTypedElement, source, parameterValues, null, facetManager);
+ } else {
+ result = evaluateSingleValued(derivedTypedElement, source, parameterValues, null, facetManager);
+ }
+ return result;
+ }
+
+ public Object evaluate(final Query query, final EObject source, final List<ParameterValue> parameterValues, final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ final IQueryImplementation evaluator = QueryImplementationFactoryRegistry.INSTANCE.getEvaluatorFor(query, this);
+ final DerivedTypedElement derivedTE = QueryUtils.getOwningDerivedTypedElement(query);
+ Object result;
+ try {
+ result = evaluator.getValue(query, derivedTE, source, parameterValues, facetManager);
+ } catch (Exception e) {
+ throw new DerivedTypedElementEvaluationException(e);
+ }
+ return result;
+ }
+
+ public <T> T evaluateSingleValued(final DerivedTypedElement derivedTypedElement,
+ final EObject source, final List<ParameterValue> parameterValues, final Class<T> expectedType, final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ if (derivedTypedElement.isMany()) {
+ throw new IllegalArgumentException("This method doesn't accept a multi-valued derived typed element."); //$NON-NLS-1$
+ }
+
+ Query query = derivedTypedElement.getQuery();
+ if (query == null) {
+ throw new DerivedTypedElementException("The given derived typed element doesn't contain a query"); //$NON-NLS-1$
+ }
+ Object queryResult = evaluate(derivedTypedElement, source, parameterValues, facetManager, query);
+
+ // expectedResultType == null means match everything
+ // And a null value for queryResult matches any type
+ if (expectedType != null && queryResult != null && !expectedType.isInstance(queryResult)) {
+ Exception e1 = new UnmatchingExpectedTypeException(
+ "The derived typed element did not evaluate to the expected type", expectedType, queryResult); //$NON-NLS-1$
+ throw new DerivedTypedElementException(e1);
+ }
+ // just checked
+ @SuppressWarnings("unchecked")
+ T typedQueryResult = (T) queryResult;
+ return typedQueryResult;
+ }
+
+ public <T> List<T> evaluateMultiValued(final DerivedTypedElement derivedTypedElement,
+ final EObject source, final List<ParameterValue> parameterValues, final Class<T> expectedType, final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ if (!derivedTypedElement.isMany()) {
+ throw new IllegalArgumentException("This method doesn't accept a single-valued derived typed element."); //$NON-NLS-1$
+ }
+
+ Query query = derivedTypedElement.getQuery();
+ if (query == null) {
+ throw new DerivedTypedElementException("The given derived typed element doesn't contain a query"); //$NON-NLS-1$
+ }
+ Object queryResult = evaluate(derivedTypedElement, source, parameterValues, facetManager, query);
+ queryResult = setAsList(queryResult);
+ List<T> result;
+ if (queryResult instanceof List<?>) {
+ List<?> queryListResult = (List<?>) queryResult;
+ for (Object queryResultElement : queryListResult) {
+ // expectedType == null means match everything
+ // And a null queryResultElement for queryResult matches any type
+ if (expectedType != null && queryResultElement != null && !expectedType.isInstance(queryResultElement)) {
+ Exception e1 = new UnmatchingExpectedTypeException(
+ "The derived typed element did not evaluate to the expected type"); //$NON-NLS-1$
+ throw new DerivedTypedElementException(e1);
+ }
+ }
+ // just checked
+ @SuppressWarnings("unchecked")
+ List<T> typedQueryListResult = (List<T>) queryListResult;
+ result = typedQueryListResult;
+ } else {
+ throw new DerivedTypedElementException("The given multi-valued derived typed element did not evaluate to a List."); //$NON-NLS-1$
+ }
+ return result;
+ }
+
+ protected Object evaluate(final DerivedTypedElement derivedTE, final EObject source, final List<ParameterValue> parameterValues,
+ final IFacetManager facetManager, final Query query) throws DerivedTypedElementException {
+ Object queryResult;
+ IQueryImplementation evaluator = null;
+ IDerivedTypedElementImplementation evaluator2 = null;
+ try {
+ evaluator = QueryImplementationFactoryRegistry.INSTANCE.getEvaluatorFor(query, this);
+ } catch (DerivedTypedElementException exc) {
+ final String message = String.format(
+ "%s will try to use a deprected implementation", //$NON-NLS-1$
+ this.getClass().getName());
+ Logger.logError(exc, message, Activator.getDefault());
+ evaluator2 = DerivedTypedElementImplementationFactoryRegistry.INSTANCE.getEvaluatorFor(query, this);
+ }
+ if (evaluator == null) {
+ queryResult = evaluateAndCheck(derivedTE, source, parameterValues, evaluator2, facetManager);
+ } else {
+ queryResult = evaluateAndCheck(derivedTE.getQuery(), source, parameterValues, evaluator, facetManager);
+ }
+ return queryResult;
+ }
+
+ /** @deprecated support for the deprecated {@link IDerivedTypedElementImplementation} */
+ @Deprecated
+ private static Object evaluateAndCheck(final DerivedTypedElement derivedTE, final EObject source,
+ final List<ParameterValue> parameterValues, final IDerivedTypedElementImplementation evaluator, final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ Query query = derivedTE.getQuery();
+ checkQuery(query, source);
+ Object result;
+ try {
+ result = evaluator.getValue(derivedTE, source, parameterValues, facetManager);
+ } catch (Throwable e) {
+ if (e instanceof DerivedTypedElementEvaluationException) {
+ throw (DerivedTypedElementEvaluationException) e;
+ }
+ throw new DerivedTypedElementEvaluationException(e);
+ }
+ // result = setAsList(result);
+ // gdupe: I don't understand why the result is wrapped in a list
+ checkResult(query, result, evaluator.getCheckResultType(),
+ isPrimitive(QueryUtils.getReturnType(query)));
+ return result;
+ }
+
+ private static Object evaluateAndCheck(final Query query, final EObject source, final List<ParameterValue> parameterValues,
+ final IQueryImplementation evaluator, final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ checkQuery(query, source);
+ Object result;
+ try {
+ result = evaluator.getValue(query, QueryUtils.getOwningDerivedTypedElement(query), source, parameterValues, facetManager);
+ } catch (Throwable e) {
+ if (e instanceof DerivedTypedElementEvaluationException) {
+ throw (DerivedTypedElementEvaluationException) e;
+ }
+ throw new DerivedTypedElementEvaluationException(e);
+ }
+ checkResult(query, result, evaluator.isCheckResultType(), isPrimitive(QueryUtils.getReturnType(query)));
+ return result;
+ }
+
+ private static void checkQuery(final Query query, final EObject source) throws DerivedTypedElementException {
+ if (query == null) {
+ throw new IllegalArgumentException("query cannot be null"); //$NON-NLS-1$
+ }
+
+ EClassifier sourceType = QueryUtils.getSourceType(query);
+ if (sourceType == null && source != null) {
+ throw new DerivedTypedElementException("the query's sourceType is null and the source is not null"); //$NON-NLS-1$
+ }
+
+ // a null value for eObject matches any type
+ if (sourceType != null && source != null && !sourceType.isInstance(source)) {
+ StringBuffer message = new StringBuffer();
+ message.append("Wrong source type (for " + QueryUtils.getQueryDescription(query) + "): '"); //$NON-NLS-1$ //$NON-NLS-2$
+ message.append(source.eClass().getName());
+ message.append("' found; expected '"); //$NON-NLS-1$
+ message.append(sourceType.getName());
+ message.append("'."); //$NON-NLS-1$
+ throw new DerivedTypedElementTypeCheckingException(message.toString());
+ }
+ }
+
+ // public List<? extends AbstractDerivedTypedElementResult> evaluate(final DerivedTypedElement
+ // derivedTypedElement, final Collection<EObject> sources,
+ // final List<ParameterValue> parameterValues) throws DerivedTypedElementException {
+ // if (derivedTypedElement.isMany()) {
+ // try {
+ // return evaluateSingleValued(derivedTypedElement, sources, parameterValues, null);
+ // } catch (UnmatchingExpectedTypeException e) {
+ // // should never happen
+ // throw new IllegalStateException("Unexpected error"); //$NON-NLS-1$
+ // }
+ // } else {
+ // try {
+ // return evaluateMultiValued(derivedTypedElement, sources, parameterValues, null);
+ // } catch (UnmatchingExpectedTypeException e) {
+ // // should never happen
+ // throw new IllegalStateException("Unexpected error"); //$NON-NLS-1$
+ // }
+ // }
+ // }
+
+
+ // batch evaluation disabled : Bug 365429 - DerivedTypedElementManager : re-implement batch evaluation
+
+ public <T extends ETypedElementResult> List<T> batchEvaluate(final DerivedTypedElement derivedTypedElement,
+ final Collection<? extends EObject> sources, final List<ParameterValue> parameterValues, final Class<T> expectedType, final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+
+ throw new UnsupportedOperationException("not implemented yet"); //$NON-NLS-1$
+
+// if (derivedTypedElement == null) {
+// throw new IllegalArgumentException("The given derived typed element must not be null"); //$NON-NLS-1$
+// }
+//
+// List<T> abstractResultList;
+//
+// Query query = derivedTypedElement.getQuery();
+// if (query == null) {
+// throw new DerivedTypedElementException("The given derived typed element doesn't contain a query"); //$NON-NLS-1$
+// }
+// EClassifier eType = derivedTypedElement.getEType();
+// if (eType == null) {
+// throw new DerivedTypedElementException("The given derived typed element has a null type"); //$NON-NLS-1$
+// }
+// IDerivedTypedElementImplementation evaluator = DerivedTypedElementImplementationFactoryRegistry.INSTANCE.getEvaluatorFor(query);
+// if (evaluator == null) {
+// throw new DerivedTypedElementEvaluationException("No evaluator was found for a query of type " + query.getClass().getName()); //$NON-NLS-1$
+// }
+//
+// final boolean primitiveType = isPrimitive(eType);
+//
+// // if the evaluator implements multiple evaluation itself, then use it
+// if (evaluator instanceof IDerivedTypedElementCollectionImplementation) {
+// IDerivedTypedElementCollectionImplementation collectionEvaluator = (IDerivedTypedElementCollectionImplementation) evaluator;
+// if (derivedTypedElement.isMany()) {
+// if (primitiveType) {
+// if (expectedType != DerivedTypedElementPrimitiveTypeListResult.class) {
+// throw new UnmatchingExpectedTypeException("The derivedTypedElement is multi-valued, and its type is primitive, " + //$NON-NLS-1$
+// "so expectedType must be " + DerivedTypedElementPrimitiveTypeListResult.class.getSimpleName()); //$NON-NLS-1$
+// }
+// List<DerivedTypedElementPrimitiveTypeListResult<?>> listResultList = batchEvaluateMultiValuedPrimitiveDerivedTypedElementWithCollectionEvaluator(
+// derivedTypedElement, sources, parameterValues, collectionEvaluator);
+// // we just checked the type parameter T through expectedType
+// @SuppressWarnings("unchecked")
+// List<T> castList = (List<T>) listResultList;
+// abstractResultList = castList;
+// } else {
+// if (expectedType != DerivedTypedElementEObjectListResult.class) {
+// throw new UnmatchingExpectedTypeException("The derivedTypedElement is multi-valued, and it returns model elements, " + //$NON-NLS-1$
+// "so expectedType must be " + DerivedTypedElementEObjectListResult.class.getSimpleName()); //$NON-NLS-1$
+// }
+// List<DerivedTypedElementEObjectListResult<?>> listResultList = batchEvaluateMultiValuedEObjectDerivedTypedElementWithCollectionEvaluator(
+// derivedTypedElement, sources, parameterValues, collectionEvaluator);
+// // we just checked the type parameter T through expectedType
+// @SuppressWarnings("unchecked")
+// List<T> castList = (List<T>) listResultList;
+// abstractResultList = castList;
+// }
+// } else {
+// if (primitiveType) {
+// if (expectedType != DerivedTypedElementPrimitiveTypeResult.class) {
+// throw new UnmatchingExpectedTypeException("The derivedTypedElement is single-valued, and its type is primitive, " + //$NON-NLS-1$
+// "so expectedType must be " + DerivedTypedElementPrimitiveTypeResult.class.getSimpleName()); //$NON-NLS-1$
+// }
+// List<DerivedTypedElementPrimitiveTypeResult<?>> resultList = batchEvaluateSingleValuedPrimitiveDerivedTypedElementWithCollectionEvaluator(
+// derivedTypedElement, sources, parameterValues, collectionEvaluator);
+// // we just checked the type parameter T through expectedType
+// @SuppressWarnings("unchecked")
+// List<T> castList = (List<T>) resultList;
+// abstractResultList = castList;
+// } else {
+// if (expectedType != DerivedTypedElementEObjectResult.class) {
+// throw new UnmatchingExpectedTypeException("The derivedTypedElement is single-valued, and it returns a model element, " + //$NON-NLS-1$
+// "so expectedType must be " + DerivedTypedElementEObjectResult.class.getSimpleName()); //$NON-NLS-1$
+// }
+// List<DerivedTypedElementEObjectResult<?>> resultList = batchEvaluateSingleValuedEObjectDerivedTypedElementWithCollectionEvaluator(
+// derivedTypedElement, sources, parameterValues, collectionEvaluator);
+// // we just checked the type parameter T through expectedType
+// @SuppressWarnings("unchecked")
+// List<T> castList = (List<T>) resultList;
+// abstractResultList = castList;
+// }
+// }
+//
+// } else {
+// // otherwise, do multiple evaluation by calling the evaluator's
+// // single evaluation multiple times
+//
+// if (derivedTypedElement.isMany()) {
+// if (primitiveType) {
+// if (expectedType != DerivedTypedElementPrimitiveTypeListResult.class) {
+// throw new UnmatchingExpectedTypeException("The derivedTypedElement is multi-valued, and its type is primitive, " + //$NON-NLS-1$
+// "so expectedType must be " + DerivedTypedElementPrimitiveTypeListResult.class.getSimpleName()); //$NON-NLS-1$
+// }
+// List<DerivedTypedElementPrimitiveTypeListResult<?>> listResultList = batchEvaluateMultiValuedPrimitiveDerivedTypedElementWithSimpleEvaluator(
+// derivedTypedElement, sources, parameterValues, evaluator);
+// @SuppressWarnings("unchecked")
+// List<T> castList = (List<T>) listResultList;
+// abstractResultList = castList;
+// } else {
+// if (expectedType != DerivedTypedElementEObjectListResult.class) {
+// throw new UnmatchingExpectedTypeException("The derivedTypedElement is multi-valued, and it returns model elements, " + //$NON-NLS-1$
+// "so expectedType must be " + DerivedTypedElementEObjectListResult.class.getSimpleName()); //$NON-NLS-1$
+// }
+// List<DerivedTypedElementEObjectListResult<?>> listResultList = batchEvaluateMultiValuedEObjectDerivedTypedElementWithSimpleEvaluator(
+// derivedTypedElement, sources, parameterValues, evaluator);
+// @SuppressWarnings("unchecked")
+// List<T> castList = (List<T>) listResultList;
+// abstractResultList = castList;
+// }
+// } else {
+// if (primitiveType) {
+// if (expectedType != DerivedTypedElementPrimitiveTypeResult.class) {
+// throw new UnmatchingExpectedTypeException("The derivedTypedElement is single-valued, and its type is primitive, " + //$NON-NLS-1$
+// "so expectedType must be " + DerivedTypedElementPrimitiveTypeResult.class.getSimpleName()); //$NON-NLS-1$
+// }
+// List<DerivedTypedElementPrimitiveTypeResult<?>> resultList = batchEvaluateSingleValuedPrimitiveDerivedTypedElementWithSimpleCollectionEvaluator(
+// derivedTypedElement, sources, parameterValues, evaluator);
+// @SuppressWarnings("unchecked")
+// List<T> castList = (List<T>) resultList;
+// abstractResultList = castList;
+// } else {
+// if (expectedType != DerivedTypedElementEObjectResult.class) {
+// throw new UnmatchingExpectedTypeException("The derivedTypedElement is single-valued, and it returns a model element, " + //$NON-NLS-1$
+// "so expectedType must be " + DerivedTypedElementEObjectResult.class.getSimpleName()); //$NON-NLS-1$
+// }
+// List<DerivedTypedElementEObjectResult<?>> resultList = batchEvaluateSingleValuedEObjectDerivedTypedElementWithSimpleCollectionEvaluator(
+// derivedTypedElement, sources, parameterValues, null);
+// @SuppressWarnings("unchecked")
+// List<T> castList = (List<T>) resultList;
+// abstractResultList = castList;
+// }
+// }
+// }
+// return abstractResultList;
+ }
+
+// private static List<DerivedTypedElementPrimitiveTypeListResult<?>> batchEvaluateMultiValuedPrimitiveDerivedTypedElementWithCollectionEvaluator(
+// final DerivedTypedElement derivedTypedElement, final Collection<EObject> sources, final List<ParameterValue> parameterValues,
+// final IDerivedTypedElementCollectionImplementation collectionEvaluator)
+// throws DerivedTypedElementException {
+//
+// List<? extends AbstractDerivedTypedElementResult> listResultList = collectionEvaluator
+// .getValues(derivedTypedElement, sources, parameterValues);
+//
+// // check the return type from the evaluator in order to be able to cast safely
+// for (int index = 0; index < listResultList.size(); index++) {
+// AbstractDerivedTypedElementResult elementResult = listResultList.get(index);
+// if (elementResult instanceof DerivedTypedElementPrimitiveTypeListResult<?>) {
+// DerivedTypedElementPrimitiveTypeListResult<?> derivedTypedElementPrimitiveTypeListResult = (DerivedTypedElementPrimitiveTypeListResult<?>) elementResult;
+// checkResult(derivedTypedElement.getQuery(), derivedTypedElementPrimitiveTypeListResult.getResultList(),
+// collectionEvaluator.getCheckResultType());
+// } else {
+// throw new DerivedTypedElementEvaluationException(ErrorHandlingUtils.buildWrongTypeMessage(
+// "Wrong element type at index " + index + " in the result from the evaluator: " + collectionEvaluator.getClass().getName(), //$NON-NLS-1$//$NON-NLS-2$
+// DerivedTypedElementPrimitiveTypeListResult.class, elementResult));
+// }
+// }
+//
+// // just checked
+// @SuppressWarnings("unchecked")
+// List<DerivedTypedElementPrimitiveTypeListResult<?>> result = (List<DerivedTypedElementPrimitiveTypeListResult<?>>) listResultList;
+// return result;
+// }
+//
+// private static List<DerivedTypedElementEObjectListResult<?>> batchEvaluateMultiValuedEObjectDerivedTypedElementWithCollectionEvaluator(
+// final DerivedTypedElement derivedTypedElement, final Collection<EObject> sources, final List<ParameterValue> parameterValues,
+// final IDerivedTypedElementCollectionImplementation collectionEvaluator)
+// throws DerivedTypedElementException {
+// List<? extends AbstractDerivedTypedElementResult> listResultList = collectionEvaluator
+// .getValues(derivedTypedElement, sources, parameterValues);
+//
+// // check the return type from the evaluator in order to be able to cast safely
+// for (int index = 0; index < listResultList.size(); index++) {
+// AbstractDerivedTypedElementResult elementResult = listResultList.get(index);
+// if (elementResult instanceof DerivedTypedElementEObjectListResult<?>) {
+// DerivedTypedElementEObjectListResult<?> derivedTypedElementEObjectListResult = (DerivedTypedElementEObjectListResult<?>) elementResult;
+// checkResult(derivedTypedElement.getQuery(), derivedTypedElementEObjectListResult.getResultList(),
+// collectionEvaluator.getCheckResultType());
+// } else {
+// throw new DerivedTypedElementEvaluationException(ErrorHandlingUtils.buildWrongTypeMessage(
+// "Wrong element type at index " + index + " in the result from the evaluator: " + collectionEvaluator.getClass().getName(), //$NON-NLS-1$//$NON-NLS-2$
+// DerivedTypedElementEObjectListResult.class, elementResult));
+// }
+// }
+//
+// // just checked
+// @SuppressWarnings("unchecked")
+// List<DerivedTypedElementEObjectListResult<?>> result = (List<DerivedTypedElementEObjectListResult<?>>) listResultList;
+// return result;
+// }
+//
+// private static List<DerivedTypedElementPrimitiveTypeResult<?>> batchEvaluateSingleValuedPrimitiveDerivedTypedElementWithCollectionEvaluator(
+// final DerivedTypedElement derivedTypedElement, final Collection<EObject> sources, final List<ParameterValue> parameterValues,
+// final IDerivedTypedElementCollectionImplementation collectionEvaluator)
+// throws DerivedTypedElementException {
+// // TODO Auto-generated method stub
+// return null;
+// }
+//
+// private static List<DerivedTypedElementEObjectResult<?>> batchEvaluateSingleValuedEObjectDerivedTypedElementWithCollectionEvaluator(
+// final DerivedTypedElement derivedTypedElement, final Collection<EObject> sources, final List<ParameterValue> parameterValues,
+// final IDerivedTypedElementCollectionImplementation collectionEvaluator) throws DerivedTypedElementException {
+// // TODO Auto-generated method stub
+// return null;
+// }
+//
+// private static List<DerivedTypedElementPrimitiveTypeListResult<?>> batchEvaluateMultiValuedPrimitiveDerivedTypedElementWithSimpleEvaluator(
+// final DerivedTypedElement derivedTypedElement, final Collection<EObject> sources, final List<ParameterValue> parameterValues,
+// final IDerivedTypedElementImplementation evaluator) {
+//
+// Query query = derivedTypedElement.getQuery();
+//
+// List<DerivedTypedElementPrimitiveTypeListResult<?>> listResultList = new ArrayList<DerivedTypedElementPrimitiveTypeListResult<?>>();
+// for (EObject eObject : sources) {
+// DerivedTypedElementPrimitiveTypeListResult<Object> primitiveTypeListResult = EFacetFactory.eINSTANCE
+// .createDerivedTypedElementPrimitiveTypeListResult();
+//
+// Throwable error = null;
+// try {
+// primitiveTypeListResult.setSource(eObject);
+// primitiveTypeListResult.setDerivedTypedElement(derivedTypedElement);
+// setParameterValues(primitiveTypeListResult.getParameterValues(), parameterValues);
+// checkSourceType(query.getSourceType(), query, eObject);
+// } catch (Throwable e) {
+// error = e;
+// }
+// if (error != null) {
+// primitiveTypeListResult.setException(error);
+// } else {
+// try {
+// Object evaluationResult = evaluator.getValue(derivedTypedElement, eObject, parameterValues);
+// checkResult(query, evaluationResult, evaluator.getCheckResultType());
+// // checked by checkResult
+// Collection<?> evaluationResultCollection = (Collection<?>) evaluationResult;
+// for (Object object : evaluationResultCollection) {
+// primitiveTypeListResult.getResultList().add(object);
+// }
+// } catch (Throwable e) {
+// primitiveTypeListResult.setException(e);
+// }
+// }
+// listResultList.add(primitiveTypeListResult);
+//
+// }
+// return listResultList;
+// }
+//
+// private static List<DerivedTypedElementEObjectListResult<?>> batchEvaluateMultiValuedEObjectDerivedTypedElementWithSimpleEvaluator(
+// final DerivedTypedElement derivedTypedElement, final Collection<EObject> sources, final List<ParameterValue> parameterValues,
+// final IDerivedTypedElementImplementation evaluator) {
+// Query query = derivedTypedElement.getQuery();
+//
+// List<DerivedTypedElementEObjectListResult<?>> listResultList = new ArrayList<DerivedTypedElementEObjectListResult<?>>();
+// for (EObject eObject : sources) {
+// DerivedTypedElementEObjectListResult<EObject> eObjectListResult = EFacetFactory.eINSTANCE
+// .createDerivedTypedElementEObjectListResult();
+//
+// Throwable error = null;
+// try {
+// eObjectListResult.setSource(eObject);
+// eObjectListResult.setDerivedTypedElement(derivedTypedElement);
+// setParameterValues(eObjectListResult.getParameterValues(), parameterValues);
+// checkSourceType(query.getSourceType(), query, eObject);
+// } catch (Throwable e) {
+// error = e;
+// }
+// if (error != null) {
+// eObjectListResult.setException(error);
+// } else {
+// try {
+// Object evaluationResult = evaluator.getValue(derivedTypedElement, eObject, parameterValues);
+// checkResult(query, evaluationResult, evaluator.getCheckResultType(), false);
+// // checked by checkResult
+// @SuppressWarnings("unchecked")
+// Collection<? extends EObject> evaluationResultCollection = (Collection<? extends EObject>) evaluationResult;
+// for (EObject e : evaluationResultCollection) {
+// eObjectListResult.getResultList().add(e);
+// }
+// } catch (Throwable e) {
+// eObjectListResult.setException(e);
+// }
+// }
+// listResultList.add(eObjectListResult);
+//
+// }
+// return listResultList;
+// }
+//
+// private static List<DerivedTypedElementPrimitiveTypeResult<?>> batchEvaluateSingleValuedPrimitiveDerivedTypedElementWithSimpleCollectionEvaluator(
+// final DerivedTypedElement derivedTypedElement, final Collection<EObject> sources, final List<ParameterValue> parameterValues,
+// final IDerivedTypedElementImplementation evaluator)
+// throws DerivedTypedElementException {
+// // TODO Auto-generated method stub
+// return null;
+// }
+//
+// private static List<DerivedTypedElementEObjectResult<?>> batchEvaluateSingleValuedEObjectDerivedTypedElementWithSimpleCollectionEvaluator(
+// final DerivedTypedElement derivedTypedElement, final Collection<EObject> sources, final List<ParameterValue> parameterValues,
+// final IDerivedTypedElementImplementation evaluator)
+// throws DerivedTypedElementException {
+// // TODO Auto-generated method stub
+// return null;
+// }
+
+// public <T> List<DerivedTypedElementListResult<T>> evaluateMultiValued(final DerivedTypedElement derivedTypedElement,
+// final Collection<? extends EObject> sources, final List<ParameterValue> parameterValues,
+// final Class<T> expectedType)
+// throws DerivedTypedElementException, UnmatchingExpectedTypeException {
+// if (!derivedTypedElement.isMany()) {
+// throw new IllegalArgumentException("This method doesn't accept a single-valued derived typed element."); //$NON-NLS-1$
+// }
+//
+// Query query = derivedTypedElement.getQuery();
+// if (query == null) {
+// throw new DerivedTypedElementException("The given derived typed element doesn't contain a query"); //$NON-NLS-1$
+// }
+// IDerivedTypedElementImplementation evaluator =
+// DerivedTypedElementImplementationFactoryRegistry.INSTANCE.getEvaluatorFor(query);
+//
+// List<?> queryResult = batchEvaluateAndCheck(derivedTypedElement, sources, parameterValues,
+// evaluator);
+// // Java doesn't support co- or contra-variance on generics,
+// // so we can't return the right type
+// @SuppressWarnings("unchecked")
+// List<DerivedTypedElementListResult<T>> multiResultList =
+// (List<DerivedTypedElementListResult<T>>) queryResult;
+//
+// // check each result element in each result list
+// if (expectedType != null) {
+// int sourceIndex = 0;
+// for (DerivedTypedElementListResult<?> derivedTypedElementResult : multiResultList) {
+// EList<?> resultList = derivedTypedElementResult.getResultList();
+// int index = 0;
+// for (Object resultElement : resultList) {
+// // a null value for resultElement matches any type
+// if (resultElement != null && !expectedType.isInstance(resultElement)) {
+// throw new UnmatchingExpectedTypeException(
+// "The element at index " + index + " in the list that resulted from the evaluation of the multi-valued " //$NON-NLS-1$ //$NON-NLS-2$
+// + "derived typed element does not match the expected type " //$NON-NLS-1$
+// + "for the source element at index " + sourceIndex, expectedType, resultElement); //$NON-NLS-1$
+// }
+// index++;
+// }
+// sourceIndex++;
+// }
+// }
+// return multiResultList;
+// }
+//
+// private static List<?> batchEvaluateAndCheck(final DerivedTypedElement derivedTypedElement,
+// final Collection<EObject> eObjects,
+// final List<ParameterValue> parameterValues, final IDerivedTypedElementImplementation
+// evaluator)
+// throws DerivedTypedElementException {
+// List<?> result;
+//
+// Query query = derivedTypedElement.getQuery();
+// if (query == null) {
+// throw new IllegalArgumentException("the query cannot be null"); //$NON-NLS-1$
+// }
+//
+// EClassifier sourceType = query.getSourceType();
+//
+// final boolean primitiveType = derivedTypedElement instanceof EAttribute;
+//
+// if (derivedTypedElement.isMany()) {
+// if (evaluator instanceof IDerivedTypedElementCollectionImplementation) {
+// IDerivedTypedElementCollectionImplementation collectionEvaluator =
+// (IDerivedTypedElementCollectionImplementation) evaluator;
+// // List<? extends AbstractDerivedTypedElementResult> listResultList =
+// // collectionEvaluator
+// // .getValues(derivedTypedElement, eObjects, parameterValues);
+// // int index = 0;
+// // for (AbstractDerivedTypedElementResult listResult : listResultList) {
+// // EList<?> resultList;
+// // if (primitiveType && listResult instanceof
+// // DerivedTypedElementPrimitiveTypeListResult<?>) {
+// // DerivedTypedElementPrimitiveTypeListResult<?> primitiveListResult =
+// // (DerivedTypedElementPrimitiveTypeListResult<?>) listResult;
+// // resultList = primitiveListResult.getResultList();
+// // } else if (!primitiveType && listResult instanceof
+// // DerivedTypedElementEObjectListResult<?>) {
+// // DerivedTypedElementEObjectListResult<?> eObjectListResult =
+// // (DerivedTypedElementEObjectListResult<?>) listResult;
+// // resultList = eObjectListResult.getResultList();
+// // } else {
+// // throw new DerivedTypedElementEvaluationException(
+// // "Wrong element type at index " + index + " in the result from the evaluator " + collectionEvaluator.getClass().getName()); //$NON-NLS-1$//$NON-NLS-2$
+// // }
+// // checkResult(query, resultList, evaluator.getCheckResultType());
+// // index++;
+// // }
+// // result = listResultList;
+// } else {
+//
+// // List<AbstractDerivedTypedElementResult> listResultList = new
+// // ArrayList<AbstractDerivedTypedElementResult>();
+// // for (EObject eObject : eObjects) {
+// // AbstractDerivedTypedElementResult listResult;
+// // List<?> resultList;
+// // if (primitiveType) {
+// // DerivedTypedElementPrimitiveTypeListResult<?> primitiveTypeListResult =
+// // EFacetFactory.eINSTANCE
+// // .createDerivedTypedElementPrimitiveTypeListResult();
+// // listResult = primitiveTypeListResult;
+// // resultList = primitiveTypeListResult.getResultList();
+// // } else {
+// // DerivedTypedElementEObjectListResult<?> eObjectTypeListResult =
+// // EFacetFactory.eINSTANCE
+// // .createDerivedTypedElementEObjectListResult();
+// // listResult = eObjectTypeListResult;
+// // resultList = eObjectTypeListResult.getResultList();
+// // }
+// //
+// // Throwable error = null;
+// // try {
+// // listResult.setSource(eObject);
+// // listResult.setDerivedTypedElement(derivedTypedElement);
+// // setParameterValues(listResult.getParameterValues(), parameterValues);
+// // checkSourceType(sourceType, query, eObject);
+// // } catch (Throwable e) {
+// // error = e;
+// // }
+// // if (error != null) {
+// // listResult.setException(error);
+// // } else {
+// // try {
+// // Object evaluationResult = evaluator.getValue(derivedTypedElement, eObject,
+// // parameterValues);
+// // checkResult(query, evaluationResult, evaluator.getCheckResultType());
+// // // checked by checkResult
+// // Collection<?> evaluationResultCollection = (Collection<?>) evaluationResult;
+// // for (Object object : evaluationResultCollection) {
+// // resultList.add(object);
+// // }
+// // } catch (Throwable e) {
+// // listResult.setException(e);
+// // }
+// // }
+// // listResultList.add(listResult);
+// //
+// // }
+// // result = listResultList;
+//
+// }
+// } else {
+// // if the evaluator implements multiple evaluation itself, then use it
+// if (evaluator instanceof IDerivedTypedElementCollectionImplementation) {
+// IDerivedTypedElementCollectionImplementation collectionEvaluator =
+// (IDerivedTypedElementCollectionImplementation) evaluator;
+// List<? extends AbstractDerivedTypedElementResult> singleResultList = collectionEvaluator
+// .getValues(derivedTypedElement, eObjects, parameterValues);
+// int index = 0;
+// for (AbstractDerivedTypedElementResult singleResult : singleResultList) {
+// Object resultElement;
+// if (primitiveType && singleResult instanceof DerivedTypedElementPrimitiveTypeResult<?>) {
+// DerivedTypedElementPrimitiveTypeResult<?> primitiveResult =
+// (DerivedTypedElementPrimitiveTypeResult<?>) singleResult;
+// resultElement = primitiveResult.getResult();
+// } else if (!primitiveType && singleResult instanceof DerivedTypedElementEObjectResult<?>) {
+// DerivedTypedElementEObjectResult<?> eObjectResult = (DerivedTypedElementEObjectResult<?>)
+// singleResult;
+// resultElement = eObjectResult.getResult();
+// } else {
+// throw new DerivedTypedElementEvaluationException(
+// "Wrong element type at index " + index + " in the result from the evaluator " + collectionEvaluator.getClass().getName()); //$NON-NLS-1$//$NON-NLS-2$
+// }
+// checkResult(query, result, evaluator.getCheckResultType());
+// index++;
+// }
+// } else {
+// // otherwise, do multiple evaluation by calling the evaluator's
+// // single evaluation multiple times
+// List<DerivedTypedElementResult<?>> resultList = new
+// ArrayList<DerivedTypedElementResult<?>>();
+// for (EObject eObject : eObjects) {
+// DerivedTypedElementResult<Object> singleResult =
+// EFacetFactory.eINSTANCE.createDerivedTypedElementResult();
+// Throwable error = null;
+// try {
+// singleResult.setSource(eObject);
+// singleResult.setDerivedTypedElement(derivedTypedElement);
+// setParameterValues(singleResult.getParameterValues(), parameterValues);
+// checkSourceType(sourceType, query, eObject);
+// } catch (Throwable e) {
+// error = e;
+// }
+// if (error != null) {
+// singleResult.setException(error);
+// } else {
+// try {
+// Object evaluationResult = evaluator.getValue(derivedTypedElement, eObject, parameterValues);
+// checkResult(query, evaluationResult, evaluator.getCheckResultType());
+// singleResult.setResult(evaluationResult);
+// } catch (Throwable e) {
+// singleResult.setException(e);
+// }
+// }
+// resultList.add(singleResult);
+// }
+// result = resultList;
+// }
+// }
+//
+// return result;
+// }
+
+// private static void checkSourceType(final EClassifier sourceType, final Query query, final EObject eObject)
+// throws DerivedTypedElementException {
+// if (sourceType != null) {
+// // a null value for eObject matches any type
+// if (eObject != null && !sourceType.isInstance(eObject)) {
+// StringBuffer message = new StringBuffer();
+// message.append("Wrong source type (for " + QueryUtils.getQueryDescription(query) + "): '"); //$NON-NLS-1$ //$NON-NLS-2$
+// message.append(eObject.eClass().getName());
+// message.append("' found; expected '"); //$NON-NLS-1$
+// message.append(sourceType.getName());
+// message.append("'."); //$NON-NLS-1$
+// throw new DerivedTypedElementTypeCheckingException(message.toString());
+// }
+// } else {
+// if (eObject != null) {
+// throw new DerivedTypedElementException("the query's sourceType is null and the source is not null"); //$NON-NLS-1$
+// }
+// }
+// }
+//
+// private static void setParameterValues(final EList<ParameterValue> target, final List<ParameterValue> parameterValues) {
+// if (parameterValues != null) {
+// for (ParameterValue parameterValue : parameterValues) {
+// if (parameterValue == null) {
+// throw new IllegalArgumentException("null parameter value"); //$NON-NLS-1$
+// }
+// // containment link -> we need to copy since we can have the same
+// // parameter for several results
+// target.add(EcoreUtil.copy(parameterValue));
+// }
+// }
+// }
+
+ private static final void checkResult(final Query query, final Object result,
+ final boolean checkResultType, final boolean primitive) throws DerivedTypedElementTypeCheckingException {
+ if (QueryUtils.isMany(query)) {
+ if (!(result instanceof Collection<?>)) {
+ String strResult;
+ if (result == null) {
+ strResult = "null"; //$NON-NLS-1$
+ } else {
+ strResult = "an instance of " + result.getClass().getName(); //$NON-NLS-1$
+ }
+ throw new DerivedTypedElementTypeCheckingException(
+ "A collection is expected as result. The result is " //$NON-NLS-1$
+ + strResult + " (on " + QueryUtils.getQueryDescription(query) + ")"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ if (checkResultType) {
+ for (Object collectionElement : (Collection<?>) result) {
+ if (collectionElement != null
+ && !(QueryUtils.getReturnType(query)
+ .isInstance(collectionElement))) {
+ throw new DerivedTypedElementTypeCheckingException(
+ "Wrong result collection element type: " + collectionElement.getClass().getName() //$NON-NLS-1$
+ + "(" + QueryUtils.getReturnType(query).getName() + " is expected) " //$NON-NLS-1$ //$NON-NLS-2$
+ + " on " + QueryUtils.getQueryDescription(query)); //$NON-NLS-1$
+ }
+ }
+ } else if (!primitive) {
+ // at least check that EObjects are returned
+ for (Object collectionElement : (Collection<?>) result) {
+ if (collectionElement != null && !(collectionElement instanceof EObject)) {
+ throw new DerivedTypedElementTypeCheckingException(
+ "Wrong result collection element type: " + collectionElement.getClass().getName() //$NON-NLS-1$
+ + "(an instance of " + EObject.class.getName() + " is expected) " //$NON-NLS-1$ //$NON-NLS-2$
+ + " on " + QueryUtils.getQueryDescription(query)); //$NON-NLS-1$
+ }
+ }
+ }
+ } else {
+ if (result instanceof Collection<?>) {
+ throw new DerivedTypedElementTypeCheckingException("A " //$NON-NLS-1$
+ + QueryUtils.getSourceType(query).getName()
+ + " instance is expected as result. The result is: " //$NON-NLS-1$
+ + result + " (on " + QueryUtils.getQueryDescription(query) + ")"); //$NON-NLS-1$//$NON-NLS-2$
+ }
+ if (checkResultType) {
+ if (result != null && !(QueryUtils.getReturnType(query).isInstance(result))) {
+ throw new DerivedTypedElementTypeCheckingException("Wrong result type: " //$NON-NLS-1$
+ + result.getClass().getName()
+ + " is returned while " //$NON-NLS-1$
+ + QueryUtils.getReturnType(query).getInstanceClassName()
+ + " is expected." + " (on " + QueryUtils.getQueryDescription(query) + ")"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ }
+ } else if (!primitive) {
+ // at least check that an EObject is returned
+ if (result != null && !(result instanceof EObject)) {
+ throw new DerivedTypedElementTypeCheckingException(
+ "Wrong result collection element type: " + result.getClass().getName() //$NON-NLS-1$
+ + "(an instance of " + EObject.class.getName() + " is expected) " //$NON-NLS-1$ //$NON-NLS-2$
+ + " on " + QueryUtils.getQueryDescription(query)); //$NON-NLS-1$
+ }
+ }
+ }
+ }
+
+ private static boolean isPrimitive(final EClassifier eType) {
+ final boolean primitiveType;
+ if (eType instanceof EDataType) {
+ primitiveType = true;
+ } else if (eType instanceof EClass) {
+ primitiveType = false;
+ } else {
+ throw new IllegalArgumentException("unhandled derived typed element type: " + eType.getName()); //$NON-NLS-1$
+ }
+ return primitiveType;
+ }
+
+ /**
+ * Transform the element in parameter in list (if necessary).
+ *
+ * @param element
+ * the element to transform
+ * @return a list.
+ */
+ protected static List<Object> setAsList(final Object element) {
+ List<Object> newList = new LinkedList<Object>();
+ if (element instanceof List) {
+ @SuppressWarnings("unchecked")
+ //@SuppressWarnings("unchecked") the cast is safe because were
+ //casting a List to a List<Object>
+ final List<Object> tmpList = (List<Object>) element;
+ newList = tmpList;
+ } else {
+ newList.add(element);
+ }
+ return newList;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/DerivedTypedElementUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/DerivedTypedElementUtils.java
new file mode 100644
index 00000000000..bad210129f4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/DerivedTypedElementUtils.java
@@ -0,0 +1,70 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Grégoire Dupé (Mia-Software) - Bug 361612 - [Restructuring] New core for new version of the Facet metamodel
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List<ETypedElement>, List<FacetSet>)
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.UnmatchingExpectedTypeException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+
+public final class DerivedTypedElementUtils {
+
+ private DerivedTypedElementUtils() {
+ // Must not be used
+ }
+
+ private static <T> List<ParameterValue> createAndCheckOperationParameterValues(final EOperation operation,
+ final Object... arguments) throws UnmatchingExpectedTypeException {
+ final EList<EParameter> operationParameters = operation.getEParameters();
+ //Begin precondition checking
+ if (arguments.length > 0
+ && operationParameters.size() != arguments.length) {
+ throw new IllegalArgumentException("Facet operation '" + operation.getName() + //$NON-NLS-1$
+ "' expects " + operationParameters.size() + " parameters. Got " + arguments.length); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ //End precondition checking
+ final List<ParameterValue> parameterValues = new ArrayList<ParameterValue>();
+ for (int i = 0; i < arguments.length; i++) {
+ final Object argument = arguments[i];
+ final EParameter eParameter = operationParameters.get(i);
+ //Begin precondition checking
+ EmfUtils.checkAssignment(argument, eParameter);
+ //End precondition checking
+ final ParameterValue parameterValue = EFacetFactory.eINSTANCE.createParameterValue();
+ parameterValue.setParameter(eParameter);
+ parameterValue.setValue(argument);
+ parameterValues.add(parameterValue);
+ }
+ return parameterValues;
+ }
+
+ public static Object evaluate(final EObject eObject, final EOperation operation, final IFacetManager facetManager, final Object... arguments) throws UnmatchingExpectedTypeException,
+ DerivedTypedElementException {
+ Object result;
+ final List<ParameterValue> parameterValues = DerivedTypedElementUtils.createAndCheckOperationParameterValues(operation, arguments);
+ result = IDerivedTypedElementManager.INSTANCE.evaluate((FacetOperation) operation, eObject, parameterValues, facetManager);
+ return result;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/EFacetManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/EFacetManager.java
new file mode 100644
index 00000000000..eeb02efa7e9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/EFacetManager.java
@@ -0,0 +1,197 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ * Nicolas Bros (Mia-Software) - Bug 361617 - Deprecation of APIs for the old Facet metamodels
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.QueryContext;
+import org.eclipse.papyrus.emf.facet.efacet.QueryResult;
+import org.eclipse.papyrus.emf.facet.efacet.core.IEFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.QueryException;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.QueryTypeCheckingException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.query.QueryEvaluatorFactoryRegistry;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryEvaluator;
+
+/** @deprecated replaced by {@link DerivedTypedElementManager} */
+@Deprecated
+public final class EFacetManager implements IEFacetManager {
+
+ /**
+ * This method looks for a valid evaluator for the query and calls it to perform its
+ * basicEvaluate
+ */
+ public Object basicEvaluate(final Query query, final EObject eObject,
+ final List<ParameterValue> parameterValues) throws QueryException {
+ IQueryEvaluator evaluator = QueryEvaluatorFactoryRegistry.INSTANCE.getEvaluatorFor(query);
+ evaluator.startEvaluate();
+ Object result = evaluateAndCheck(query, eObject, parameterValues, evaluator);
+ evaluator.endEvaluate();
+ return result;
+ }
+
+ private Object evaluateAndCheck(final Query query, final EObject eObject,
+ final List<ParameterValue> parameterValues, final IQueryEvaluator evaluator)
+ throws QueryException {
+
+ if (!query.getScope().isInstance(eObject)) {
+ StringBuffer message = new StringBuffer();
+ message.append("Wrong context type (for query " + toString() + "): "); //$NON-NLS-1$ //$NON-NLS-2$
+ message.append(eObject.eClass().getName());
+ message.append(" found; expected scopes are {"); //$NON-NLS-1$
+ message.append(query.getScope().getName());
+ message.append("}"); //$NON-NLS-1$
+ QueryTypeCheckingException e = new QueryTypeCheckingException(message.toString());
+ throw e;
+ }
+ Object result = evaluator.basicEvaluate(query, eObject, parameterValues);
+ checkResult(query, result, evaluator.getCheckResultType());
+ return result;
+ }
+
+ /**
+ * This method is equivalent to {@link EFacetManager#basicEvaluate(Query, EObject, List)} with
+ * no query parameters.
+ */
+ public final Object basicEvaluate(final Query query, final EObject eObject)
+ throws QueryException {
+ return basicEvaluate(query, eObject, null);
+ }
+
+ /**
+ * This method is used to evaluate the given {@link Query} on the given {@link EObject} taking
+ * into consideration some {@link ParameterValue}s
+ */
+ public final QueryResult evaluate(final Query query, final EObject context,
+ final List<ParameterValue> parameterValues) {
+ QueryResult queryResult = EFacetFactory.eINSTANCE.createQueryResult();
+ try {
+ queryResult.setSource(context);
+ queryResult.setResult(basicEvaluate(query, context, parameterValues));
+ } catch (Exception e) {
+ queryResult.setException(e);
+ }
+ return queryResult;
+ }
+
+ /**
+ * Evaluate the query on a set of models and model elements described by the context parameter.
+ *
+ * The query is evaluated on each contextually referred model element and on each element of a
+ * contextually referred model.
+ *
+ * @param queryContext
+ * The query evaluation context described by a QueryContext instance.
+ * @param parameterValues
+ * The query parameter values.
+ * @return A list of QueryResult (one per evaluation)
+ * @throws QueryException
+ */
+ public final synchronized List<QueryResult> evaluate(final Query query,
+ final QueryContext queryContext, final List<ParameterValue> parameterValues)
+ throws QueryException {
+ List<QueryResult> resultList = new ArrayList<QueryResult>();
+ IQueryEvaluator evaluator = QueryEvaluatorFactoryRegistry.INSTANCE.getEvaluatorFor(query);
+ try {
+ evaluator.startEvaluate();
+ for (EObject eObject : queryContext.getSelectedModelElements()) {
+ QueryResult queryResult = executeQuery(query, parameterValues, eObject, evaluator);
+ resultList.add(queryResult);
+ }
+ for (Resource resource : queryContext.getSelectedModels()) {
+ TreeIterator<EObject> treeIterator = resource.getAllContents();
+ while (treeIterator.hasNext()) {
+ EObject eObject = treeIterator.next();
+ QueryResult queryResult = executeQuery(query, parameterValues, eObject,
+ evaluator);
+ resultList.add(queryResult);
+ }
+ }
+ } finally {
+ evaluator.endEvaluate();
+ }
+ return resultList;
+ }
+
+ /**
+ * This method is used to evaluate the given {@link Query} on the given {@link EObject}
+ */
+ public final QueryResult evaluate(final Query query, final EObject eObject) {
+ QueryResult queryResult = evaluate(query, eObject, null);
+ return queryResult;
+ }
+
+ private final QueryResult executeQuery(final Query query,
+ final List<ParameterValue> parameterValues, final EObject eObject,
+ final IQueryEvaluator evaluator) {
+ QueryResult queryResult = EFacetFactory.eINSTANCE.createQueryResult();
+ queryResult.setSource(eObject);
+ try {
+ Object result = evaluateAndCheck(query, eObject, parameterValues, evaluator);
+ queryResult.setResult(result);
+ } catch (QueryException e) {
+ queryResult.setException(e);
+ }
+ return queryResult;
+ }
+
+ private final void checkResult(final Query query, final Object object,
+ final boolean checkResultType) throws QueryTypeCheckingException {
+ if (query.getUpperBound() > 1 || query.getUpperBound() == -1) {
+ if (!(object instanceof Collection<?>)) {
+ throw new QueryTypeCheckingException(
+ "A collection is expected as result. The result is: " //$NON-NLS-1$
+ + object + " (on " + toString() + ")"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ for (Object collectionElement : (Collection<?>) object) {
+ if (checkResultType) {
+ if (!(query.getEType().isInstance(collectionElement))) {
+ QueryTypeCheckingException e = new QueryTypeCheckingException(
+ "Wrong result collection element type (" //$NON-NLS-1$
+ + query.getEType().getName() + " is expected): " //$NON-NLS-1$
+ + collectionElement + " (on " //$NON-NLS-1$
+ + toString() + ")"); //$NON-NLS-1$
+ throw e;
+ }
+ }
+ }
+ } else {
+ if (object instanceof Collection<?>) {
+ throw new QueryTypeCheckingException("A " //$NON-NLS-1$
+ + query.getEType().getName()
+ + " instance is expected as result. The result is: " //$NON-NLS-1$
+ + object + " (on " + toString() + ")"); //$NON-NLS-1$//$NON-NLS-2$
+ }
+ if (checkResultType) {
+ if (!(query.getEType().isInstance(object))) {
+ if (object != null) {
+ throw new QueryTypeCheckingException("Wrong result type: " //$NON-NLS-1$
+ + object.getClass().getName()
+ + " is returned while " //$NON-NLS-1$
+ + query.getEType().getInstanceClassName()
+ + " is expected." + " (on " + toString() + ")"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ }
+
+ }
+ }
+ }
+ }
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/EmfUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/EmfUtils.java
new file mode 100644
index 00000000000..4d65d483722
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/EmfUtils.java
@@ -0,0 +1,103 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Grégoire Dupé (Mia-Software) - Bug 361612 - [Restructuring] New core for new version of the Facet metamodel
+ * Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List<ETypedElement>, List<FacetSet>)
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.util.BasicEList;
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.UnmatchingExpectedTypeException;
+
+public final class EmfUtils {
+
+ private EmfUtils() {
+ //Must not be used
+ }
+
+ public static void checkAssignment(final Object value, final ETypedElement eTypedElement)
+ throws UnmatchingExpectedTypeException {
+ final String typedElementName = getTypeElementDescription(eTypedElement);
+ //Begin checking precondition
+ if (eTypedElement.getEType() == null) {
+ throw new IllegalArgumentException(typedElementName + " has a null type"); //$NON-NLS-1$
+ }
+ //End checking precondition
+ if (value == null && (eTypedElement.getLowerBound() > 0)) {
+ throw new IllegalArgumentException(
+ "The assigned value cannot be null for " + typedElementName + " because multiplicity is " + eTypedElement.getLowerBound() + ".." + eTypedElement.getUpperBound()); //$NON-NLS-1$//$NON-NLS-2$ //$NON-NLS-3$
+ }
+ if (value != null) {
+ if (eTypedElement.getUpperBound() == 1) {
+ if (!eTypedElement.getEType().isInstance(value)) {
+ throw new IllegalArgumentException(
+ "Type mismatch for " + EcoreUtil.getURI(eTypedElement) + ": expected '" + eTypedElement.getEType().getName() + "' but got '" + value.getClass().getName() + "'."); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
+ }
+ } else { // expect a list for multiplicity-many
+ if (!(value instanceof List<?>)) {
+ throw new IllegalArgumentException("Type mismatch for " + typedElementName + "': expected a List because the parameter is multiplicity-many. But got a " + //$NON-NLS-1$ //$NON-NLS-2$
+ value.getClass().getName() + "'."); //$NON-NLS-1$
+ }
+ final List<?> argumentList = (List<?>) value;
+ try {
+ CastUtils.checkTypeOfAllListElements(argumentList, eTypedElement.getEType().getInstanceClass());
+ //FIXME What happens if we use a not generated meta-model ?
+ } catch (UnmatchingExpectedTypeException e) {
+ throw new UnmatchingExpectedTypeException(
+ "Type mismatch for an element of the list value " + typedElementName , e); //$NON-NLS-1$
+ }
+ }
+ }
+ }
+
+ private static String getTypeElementDescription(final ETypedElement eTypedElement) {
+ String containerName = ""; //$NON-NLS-1$
+ if (eTypedElement.eContainer() instanceof ENamedElement) {
+ final ENamedElement namedContainer = (ENamedElement) eTypedElement.eContainer();
+ containerName = "the " + namedContainer.eClass().getName() + " named '" + namedContainer.getName() + "'"; //$NON-NLS-1$//$NON-NLS-2$ //$NON-NLS-3$
+ }
+ return "the " + eTypedElement.eClass().getName() + " named '" + eTypedElement.getName() + "' in " + containerName; //$NON-NLS-1$//$NON-NLS-2$ //$NON-NLS-3$
+ }
+
+ public static Object ecoreInvoke(final EObject eObject, final EOperation operation, final Object... arguments) throws InvocationTargetException {
+ // delegate to Ecore
+ final BasicEList<Object> operationParams = new BasicEList<Object>();
+ for (Object param : arguments) {
+ operationParams.add(param);
+ }
+ return eObject.eInvoke(operation, operationParams);
+ }
+
+ public static <T> T checkAssignment(final EStructuralFeature eStructuralFeature, final Class<T> expectedType, final Object value)
+ throws UnmatchingExpectedTypeException {
+ if (eStructuralFeature.isMany() && expectedType != null) {
+ if (expectedType != Object.class
+ && !Collection.class.isAssignableFrom(expectedType)) {
+ throw new UnmatchingExpectedTypeException("The required eStructuralFeature is multi-valued, so expectedType must be a subtype of Collection."); //$NON-NLS-1$
+ }
+ if (!expectedType.isInstance(value)) {
+ throw new UnmatchingExpectedTypeException("The derived typed element did not evaluate to the expected type", Collection.class, value); //$NON-NLS-1$
+ }
+ }
+ return CastUtils.castToExpectedType(value, expectedType);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetActionImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetActionImpl.java
new file mode 100644
index 00000000000..edcfa79174b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetActionImpl.java
@@ -0,0 +1,205 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 338813 - [EMF Facet Framework] basic Facet actions
+ * Nicolas Bros (Mia-Software) - Bug 361617 - Deprecation of APIs for the old Facet metamodels
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal;
+
+import java.io.IOException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.emf.edit.command.AddCommand;
+import org.eclipse.emf.edit.command.SetCommand;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetAction;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManager;
+import org.eclipse.papyrus.emf.facet.util.emf.core.exception.InvalidFacetSetException;
+import org.eclipse.papyrus.emf.facet.util.pde.core.internal.exported.BuildPropertiesUtils;
+
+/** @deprecated */
+@Deprecated
+public class FacetActionImpl implements IFacetAction {
+
+ public Facet createFacetInFacetSet(final FacetSet facetSet, final Facet facet,
+ final EditingDomain editingDomain) {
+
+ if (facetSet == null) {
+ throw new IllegalArgumentException("The given FacetSet cannot be null"); //$NON-NLS-1$
+ }
+ if (facet == null) {
+ throw new IllegalArgumentException("The given Facet cannot be null"); //$NON-NLS-1$
+ }
+ if (facet.eResource() != null || facet.eContainer() != null) {
+ throw new IllegalArgumentException("The given Facet cannot be contained by a resource"); //$NON-NLS-1$
+ }
+ if (editingDomain == null) {
+ throw new IllegalArgumentException("The given EditingDomain cannot be null"); //$NON-NLS-1$
+ }
+
+ // If the current editingDomain's resourceSet does not contain the facetSet resource, then
+ // we need to add it so that we can edit the facetSet
+ if (!editingDomain.getResourceSet().getResources().contains(facetSet.eResource())) {
+ editingDomain.getResourceSet().getResources().add(facetSet.eResource());
+ }
+
+ Command command = new AddCommand(editingDomain, facetSet,
+ EFacetPackage.eINSTANCE.getFacetSet_Facets(), facet);
+ editingDomain.getCommandStack().execute(command);
+ return facet;
+ }
+
+ public void addAttributeInFacet(final Facet facet, final FacetAttribute facetAttribute,
+ final EditingDomain editingDomain) {
+
+ if (facet == null) {
+ throw new IllegalArgumentException("The given Facet cannot be null"); //$NON-NLS-1$
+ }
+ if (facetAttribute == null) {
+ throw new IllegalArgumentException("The given FacetAttribute cannot be null"); //$NON-NLS-1$
+ }
+ if (facetAttribute.eResource() != null || facetAttribute.eContainer() != null) {
+ throw new IllegalArgumentException(
+ "The given FacetAttribute cannot be contained by a resource"); //$NON-NLS-1$
+ }
+ if (editingDomain == null) {
+ throw new IllegalArgumentException("The given EditingDomain cannot be null"); //$NON-NLS-1$
+ }
+
+ Command command = new AddCommand(editingDomain, facet,
+ EFacetPackage.eINSTANCE.getFacet_FacetElements(), facetAttribute);
+ editingDomain.getCommandStack().execute(command);
+ }
+
+ public void addReferenceInFacet(final Facet facet, final FacetReference facetReference,
+ final EditingDomain editingDomain) {
+ if (facet == null) {
+ throw new IllegalArgumentException("The given Facet cannot be null."); //$NON-NLS-1$
+ }
+ if (facetReference == null) {
+ throw new IllegalArgumentException("The given FacetReference cannot be null"); //$NON-NLS-1$
+ }
+ if (facetReference.eResource() != null || facetReference.eContainer() != null) {
+ throw new IllegalArgumentException(
+ "The given FacetReference cannot be contained by a resource"); //$NON-NLS-1$
+ }
+ if (editingDomain == null) {
+ throw new IllegalArgumentException("The given EditingDomain cannot be null."); //$NON-NLS-1$
+ }
+
+ Command command = new AddCommand(editingDomain, facet,
+ EFacetPackage.eINSTANCE.getFacet_FacetElements(), facetReference);
+ editingDomain.getCommandStack().execute(command);
+ }
+
+ public void addOperationInFacet(final Facet facet, final FacetOperation facetOperation,
+ final EditingDomain editingDomain) {
+ if (editingDomain == null) {
+ throw new IllegalArgumentException("The given EditingDomain cannot be null"); //$NON-NLS-1$
+ }
+ if (facetOperation == null) {
+ throw new IllegalArgumentException("The given FacetOperation cannot be null"); //$NON-NLS-1$
+ }
+ if (facetOperation.eResource() != null || facetOperation.eContainer() != null) {
+ throw new IllegalArgumentException(
+ "The given FacetOperation cannot be contained by a resource"); //$NON-NLS-1$
+ }
+ if (facet == null) {
+ throw new IllegalArgumentException("The given Facet cannot be null"); //$NON-NLS-1$
+ }
+
+ Command command = new AddCommand(editingDomain, facet,
+ EFacetPackage.eINSTANCE.getFacet_FacetElements(), facetOperation);
+ editingDomain.getCommandStack().execute(command);
+ }
+
+ public void setFacetSetNsUri(final FacetSet facetSet, final String nsUri,
+ final EditingDomain editingDomain) {
+ if (editingDomain == null) {
+ throw new IllegalArgumentException("The given EditingDomain cannot be null"); //$NON-NLS-1$
+ }
+ if (facetSet == null) {
+ throw new IllegalArgumentException("The given FacetSet cannot be null"); //$NON-NLS-1$
+ }
+ Command command = new SetCommand(editingDomain, facetSet,
+ EcorePackage.eINSTANCE.getEPackage_NsURI(), nsUri);
+ editingDomain.getCommandStack().execute(command);
+ }
+
+ public void addParameterInOperation(final FacetOperation operation, final EParameter parameter,
+ final EditingDomain editingDomain) {
+ if (operation == null) {
+ throw new IllegalArgumentException("The given FacetOperation cannot be null"); //$NON-NLS-1$
+ }
+ if (parameter == null) {
+ throw new IllegalArgumentException("The given EParameter cannot be null"); //$NON-NLS-1$
+ }
+ if (parameter.eResource() != null || parameter.eContainer() != null) {
+ throw new IllegalArgumentException(
+ "The given EParameter cannot be contained by a resource"); //$NON-NLS-1$
+ }
+ if (editingDomain == null) {
+ throw new IllegalArgumentException("The given EditingDomain cannot be null"); //$NON-NLS-1$
+ }
+
+ Command command = new AddCommand(editingDomain, operation,
+ EcorePackage.eINSTANCE.getEOperation_EParameters(), parameter);
+ editingDomain.getCommandStack().execute(command);
+ }
+
+ public void createFacetSet(final FacetSet facetSet, final IFile file) throws IOException,
+ InvalidFacetSetException {
+ if (facetSet == null) {
+ throw new IllegalArgumentException("The given FacetSet cannot be null"); //$NON-NLS-1$
+ }
+ if (file == null) {
+ throw new IllegalArgumentException("The given IFile cannot be null"); //$NON-NLS-1$
+ }
+ if (file.exists()) {
+ throw new IllegalArgumentException("The given IFile already exists"); //$NON-NLS-1$
+ }
+
+ // Create a resource set
+ ResourceSet resourceSet = new ResourceSetImpl();
+
+ // Get the URI of the model file.
+ URI fileURI = URI.createPlatformResourceURI(file.getFullPath().toString(), true);
+
+ // Create a resource for this file.
+ Resource resource = resourceSet.createResource(fileURI);
+
+ // Add the facetSet the resource contents.
+ resource.getContents().add(facetSet);
+
+ // Save the contents of the resource to the file system.
+ resource.save(null);
+
+ try {
+ BuildPropertiesUtils.addToBuild(file);
+ } catch (Exception e) {
+ Logger.logError(e, "Error adding file " + file.getFullPath() //$NON-NLS-1$
+ + " to the build.properties", Activator.getDefault()); //$NON-NLS-1$
+ }
+ ICatalogSetManager.INSTANCE.registerModelDeclaration(file);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetActions2Impl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetActions2Impl.java
new file mode 100644
index 00000000000..ba62d51185e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetActions2Impl.java
@@ -0,0 +1,231 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 338813 - [EMF Facet Framework] basic Facet actions
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Gregoire Dupe (Mia-Software) - Bug 362087 - [Deprecated] org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManager
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal;
+
+import java.io.IOException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.emf.edit.command.AddCommand;
+import org.eclipse.emf.edit.command.SetCommand;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.incubatingapi.IFacetActions2;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManager2;
+import org.eclipse.papyrus.emf.facet.util.emf.core.exception.InvalidFacetSetException;
+import org.eclipse.papyrus.emf.facet.util.pde.core.internal.exported.BuildPropertiesUtils;
+
+public class FacetActions2Impl implements IFacetActions2 {
+
+ public void saveFacetSet(final FacetSet facetSet, final IFile file) throws IOException,
+ InvalidFacetSetException {
+ if (facetSet == null) {
+ throw new IllegalArgumentException("The given FacetSet cannot be null"); //$NON-NLS-1$
+ }
+ if (file == null) {
+ throw new IllegalArgumentException("The given IFile cannot be null"); //$NON-NLS-1$
+ }
+ if (file.exists()) {
+ throw new IllegalArgumentException("The given IFile already exists"); //$NON-NLS-1$
+ }
+
+ // Create a resource set
+ ResourceSet resourceSet = new ResourceSetImpl();
+
+ // Get the URI of the model file.
+ URI fileURI = URI.createPlatformResourceURI(file.getFullPath().toString(), true);
+
+ // Create a resource for this file.
+ Resource resource = resourceSet.createResource(fileURI);
+
+ // Add the facetSet the resource contents.
+ resource.getContents().add(facetSet);
+
+ // Save the contents of the resource to the file system.
+ resource.save(null);
+
+ try {
+ BuildPropertiesUtils.addToBuild(file);
+ } catch (Exception e) {
+ Logger.logError(e, "Error adding file " + file.getFullPath() //$NON-NLS-1$
+ + " to the build.properties", Activator.getDefault()); //$NON-NLS-1$
+ }
+ ICatalogSetManager2.INSTANCE.registerModelDeclaration(file);
+ }
+
+ public Facet createFacetInFacetSet(final FacetSet facetSet, final Facet facet,
+ final EditingDomain editingDomain) {
+ Command command = createCreateFacetInFacetSetCommand(facetSet, facet, editingDomain);
+ // If the current editingDomain's resourceSet does not contain the facetSet resource, then
+ // we need to add it so that we can edit the facetSet
+ if (!editingDomain.getResourceSet().getResources().contains(facetSet.eResource())) {
+ editingDomain.getResourceSet().getResources().add(facetSet.eResource());
+ }
+ editingDomain.getCommandStack().execute(command);
+ return facet;
+ }
+
+ public Command createCreateFacetInFacetSetCommand(final FacetSet facetSet, final Facet facet,
+ final EditingDomain editingDomain) {
+ if (facetSet == null) {
+ throw new IllegalArgumentException("The given FacetSet cannot be null"); //$NON-NLS-1$
+ }
+ if (facet == null) {
+ throw new IllegalArgumentException("The given Facet cannot be null"); //$NON-NLS-1$
+ }
+ if (facet.eResource() != null || facet.eContainer() != null) {
+ throw new IllegalArgumentException("The given Facet cannot be contained by a resource"); //$NON-NLS-1$
+ }
+ if (editingDomain == null) {
+ throw new IllegalArgumentException("The given EditingDomain cannot be null"); //$NON-NLS-1$
+ }
+
+ return AddCommand.create(editingDomain, facetSet,
+ EcorePackage.eINSTANCE.getEPackage_EClassifiers(), facet);
+ }
+
+ public void addAttributeInFacet(final Facet facet, final FacetAttribute facetAttribute,
+ final EditingDomain editingDomain) {
+ Command command = createAddAttributeInFacetCommand(facet, facetAttribute, editingDomain);
+ editingDomain.getCommandStack().execute(command);
+ }
+
+ public Command createAddAttributeInFacetCommand(final Facet facet,
+ final FacetAttribute facetAttribute, final EditingDomain editingDomain) {
+ if (facet == null) {
+ throw new IllegalArgumentException("The given Facet cannot be null"); //$NON-NLS-1$
+ }
+ if (facetAttribute == null) {
+ throw new IllegalArgumentException("The given FacetAttribute cannot be null"); //$NON-NLS-1$
+ }
+ if (facetAttribute.eResource() != null || facetAttribute.eContainer() != null) {
+ throw new IllegalArgumentException(
+ "The given FacetAttribute cannot be contained by a resource"); //$NON-NLS-1$
+ }
+ if (editingDomain == null) {
+ throw new IllegalArgumentException("The given EditingDomain cannot be null"); //$NON-NLS-1$
+ }
+
+ return AddCommand.create(editingDomain, facet,
+ EFacetPackage.eINSTANCE.getFacet_FacetElements(), facetAttribute);
+ }
+
+ public void addReferenceInFacet(final Facet facet, final FacetReference facetReference,
+ final EditingDomain editingDomain) {
+ Command command = createAddReferenceInFacetCommand(facet, facetReference, editingDomain);
+ editingDomain.getCommandStack().execute(command);
+ }
+
+ public Command createAddReferenceInFacetCommand(final Facet facet,
+ final FacetReference facetReference, final EditingDomain editingDomain) {
+ if (facet == null) {
+ throw new IllegalArgumentException("The given Facet cannot be null."); //$NON-NLS-1$
+ }
+ if (facetReference == null) {
+ throw new IllegalArgumentException("The given FacetReference cannot be null"); //$NON-NLS-1$
+ }
+ if (facetReference.eResource() != null || facetReference.eContainer() != null) {
+ throw new IllegalArgumentException(
+ "The given FacetReference cannot be contained by a resource"); //$NON-NLS-1$
+ }
+ if (editingDomain == null) {
+ throw new IllegalArgumentException("The given EditingDomain cannot be null."); //$NON-NLS-1$
+ }
+
+ return AddCommand.create(editingDomain, facet,
+ EFacetPackage.eINSTANCE.getFacet_FacetElements(), facetReference);
+ }
+
+ public void addOperationInFacet(final Facet facet, final FacetOperation facetOperation,
+ final EditingDomain editingDomain) {
+ Command command = createAddOperationInFacetCommand(facet, facetOperation, editingDomain);
+ editingDomain.getCommandStack().execute(command);
+ }
+
+ public Command createAddOperationInFacetCommand(final Facet facet,
+ final FacetOperation facetOperation, final EditingDomain editingDomain) {
+ if (editingDomain == null) {
+ throw new IllegalArgumentException("The given EditingDomain cannot be null"); //$NON-NLS-1$
+ }
+ if (facetOperation == null) {
+ throw new IllegalArgumentException("The given FacetOperation cannot be null"); //$NON-NLS-1$
+ }
+ if (facetOperation.eResource() != null || facetOperation.eContainer() != null) {
+ throw new IllegalArgumentException(
+ "The given FacetOperation cannot be contained by a resource"); //$NON-NLS-1$
+ }
+ if (facet == null) {
+ throw new IllegalArgumentException("The given Facet cannot be null"); //$NON-NLS-1$
+ }
+
+ return AddCommand.create(editingDomain, facet,
+ EFacetPackage.eINSTANCE.getFacet_FacetOperations(), facetOperation);
+ }
+
+ public void addParameterInOperation(final FacetOperation operation, final EParameter parameter,
+ final EditingDomain editingDomain) {
+ Command command = createAddParameterInOperationCommand(operation, parameter, editingDomain);
+ editingDomain.getCommandStack().execute(command);
+ }
+
+ public Command createAddParameterInOperationCommand(final FacetOperation operation,
+ final EParameter parameter, final EditingDomain editingDomain) {
+ if (operation == null) {
+ throw new IllegalArgumentException("The given FacetOperation cannot be null"); //$NON-NLS-1$
+ }
+ if (parameter == null) {
+ throw new IllegalArgumentException("The given EParameter cannot be null"); //$NON-NLS-1$
+ }
+ if (parameter.eResource() != null || parameter.eContainer() != null) {
+ throw new IllegalArgumentException(
+ "The given EParameter cannot be contained by a resource"); //$NON-NLS-1$
+ }
+ if (editingDomain == null) {
+ throw new IllegalArgumentException("The given EditingDomain cannot be null"); //$NON-NLS-1$
+ }
+
+ return AddCommand.create(editingDomain, operation,
+ EcorePackage.eINSTANCE.getEOperation_EParameters(), parameter);
+ }
+
+ public void setFacetSetNsUri(final FacetSet facetSet, final String nsUri,
+ final EditingDomain editingDomain) {
+ Command command = createSetFacetSetNsUriCommand(facetSet, nsUri, editingDomain);
+ editingDomain.getCommandStack().execute(command);
+ }
+
+ public Command createSetFacetSetNsUriCommand(final FacetSet facetSet, final String nsUri,
+ final EditingDomain editingDomain) {
+ if (editingDomain == null) {
+ throw new IllegalArgumentException("The given EditingDomain cannot be null"); //$NON-NLS-1$
+ }
+ if (facetSet == null) {
+ throw new IllegalArgumentException("The given FacetSet cannot be null"); //$NON-NLS-1$
+ }
+ return SetCommand.create(editingDomain, facetSet,
+ EcorePackage.eINSTANCE.getEPackage_NsURI(), nsUri);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetActionsImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetActionsImpl.java
new file mode 100644
index 00000000000..950ad3b648a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetActionsImpl.java
@@ -0,0 +1,78 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal;
+
+import java.io.IOException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetActions;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.core.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManager2;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManagerFactory;
+import org.eclipse.papyrus.emf.facet.util.emf.core.exception.InvalidFacetSetException;
+import org.eclipse.papyrus.emf.facet.util.pde.core.internal.exported.BuildPropertiesUtils;
+
+/**
+ * Concrete implementation of {@link IFacetActions}.
+ */
+public class FacetActionsImpl implements IFacetActions {
+
+ public void saveFacetSet(final FacetSet facetSet, final IFile file)
+ throws IOException, InvalidFacetSetException {
+ if (facetSet == null) {
+ throw new IllegalArgumentException(
+ "The given FacetSet cannot be null"); //$NON-NLS-1$
+ }
+ if (file == null) {
+ throw new IllegalArgumentException("The given IFile cannot be null"); //$NON-NLS-1$
+ }
+ if (file.exists()) {
+ throw new IllegalArgumentException("The given IFile already exists"); //$NON-NLS-1$
+ }
+
+ // Create a resource set
+ final ResourceSet resourceSet = new ResourceSetImpl();
+
+ // Get the URI of the model file.
+ final URI fileURI = URI.createPlatformResourceURI(file.getFullPath()
+ .toString(), true);
+
+ // Create a resource for this file.
+ final Resource resource = resourceSet.createResource(fileURI);
+
+ // Add the facetSet the resource contents.
+ resource.getContents().add(facetSet);
+
+ // Save the contents of the resource to the file system.
+ resource.save(null);
+
+ try {
+ BuildPropertiesUtils.addToBuild(file);
+ } catch (final Exception e) {
+ Logger.logError(e, "Error adding file " + file.getFullPath() //$NON-NLS-1$
+ + " to the build.properties", Activator.getDefault()); //$NON-NLS-1$
+ }
+
+ final ICatalogSetManager2 catalogSetManager = ICatalogSetManagerFactory.DEFAULT
+ .createICatalogSetManager(resourceSet);
+ catalogSetManager.registerModelDeclaration(file);
+
+ // ICatalogSetManager.INSTANCE.registerModelDeclaration(file);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetCatalogManagerFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetCatalogManagerFactory.java
new file mode 100644
index 00000000000..fec38521a2a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetCatalogManagerFactory.java
@@ -0,0 +1,30 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal;
+
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetSetCatalogManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetSetCatalogManagerFactory;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManagerFactory;
+
+public class FacetCatalogManagerFactory implements IFacetSetCatalogManagerFactory {
+
+ public IFacetSetCatalogManager getOrCreateFacetSetCatalogManager(
+ final ResourceSet resourceSet) {
+ return ICatalogSetManagerFactory.DEFAULT
+ .createICatalogSetManager(resourceSet)
+ .getCatalogManagerByType(IFacetSetCatalogManager.class)
+ .get(0);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetCommandFactoryFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetCommandFactoryFactory.java
new file mode 100644
index 00000000000..6397c1a49c2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetCommandFactoryFactory.java
@@ -0,0 +1,25 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetCommandFactoryFactory;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetCommandFactory;
+
+public class FacetCommandFactoryFactory implements IFacetCommandFactoryFactory {
+
+ public IFacetCommandFactory createCommandFactory(
+ final EditingDomain editingDomain) {
+ return new FacetCommandFactoryImpl(editingDomain);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetCommandFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetCommandFactoryImpl.java
new file mode 100644
index 00000000000..bcd0ecdaab7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetCommandFactoryImpl.java
@@ -0,0 +1,511 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.common.command.CompoundCommand;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.command.AddCommand;
+import org.eclipse.emf.edit.command.SetCommand;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetCommandFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.util.emf.core.command.EmfCommandUtils;
+
+/**
+ * Concrete implementation of {@link IFacetCommandFactory}.
+ */
+public class FacetCommandFactoryImpl implements IFacetCommandFactory {
+
+ private static final String VALUE_NOT_NULL = "The given value cannot be null"; //$NON-NLS-1$
+ private static final String PARENT_NOT_NULL = "The given parent cannot be null"; //$NON-NLS-1$
+ private static final Object NAME = "name"; //$NON-NLS-1$
+ private static final Object LOWER_BOUND = "lowerBound"; //$NON-NLS-1$
+ private static final Object UPPER_BOUND = "upperBound"; //$NON-NLS-1$
+ private static final Object VOLATILE = "volatile"; //$NON-NLS-1$
+ private static final Object CHANGEABLE = "changeable"; //$NON-NLS-1$
+ private static final Object DERIVED = "derived"; //$NON-NLS-1$
+ private static final Object TRANSIENT = "transient"; //$NON-NLS-1$
+ private static final Object ORDERED = "ordered"; //$NON-NLS-1$
+ private static final Object UNIQUE = "unique"; //$NON-NLS-1$
+ private final EditingDomain editingDomain;
+
+ public FacetCommandFactoryImpl(final EditingDomain editingDomain) {
+ this.editingDomain = editingDomain;
+ }
+
+ /**
+ * Create an {@link AddCommand} to add the element to the owner.
+ *
+ * @param owner
+ * the owner.
+ * @param element
+ * the element to add.
+ * @return the command.
+ */
+ private Command createAddCommand(final Object owner, final Object element) {
+
+ if (owner == null) {
+ throw new IllegalArgumentException("The given owner cannot be null"); //$NON-NLS-1$
+ }
+
+ if (element == null) {
+ throw new IllegalArgumentException(
+ "The given element cannot be null"); //$NON-NLS-1$
+ }
+
+ return AddCommand.create(this.editingDomain, owner,
+ getEStructuralFeature(element), element);
+ }
+
+ /**
+ * Create an {@link SetCommand} to add the element to the owner.
+ *
+ * @param initialObject
+ * the owner.
+ * @param newObject
+ * the element to add.
+ * @return the command.
+ */
+ public Command createSetCommand(final Object initialObject,
+ final Object feature, final Object newValue) {
+
+ if (initialObject == null) {
+ throw new IllegalArgumentException("The given owner cannot be null"); //$NON-NLS-1$
+ }
+
+ if (feature == null) {
+ throw new IllegalArgumentException(
+ "The given feature cannot be null"); //$NON-NLS-1$
+ }
+
+ if (newValue == null) {
+ throw new IllegalArgumentException(
+ "The given newValue cannot be null"); //$NON-NLS-1$
+ }
+
+ return SetCommand.create(this.editingDomain, initialObject, feature,
+ newValue);
+ }
+
+ /**
+ * Return the {@link EStructuralFeature} for a given element.
+ *
+ * @param element
+ * the element.
+ * @return the eStructuralFeature for the element.
+ */
+ private static EStructuralFeature getEStructuralFeature(final Object element) {
+ EStructuralFeature result = null;
+ if (element instanceof FacetSet) {
+ result = EcorePackage.eINSTANCE.getEPackage_ESubpackages();
+ } else if (element instanceof Facet) {
+ result = EcorePackage.eINSTANCE.getEPackage_EClassifiers();
+ } else if ((element instanceof FacetAttribute)
+ || (element instanceof FacetReference)) {
+ result = EFacetPackage.eINSTANCE.getFacet_FacetElements();
+ } else if (element instanceof FacetOperation) {
+ result = EFacetPackage.eINSTANCE.getFacet_FacetOperations();
+ }
+ return result;
+
+ }
+
+ public Command createFacetSetInFacetSetCommand(final FacetSet owner,
+ final FacetSet facetSet) {
+ return createAddCommand(owner, facetSet);
+ }
+
+ public Command createFacetInFacetSetCommand(final FacetSet parent,
+ final Facet facet) {
+ return createAddCommand(parent, facet);
+ }
+
+ public Command createEditFacetStructuralFeatureCommand(
+ final DerivedTypedElement feature, final Facet container,
+ final String name, final int lowerBound, final int upperBound,
+ final EClassifier type, final boolean ordered,
+ final boolean unique, final Query query, final boolean volatilee,
+ final boolean change, final boolean derived,
+ final boolean transientt) {
+ if (feature == null) {
+ throw new IllegalArgumentException(
+ "The parameter facetOperation must not be null"); //$NON-NLS-1$
+ }
+ final List<Command> commands = new ArrayList<Command>();
+ if (feature.eContainer() != container) {
+ final Command command = new AddCommand(this.editingDomain,
+ container,
+ EFacetPackage.eINSTANCE.getFacet_FacetElements(), feature);
+ commands.add(command);
+ }
+ if (feature instanceof EStructuralFeature) {
+ final EStructuralFeature structuralFeature = (EStructuralFeature) feature;
+ if (structuralFeature.isVolatile() != volatilee) {
+ final Command command = new SetCommand(this.editingDomain,
+ structuralFeature,
+ EcorePackage.eINSTANCE.getEStructuralFeature_Volatile(),
+ Boolean.valueOf(volatilee));
+ commands.add(command);
+ }
+ if (structuralFeature.isChangeable() != change) {
+ final Command command = new SetCommand(this.editingDomain,
+ structuralFeature,
+ EcorePackage.eINSTANCE
+ .getEStructuralFeature_Changeable(),
+ Boolean.valueOf(change));
+ commands.add(command);
+ }
+ if (structuralFeature.isDerived() != derived) {
+ final Command command = new SetCommand(this.editingDomain,
+ structuralFeature,
+ EcorePackage.eINSTANCE.getEStructuralFeature_Derived(),
+ Boolean.valueOf(ordered));
+ commands.add(command);
+ }
+ if (structuralFeature.isTransient() != transientt) {
+ final Command command = new SetCommand(this.editingDomain,
+ structuralFeature,
+ EcorePackage.eINSTANCE
+ .getEStructuralFeature_Transient(),
+ Boolean.valueOf(unique));
+ commands.add(command);
+ }
+ }
+ commands.add(createEditDerivedTypeElementCommand(feature,
+ name, lowerBound, upperBound, type, ordered, unique, query));
+ return EmfCommandUtils.createResult(commands,
+ "edit facet structural feature"); //$NON-NLS-1$
+ }
+
+ public Command createAddOperationInFacetCommand(final Facet parent,
+ final FacetOperation facetOperation) {
+ return createAddCommand(parent, facetOperation);
+ }
+
+ public Command createAddReferenceInFacetCommand(final Facet parent,
+ final FacetReference facetReference) {
+ return createAddCommand(parent, facetReference);
+ }
+
+ public Command createAddParameterInOperationCommand(
+ final FacetOperation parent, final EParameter opParameter) {
+ return createAddCommand(parent, opParameter);
+ }
+
+ public Command createChangeOwnerCommand(final Object element,
+ final Object newOwner) {
+ if (element == null) {
+ throw new IllegalArgumentException(
+ "The given element cannot be null"); //$NON-NLS-1$
+ }
+ if (newOwner == null) {
+ throw new IllegalArgumentException(
+ "The given element cannot be null"); //$NON-NLS-1$
+ }
+ return createAddCommand(newOwner, element);
+ }
+
+ public Command createEditFacetSetCommand(final FacetSet editedFacetSet,
+ final FacetSet container, final String name) {
+ if (editedFacetSet == null) {
+ throw new IllegalArgumentException(
+ "The parameter 'editedFacetSet' must not be null"); //$NON-NLS-1$
+ }
+ final List<Command> commands = new ArrayList<Command>();
+ commands.add(createEditENamedElementcommand(editedFacetSet, name));
+ if (editedFacetSet.eContainer() != container) {
+ final Command command = new AddCommand(this.editingDomain,
+ container,
+ EcorePackage.eINSTANCE.getEPackage_ESubpackages(),
+ editedFacetSet);
+ commands.add(command);
+ }
+ return EmfCommandUtils.createResult(commands, "Edit FacetSet"); //$NON-NLS-1$
+ }
+
+ public Command createEditFacetCommand(final Facet facet,
+ final FacetSet container, final String name,
+ final ETypedElement conformance, final EClass extendMetaclass,
+ final FacetSet extendedFacetSet) {
+ final List<Command> commands = new ArrayList<Command>();
+ commands.add(createEditENamedElementcommand(facet, name));
+ if (facet.eContainer() != container) {
+ final Command command = new AddCommand(this.editingDomain,
+ container,
+ EcorePackage.eINSTANCE.getEPackage_EClassifiers(), facet);
+ commands.add(command);
+ }
+ if (facet.getConformanceTypedElement() != conformance) {
+ final Command command = new SetCommand(this.editingDomain, facet,
+ EFacetPackage.eINSTANCE.getFacet_ConformanceTypedElement(),
+ conformance);
+ commands.add(command);
+ }
+ if (extendedFacetSet != null
+ && (facet.getExtendedFacets().isEmpty() || facet
+ .getExtendedFacets().get(0) != extendedFacetSet)) {
+ final Command command = new SetCommand(this.editingDomain,
+ facet,
+ EFacetPackage.eINSTANCE.getFacet_ExtendedFacets(),
+ Collections.singletonList(extendedFacetSet));
+ commands.add(command);
+ }
+ if (facet.getExtendedMetaclass() != extendMetaclass) {
+ final Command command = new SetCommand(this.editingDomain, facet,
+ EFacetPackage.eINSTANCE.getFacet_ExtendedMetaclass(),
+ extendMetaclass);
+ commands.add(command);
+ }
+ return EmfCommandUtils.createResult(commands, "Edit Facet"); //$NON-NLS-1$
+ }
+
+ private Command createEditENamedElementcommand(
+ final ENamedElement namedElement, final String name) {
+ if (namedElement == null) {
+ throw new IllegalArgumentException(
+ "The parameter 'editedFacetSet' must not be null"); //$NON-NLS-1$
+ }
+ final List<Command> commands = new ArrayList<Command>();
+ if (namedElement.getName() != name) {
+ final Command command = new SetCommand(this.editingDomain,
+ namedElement,
+ EcorePackage.eINSTANCE.getENamedElement_Name(), name);
+ commands.add(command);
+ }
+ return EmfCommandUtils.createResult(commands, "Edit NamedElement"); //$NON-NLS-1$
+ }
+
+ public Command createSetFacetAttributeCommand(final Facet initialContainer,
+ final FacetAttribute initialElement, final FacetAttribute newElement) {
+ if (initialElement == null) {
+ throw new IllegalArgumentException(PARENT_NOT_NULL);
+ }
+ if (newElement == null) {
+ throw new IllegalArgumentException(VALUE_NOT_NULL);
+ }
+ final CompoundCommand commands = new CompoundCommand();
+ final List<EAttribute> facetAttributes = EFacetPackage.eINSTANCE
+ .getFacetAttribute().getEAllAttributes();
+ setEStructuralFeatureAttributes(initialElement, newElement, commands,
+ facetAttributes);
+ setETypedElementAttributes(initialElement, newElement, commands,
+ facetAttributes);
+ final Command changeOwner = createChangeOwnerCommand(newElement,
+ initialContainer);
+ commands.append(changeOwner);
+ return commands;
+ }
+
+ public Command createSetFacetReferenceCommand(final Facet initialContainer,
+ final FacetReference initialElement, final FacetReference newElement) {
+ if (initialElement == null) {
+ throw new IllegalArgumentException(PARENT_NOT_NULL);
+ }
+ if (newElement == null) {
+ throw new IllegalArgumentException(VALUE_NOT_NULL);
+ }
+ final CompoundCommand commands = new CompoundCommand();
+ final List<EAttribute> facetReferences = EFacetPackage.eINSTANCE
+ .getFacetReference().getEAllAttributes();
+ setEStructuralFeatureAttributes(initialElement, newElement, commands,
+ facetReferences);
+ setETypedElementAttributes(initialElement, newElement, commands,
+ facetReferences);
+ final Command changeOwner = createChangeOwnerCommand(newElement, initialContainer);
+ commands.append(changeOwner);
+ return commands;
+ }
+
+ public Command createEditFacetOperationCommand(
+ final FacetOperation facetOperation, final Facet container,
+ final String name, final int lowerBound, final int upperBound,
+ final EClassifier type, final boolean ordered,
+ final boolean unique, final Query query) {
+ if (facetOperation == null) {
+ throw new IllegalArgumentException(
+ "The parameter facetOperation must not be null"); //$NON-NLS-1$
+ }
+ final List<Command> commands = new ArrayList<Command>();
+ if (facetOperation.eContainer() != container) {
+ final Command command = new AddCommand(this.editingDomain,
+ container,
+ EFacetPackage.eINSTANCE.getFacet_FacetOperations(),
+ facetOperation);
+ commands.add(command);
+ }
+ commands.add(createEditDerivedTypeElementCommand(facetOperation, name,
+ lowerBound, upperBound, type, ordered, unique, query));
+ return EmfCommandUtils.createResult(commands, "Edit facet operation"); //$NON-NLS-1$
+ }
+
+ private Command createEditDerivedTypeElementCommand(
+ final DerivedTypedElement dte, final String name,
+ final int lowerBound, final int upperBound, final EClassifier type,
+ final boolean ordered, final boolean unique, final Query query) {
+ if (dte == null) {
+ throw new IllegalArgumentException(
+ "The parameter facetOperation must not be null"); //$NON-NLS-1$
+ }
+ final List<Command> commands = new ArrayList<Command>();
+ commands.add(createEditETypedElementCommand(dte, name, lowerBound,
+ upperBound, type, ordered, unique));
+ if (dte.getQuery() != query) {
+ final Command command = new SetCommand(this.editingDomain, dte,
+ EFacetPackage.eINSTANCE.getDerivedTypedElement_Query(),
+ query);
+ commands.add(command);
+ }
+ return EmfCommandUtils.createResult(commands,
+ "Edit derived typed element"); //$NON-NLS-1$
+ }
+
+ private Command createEditETypedElementCommand(
+ final ETypedElement typedElement, final String name,
+ final int lowerBound, final int upperBound, final EClassifier type,
+ final boolean ordered, final boolean unique) {
+ final List<Command> commands = new ArrayList<Command>();
+ commands.add(createEditENamedElementcommand(typedElement, name));
+ if (typedElement.getLowerBound() != lowerBound) {
+ final Command command = new SetCommand(this.editingDomain,
+ typedElement,
+ EcorePackage.eINSTANCE.getETypedElement_LowerBound(),
+ Integer.valueOf(lowerBound));
+ commands.add(command);
+ }
+ if (typedElement.getUpperBound() != upperBound) {
+ final Command command = new SetCommand(this.editingDomain,
+ typedElement,
+ EcorePackage.eINSTANCE.getETypedElement_LowerBound(),
+ Integer.valueOf(upperBound));
+ commands.add(command);
+ }
+ if (typedElement.isOrdered() != ordered) {
+ final Command command = new SetCommand(this.editingDomain,
+ typedElement,
+ EcorePackage.eINSTANCE.getETypedElement_Ordered(),
+ Boolean.valueOf(ordered));
+ commands.add(command);
+ }
+ if (typedElement.isUnique() != unique) {
+ final Command command = new SetCommand(this.editingDomain,
+ typedElement,
+ EcorePackage.eINSTANCE.getETypedElement_Ordered(),
+ Boolean.valueOf(unique));
+ commands.add(command);
+ }
+ if (typedElement.getEType() != type) {
+ final Command command = new SetCommand(this.editingDomain,
+ typedElement,
+ EcorePackage.eINSTANCE.getETypedElement_EType(), type);
+ commands.add(command);
+ }
+ return EmfCommandUtils.createResult(commands, "Edit ETypedElement"); //$NON-NLS-1$
+ }
+
+ public Command createEditOperationParameterCommand(
+ final EParameter parameter, final FacetOperation facetOperation,
+ final String name, final int lowerBound, final int upperBound,
+ final EClassifier type, final boolean ordered, final boolean unique) {
+ if (parameter == null) {
+ throw new IllegalArgumentException(
+ "The parameter parameter must not be null"); //$NON-NLS-1$
+ }
+ final List<Command> commands = new ArrayList<Command>();
+ commands.add(createEditETypedElementCommand(parameter, name,
+ lowerBound, upperBound, type, ordered, unique));
+ return EmfCommandUtils.createResult(commands,
+ "Edit operation parameter"); //$NON-NLS-1$
+ }
+
+ private void setEStructuralFeatureAttributes(
+ final EStructuralFeature initialElement,
+ final EStructuralFeature newElement,
+ final CompoundCommand commands,
+ final List<EAttribute> facetOperations) {
+ for (final EAttribute attribute : facetOperations) {
+ if (attribute.getName().equals(TRANSIENT)) {
+ commands.append(createSetCommand(initialElement, attribute,
+ Boolean.valueOf(newElement.isTransient())));
+ }
+ if (attribute.getName().equals(VOLATILE)) {
+ commands.append(createSetCommand(initialElement, attribute,
+ Boolean.valueOf(newElement.isVolatile())));
+ }
+ if (attribute.getName().equals(CHANGEABLE)) {
+ commands.append(createSetCommand(initialElement, attribute,
+ Boolean.valueOf(newElement.isChangeable())));
+ }
+ if (attribute.getName().equals(DERIVED)) {
+ commands.append(createSetCommand(initialElement, attribute,
+ Boolean.valueOf(newElement.isDerived())));
+ }
+ }
+ }
+
+ private void setETypedElementAttributes(final ETypedElement initialElement,
+ final ETypedElement newElement, final CompoundCommand commands,
+ final List<EAttribute> facetOperations) {
+ for (final EAttribute attribute : facetOperations) {
+ if (attribute.getName().equals(NAME)) {
+ commands.append(createSetCommand(initialElement, attribute,
+ newElement.getName()));
+ }
+ if (attribute.getName().equals(LOWER_BOUND)) {
+ commands.append(createSetCommand(initialElement, attribute,
+ Integer.valueOf(newElement.getLowerBound())));
+ }
+ if (attribute.getName().equals(UPPER_BOUND)) {
+ commands.append(createSetCommand(initialElement, attribute,
+ Integer.valueOf(newElement.getUpperBound())));
+ }
+ if (attribute.getName().equals(ORDERED)) {
+ commands.append(createSetCommand(initialElement, attribute,
+ Boolean.valueOf(newElement.isOrdered())));
+ }
+ if (attribute.getName().equals(UNIQUE)) {
+ commands.append(createSetCommand(initialElement, attribute,
+ Boolean.valueOf(newElement.isUnique())));
+ }
+ }
+ }
+
+
+ public Command createEditFacetOperationCommand(
+ final DerivedTypedElement dte, final Facet facetContainer,
+ final String name, final int lowerBound, final int upperBound,
+ final EClassifier type, final boolean ordered,
+ final boolean unique, final Query query) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetManager.java
new file mode 100644
index 00000000000..60bf7dc7d39
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetManager.java
@@ -0,0 +1,593 @@
+/*******************************************************************************
+ * Copyright (c) 2011, 2012 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Grégoire Dupé (Mia-Software) - Bug 361612 - [Restructuring] New core for new version of the Facet metamodel*
+ * Olivier Remaud (Soft-Maint) - Bug 361794 - [Restructuring] EMF Facet customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Olivier Remaud (Mia-Software) - Bug 374348 - Infinite loop in Facet override resolution
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 376576 - [EFacet] Change the multiplicity of Facet::extendedFacet
+ * Nicolas Bros (Mia-Software) - Bug 378475 - unit test failures after table refactoring
+ * Thomas Cicognani (Soft-Maint) - Bug 416221 - New methods to get references in FacetManager API
+ * Thomas Cicognani (Soft-Maint) - Bug 420193 - Listener on FacetManager
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.EcorePackage;
+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.facet.efacet.core.FacetUtils;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManagerListener;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.FacetManagerException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.FacetConformanceEvaluationException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.NonApplicableFacetException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.NonConformingEObjectException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.UnmatchingExpectedTypeException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.serialization.SerializationManager;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimeFactory;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+
+public class FacetManager implements IFacetManager, Adapter {
+
+ private static final EClassifier EBOOLEAN = EcorePackage.eINSTANCE.getEBoolean();
+ private static final EClassifier EBOOLEAN_OBJECT = EcorePackage.eINSTANCE.getEBooleanObject();
+ private final FacetManagerContext context;
+ private final SerializationManager serializationMgr;
+ private final ResourceSet resourceSet;
+
+ public FacetManager(final Resource resource) {
+ this.serializationMgr = new SerializationManager(resource);
+ this.context = new FacetManagerContext(this);
+ this.resourceSet = resource.getResourceSet();
+ }
+
+ public FacetManager(final ResourceSet resourceSet) {
+ this.serializationMgr = new SerializationManager(null);
+ this.context = new FacetManagerContext(this);
+ this.resourceSet = resourceSet;
+ }
+
+ public void saveStructuralFeatureInstanceModel()
+ throws FacetManagerException {
+ this.serializationMgr.saveStructuralFeatureInstanceModel();
+ }
+
+ /**
+ * Returns whether the given model element conforms to the given Facet
+ *
+ * @param eObject
+ * the model element
+ * @param facet
+ * the Facet the applicability of which is being tested
+ * @return whether the given model element should be seen as an instance of the given Facet
+ */
+ public boolean isConforming(final EObject eObject, final Facet facet)
+ throws FacetManagerException {
+ return getConformanceState(eObject, facet) == FacetManager.ConformanceState.Conformant;
+ }
+
+ public enum ConformanceState {
+ Conformant, NonConformingMetaclass, NonConformingElement
+ }
+
+ private void checkConformance(final EObject eObject, final Facet facet)
+ throws FacetManagerException {
+ final ConformanceState conformanceState = getConformanceState(eObject, facet);
+ if (conformanceState == FacetManager.ConformanceState.NonConformingMetaclass) {
+ throw new FacetManagerException("NonApplicableFacetException"); //$NON-NLS-1$
+ }
+ if (conformanceState == FacetManager.ConformanceState.NonConformingElement) {
+ throw new FacetManagerException("NonConformingEObjectException"); //$NON-NLS-1$
+ }
+ }
+
+ protected ConformanceState getConformanceState(final EObject eObject,
+ final Facet facet) throws FacetManagerException {
+ // Begin of precondition section
+ if (eObject == null) {
+ throw new IllegalArgumentException("eObject cannot be null"); //$NON-NLS-1$
+ }
+ if (facet == null) {
+ throw new IllegalArgumentException("facet cannot be null"); //$NON-NLS-1$
+ }
+ // End of precondition section
+ ConformanceState result;
+ final EClass extendedMetaclass = FacetUtils.getExtendedMetaclass(facet);
+ if (extendedMetaclass != null
+ && (extendedMetaclass.isSuperTypeOf(eObject.eClass()) || extendedMetaclass == EcorePackage.eINSTANCE.getEObject())) {
+ final ETypedElement typeElement = facet.getConformanceTypedElement();
+ if (typeElement == null) {
+ result = FacetManager.ConformanceState.Conformant;
+ } else {
+ final Boolean isConforming = getConformanceValue(eObject, typeElement);
+ if (isConforming.booleanValue()) {
+ result = FacetManager.ConformanceState.Conformant;
+ } else {
+ result = FacetManager.ConformanceState.NonConformingElement;
+ }
+ }
+ } else {
+ result = FacetManager.ConformanceState.NonConformingMetaclass;
+ }
+ // The conformance constraint is inherited from the super facet.
+ if (result == FacetManager.ConformanceState.Conformant) {
+ for (Facet extFacet : facet.getExtendedFacets()) {
+ result = getConformanceState(eObject, extFacet);
+ if (result != FacetManager.ConformanceState.Conformant) {
+ break;
+ }
+ }
+ }
+ return result;
+ }
+
+ private Boolean getConformanceValue(final EObject eObject,
+ final ETypedElement typeElement) throws FacetManagerException {
+ // Begin precondition checking
+ if (typeElement.isMany()) {
+ throw new FacetManagerException(
+ "The Facet's conformance typed element must not be multi-valued"); //$NON-NLS-1$
+ }
+ if (typeElement.getEType() != FacetManager.EBOOLEAN && typeElement.getEType() != FacetManager.EBOOLEAN_OBJECT) {
+ throw new FacetManagerException(
+ "The Facet conformance typed element evaluated to a wrong type."); //$NON-NLS-1$
+ }
+ // End precondition checking
+ Boolean result; // conformance typedElement Value
+ try {
+ if (typeElement instanceof EStructuralFeature) {
+ final EStructuralFeature structuralFeature = (EStructuralFeature) typeElement;
+ // basicGet = true in order to avoid an infinite recursion
+ result = internalGet(eObject, structuralFeature, Boolean.class, true);
+ } else if (typeElement instanceof EOperation) {
+ final EOperation operation = (EOperation) typeElement;
+ if (operation.getEParameters().size() > 0) {
+ throw new FacetConformanceEvaluationException("The Facet's conformance operation cannot have parameters"); //$NON-NLS-1$
+ }
+ // basicInvoke = true in order to avoid an infinite recursion,
+ // ie don't check conformance and don't resolve overrides
+ result = internalInvoke(eObject, operation, Boolean.class, true);
+ } else {
+ throw new FacetConformanceEvaluationException("Unsupported conformance typed element type: " + typeElement.getClass().getName()); //$NON-NLS-1$
+ }
+ } catch (Exception e) {
+ throw new FacetManagerException(e);
+ }
+ if (result == null) {
+ throw new FacetManagerException(
+ "The Facet conformance typed element evaluated to null"); //$NON-NLS-1$
+ }
+ return result;
+ }
+
+ public void set(final EObject eObject,
+ final EStructuralFeature structuralFeature, final Object newValue,
+ final EditingDomain editingDomain) throws FacetManagerException {
+ if (structuralFeature.isMany() && !(newValue instanceof Collection<?>)) {
+ throw new IllegalArgumentException("newValue should be a Collection because eStructuralFeature is an EReference"); //$NON-NLS-1$
+ // TODO: check the type of the elements of the list.
+ }
+ final EObject eContainer = structuralFeature.eContainer();
+ if (eContainer instanceof Facet) {
+ final Facet facet = (Facet) eContainer;
+ checkConformance(eObject, facet);
+ if (structuralFeature instanceof EAttribute) {
+ final EAttribute eAttribute = (EAttribute) structuralFeature;
+ if (structuralFeature instanceof FacetAttribute) {
+ // TODO We still have to implement the setting of a derived facet attribute. Cf.
+ // https://bugs.eclipse.org/bugs/show_bug.cgi?id=365726
+ throw new UnsupportedOperationException("Setting a FacetAttribute is not yet implemented"); //$NON-NLS-1$
+ } // else { // instanceof EAttribute
+ this.serializationMgr.setAttribute(eObject, eAttribute, newValue);
+ // }
+ } else if (structuralFeature instanceof EReference) {
+ final EReference reference = (EReference) structuralFeature;
+ if (reference instanceof FacetReference) {
+ // TODO We still have to implement the setting of a derived facet attribute. Cf.
+ // https://bugs.eclipse.org/bugs/show_bug.cgi?id=365726
+ throw new UnsupportedOperationException("Setting a FacetReference is not yet implemented"); //$NON-NLS-1$
+ } // else { // instanceof EReference
+ this.serializationMgr.setReference(eObject, reference, newValue);
+ // }
+ } else {
+ throw new UnsupportedOperationException(
+ "Setting a structural feature of type '" + structuralFeature.getClass().getName() + "' is not implemented"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ } else {
+ eObject.eSet(structuralFeature, newValue);
+ }
+ }
+
+ public <T> T get(final EObject eObject,
+ final EStructuralFeature structuralFeature,
+ final Class<T> expectedType) throws FacetManagerException {
+ return internalGet(eObject, structuralFeature, expectedType, false);
+ }
+
+ private <T> T internalGet(final EObject eObject,
+ final EStructuralFeature structuralFeature,
+ final Class<T> expectedType, final boolean basicGet)
+ throws FacetManagerException {
+ try {
+ Object value;
+ if (structuralFeature.eContainer() instanceof Facet) {
+
+ EStructuralFeature baseFeature = structuralFeature;
+
+ if (!basicGet) {
+ baseFeature = this.context.resolveOverrides(structuralFeature, eObject);
+ final Facet facet = (Facet) baseFeature.eContainer();
+ checkConformance(eObject, facet);
+ }
+ if (baseFeature.isDerived()) {
+ if (!(baseFeature instanceof DerivedTypedElement)) {
+ throw new UnsupportedOperationException("Cannot evaluate a derived structural feature that is not a DerivedTypedElement : not implemented"); //$NON-NLS-1$
+ }
+ value = IDerivedTypedElementManager.INSTANCE.evaluate((DerivedTypedElement) baseFeature, eObject, null, this);
+ } else {
+ if (baseFeature instanceof DerivedTypedElement) {
+ throw new IllegalArgumentException("A DerivedTypedElement must always be derived"); //$NON-NLS-1$
+ }
+ value = this.serializationMgr.getNotDerivedValue(eObject, baseFeature);
+ }
+ } else { // Regular structural feature
+ if (structuralFeature instanceof DerivedTypedElement) {
+ throw new IllegalStateException("The given DerivedTypedElement is not contained in a Facet"); //$NON-NLS-1$
+ }
+ value = eObject.eGet(structuralFeature, true);
+ }
+ return EmfUtils.checkAssignment(structuralFeature, expectedType, value);
+ } catch (Exception e) {
+ throw new FacetManagerException(e);
+ }
+ }
+
+ public <T> List<T> getMultiValued(final EObject eObject,
+ final EStructuralFeature structuralFeature,
+ final Class<T> expectedType) throws FacetManagerException {
+ final Object result = internalGet(eObject, structuralFeature, null, false);
+ // return the original list, which must be modifiable by the caller
+ try {
+ return CastUtils.castToExpectedListType(result, expectedType, true);
+ } catch (UnmatchingExpectedTypeException e) {
+ throw new UnmatchingExpectedTypeException("Failed to cast the value of '" + structuralFeature.getName() + "' to a list of " + expectedType.getName(), e); //$NON-NLS-1$//$NON-NLS-2$
+ }
+ }
+
+ public <T> T invoke(final EObject eObject, final EOperation operation,
+ final Class<T> expectedType, final EditingDomain editingDomain, final Object... arguments)
+ throws FacetManagerException {
+ try {
+ return internalInvoke(eObject, operation, expectedType, false, arguments);
+ } catch (Exception e) {
+ throw new FacetManagerException("Error invoking Facet operation '" + operation.getName() + "'", e); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ public <T> List<T> invokeMultiValued(final EObject eObject, final EOperation operation,
+ final Class<T> expectedType, final Object... arguments)
+ throws FacetManagerException {
+ Object result;
+ try {
+ result = internalInvoke(eObject, operation, null, false, arguments);
+ } catch (Exception e) {
+ throw new FacetManagerException("Error invoking Facet operation '" + operation.getName() + "'", e); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ return CastUtils.castToExpectedListType(result, expectedType, true);
+ }
+
+ private <T> T internalInvoke(final EObject eObject, final EOperation operation, final Class<T> expectedType,
+ final boolean basicInvoke, final Object... arguments)
+ throws DerivedTypedElementException, InvocationTargetException,
+ FacetConformanceEvaluationException, NonApplicableFacetException,
+ NonConformingEObjectException, FacetManagerException {
+ Object result;
+ if (operation.eContainer() instanceof Facet) {
+ final Facet facet = (Facet) operation.eContainer();
+
+ if (!basicInvoke) {
+ checkConformance(eObject, facet);
+ }
+ if (operation instanceof FacetOperation) {
+ final FacetOperation facetOperation = (FacetOperation) operation;
+ FacetOperation baseOperation = facetOperation;
+ if (!basicInvoke) {
+ baseOperation = this.context.resolveOverrides(facetOperation, eObject);
+ }
+ result = DerivedTypedElementUtils.evaluate(eObject, baseOperation, this, arguments);
+ } else {
+ result = EmfUtils.ecoreInvoke(eObject, operation, null, arguments);
+ }
+ } else { // Regular eOperation
+ if (operation instanceof FacetOperation) {
+ throw new IllegalStateException("The given FacetOperation is not contained in a Facet"); //$NON-NLS-1$
+ }
+ result = EmfUtils.ecoreInvoke(eObject, operation, null, arguments);
+ }
+ return CastUtils.castToExpectedType(result, expectedType);
+ }
+
+ public List<ETypedElementResult> get(final Collection<EObject> eObjects, final EStructuralFeature structuralFeature)
+ throws DerivedTypedElementException {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("not implemented yet"); //$NON-NLS-1$
+ }
+
+ public List<ETypedElementResult> batchInvoke(
+ final Collection<EObject> eObjects, final EOperation operation,
+ final Object... arguments) throws FacetManagerException {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("not implemented yet"); //$NON-NLS-1$
+ }
+
+ public List<FacetSet> getManagedFacetSets() {
+ return this.context;
+ }
+
+ public void setManagedFacetSets(final List<FacetSet> facetSets) {
+ this.context.setManagedFacetSets(facetSets);
+ }
+
+ public void removeFacetSet(final FacetSet facetSet) {
+ this.context.removeFacetSet(facetSet);
+ }
+
+ public ResourceSet getResourceSet() {
+ return this.resourceSet;
+ }
+
+ public List<ETypedElement> getAppliedFeatures() {
+ // TODO Auto-generated method stub
+ throw new UnsupportedOperationException("not implemented yet"); //$NON-NLS-1$
+ }
+
+ public Set<EAttribute> getAttributes(final EObject eObject)
+ throws FacetManagerException {
+ return getEStructuralFeatures(eObject, EAttribute.class);
+ }
+
+ public Set<EStructuralFeature> getStructuralFeature(final EObject eObject)
+ throws FacetManagerException {
+ return getEStructuralFeatures(eObject, EStructuralFeature.class);
+ }
+
+ public <T extends ETypedElement> Set<T> getEStructuralFeatures(
+ final EObject eObject, final Class<T> classs)
+ throws FacetManagerException {
+ final Set<T> result = new HashSet<T>();
+ for (FacetSet facetSet : this.context.getManagedFacetSets()) {
+ result.addAll(getETypedElements(eObject, facetSet, classs));
+ }
+ return result;
+ }
+
+ private <T extends ETypedElement> Collection<T> getETypedElements(
+ final EObject eObject, final FacetSet facetSet,
+ final Class<T> classs) throws FacetManagerException {
+ final Set<T> result = new HashSet<T>();
+ for (EClassifier eClassifier : facetSet.getEClassifiers()) {
+ if (eClassifier instanceof Facet) {
+ final Facet facet = (Facet) eClassifier;
+ if (isConforming(eObject, facet)) {
+ for (EStructuralFeature eStructuralFeature : getAllEStructuralFeatures(facet)) {
+ if (classs.isInstance(eStructuralFeature)) {
+ @SuppressWarnings("unchecked")
+ // @SuppressWarnings("unchecked") This type has been
+ // checked using isInstance
+ final T typedSF = (T) eStructuralFeature;
+ result.add(typedSF);
+ }
+ }
+ }
+ }
+ }
+ // hierarchical FacetSets
+ for (EPackage ePackage : facetSet.getESubpackages()) {
+ if (ePackage instanceof FacetSet) {
+ final FacetSet subFacetSet = (FacetSet) ePackage;
+ result.addAll(getETypedElements(eObject,
+ subFacetSet, classs));
+ }
+ }
+ // aggregates
+ for (FacetSet subFacetSet : facetSet.getFacetSets()) {
+ result.addAll(getETypedElements(eObject, subFacetSet, classs));
+ }
+ return result;
+ }
+
+ private List<EStructuralFeature> getAllEStructuralFeatures(final Facet facet) {
+ final List<EStructuralFeature> structFeatures = new LinkedList<EStructuralFeature>();
+ structFeatures.addAll(facet.getFacetElements());
+ for (Facet extFacet : facet.getExtendedFacets()) {
+ structFeatures.addAll(getAllEStructuralFeatures(extFacet));
+ }
+ return structFeatures;
+ }
+
+ public Set<EReference> getReferences(final EObject eObject)
+ throws FacetManagerException {
+ return getEStructuralFeatures(eObject, EReference.class);
+ }
+
+ public Collection<? extends EStructuralFeature> getSF(final EObject eObject)
+ throws FacetManagerException {
+ return getEStructuralFeatures(eObject, EStructuralFeature.class);
+ }
+
+ @Deprecated
+ public void addFacets(final EList<Facet> facets) {
+ for (Facet facetToLoad : facets) {
+ this.context.addFrontManagedFacetSet((FacetSet) facetToLoad
+ .getEPackage());
+ }
+ }
+
+ @Deprecated
+ public void unLoadAllFacets() {
+ removeAllManagedFacetSets();
+ }
+
+ public void removeAllManagedFacetSets() {
+ this.context.clear();
+ }
+
+ public <T> List<T> getOrInvokeMultiValued(final EObject eObject,
+ final ETypedElement eTypedElement, final Class<T> classs)
+ throws FacetManagerException {
+ List<T> result = null;
+ if (eTypedElement instanceof EStructuralFeature) {
+ final EStructuralFeature structuralFeature = (EStructuralFeature) eTypedElement;
+ result = getMultiValued(eObject, structuralFeature, classs);
+ } else if (eTypedElement instanceof EOperation) {
+ final EOperation eOperation = (EOperation) eTypedElement;
+ result = invokeMultiValued(eObject, eOperation, classs);
+ }
+ return result;
+ }
+
+ public <T> T getOrInvoke(final EObject eObject,
+ final ETypedElement eTypedElement, final Class<T> classs)
+ throws FacetManagerException {
+ T result = null;
+ if (eTypedElement instanceof EStructuralFeature) {
+ final EStructuralFeature structuralFeature = (EStructuralFeature) eTypedElement;
+ result = get(eObject, structuralFeature, classs);
+ } else if (eTypedElement instanceof EOperation) {
+ final EOperation eOperation = (EOperation) eTypedElement;
+ result = invoke(eObject, eOperation, classs, null);
+ }
+ return result;
+ }
+
+ public List<Facet> getManagedFacets() {
+ throw new IllegalStateException("Not implemented, and never will since it's deprecated"); //$NON-NLS-1$
+ }
+
+ public <T> List<ETypedElementResult> batchGetOrInvoke(final Collection<EObject> sources, final ETypedElement query, final Class<T> classs)
+ throws FacetManagerException {
+ final List<ETypedElementResult> results = new LinkedList<ETypedElementResult>();
+ for (EObject source : sources) {
+ ETypedElementResult result = null;
+ Exception exception = null;
+ if (query.getEType() instanceof EClass) {
+ if (query.getUpperBound() == 1) {
+ final ETypedElementEObjectResult<EObject> eObjectResult = RuntimeFactory.eINSTANCE.createETypedElementEObjectResult();
+ try {
+ eObjectResult.setResult(this.getOrInvoke(source, query, EObject.class));
+ } catch (Exception e) {
+ exception = e;
+ }
+ result = eObjectResult;
+ } else {
+ final ETypedElementEObjectListResult<EObject> eObjectResultList = RuntimeFactory.eINSTANCE.createETypedElementEObjectListResult();
+ try {
+ eObjectResultList.getResultList().addAll(this.getOrInvokeMultiValued(source, query, EObject.class));
+ } catch (Exception e) {
+ exception = e;
+ }
+ result = eObjectResultList;
+ }
+ } else {
+ if (query.getUpperBound() == 1) {
+ final ETypedElementPrimitiveTypeResult<Object> eObjectResult = RuntimeFactory.eINSTANCE.createETypedElementPrimitiveTypeResult();
+ try {
+ eObjectResult.setResult(this.getOrInvoke(source, query, Collection.class));
+ } catch (Exception e) {
+ exception = e;
+ }
+ result = eObjectResult;
+ } else {
+ final ETypedElementPrimitiveTypeListResult<Object> eObjectResultList = RuntimeFactory.eINSTANCE.createETypedElementPrimitiveTypeListResult();
+ eObjectResultList.getResultList().addAll(this.getOrInvokeMultiValued(source, query, Object.class));
+ result = eObjectResultList;
+ }
+ }
+ if (exception != null) {
+ result.setException(exception);
+ Logger.logWarning(exception, Activator.getDefault());
+ }
+ result.setDerivedTypedElement(query);
+ result.setSource(source);
+ results.add(result);
+ }
+ return results;
+ }
+
+ public void addBackManagedFacetSet(final FacetSet facetSet) {
+ this.context.addBackManagedFacetSet(facetSet);
+ }
+
+ public void addFrontManagedFacetSet(final FacetSet facetSet) {
+ this.context.addFrontManagedFacetSet(facetSet);
+ }
+
+ public void notifyChanged(final Notification notification) {
+ // Nothing to do
+ }
+
+ public Notifier getTarget() {
+ return null;
+ }
+
+ public void setTarget(final Notifier newTarget) {
+ // Nothing to do
+ }
+
+ public boolean isAdapterForType(final Object type) {
+ return false;
+ }
+
+ public void addListener(final IFacetManagerListener listener) {
+ this.context.addListener(listener);
+ }
+
+ public void removeListener(final IFacetManagerListener listener) {
+ this.context.removeListener(listener);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetManagerContext.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetManagerContext.java
new file mode 100644
index 00000000000..4f347d8cbfb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetManagerContext.java
@@ -0,0 +1,554 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Olivier Remaud (Soft-Maint) - Bug 361794 - [Restructuring] EMF Facet customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] EMF Facet customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List<ETypedElement>, List<FacetSet>)
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ * Gregoire Dupe (Mia-Software) - Bug 377178 - [EFacet] infinite recursion in override resolution
+ * Gregoire Dupe (Mia-software) - Bug 383418 - [Table] FacetManagerContext.getOverrideCandidateFeatures(...) is empty
+ * Gregoire Dupe (Mia-software) - Bug 420093 - [EFacet] The facetManger list doesn't deal with uniqueness
+ * Thomas Cicognani (Soft-Maint) - Bug 420193 - Listener on FacetManager
+ * Fabien Treguer (Soft-Maint) - Bug 423285 - [Table] FacetSets not stored in a resource cause model manager crashes
+ *******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.efacet.core.internal;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.ListIterator;
+import java.util.Set;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.papyrus.emf.facet.efacet.core.FacetUtils;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManagerListener;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.FacetManagerException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.FacetManager.ConformanceState;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.UnmatchingExpectedTypeException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exported.IResolverManager;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.core.internal.exported.ListUtils;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ModelUtils;
+
+/**
+ * @author oremaud
+ *
+ * FacetManager Context
+ *
+ * Defines which FacetSets will be taken into account, and in which
+ * order ('front' FacetSets have higher precedence)
+ *
+ * Responsible of overrides resolution for Facets and Customs
+ */
+class FacetManagerContext implements List<FacetSet> {
+
+ private static final String SILENT_OPTION = "org.eclipse.papyrus.emf.facet.efacet.core.internal.FacetManagerContext.getOverrideCandidateFeatures.silent"; //$NON-NLS-1$
+ private static final boolean SILENT = Boolean
+ .getBoolean(FacetManagerContext.SILENT_OPTION);
+
+ // We cannot use the interface (i.e, List) instead because we need to use
+ // the methods addLast and addFirst
+ private LinkedList<FacetSet> managedFacetSets = new LinkedList<FacetSet>(); // NOPMD by gdupe on 15/03/12 10:36
+ private final transient FacetManager manager;
+ /**
+ * This field is used to avoid to have to many error messages in the log.
+ */
+ private final Set<ETypedElement> failingFeatures = new HashSet<ETypedElement>();
+
+ private final Set<IFacetManagerListener> listeners = new HashSet<IFacetManagerListener>();
+
+ public FacetManagerContext(final FacetManager manager) {
+ this.manager = manager;
+ }
+
+ /**
+ *
+ * @param baseFeature
+ * @param eObject
+ * @return
+ * @throws FacetConformanceEvaluationException
+ * @throws UnmatchingExpectedTypeException
+ * @throws FacetManagerException
+ */
+ public <T extends ETypedElement> T resolveOverrides(final T baseFeature,
+ final EObject eObject) throws FacetManagerException {
+ T result = baseFeature;
+ if (baseFeature instanceof DerivedTypedElement) {
+ final DerivedTypedElement derivedResult = resolveOverrides(
+ (DerivedTypedElement) baseFeature, eObject);
+ if (derivedResult != null
+ && !(derivedResult instanceof ETypedElement)) {
+ throw new UnmatchingExpectedTypeException(
+ "Type mismatch in override resolution '" + baseFeature.getName() + "'"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ result = (T) derivedResult;
+ }
+ // If nothing is found, return the original basefeature
+ if (result == null) {
+ result = baseFeature;
+ }
+ return result;
+ }
+
+ /**
+ *
+ * @param baseFeature
+ * @param eObject
+ * @return
+ * @throws FacetConformanceEvaluationException
+ * @throws FacetManagerException
+ */
+ public <T extends DerivedTypedElement> T resolveOverrides(
+ final T baseFeature, final EObject eObject)
+ throws FacetManagerException {
+ try {
+ // -- Find master override
+ // If the baseFeature overrides another feature, then we follow the
+ // override chain to find the top feature
+ // The main idea behind this is that the baseFeature does not really
+ // represents a specific feature but a
+ // feature signature (as in java method invocation)
+ final T signatureFeature = FacetUtils
+ .getTopOverrideFeature(baseFeature);
+
+ // -- Find all candidates
+ // Get all Facet referenced by the FacetManager to get all features
+ // matching this signature
+ // Note : candidates are searched ine the order provided by the current
+ // FacetManager,
+ // so they are already ordered by the wanted priority
+ // XXX : Debug check that DerivedTypedElement only contained by Facet
+ final List<T> orderedCandidates = getOverrideCandidateFeatures(eObject,
+ signatureFeature);
+
+ // -- Find the most specific feature
+ return findMostSpecificFeature(orderedCandidates);
+ } catch (Exception e) {
+ throw new FacetManagerException(e);
+ }
+ }
+
+ public List<FacetSet> getManagedFacetSets() {
+ return Collections.unmodifiableList(this.managedFacetSets);
+ }
+
+ public void setManagedFacetSets(final List<FacetSet> facetSets) {
+ this.managedFacetSets = new LinkedList<FacetSet>(facetSets);
+ notifyListeners();
+ }
+
+ public void addBackManagedFacetSet(final FacetSet facetSet) {
+ // adding an already managed FacetSet again moves it to the right position
+ this.managedFacetSets.remove(facetSet);
+ this.managedFacetSets.addLast(facetSet);
+ notifyListeners();
+ }
+
+ public void addFrontManagedFacetSet(final FacetSet facetSet) {
+ if (this.managedFacetSets == null) {
+ this.managedFacetSets = new LinkedList<FacetSet>();
+ }
+ // adding an already managed FacetSet again moves it to the right position
+ this.managedFacetSets.remove(facetSet);
+ this.managedFacetSets.addFirst(facetSet);
+ notifyListeners();
+ }
+
+ /**
+ * Find the most specific feature in the candidates list. The most specific
+ * is the feature that : - is the most specific (in terms of Facet
+ * inheritance) : the lowest in the inheritance tree (per branch) - is
+ * encountered first. The order is given by the FacetManager context.
+ *
+ * @param candidates
+ * The list of candidates features. Can be empty.
+ * @return
+ */
+ private static <T extends DerivedTypedElement> T findMostSpecificFeature(
+ final List<T> orderedCandidates) {
+ T result = null;
+ if (!orderedCandidates.isEmpty()) {
+ final Iterator<T> candidatesIt = orderedCandidates.iterator();
+ result = candidatesIt.next();
+ // We have the highest priority feature, we just have to check
+ // that there is no more specific one in the override chain (from
+ // top to bottom)
+ while (candidatesIt.hasNext()) {
+ final T candidate = candidatesIt.next();
+ if (isOverridenBy(candidate, result)) {
+ result = candidate;
+ }
+ }
+ }
+ return result;
+ }
+
+ /**
+ * Find matching candidates.
+ *
+ * @param eObject
+ * @param baseFeature
+ * @return A list of candidates, in the right order for conflict resolution
+ * @throws FacetManagerException
+ */
+ private <T extends DerivedTypedElement> List<T> getOverrideCandidateFeatures(
+ final EObject eObject, final T baseFeature)
+ throws FacetManagerException {
+ final ResourceSet baserFeatureRS = baseFeature.eResource().getResourceSet();
+ final List<T> result = new LinkedList<T>();
+ // Iterate over all Facets from all facetSets to find conforming
+ // features
+ final List<FacetSet> managedFSets = getManagedFacetSets();
+ final List<FacetSet> allFacetSets = new ArrayList<FacetSet>(managedFSets);
+ // add aggregated FacetSets
+ for (FacetSet facetSet : managedFSets) {
+ //FIXME Should handle recursive containment.
+ for (FacetSet subFacetSet : facetSet.getFacetSets()) {
+ final FacetSet resolvedFacetSet = IResolverManager.DEFAULT
+ .resolve(subFacetSet, FacetSet.class);
+ allFacetSets.add(resolvedFacetSet);
+ }
+ }
+ for (FacetSet facetSet : allFacetSets) {
+ final Resource resource = facetSet.eResource();
+ if (resource == null) {
+ final String message = String.format(
+ "The facetSet %s (%s) is not stored in a resource.", //$NON-NLS-1$
+ facetSet.getName(), facetSet.getNsURI());
+ Logger.logWarning(message, Activator.getDefault());
+ } else {
+ final ResourceSet facetSetRS = resource.getResourceSet();
+ if (!facetSetRS.equals(baserFeatureRS)) {
+ Logger.logWarning(
+ "The facet manager is dealing with more than one resource set.", //$NON-NLS-1$
+ Activator.getDefault());
+ }
+ }
+ for (Facet facet : FacetUtils.getFacets(facetSet)) {
+ final T matchingFeature = getMatchingFeature(eObject, facet,
+ baseFeature);
+ if (matchingFeature != null) {
+ result.add(matchingFeature);
+ }
+ }
+ }
+ if (result.isEmpty()) {
+ if (!this.failingFeatures.contains(baseFeature)
+ && !FacetManagerContext.SILENT) {
+ Logger.logWarning(
+ "The result of " //$NON-NLS-1$
+ + this.getClass().getSimpleName()
+ + ".getOverrideCandidateFeatures(...) is empty! baseFeature=" //$NON-NLS-1$
+ + EcoreUtil.getURI(baseFeature)
+ + " (This message will be sent only once)", //$NON-NLS-1$
+ Activator.getDefault());
+ // This avoid to have to many error messages in the log.
+ this.failingFeatures.add(baseFeature);
+ }
+ result.add(baseFeature);
+ }
+ return result;
+ }
+
+ /**
+ * Test whether a feature is overridden by another (directly or not)
+ *
+ * @param targetParent
+ * @param child
+ * @return true if child is directly or indirectly overridden by parent,
+ * false otherwise
+ */
+ private static boolean isOverridenBy(final DerivedTypedElement child,
+ final DerivedTypedElement targetParent) {
+
+ boolean result = false;
+ if (child.equals(targetParent)) {
+ result = true;
+ } else {
+ DerivedTypedElement currentParent = child.getOverride();
+ while (!result && currentParent != null) {
+ if (currentParent.equals(targetParent)) {
+ result = true;
+ } else {
+ currentParent = currentParent.getOverride();
+ }
+ }
+ }
+ return result;
+ }
+
+ /**
+ * Find DerivedTypedElement features that matches the 'signature'
+ *
+ * @param eObject
+ * EObject used to test conformance
+ * @param facet
+ * @param signatureFeature
+ * reference feature that serves as 'signature'
+ * @throws FacetManagerException
+ */
+ private <T extends DerivedTypedElement> T getMatchingFeature(
+ final EObject eObject, final Facet facet, final T signatureFeature)
+ throws FacetManagerException {
+ T result = null;
+ EList<? extends ETypedElement> eTypedElements;
+ if (signatureFeature instanceof EOperation) {
+ eTypedElements = facet.getFacetOperations();
+ } else {
+ eTypedElements = facet.getFacetElements();
+ }
+ // For each eTypedElement check is it override the signature feature and
+ // if the eTypedElement is owned by a facet to which the eObject
+ // conforms.
+ for (ETypedElement feature : eTypedElements) {
+ if (isMatchingFeature2(signatureFeature, feature)) {
+ // The conformance check is done after the check on the override
+ // to avoid infinite recursion.
+ final ConformanceState conformanceState = this.manager
+ .getConformanceState(eObject, facet);
+ if (conformanceState == ConformanceState.Conformant) {
+ if (!signatureFeature.getClass().isInstance(feature)) {
+ throw new FacetManagerException(
+ ModelUtils.getQualifiedName(feature)
+ + " overrides " //$NON-NLS-1$
+ + ModelUtils
+ .getQualifiedName(signatureFeature)
+ + " but both are not of the same kind."); //$NON-NLS-1$
+ }
+ @SuppressWarnings("unchecked")
+ // @SuppressWarnings("unchecked") check by
+ // "if (!signatureFeature.getClass().isInstance(feature))"
+ final T tmpFeature = (T) feature;
+ result = tmpFeature;
+ break;
+ // Two features from the same Facet cannot
+ // override a feature, so only one can be find
+ // in this Facet => stop search here.
+ }
+ }
+ }
+ return result;
+ }
+
+ private static <T extends DerivedTypedElement> boolean isMatchingFeature2(
+ final T signatureFeature, final ETypedElement feature)
+ throws FacetManagerException {
+ boolean result = false;
+ // We're focusing on DerivedTypedElements
+ // ECore native features could not be overridden by Facets
+ // (EMF facet is supposed to be non intrusive)
+
+ if (signatureFeature.getClass().isInstance(feature)) {
+ final T element = (T) feature;
+ // Just check that the top override is the same as the base feature
+ // i.e. that the current feature matches the 'signature'
+ final DerivedTypedElement topFeature = FacetUtils
+ .getTopOverrideFeature(element);
+ if (topFeature == signatureFeature) {
+ // found a match
+ result = true;
+ } else {
+ final Resource topResource = topFeature.eResource();
+ final Resource signatureResource = signatureFeature.eResource();
+ if (topResource == null || signatureResource == null || topFeature.eResource().getResourceSet() != signatureFeature.eResource().getResourceSet()) {
+ Logger.logWarning(
+ "topOverrideFeature.eResource().getResourceSet() != signatureFeature.eResource().getResourceSet()", //$NON-NLS-1$
+ Activator.getDefault());
+ }
+ }
+ }
+ return result;
+ }
+
+ public void removeFacetSet(final FacetSet facetSet) {
+ final boolean removed = this.managedFacetSets.remove(facetSet);
+ if (removed) {
+ notifyListeners();
+ }
+ }
+
+ public void clear() {
+ final boolean empty = this.managedFacetSets.isEmpty();
+ if (!empty) {
+ this.managedFacetSets.clear();
+ notifyListeners();
+ }
+ }
+
+ public int size() {
+ return this.managedFacetSets.size();
+ }
+
+ public boolean isEmpty() {
+ return this.managedFacetSets.isEmpty();
+ }
+
+ public boolean contains(final Object object) {
+ return this.managedFacetSets.contains(object);
+ }
+
+ public Iterator<FacetSet> iterator() {
+ return this.managedFacetSets.iterator();
+ }
+
+ public Object[] toArray() {
+ return this.managedFacetSets.toArray();
+ }
+
+ public <T> T[] toArray(final T[] array) {
+ return this.managedFacetSets.toArray(array);
+ }
+
+ public boolean add(final FacetSet object) {
+ boolean result = false;
+ this.managedFacetSets.remove(object);
+ if (object != null) {
+ result = this.managedFacetSets.add(object);
+ }
+ if (result) {
+ notifyListeners();
+ }
+ return result;
+ }
+
+ public boolean remove(final Object object) {
+ final boolean isRemoved = this.managedFacetSets.remove(object);
+ if (isRemoved) {
+ notifyListeners();
+ }
+ return isRemoved;
+ }
+
+ public boolean containsAll(final Collection<?> collection) {
+ return this.managedFacetSets.containsAll(collection);
+ }
+
+ public boolean addAll(final Collection<? extends FacetSet> collection) {
+ boolean result = false;
+ for (FacetSet facetSet : collection) {
+ this.managedFacetSets.remove(facetSet);
+ if (facetSet != null) {
+ final boolean addResult = this.managedFacetSets.add(facetSet);
+ result = result || addResult;
+ }
+ }
+ if (result) {
+ notifyListeners();
+ }
+ return result;
+ }
+
+ public boolean addAll(final int index,
+ final Collection<? extends FacetSet> collection) {
+ final List<FacetSet> filtered = new ArrayList<FacetSet>();
+ for (FacetSet facetSet : collection) {
+ if (!filtered.contains(facetSet)) {
+ filtered.add(facetSet);
+ }
+ }
+ this.managedFacetSets.removeAll(filtered);
+ final boolean isAdded = this.managedFacetSets.addAll(index,
+ ListUtils.cleanList(filtered));
+ if (isAdded) {
+ notifyListeners();
+ }
+ return isAdded;
+ }
+
+ public boolean removeAll(final Collection<?> collection) {
+ final boolean isRemoved = this.managedFacetSets.removeAll(collection);
+ if (isRemoved) {
+ notifyListeners();
+ }
+ return isRemoved;
+ }
+
+ public boolean retainAll(final Collection<?> collection) {
+ final boolean isRetained = this.managedFacetSets.retainAll(collection);
+ if (isRetained) {
+ notifyListeners();
+ }
+ return isRetained;
+ }
+
+ public FacetSet get(final int index) {
+ return this.managedFacetSets.get(index);
+ }
+
+ public FacetSet set(final int index, final FacetSet element) {
+ final FacetSet oldElement = this.managedFacetSets.set(index, element);
+ if (!oldElement.equals(element)) {
+ notifyListeners();
+ }
+ return oldElement;
+ }
+
+ public void add(final int index, final FacetSet element) {
+ this.managedFacetSets.remove(element);
+ if (element != null) {
+ this.managedFacetSets.add(index, element);
+ notifyListeners();
+ }
+ }
+
+ public FacetSet remove(final int index) {
+ final FacetSet oldElement = this.managedFacetSets.remove(index);
+ notifyListeners();
+ return oldElement;
+ }
+
+ public int indexOf(final Object object) {
+ return this.managedFacetSets.indexOf(object);
+ }
+
+ public int lastIndexOf(final Object object) {
+ return this.managedFacetSets.lastIndexOf(object);
+ }
+
+ public ListIterator<FacetSet> listIterator() {
+ return this.managedFacetSets.listIterator();
+ }
+
+ public ListIterator<FacetSet> listIterator(final int index) {
+ return this.managedFacetSets.listIterator(index);
+ }
+
+ public List<FacetSet> subList(final int fromIndex, final int toIndex) {
+ return this.subList(fromIndex, toIndex);
+ }
+
+ public void addListener(final IFacetManagerListener listener) {
+ this.listeners.add(listener);
+ }
+
+ public void removeListener(final IFacetManagerListener listener) {
+ this.listeners.remove(listener);
+ }
+
+ private void notifyListeners() {
+ for (IFacetManagerListener listener : this.listeners) {
+ listener.facetManagerChanged();
+ }
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetManagerFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetManagerFactory.java
new file mode 100644
index 00000000000..0d44d620e9f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/FacetManagerFactory.java
@@ -0,0 +1,54 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Gregoire Dupe (Mia-Software) - Bug 361794 - [Restructuring] New customization meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Thomas Cicognani (Soft-Maint) - Bug 416223 - IFacetManagerFactory.getOrCreateFacetManager should not create an instance per call
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManagerFactory;
+
+public class FacetManagerFactory implements IFacetManagerFactory {
+
+ public IFacetManager getOrCreateFacetManager(final Resource resource) {
+ FacetManager result = null;
+ for (Adapter adapter : resource.eAdapters()) {
+ if (adapter instanceof FacetManager) {
+ result = (FacetManager) adapter;
+ }
+ }
+ if (result == null) {
+ result = new FacetManager(resource);
+ resource.eAdapters().add(result);
+ }
+ return result;
+ }
+
+ public IFacetManager getOrCreateFacetManager(final ResourceSet resourceSet) {
+ FacetManager result = null;
+ for (Adapter adapter : resourceSet.eAdapters()) {
+ if (adapter instanceof FacetManager) {
+ result = (FacetManager) adapter;
+ }
+ }
+ if (result == null) {
+ result = new FacetManager(resourceSet);
+ resourceSet.eAdapters().add(result);
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/Messages.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/Messages.java
new file mode 100644
index 00000000000..cb3066cfa6d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/Messages.java
@@ -0,0 +1,28 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal;
+
+import org.eclipse.osgi.util.NLS;
+
+@SuppressWarnings("PMD")
+public final class Messages extends NLS {
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.emf.facet.efacet.core.internal.messages"; //$NON-NLS-1$
+ public static String EFacetCatalogManager_FacetSetCatalogName;
+ public static String EFacetCatalogManager_QuerySetCatalogName;
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(Messages.BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/ResolverManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/ResolverManager.java
new file mode 100644
index 00000000000..043d72c8b06
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/ResolverManager.java
@@ -0,0 +1,113 @@
+/**
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List<ETypedElement>, List<FacetSet>)
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exported.IResolver;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exported.IResolverManager;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+
+public class ResolverManager implements IResolverManager {
+
+ private static final String ATT_NAME = "class"; //$NON-NLS-1$
+ private static final String EXT_POINT_ID = "org.eclipse.papyrus.emf.facet.efacet.core.internal.resolver"; //$NON-NLS-1$
+ private final List<IResolver> resolvers = new ArrayList<IResolver>();
+
+ public ResolverManager() {
+ final IConfigurationElement[] configs = Platform.getExtensionRegistry()
+ .getConfigurationElementsFor(ResolverManager.EXT_POINT_ID);
+ for (IConfigurationElement config : configs) {
+ try {
+ final Object object = config
+ .createExecutableExtension(ResolverManager.ATT_NAME);
+ if (object instanceof IResolver) {
+ final IResolver resolver = (IResolver) object;
+ this.resolvers.add(resolver);
+ }
+ } catch (CoreException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+
+ }
+ }
+
+ public <T> T resolve(final Object object, final Class<T> aClass) {
+ T result = null;
+ for (IResolver resolver : this.resolvers) {
+ if (resolver.canHandle(object)) {
+ try {
+ result = resolver.resolve(object, aClass);
+ } catch (ClassCastException e) {
+ Logger.logWarning(e, Activator.getDefault());
+ // Nothing to: we will try with an other resolver or return
+ // null
+ }
+ if (result != null) {
+ break;
+ }
+ }
+ }
+ return result;
+ }
+
+ public <T> List<T> selectionPropagation(final Object selectedObject,
+ final Class<T> aClass) {
+ @SuppressWarnings("unchecked")
+ // @SuppressWarnings("unchecked") The untyped list is an definitely
+ // empty list.
+ List<T> result = Collections.EMPTY_LIST;
+ for (IResolver resolver : this.resolvers) {
+ if (resolver.canHandle(selectedObject)) {
+ try {
+ result = resolver.selectionPropagation(selectedObject,
+ aClass);
+ } catch (ClassCastException e) {
+ Logger.logWarning(e, Activator.getDefault());
+ // Nothing to: we will try with an other resolver or return
+ // null
+ }
+ if (result != null) {
+ break;
+ }
+ }
+ }
+ return result;
+ }
+
+ public <T> T selectionRoot(final Object selectedObject,
+ final Class<T> aClass) {
+ T result = null;
+ for (IResolver resolver : this.resolvers) {
+ if (resolver.canHandle(selectedObject)) {
+ try {
+ result = resolver.selectionRoot(selectedObject,
+ aClass);
+ } catch (ClassCastException e) {
+ Logger.logWarning(e, Activator.getDefault());
+ // Nothing to: we will try with an other resolver or return
+ // null
+ }
+ if (result != null) {
+ break;
+ }
+ }
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/catalog/EFacetCatalogManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/catalog/EFacetCatalogManager.java
new file mode 100644
index 00000000000..32a319302ee
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/catalog/EFacetCatalogManager.java
@@ -0,0 +1,58 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ * Nicolas Guyomar (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ * Nicolas Bros (Mia-Software) - Bug 361617 - Deprecation of APIs for the old Facet metamodels
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.catalog;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.QuerySet;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.EfacetcatalogFactory;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.FacetSetCatalog;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.QuerySetCatalog;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogManager;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogSet;
+
+/** @deprecated replaced by {@link EFacetCatalogManager2} for the new eFacet2 metamodel */
+@Deprecated
+public class EFacetCatalogManager implements ICatalogManager {
+
+ private final FacetSetCatalog facetSetCatalog;
+ private final QuerySetCatalog querySetCatalog;
+
+ public EFacetCatalogManager() {
+ this.facetSetCatalog = EfacetcatalogFactory.eINSTANCE.createFacetSetCatalog();
+ this.facetSetCatalog.setName(Messages.EFacetCatalogManager_FacetSetCatalogName);
+ this.querySetCatalog = EfacetcatalogFactory.eINSTANCE.createQuerySetCatalog();
+ this.querySetCatalog.setName(Messages.EFacetCatalogManager_QuerySetCatalogName);
+ }
+
+ public boolean canBeManaged(final EObject root) {
+ return root instanceof QuerySet || root instanceof FacetSet;
+ }
+
+ public void manage(final EObject root) {
+ if (root instanceof FacetSet) {
+ FacetSet facetSet = (FacetSet) root;
+ this.facetSetCatalog.getInstalledEntries().add(facetSet);
+ } else if (root instanceof QuerySet) {
+ QuerySet querySet = (QuerySet) root;
+ this.querySetCatalog.getInstalledEntries().add(querySet);
+ }
+ }
+
+ public void setCatalogSet(final CatalogSet catalogSet) {
+ catalogSet.getCatalogs().add(this.facetSetCatalog);
+ catalogSet.getCatalogs().add(this.querySetCatalog);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/catalog/EFacetCatalogManager2.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/catalog/EFacetCatalogManager2.java
new file mode 100644
index 00000000000..e57c96eccfc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/catalog/EFacetCatalogManager2.java
@@ -0,0 +1,72 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ * Nicolas Guyomar (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Nicolas Bros (Mia-Software) - Bug 361817 - [Restructuring] Dynamic load to the facet catalog
+ * Nicolas Bros (Mia-Software) - Bug 370110 - Rename efacetcatalog2.ecore
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.catalog;
+
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.BasicEList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetSetCatalogManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.EfacetcatalogFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.FacetSetCatalog;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogManager;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogSet;
+
+public class EFacetCatalogManager2 implements IFacetSetCatalogManager, ICatalogManager {
+
+ private final FacetSetCatalog facetSetCatalog;
+
+ public EFacetCatalogManager2() {
+ this.facetSetCatalog = EfacetcatalogFactory.eINSTANCE
+ .createFacetSetCatalog();
+ this.facetSetCatalog.setName(Messages.EFacetCatalogManager_FacetSetCatalogName);
+ }
+
+ public boolean canBeManaged(final EObject root) {
+ return root instanceof FacetSet;
+ }
+
+ public void manage(final EObject root) {
+ if (root instanceof FacetSet) {
+ final FacetSet facetSet = (FacetSet) root;
+ this.facetSetCatalog.getInstalledEntries().add(facetSet);
+ }
+ }
+
+ public void setCatalogSet(final CatalogSet catalogSet) {
+ catalogSet.getCatalogs().add(this.facetSetCatalog);
+ }
+
+ public List<FacetSet> getRegisteredFacetSets() {
+ final BasicEList<FacetSet> result = new BasicEList<FacetSet>();
+ for (EObject eObject : this.facetSetCatalog.getInstalledEntries()) {
+ if (eObject instanceof FacetSet) {
+ final FacetSet facetSet = (FacetSet) eObject;
+ result.add(facetSet);
+ }
+ }
+ return Collections.unmodifiableList(result);
+ }
+
+ public void registerFacetSet(final FacetSet facetSet) {
+ this.facetSetCatalog.getInstalledEntries().add(facetSet);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/DerivedTypedElementEvaluationException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/DerivedTypedElementEvaluationException.java
new file mode 100644
index 00000000000..1d2eb901f0d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/DerivedTypedElementEvaluationException.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 362191 - [Restructuring] Query mechanism for eFacet2
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.exception;
+
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.util.core.internal.ErrorHandlingUtils;
+
+/**
+ * This exception occurs when something goes wrong during the execution of a query.
+ *
+ * @since 0.2
+ */
+public class DerivedTypedElementEvaluationException extends DerivedTypedElementException {
+ // This class is a copy of
+ // org.eclipse.papyrus.emf.facet.infra.query.core.ModelQueryExecutionException
+
+ private static final long serialVersionUID = -8464252257666617685L;
+
+ public DerivedTypedElementEvaluationException(final String message) {
+ super(message);
+ }
+
+ public DerivedTypedElementEvaluationException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+ public DerivedTypedElementEvaluationException(final Throwable cause) {
+ super(cause);
+ }
+
+ /** Constructor for evaluation exception due to wrong type */
+ public DerivedTypedElementEvaluationException(final String message, final Class<?> expectedType, final Object resultElement) {
+ super(ErrorHandlingUtils.buildWrongTypeMessage(message, expectedType, resultElement));
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/DerivedTypedElementTypeCheckingException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/DerivedTypedElementTypeCheckingException.java
new file mode 100644
index 00000000000..b839275866c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/DerivedTypedElementTypeCheckingException.java
@@ -0,0 +1,37 @@
+/**
+ * Copyright (c) 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 362191 - [Restructuring] Query mechanism for eFacet2
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.exception;
+
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+
+/**
+ * This exception occurs when the type of the result of evaluating a derived typed element is not
+ * the one that was expected
+ *
+ * @since 0.2
+ */
+public class DerivedTypedElementTypeCheckingException extends DerivedTypedElementException {
+
+ private static final long serialVersionUID = -9064274334817642819L;
+
+ public DerivedTypedElementTypeCheckingException(final String message) {
+ super(message);
+ }
+
+ public DerivedTypedElementTypeCheckingException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+ public DerivedTypedElementTypeCheckingException(final Throwable cause) {
+ super(cause);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/FacetConformanceEvaluationException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/FacetConformanceEvaluationException.java
new file mode 100644
index 00000000000..0fcbcf17b3f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/FacetConformanceEvaluationException.java
@@ -0,0 +1,32 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.exception;
+
+/**
+ * Happens when there is an error evaluating a Facet's conformance typed element.
+ *
+ * @since 0.2
+ */
+public class FacetConformanceEvaluationException extends Exception {
+ private static final long serialVersionUID = -5306430483154103388L;
+
+ public FacetConformanceEvaluationException(final String message) {
+ super(message);
+ }
+
+ public FacetConformanceEvaluationException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+ public FacetConformanceEvaluationException(final Throwable cause) {
+ super(cause);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/NonApplicableFacetException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/NonApplicableFacetException.java
new file mode 100644
index 00000000000..1e3ede63a5e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/NonApplicableFacetException.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.exception;
+
+/**
+ * This exception is raised when an object cannot be extended by a facet because the class of the object does not correspond
+ * to the extended metaclass of the facet.
+ * @since 0.2
+ */
+public class NonApplicableFacetException extends Exception {
+
+ private static final long serialVersionUID = 2984069177830836577L;
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/NonConformingEObjectException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/NonConformingEObjectException.java
new file mode 100644
index 00000000000..b4d91b3c36f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/NonConformingEObjectException.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.exception;
+
+/**
+ * This exception is raised when an object cannot be extended by a facet because it is filtered by the conformance query
+ * of this facet.
+ * @since 0.2
+ */
+public class NonConformingEObjectException extends Exception {
+
+ private static final long serialVersionUID = -7778081627619345385L;
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/SaveStructuralFeatureInstanceModelException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/SaveStructuralFeatureInstanceModelException.java
new file mode 100644
index 00000000000..90c952ffd59
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/SaveStructuralFeatureInstanceModelException.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.exception;
+
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.FacetManagerException;
+
+/**
+ * This exception is raised when an IOException is caught when trying to save a structural feature instance model
+ * @since 0.2
+ */
+public class SaveStructuralFeatureInstanceModelException extends
+ FacetManagerException {
+
+ private static final long serialVersionUID = 7024009106572531846L;
+
+ /**
+ * Creates a new instance of UnmatchingExpectedTypeException
+ * with {@link Throwable} the exception at the origin of this exception
+ */
+ public SaveStructuralFeatureInstanceModelException(final Throwable cause) {
+ super(cause);
+ }
+
+ /**
+ * Creates a new instance of UnmatchingExpectedTypeException
+ * with {@link Throwable} the exception at the origin of this exception
+ */
+ public SaveStructuralFeatureInstanceModelException(final String message) {
+ super(message);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/UnmatchingExpectedTypeException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/UnmatchingExpectedTypeException.java
new file mode 100644
index 00000000000..c2a003b99cb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exception/UnmatchingExpectedTypeException.java
@@ -0,0 +1,45 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.exception;
+
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.FacetManagerException;
+import org.eclipse.papyrus.emf.facet.util.core.internal.ErrorHandlingUtils;
+
+/**
+ * This exception is raised when a value's type does not match with the expected type
+ *
+ * @since 0.2
+ */
+public class UnmatchingExpectedTypeException extends FacetManagerException {
+
+ private static final long serialVersionUID = 1456802297756942271L;
+
+ public UnmatchingExpectedTypeException() {
+ super();
+ }
+
+ public UnmatchingExpectedTypeException(final String message) {
+ super(message);
+ }
+
+ public UnmatchingExpectedTypeException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+ public UnmatchingExpectedTypeException(final Throwable cause) {
+ super(cause);
+ }
+
+ public UnmatchingExpectedTypeException(final String message, final Class<?> expectedType, final Object resultElement) {
+ super(ErrorHandlingUtils.buildWrongTypeMessage(message, expectedType, resultElement));
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exported/IResolver.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exported/IResolver.java
new file mode 100644
index 00000000000..db0a254c4e8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exported/IResolver.java
@@ -0,0 +1,61 @@
+/**
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List<ETypedElement>, List<FacetSet>)
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.exported;
+
+import java.util.List;
+
+/**
+ * The interface has to be implemented to contribute to the extension point
+ * 'org.eclipse.papyrus.emf.facet.efacet.core.internal.resolver'.
+ */
+public interface IResolver {
+
+ /**
+ * Return true is the parameter object can be handle by the implementation
+ * of this interface.
+ *
+ * @param object
+ * @return
+ */
+ boolean canHandle(Object object);
+
+ /**
+ * If the parameter 'object' is a proxy, this method returns the
+ * corresponding a resolved object.
+ *
+ * @param object
+ * a proxy
+ * @param aClass
+ * the expected resolved object
+ */
+ <T> T resolve(Object object, Class<T> aClass);
+
+ /**
+ * This method returns the objects that have to be automatically selected
+ * when the parameter 'selectedObject' is selected.
+ *
+ * @param selectedObject
+ * @param aClass
+ * the expected list elements type.
+ */
+ <T> List<T> selectionPropagation(Object selectedObject, Class<T> aClass);
+
+ /**
+ * This method returns the root of the objects that have to be automatically
+ * selected when the parameter 'selectedObject' is selected.
+ *
+ * @param selectedObject
+ * @param aClass
+ * the expected list elements type.
+ */
+ <T> T selectionRoot(Object selectedObject, Class<T> aClass);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exported/IResolverManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exported/IResolverManager.java
new file mode 100644
index 00000000000..b1403720120
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/exported/IResolverManager.java
@@ -0,0 +1,28 @@
+/**
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List<ETypedElement>, List<FacetSet>)
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.exported;
+
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.ResolverManager;
+
+public interface IResolverManager {
+
+ IResolverManager DEFAULT = new ResolverManager();
+
+ <T> T resolve(Object object, Class<T> aClass);
+
+ <T> List<T> selectionPropagation(Object selectedObject, Class<T> aClass);
+
+ <T> T selectionRoot(Object selectedObject, Class<T> aClass);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/incubatingapi/IFacetActions2.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/incubatingapi/IFacetActions2.java
new file mode 100644
index 00000000000..0799a5fed86
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/incubatingapi/IFacetActions2.java
@@ -0,0 +1,208 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 338813 - [EMF Facet Framework] basic Facet actions
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.incubatingapi;
+
+import java.io.IOException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.FacetActions2Impl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.util.emf.core.exception.InvalidFacetSetException;
+
+/**
+ * This interface contains methods to create {@link Facet}s.
+ *
+ * @since 0.2
+ */
+public interface IFacetActions2 {
+
+ IFacetActions2 INSTANCE = new FacetActions2Impl();
+
+ /**
+ * Add the given facetSet to the given facetSet model file, which will be created
+ *
+ * @param facetSet
+ * the facetSet to be created. Cannot be <code>null</code>
+ * @param project
+ * the new file in which the facetSet has to be created. Cannot be <code>null</code>,
+ * and cannot already exist
+ */
+ void saveFacetSet(FacetSet facetSet, IFile file) throws IOException,
+ InvalidFacetSetException;
+
+ /**
+ * Add the given {@link Facet} to the given {@link FacetSet}
+ *
+ * @param facetSet
+ * the parent facetSet, cannot be null
+ * @param facet
+ * the {@link Facet}, cannot be null, or contained by a resource
+ * @param editingDomain
+ * the editing domain needed to perform the Add EMF command, cannot be null
+ */
+ Facet createFacetInFacetSet(FacetSet facetSet, Facet facet,
+ EditingDomain editingDomain);
+
+ /**
+ * Create a command to add the given {@link Facet} to the given {@link FacetSet}
+ *
+ * @param facetSet
+ * the parent facetSet, cannot be null
+ * @param facet
+ * the {@link Facet}, cannot be null, or contained by a resource
+ * @param editingDomain
+ * the editing domain needed to perform the Add EMF command, cannot be null
+ */
+ Command createCreateFacetInFacetSetCommand(FacetSet facetSet, Facet facet,
+ EditingDomain editingDomain);
+
+ /**
+ * Add the given {@link FacetAttribute} to the given {@link Facet}
+ *
+ * @param facet
+ * the parent {@link Facet}, cannot be null
+ * @param facetAttribute
+ * the {@link FacetAttribute}, cannot be null, or contained by a resource
+ * @param editingDomain
+ * the editing domain needed to perform the Add Emf command, cannot be null
+ */
+ void addAttributeInFacet(Facet facet, FacetAttribute facetAttribute,
+ EditingDomain editingDomain);
+
+ /**
+ * Create a command to add the given {@link FacetAttribute} to the given {@link Facet}
+ *
+ * @param facet
+ * the parent {@link Facet}, cannot be null
+ * @param facetAttribute
+ * the {@link FacetAttribute}, cannot be null, or contained by a resource
+ * @param editingDomain
+ * the editing domain needed to perform the Add Emf command, cannot be null
+ */
+ Command createAddAttributeInFacetCommand(Facet facet, FacetAttribute facetAttribute,
+ EditingDomain editingDomain);
+
+ /**
+ * Add the given {@link FacetReference} to the given {@link Facet}
+ *
+ * @param facet
+ * the parent {@link Facet}, cannot be null
+ * @param facetReference
+ * the {@link FacetReference}, cannot be null, or contained by a resource
+ * @param editingDomain
+ * the editing domain needed to perform the Add Emf command, cannot be null
+ */
+ void addReferenceInFacet(Facet facet, FacetReference facetReference,
+ EditingDomain editingDomain);
+
+ /**
+ * Create a command to add the given {@link FacetReference} to the given {@link Facet}
+ *
+ * @param facet
+ * the parent {@link Facet}, cannot be null
+ * @param facetReference
+ * the {@link FacetReference}, cannot be null, or contained by a resource
+ * @param editingDomain
+ * the editing domain needed to perform the Add Emf command, cannot be null
+ */
+ Command createAddReferenceInFacetCommand(Facet facet,
+ FacetReference facetReference, EditingDomain editingDomain);
+
+ /**
+ * Add a new {@link FacetOperation} to the given {@link Facet}
+ *
+ * @param facet
+ * the parent {@link Facet}, cannot be null
+ * @param facetOperation
+ * the new {@link FacetOperation}, cannot be null, or contained by a resource
+ * @param editingDomain
+ * the editing domain needed to perform the Add Emf command, cannot be null
+ */
+ void addOperationInFacet(Facet facet, FacetOperation facetOperation,
+ EditingDomain editingDomain);
+
+ /**
+ * Add a new {@link FacetOperation} to the given {@link Facet}
+ *
+ * @param facet
+ * the parent {@link Facet}, cannot be null
+ * @param facetOperation
+ * the new {@link FacetOperation}, cannot be null, or contained by a resource
+ * @param editingDomain
+ * the editing domain needed to perform the Add Emf command, cannot be null
+ */
+ Command createAddOperationInFacetCommand(Facet facet,
+ FacetOperation facetOperation, EditingDomain editingDomain);
+
+ /**
+ * Add a new {@link EParameter} to the given {@link FacetOperation}
+ *
+ * @param operation
+ * the parent {@link EOperation}
+ * @param parameter
+ * the new {@link EParameter}
+ * @param editingDomain
+ * the editing domain needed to perform the Add Emf command, cannot be null
+ */
+ void addParameterInOperation(FacetOperation operation,
+ EParameter parameter, EditingDomain editingDomain);
+
+ /**
+ * Add a new {@link EParameter} to the given {@link FacetOperation}
+ *
+ * @param operation
+ * the parent {@link EOperation}
+ * @param parameter
+ * the new {@link EParameter}
+ * @param editingDomain
+ * the editing domain needed to perform the Add Emf command, cannot be null
+ */
+ Command createAddParameterInOperationCommand(FacetOperation operation,
+ EParameter parameter, EditingDomain editingDomain);
+
+ /**
+ * Set the given URI to the given {@link FacetSet}
+ *
+ * @param facetSet
+ * the {@link FacetSet} to be modified
+ * @param nsUri
+ * the Uri
+ * @param editingDomain
+ * the editing domain needed to perform the Set Emf command, cannot be null
+ */
+ void setFacetSetNsUri(FacetSet facetSet, String nsUri,
+ EditingDomain editingDomain);
+
+ /**
+ * Set the given URI to the given {@link FacetSet}
+ *
+ * @param facetSet
+ * the {@link FacetSet} to be modified
+ * @param nsUri
+ * the Uri
+ * @param editingDomain
+ * the editing domain needed to perform the Set Emf command, cannot be null
+ */
+ Command createSetFacetSetNsUriCommand(FacetSet facetSet, String nsUri,
+ EditingDomain editingDomain);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/messages.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/messages.properties
new file mode 100644
index 00000000000..75dcf1429ef
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/messages.properties
@@ -0,0 +1,13 @@
+###########################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+###########################################################################
+EFacetCatalogManager_FacetSetCatalogName=FacetSet catalog
+EFacetCatalogManager_QuerySetCatalogName=QuerySet catalog
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/DerivedTypedElementImplementationFactoryRegistry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/DerivedTypedElementImplementationFactoryRegistry.java
new file mode 100644
index 00000000000..7e845740325
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/DerivedTypedElementImplementationFactoryRegistry.java
@@ -0,0 +1,121 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Gregoire Dupe (Mia-Software) - Bug 362087 - [Deprecated] org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManager
+ * Nicolas Bros (Mia-Software) - Bug 362191 - [Restructuring] Query mechanism for eFacet2
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.IExtension;
+import org.eclipse.core.runtime.IExtensionPoint;
+import org.eclipse.core.runtime.IExtensionRegistry;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IDerivedTypedElementImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IDerivedTypedElementImplementationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManagerFactory;
+import org.osgi.framework.Bundle;
+
+/** @deprecated replaced by {@link QueryImplementationFactoryRegistry}. No tracking bug because this API has not been released yet. */
+@Deprecated
+public class DerivedTypedElementImplementationFactoryRegistry {
+ private static final String DERIVED_TYPED_ELEMENT_IMPLEMENTATION_REGISTRATION_ID = "org.eclipse.papyrus.emf.facet.efacet.core.derivedTypedElementImplementationRegistration"; //$NON-NLS-1$
+ private static final String CLASS = "class"; //$NON-NLS-1$
+ public static final DerivedTypedElementImplementationFactoryRegistry INSTANCE = new DerivedTypedElementImplementationFactoryRegistry();
+
+ private final List<IDerivedTypedElementImplementationFactory> derivedTypedElementImplementationFactories = new ArrayList<IDerivedTypedElementImplementationFactory>();
+
+ public DerivedTypedElementImplementationFactoryRegistry() {
+ initRegisteredEntries();
+ }
+
+ private void initRegisteredEntries() {
+ IExtensionRegistry registry = Platform.getExtensionRegistry();
+ IExtensionPoint extPoint = registry
+ .getExtensionPoint(DerivedTypedElementImplementationFactoryRegistry.DERIVED_TYPED_ELEMENT_IMPLEMENTATION_REGISTRATION_ID);
+ if (extPoint != null) {
+ for (IExtension ext : extPoint.getExtensions()) {
+ for (IConfigurationElement configElt : ext.getConfigurationElements()) {
+
+ IDerivedTypedElementImplementationFactory derivedTypedElementImplementationFactory;
+ try {
+ derivedTypedElementImplementationFactory = (IDerivedTypedElementImplementationFactory) configElt
+ .createExecutableExtension(DerivedTypedElementImplementationFactoryRegistry.CLASS);
+ this.derivedTypedElementImplementationFactories.add(derivedTypedElementImplementationFactory);
+ } catch (CoreException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * Returns the derived typed element evaluator that handles the given type of query
+ *
+ * @param query
+ * the type of query for which an {@link IDerivedTypedElementImplementation} is searched
+ * @param derivedTEManager
+ * @return the {@link IDerivedTypedElementImplementation}
+ * @throws DerivedTypedElementException
+ * if no factory implementation was registered for the type of the given query
+ */
+ public IDerivedTypedElementImplementation getEvaluatorFor(final Query query, final IDerivedTypedElementManager derivedTEManager)
+ throws DerivedTypedElementException {
+ if (query == null) {
+ throw new IllegalArgumentException("query cannot be null"); //$NON-NLS-1$
+ }
+ IDerivedTypedElementImplementation derivedTypedElementImplementation = null;
+ boolean factoryFound = false;
+ for (IDerivedTypedElementImplementationFactory derivedTypedElementImplementationFactory : this.derivedTypedElementImplementationFactories) {
+ factoryFound = derivedTypedElementImplementationFactory.getManagedQueryType() == query.eClass();
+ if (factoryFound) {
+ Resource queryResource = query.eResource();
+ Bundle bundle;
+ if (queryResource != null) {
+ bundle = ICatalogSetManagerFactory.DEFAULT.createICatalogSetManager(query.eResource().getResourceSet()).getBundleByResource(queryResource);
+ } else {
+ bundle = null;
+ }
+ derivedTypedElementImplementation = derivedTypedElementImplementationFactory.create(query, bundle, derivedTEManager);
+ break;
+ }
+ }
+ if (!factoryFound) {
+ StringBuffer sb = new StringBuffer();
+ sb.append("No factory implementation found for "); //$NON-NLS-1$
+ sb.append(QueryUtils.getQueryDescription(query));
+ sb.append(".\nA factory should be registered through the " + DerivedTypedElementImplementationFactoryRegistry.DERIVED_TYPED_ELEMENT_IMPLEMENTATION_REGISTRATION_ID + " extension point."); //$NON-NLS-1$ //$NON-NLS-2$
+ sb.append("\nAvailable Query types are: "); //$NON-NLS-1$
+ for (int i = 0; i < this.derivedTypedElementImplementationFactories.size(); i++) {
+ if (i > 0) {
+ sb.append(", "); //$NON-NLS-1$
+ }
+ IDerivedTypedElementImplementationFactory queryEvaluatorFactory = this.derivedTypedElementImplementationFactories.get(i);
+ sb.append(queryEvaluatorFactory.getManagedQueryType().getName());
+ }
+ throw new DerivedTypedElementException(sb.toString());
+ }
+ return derivedTypedElementImplementation;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/EObjectLiteralQueryImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/EObjectLiteralQueryImplementation.java
new file mode 100644
index 00000000000..23c12faa73d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/EObjectLiteralQueryImplementation.java
@@ -0,0 +1,48 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.DerivedTypedElementEvaluationException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.EObjectLiteralQuery;
+
+public class EObjectLiteralQueryImplementation implements IQueryImplementation {
+
+ private boolean checkResultType = false;
+
+ public Object getValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ return ((EObjectLiteralQuery) query).getElement();
+ }
+
+ public void setValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues,
+ final Object newValue)
+ throws DerivedTypedElementException {
+ throw new DerivedTypedElementEvaluationException("Not implemented"); //$NON-NLS-1$
+ }
+
+ public boolean isCheckResultType() {
+ return this.checkResultType;
+ }
+
+ public void setCheckResultType(final boolean checkResultType) {
+ this.checkResultType = checkResultType;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/EObjectLiteralQueryImplementationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/EObjectLiteralQueryImplementationFactory.java
new file mode 100644
index 00000000000..25336424e0c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/EObjectLiteralQueryImplementationFactory.java
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.osgi.framework.Bundle;
+
+public class EObjectLiteralQueryImplementationFactory implements IQueryImplementationFactory {
+
+ public EClass getManagedQueryType() {
+ return QueryPackage.eINSTANCE.getEObjectLiteralQuery();
+ }
+
+ public IQueryImplementation create(final Query query, final Bundle queryBundle, final IDerivedTypedElementManager manager) throws DerivedTypedElementException {
+ final EObjectLiteralQueryImplementation evaluator = new EObjectLiteralQueryImplementation();
+ evaluator.setCheckResultType(true);
+ return evaluator;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/FalseLiteralQueryImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/FalseLiteralQueryImplementation.java
new file mode 100644
index 00000000000..ed0cc02d92c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/FalseLiteralQueryImplementation.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.DerivedTypedElementEvaluationException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+public class FalseLiteralQueryImplementation implements IQueryImplementation {
+
+ private boolean checkResultType = false;
+
+ public Object getValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ return Boolean.FALSE;
+ }
+
+ public void setValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final Object newValue)
+ throws DerivedTypedElementException {
+ throw new DerivedTypedElementEvaluationException("Not implemented"); //$NON-NLS-1$
+ }
+
+ public void setCheckResultType(final boolean checkResultType) {
+ this.checkResultType = checkResultType;
+ }
+
+ public boolean isCheckResultType() {
+ return this.checkResultType;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/FalseLiteralQueryImplementationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/FalseLiteralQueryImplementationFactory.java
new file mode 100644
index 00000000000..80734e4196e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/FalseLiteralQueryImplementationFactory.java
@@ -0,0 +1,35 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.osgi.framework.Bundle;
+
+public class FalseLiteralQueryImplementationFactory implements IQueryImplementationFactory {
+
+ public EClass getManagedQueryType() {
+ return QueryPackage.eINSTANCE.getFalseLiteralQuery();
+ }
+
+ public IQueryImplementation create(final Query query, final Bundle queryBundle, final IDerivedTypedElementManager manager) throws DerivedTypedElementException {
+ final FalseLiteralQueryImplementation evaluator = new FalseLiteralQueryImplementation();
+ evaluator.setCheckResultType(false);
+ return evaluator;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/FloatLiteralQueryImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/FloatLiteralQueryImplementation.java
new file mode 100644
index 00000000000..02d55135c61
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/FloatLiteralQueryImplementation.java
@@ -0,0 +1,46 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.DerivedTypedElementEvaluationException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FloatLiteralQuery;
+
+public class FloatLiteralQueryImplementation implements IQueryImplementation {
+
+ private boolean checkResultType = false;
+
+ public Object getValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ return Float.valueOf(((FloatLiteralQuery) query).getValue());
+ }
+
+ public void setValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final Object newValue)
+ throws DerivedTypedElementException {
+ throw new DerivedTypedElementEvaluationException("Not implemented"); //$NON-NLS-1$
+ }
+
+ public void setCheckResultType(final boolean checkResultType) {
+ this.checkResultType = checkResultType;
+ }
+
+ public boolean isCheckResultType() {
+ return this.checkResultType;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/FloatLiteralQueryImplementationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/FloatLiteralQueryImplementationFactory.java
new file mode 100644
index 00000000000..15dbf40a1df
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/FloatLiteralQueryImplementationFactory.java
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.osgi.framework.Bundle;
+
+public class FloatLiteralQueryImplementationFactory implements IQueryImplementationFactory {
+
+ public EClass getManagedQueryType() {
+ return QueryPackage.eINSTANCE.getFloatLiteralQuery();
+ }
+
+ public IQueryImplementation create(final Query query, final Bundle queryBundle, final IDerivedTypedElementManager manager) throws DerivedTypedElementException {
+ final FloatLiteralQueryImplementation evaluator = new FloatLiteralQueryImplementation();
+ evaluator.setCheckResultType(true);
+ return evaluator;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/IntegerLiteralQueryImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/IntegerLiteralQueryImplementation.java
new file mode 100644
index 00000000000..a8d247d07fb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/IntegerLiteralQueryImplementation.java
@@ -0,0 +1,46 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.DerivedTypedElementEvaluationException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IntegerLiteralQuery;
+
+public class IntegerLiteralQueryImplementation implements IQueryImplementation {
+
+ private boolean checkResultType = false;
+
+ public Object getValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ return Integer.valueOf(((IntegerLiteralQuery) query).getValue());
+ }
+
+ public void setValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final Object newValue)
+ throws DerivedTypedElementException {
+ throw new DerivedTypedElementEvaluationException("Not implemented"); //$NON-NLS-1$
+ }
+
+ public void setCheckResultType(final boolean checkResultType) {
+ this.checkResultType = checkResultType;
+ }
+
+ public boolean isCheckResultType() {
+ return this.checkResultType;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/IntegerLiteralQueryImplementationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/IntegerLiteralQueryImplementationFactory.java
new file mode 100644
index 00000000000..a23e3fdda64
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/IntegerLiteralQueryImplementationFactory.java
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.osgi.framework.Bundle;
+
+public class IntegerLiteralQueryImplementationFactory implements IQueryImplementationFactory {
+
+ public EClass getManagedQueryType() {
+ return QueryPackage.eINSTANCE.getIntegerLiteralQuery();
+ }
+
+ public IQueryImplementation create(final Query query, final Bundle queryBundle, final IDerivedTypedElementManager manager) throws DerivedTypedElementException {
+ final IntegerLiteralQueryImplementation evaluator = new IntegerLiteralQueryImplementation();
+ evaluator.setCheckResultType(true);
+ return evaluator;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/IsOneOfQueryImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/IsOneOfQueryImplementation.java
new file mode 100644
index 00000000000..a5d558a1bdb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/IsOneOfQueryImplementation.java
@@ -0,0 +1,52 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.DerivedTypedElementEvaluationException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery;
+
+public class IsOneOfQueryImplementation implements IQueryImplementation {
+
+ // This class is a modified copy of :
+ // org.eclipse.papyrus.emf.facet.infra.query.core.java.internal.JavaModelQueryAdapter
+
+ private boolean checkResultType = false;
+
+ public Object getValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ return Boolean.valueOf(((IsOneOfQuery) query).getExpectedEObjects().contains(source));
+ }
+
+ public void setValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final Object newValue)
+ throws DerivedTypedElementException {
+ throw new DerivedTypedElementEvaluationException("Not implemented"); //$NON-NLS-1$
+ }
+
+ public void setCheckResultType(final boolean checkResultType) {
+ this.checkResultType = checkResultType;
+ }
+
+ public boolean isCheckResultType() {
+ return this.checkResultType;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/IsOneOfQueryImplementationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/IsOneOfQueryImplementationFactory.java
new file mode 100644
index 00000000000..a7e28152b89
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/IsOneOfQueryImplementationFactory.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.osgi.framework.Bundle;
+
+public class IsOneOfQueryImplementationFactory implements IQueryImplementationFactory {
+
+ public EClass getManagedQueryType() {
+ return QueryPackage.eINSTANCE.getIsOneOfQuery();
+ }
+
+ public IQueryImplementation create(final Query query, final Bundle queryBundle, final IDerivedTypedElementManager manager) throws DerivedTypedElementException {
+ final IsOneOfQueryImplementation evaluator = new IsOneOfQueryImplementation();
+ evaluator.setCheckResultType(false);
+ return evaluator;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/NavigationQueryImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/NavigationQueryImplementation.java
new file mode 100644
index 00000000000..e3e9c75b2cf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/NavigationQueryImplementation.java
@@ -0,0 +1,80 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Olivier Remaud (Soft-Maint) - Bug 373087 - [Improvement] Adaptable behavior on error
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import java.lang.reflect.InvocationTargetException;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.DerivedTypedElementEvaluationException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery;
+
+public class NavigationQueryImplementation implements IQueryImplementation {
+
+ // This class is a modified copy of :
+ // org.eclipse.papyrus.emf.facet.infra.query.core.java.internal.JavaModelQueryAdapter
+
+ private boolean checkResultType = false;
+
+ public Object getValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ final NavigationQuery navigationQuery = (NavigationQuery) query;
+ Object current = source;
+ for (final ETypedElement typedElement : navigationQuery.getPath()) {
+ if (current instanceof EObject) {
+ final EObject currentEObject = (EObject) current;
+ if (typedElement instanceof EOperation) {
+ final EOperation operation = (EOperation) typedElement;
+ try {
+ current = currentEObject.eInvoke(operation, null);
+ } catch (final InvocationTargetException e) {
+ throw new DerivedTypedElementEvaluationException("Invocation of " + operation.getName() + " failed.", e); //$NON-NLS-1$//$NON-NLS-2$
+ }
+ } else if (typedElement instanceof EStructuralFeature) {
+ final EStructuralFeature structuralFeature = (EStructuralFeature) typedElement;
+ current = currentEObject.eGet(structuralFeature);
+ } else {
+ throw new DerivedTypedElementEvaluationException("The " + typedElement.eClass().getName() + " is not supported."); //$NON-NLS-1$//$NON-NLS-2$
+ }
+ } else {
+ if (current != null || navigationQuery.isFailOnError()) {
+ throw new DerivedTypedElementEvaluationException("Invalid path"); //$NON-NLS-1$
+ }
+ }
+ }
+ return current;
+ }
+
+ public void setValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final Object newValue)
+ throws DerivedTypedElementException {
+ throw new DerivedTypedElementEvaluationException("Not implemented"); //$NON-NLS-1$
+ }
+
+ public void setCheckResultType(final boolean checkResultType) {
+ this.checkResultType = checkResultType;
+ }
+
+ public boolean isCheckResultType() {
+ return this.checkResultType;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/NavigationQueryImplementationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/NavigationQueryImplementationFactory.java
new file mode 100644
index 00000000000..7a3e4afacec
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/NavigationQueryImplementationFactory.java
@@ -0,0 +1,35 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.osgi.framework.Bundle;
+
+public class NavigationQueryImplementationFactory implements IQueryImplementationFactory {
+
+ public EClass getManagedQueryType() {
+ return QueryPackage.eINSTANCE.getNavigationQuery();
+ }
+
+ public IQueryImplementation create(final Query query, final Bundle queryBundle, final IDerivedTypedElementManager manager) throws DerivedTypedElementException {
+ final NavigationQueryImplementation evaluator = new NavigationQueryImplementation();
+ evaluator.setCheckResultType(true);
+ return evaluator;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/NullLiteralQueryImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/NullLiteralQueryImplementation.java
new file mode 100644
index 00000000000..5d21fc5a471
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/NullLiteralQueryImplementation.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.DerivedTypedElementEvaluationException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+public class NullLiteralQueryImplementation implements IQueryImplementation {
+
+ private boolean checkResultType = false;
+
+ public Object getValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ return null;
+ }
+
+ public void setValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final Object newValue)
+ throws DerivedTypedElementException {
+ throw new DerivedTypedElementEvaluationException("Not implemented"); //$NON-NLS-1$
+ }
+
+ public void setCheckResultType(final boolean checkResultType) {
+ this.checkResultType = checkResultType;
+ }
+
+ public boolean isCheckResultType() {
+ return this.checkResultType;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/NullLiteralQueryImplementationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/NullLiteralQueryImplementationFactory.java
new file mode 100644
index 00000000000..44a78a44390
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/NullLiteralQueryImplementationFactory.java
@@ -0,0 +1,35 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.osgi.framework.Bundle;
+
+public class NullLiteralQueryImplementationFactory implements IQueryImplementationFactory {
+
+ public EClass getManagedQueryType() {
+ return QueryPackage.eINSTANCE.getNullLiteralQuery();
+ }
+
+ public IQueryImplementation create(final Query query, final Bundle queryBundle, final IDerivedTypedElementManager manager) throws DerivedTypedElementException {
+ final NullLiteralQueryImplementation evaluator = new NullLiteralQueryImplementation();
+ evaluator.setCheckResultType(false);
+ return evaluator;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/OperationCallQueryImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/OperationCallQueryImplementation.java
new file mode 100644
index 00000000000..44a811db10c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/OperationCallQueryImplementation.java
@@ -0,0 +1,68 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.FacetManagerException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.DerivedTypedElementEvaluationException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery;
+
+public class OperationCallQueryImplementation implements IQueryImplementation {
+
+ private boolean checkResultType = false;
+ private final IDerivedTypedElementManager derivedTEManager;
+
+ public OperationCallQueryImplementation(final IDerivedTypedElementManager derivedTEManager) {
+ this.derivedTEManager = derivedTEManager;
+ }
+
+ public Object getValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ Object result;
+ final OperationCallQuery opQuery = (OperationCallQuery) query;
+ final List<Object> operationArgs = new ArrayList<Object>();
+ for (final Query queryArgument : opQuery.getArguments()) {
+ operationArgs.add(this.derivedTEManager.evaluate(queryArgument, source, parameterValues, facetManager));
+ }
+
+ // FIXME: no EditingDomain is available here
+ try {
+ result = facetManager.invoke(source, opQuery.getOperation(), null, null, operationArgs.toArray());
+ } catch (final FacetManagerException e) {
+ throw new DerivedTypedElementEvaluationException("Operation call evaluation failed", e); //$NON-NLS-1$
+ }
+ return result;
+ }
+
+ public void setValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final Object newValue)
+ throws DerivedTypedElementException {
+ throw new DerivedTypedElementEvaluationException("A set operation cannot be performed through an operation call."); //$NON-NLS-1$
+
+ }
+
+ public void setCheckResultType(final boolean checkResultType) {
+ this.checkResultType = checkResultType;
+ }
+
+ public boolean isCheckResultType() {
+ return this.checkResultType;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/OperationCallQueryImplementationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/OperationCallQueryImplementationFactory.java
new file mode 100644
index 00000000000..e00136ebd7a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/OperationCallQueryImplementationFactory.java
@@ -0,0 +1,32 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.osgi.framework.Bundle;
+
+public class OperationCallQueryImplementationFactory implements IQueryImplementationFactory {
+
+ public EClass getManagedQueryType() {
+ return QueryPackage.eINSTANCE.getOperationCallQuery();
+ }
+
+ public IQueryImplementation create(final Query query, final Bundle queryBundle, final IDerivedTypedElementManager manager)
+ throws DerivedTypedElementException {
+ return new OperationCallQueryImplementation(manager);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/QueryEvaluatorFactoryRegistry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/QueryEvaluatorFactoryRegistry.java
new file mode 100644
index 00000000000..f409eeb1bcd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/QueryEvaluatorFactoryRegistry.java
@@ -0,0 +1,100 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ * Nicolas Guyomar (Mia-Software) - Bug 349566 - Need some new query utils method for query creation
+ * Nicolas Bros (Mia-Software) - Bug 361617 - Deprecation of APIs for the old Facet metamodels
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.IExtension;
+import org.eclipse.core.runtime.IExtensionPoint;
+import org.eclipse.core.runtime.IExtensionRegistry;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.QueryException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryEvaluator;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryEvaluatorFactory;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManager;
+
+/** @deprecated replaced by {@link DerivedTypedElementImplementationFactoryRegistry} with the new eFacet2 metamodel */
+@Deprecated
+public class QueryEvaluatorFactoryRegistry {
+ private static final String QUERY_EVALUATOR_REGISTRATION_ID = "org.eclipse.papyrus.emf.facet.efacet.core.query.evaluatorregistration"; //$NON-NLS-1$
+ private static final String CLASS = "class"; //$NON-NLS-1$
+ public static final QueryEvaluatorFactoryRegistry INSTANCE = new QueryEvaluatorFactoryRegistry();
+
+ private final List<IQueryEvaluatorFactory> queryEvaluatorFactories = new ArrayList<IQueryEvaluatorFactory>();
+
+ public QueryEvaluatorFactoryRegistry() {
+ initRegisteredEntries();
+ }
+
+ private void initRegisteredEntries() {
+ IExtensionRegistry registry = Platform.getExtensionRegistry();
+ IExtensionPoint extPoint = registry
+ .getExtensionPoint(QueryEvaluatorFactoryRegistry.QUERY_EVALUATOR_REGISTRATION_ID);
+ if (extPoint != null) {
+ for (IExtension ext : extPoint.getExtensions()) {
+ for (IConfigurationElement configElt : ext.getConfigurationElements()) {
+
+ IQueryEvaluatorFactory queryEvaluatorFactory;
+ try {
+ queryEvaluatorFactory = (IQueryEvaluatorFactory) configElt
+ .createExecutableExtension(QueryEvaluatorFactoryRegistry.CLASS);
+
+ this.queryEvaluatorFactories.add(queryEvaluatorFactory);
+ } catch (CoreException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+ }
+ }
+ }
+
+ public IQueryEvaluator getEvaluatorFor(final Query query) throws QueryException {
+ IQueryEvaluator queryEvaluator = null;
+ boolean factoryFound = false;
+ for (IQueryEvaluatorFactory queryEvaluatorFactory : this.queryEvaluatorFactories) {
+ factoryFound = queryEvaluatorFactory.getManagedQueryType() == query.eClass();
+ if (factoryFound) {
+ queryEvaluator = queryEvaluatorFactory.create(query,
+ ICatalogSetManager.INSTANCE.getBundleByResource(query.eResource()));
+ break;
+ }
+ }
+ if (!factoryFound) {
+ StringBuffer sb = new StringBuffer();
+ sb.append("No factory implementation found for: "); //$NON-NLS-1$
+ sb.append(query.eClass().getName());
+ sb.append(":"); //$NON-NLS-1$
+ sb.append(query.getName());
+ sb.append("\n Available Query types are: "); //$NON-NLS-1$
+ for (IQueryEvaluatorFactory queryEvaluatorFactory : this.queryEvaluatorFactories) {
+ sb.append(queryEvaluatorFactory.getManagedQueryType().getName());
+ sb.append(", "); //$NON-NLS-1$
+ }
+ QueryException e = new QueryException(sb.toString());
+ throw e;
+ }
+ return queryEvaluator;
+ }
+
+ public List<IQueryEvaluatorFactory> getInstalledQueryFactories() {
+ return this.queryEvaluatorFactories;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/QueryImplementationFactoryRegistry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/QueryImplementationFactoryRegistry.java
new file mode 100644
index 00000000000..6df882e3d4e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/QueryImplementationFactoryRegistry.java
@@ -0,0 +1,114 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.IExtension;
+import org.eclipse.core.runtime.IExtensionPoint;
+import org.eclipse.core.runtime.IExtensionRegistry;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManagerFactory;
+import org.osgi.framework.Bundle;
+
+public class QueryImplementationFactoryRegistry {
+ private static final String EXT_ID = "org.eclipse.papyrus.emf.facet.efacet.core.queryImplementationRegistration"; //$NON-NLS-1$
+ private static final String CLASS = "class"; //$NON-NLS-1$
+ public static final QueryImplementationFactoryRegistry INSTANCE = new QueryImplementationFactoryRegistry();
+
+ private final List<IQueryImplementationFactory> factories = new ArrayList<IQueryImplementationFactory>();
+
+ public QueryImplementationFactoryRegistry() {
+ initRegisteredEntries();
+ }
+
+ private void initRegisteredEntries() {
+ final IExtensionRegistry registry = Platform.getExtensionRegistry();
+ final IExtensionPoint extPoint = registry.getExtensionPoint(QueryImplementationFactoryRegistry.EXT_ID);
+ if (extPoint != null) {
+ for (final IExtension ext : extPoint.getExtensions()) {
+ for (final IConfigurationElement configElt : ext.getConfigurationElements()) {
+ try {
+ final Object impl = configElt.createExecutableExtension(QueryImplementationFactoryRegistry.CLASS);
+ if (impl instanceof IQueryImplementationFactory) {
+ final IQueryImplementationFactory factory = (IQueryImplementationFactory) impl;
+ this.factories.add(factory);
+ } else {
+ Logger.logError("Invalid extension in " + ext.getNamespaceIdentifier() + "." + //$NON-NLS-1$ //$NON-NLS-2$
+ ". The factory must be an instance of " + IQueryImplementationFactory.class.getName(), Activator.getDefault()); //$NON-NLS-1$
+ }
+ } catch (final CoreException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * Returns the query evaluator that handles the given type of query
+ *
+ * @param query
+ * the type of query for which an {@link IQueryImplementation} is searched
+ * @return the {@link IQueryImplementation}
+ * @throws DerivedTypedElementException
+ * if no factory implementation was registered for the type of the given query
+ */
+ public IQueryImplementation getEvaluatorFor(final Query query, final IDerivedTypedElementManager manager)
+ throws DerivedTypedElementException {
+ if (query == null) {
+ throw new IllegalArgumentException("query cannot be null"); //$NON-NLS-1$
+ }
+ IQueryImplementation queryImpl = null;
+ boolean factoryFound = false;
+ for (final IQueryImplementationFactory queryImplFactory : this.factories) {
+ factoryFound = queryImplFactory.getManagedQueryType() == query.eClass();
+ if (factoryFound) {
+ final Resource queryResource = query.eResource();
+ Bundle bundle = null;
+ if (queryResource != null) {
+ bundle = ICatalogSetManagerFactory.DEFAULT.createICatalogSetManager(query.eResource().getResourceSet()).getBundleByResource(queryResource);
+ }
+ queryImpl = queryImplFactory.create(query, bundle, manager);
+ break;
+ }
+ }
+ if (!factoryFound) {
+ final StringBuffer buffer = new StringBuffer();
+ buffer.append("No factory implementation found for "); //$NON-NLS-1$
+ buffer.append(QueryUtils.getQueryDescription(query));
+ buffer.append(".\nA factory should be registered through the "); //$NON-NLS-1$
+ buffer.append(QueryImplementationFactoryRegistry.EXT_ID);
+ buffer.append(" extension point."); //$NON-NLS-1$ // NOPMD: cannot merge with extracted constant string
+ buffer.append("\nAvailable Query types are: "); //$NON-NLS-1$
+ for (int i = 0; i < this.factories.size(); i++) {
+ if (i > 0) {
+ buffer.append(", "); //$NON-NLS-1$
+ }
+ final IQueryImplementationFactory factory = this.factories.get(i);
+ buffer.append(factory.getManagedQueryType().getName());
+ }
+ throw new DerivedTypedElementException(buffer.toString());
+ }
+ return queryImpl;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/QueryUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/QueryUtils.java
new file mode 100644
index 00000000000..95b5b4ed42a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/QueryUtils.java
@@ -0,0 +1,121 @@
+/*******************************************************************************
+ * Copyright (c) 2011, 2012 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Nicolas Bros (Mia-Software) - Bug 362191 - [Restructuring] Query mechanism for eFacet2
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.core.FacetUtils;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+public final class QueryUtils {
+
+ private QueryUtils() {
+ // utility class
+ }
+
+ /** @return a description to help identify this query in error messages */
+ public static String getQueryDescription(final Query query) {
+ StringBuffer sb = new StringBuffer();
+ sb.append("[Query eClass:"); //$NON-NLS-1$
+ sb.append(query.eClass().getName());
+ DerivedTypedElement owningDerivedTypedElement = QueryUtils
+ .getOwningDerivedTypedElement(query);
+ if (owningDerivedTypedElement != null) {
+ sb.append(" defined on "); //$NON-NLS-1$
+ sb.append(owningDerivedTypedElement.getClass().getSimpleName());
+ EClassifier eType = owningDerivedTypedElement.getEType();
+ if (eType != null) {
+ sb.append(" of type '"); //$NON-NLS-1$
+ sb.append(eType.getName());
+ sb.append("' named: '"); //$NON-NLS-1$
+ } else {
+ sb.append(" named: '"); //$NON-NLS-1$
+ }
+ sb.append(owningDerivedTypedElement.getName());
+ sb.append("'"); //$NON-NLS-1$
+ } else {
+ sb.append(" with a null owning derived typed element"); //$NON-NLS-1$
+ }
+ sb.append("]"); //$NON-NLS-1$
+ return sb.toString();
+ }
+
+ // Moved from
+ // org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl
+ public static EClassifier getReturnType(final Query query) {
+ EClassifier result = null;
+ final DerivedTypedElement owningDTE = QueryUtils
+ .getOwningDerivedTypedElement(query);
+ if (owningDTE != null) {
+ result = owningDTE.getEType();
+ }
+ return result;
+ }
+
+ // Moved from
+ // org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl
+ public static EClassifier getSourceType(final Query query) {
+ EClassifier result = null;
+ final DerivedTypedElement owningDTE = QueryUtils
+ .getOwningDerivedTypedElement(query);
+ if (owningDTE != null) {
+ final EObject eContainer = QueryUtils.getOwningDerivedTypedElement(
+ query).eContainer();
+ if (eContainer instanceof Facet) {
+ final Facet facet = (Facet) eContainer;
+ result = FacetUtils.getExtendedMetaclass(facet);
+ } else if (eContainer instanceof ETypedElement) {
+ final ETypedElement typedElement = (ETypedElement) eContainer;
+ result = typedElement.getEType();
+ }
+ }
+ return result;
+ }
+
+ // Moved from
+ // org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl
+ public static DerivedTypedElement getOwningDerivedTypedElement(
+ final Query query) {
+ DerivedTypedElement result = null;
+ EObject container = query.eContainer();
+ while (container != null) {
+ if (container instanceof DerivedTypedElement) {
+ result = (DerivedTypedElement) container;
+ break;
+ }
+ container = container.eContainer();
+ }
+ if (result == null) {
+ throw new IllegalStateException(
+ "Query must always be contained by a DerivedTypedElement"); //$NON-NLS-1$
+ }
+ return (DerivedTypedElement) container;
+
+ }
+
+ // Moved from
+ // org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl
+ public static boolean isMany(final Query query) {
+ boolean result = false;
+ final DerivedTypedElement owningDTE = QueryUtils
+ .getOwningDerivedTypedElement(query);
+ if (owningDTE != null) {
+ result = owningDTE.isMany();
+ }
+ return result;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/QueryUtilsImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/QueryUtilsImpl.java
new file mode 100644
index 00000000000..7725d3c1054
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/QueryUtilsImpl.java
@@ -0,0 +1,64 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ * Nicolas Bros (Mia-Software) - Bug 361617 - Deprecation of APIs for the old Facet metamodels
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.QuerySet;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.QuerySetCatalog;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryUtils;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManager;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog;
+
+/**
+ * @deprecated This class manipulated the old facet metamodel. With the new eFacet2 metamodel, there
+ * are no QuerySets anymore. Queries are used only in Facets.
+ */
+@Deprecated
+public class QueryUtilsImpl implements IQueryUtils {
+
+ public Query searchQuery(final String querySetName, final String queryName) {
+ List<QuerySetCatalog> querySetCatalogs = new ArrayList<QuerySetCatalog>();
+ List<Catalog> catalogs = ICatalogSetManager.INSTANCE.getCatalogSet()
+ .getCatalogs();
+ for (Catalog catalog : catalogs) {
+ if (catalog instanceof QuerySetCatalog) {
+ querySetCatalogs.add((QuerySetCatalog) catalog);
+ }
+ }
+
+ QuerySet searchedQuerySet = null;
+ for (QuerySetCatalog querySetCatalog : querySetCatalogs) {
+ List<QuerySet> querySets = querySetCatalog.getInstalledQuerySets();
+ for (QuerySet querySet : querySets) {
+ if (querySet.getName() != null
+ && querySet.getName().equals(querySetName)) {
+ searchedQuerySet = querySet;
+ }
+ }
+ }
+ Query searchedQuery = null;
+ if (searchedQuerySet != null) {
+ for (Query query : searchedQuerySet.getQueries()) {
+ if (query.getName() != null
+ && query.getName().equals(queryName)) {
+ searchedQuery = query;
+ }
+ }
+ }
+ return searchedQuery;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/StringLiteralQueryImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/StringLiteralQueryImplementation.java
new file mode 100644
index 00000000000..96e3e233b8a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/StringLiteralQueryImplementation.java
@@ -0,0 +1,49 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.DerivedTypedElementEvaluationException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery;
+
+public class StringLiteralQueryImplementation implements IQueryImplementation {
+
+ private boolean checkResultType = false;
+
+ public Object getValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ return ((StringLiteralQuery) query).getValue();
+ }
+
+ public void setValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final Object newValue)
+ throws DerivedTypedElementException {
+ throw new DerivedTypedElementEvaluationException("Not implemented"); //$NON-NLS-1$
+ }
+
+ public void setCheckResultType(final boolean checkResultType) {
+ this.checkResultType = checkResultType;
+ }
+
+ public boolean isCheckResultType() {
+ return this.checkResultType;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/StringLiteralQueryImplementationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/StringLiteralQueryImplementationFactory.java
new file mode 100644
index 00000000000..de9570f5144
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/StringLiteralQueryImplementationFactory.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.osgi.framework.Bundle;
+
+public class StringLiteralQueryImplementationFactory implements IQueryImplementationFactory {
+
+ public EClass getManagedQueryType() {
+ return QueryPackage.eINSTANCE.getStringLiteralQuery();
+ }
+
+ public IQueryImplementation create(final Query query, final Bundle queryBundle, final IDerivedTypedElementManager manager) throws DerivedTypedElementException {
+ final StringLiteralQueryImplementation evaluator = new StringLiteralQueryImplementation();
+ evaluator.setCheckResultType(true);
+ return evaluator;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/TrueLiteralQueryImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/TrueLiteralQueryImplementation.java
new file mode 100644
index 00000000000..a736e63d54f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/TrueLiteralQueryImplementation.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.DerivedTypedElementEvaluationException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+public class TrueLiteralQueryImplementation implements IQueryImplementation {
+
+ private boolean checkResultType = false;
+
+ public Object getValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ return Boolean.TRUE;
+ }
+
+ public void setValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues,
+ final Object newValue)
+ throws DerivedTypedElementException {
+ throw new DerivedTypedElementEvaluationException("Not implemented"); //$NON-NLS-1$
+ }
+
+ public void setCheckResultType(final boolean checkResultType) {
+ this.checkResultType = checkResultType;
+ }
+
+ public boolean isCheckResultType() {
+ return this.checkResultType;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/TrueLiteralQueryImplementationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/TrueLiteralQueryImplementationFactory.java
new file mode 100644
index 00000000000..182c2bea0a4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/query/TrueLiteralQueryImplementationFactory.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.query;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.osgi.framework.Bundle;
+
+public class TrueLiteralQueryImplementationFactory implements IQueryImplementationFactory {
+
+ public IQueryImplementation create(final Query query, final Bundle bundle, final IDerivedTypedElementManager derivedTEManager)
+ throws DerivedTypedElementException {
+ final TrueLiteralQueryImplementation evaluator = new TrueLiteralQueryImplementation();
+ evaluator.setCheckResultType(false);
+ return evaluator;
+ }
+
+ public EClass getManagedQueryType() {
+ return QueryPackage.eINSTANCE.getTrueLiteralQuery();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/ILinkToExtendedEObjectReference.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/ILinkToExtendedEObjectReference.java
new file mode 100644
index 00000000000..8cb9b9164b5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/ILinkToExtendedEObjectReference.java
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.serialization;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference;
+
+/**
+ * Interface for the adapter that attaches {@link ExtendedEObjectReference} to {@link EObject}s.
+ *
+ * @since 0.2
+ */
+public interface ILinkToExtendedEObjectReference {
+
+ /**
+ * @return the current {@link ExtendedEObjectReference}.
+ */
+ public ExtendedEObjectReference getExtendedEObjectReference();
+
+ /**
+ * Replace the current ExtendedEObjectReference by {@link ExtendedEObjectReference}.
+ */
+ public void setExtendedEObjectReference(ExtendedEObjectReference extendedEObjectReference);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/ILinkToExtendedEObjectReferenceAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/ILinkToExtendedEObjectReferenceAdapterFactory.java
new file mode 100644
index 00000000000..ce4036edc43
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/ILinkToExtendedEObjectReferenceAdapterFactory.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.serialization;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notifier;
+
+/**
+ * Factory to create {@link ILinkToExtendedEObjectReference} adapters.
+ *
+ */
+public interface ILinkToExtendedEObjectReferenceAdapterFactory extends AdapterFactory {
+
+ /**
+ * Singleton {@link LinkToExtendedEObjectReferenceAdapterFactory}
+ */
+ public static ILinkToExtendedEObjectReferenceAdapterFactory INSTANCE = new LinkToExtendedEObjectReferenceAdapterFactory();
+
+ /**
+ * This method returns <code>true</code> if this factory is a factory for the given type
+ * {@link Object}, or <code>false</code> otherwise
+ */
+ public boolean isFactoryForType(final Object type);
+
+ /**
+ * Creates a new instance of Adapter for the given {@link Notifier}
+ */
+ public Adapter createAdapter(final Notifier target);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/LinkToExtendedEObjectReferenceAdapter.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/LinkToExtendedEObjectReferenceAdapter.java
new file mode 100644
index 00000000000..71c6b709fc0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/LinkToExtendedEObjectReferenceAdapter.java
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.serialization;
+
+import org.eclipse.emf.common.notify.impl.AdapterImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference;
+
+public class LinkToExtendedEObjectReferenceAdapter extends AdapterImpl implements
+ ILinkToExtendedEObjectReference {
+
+ private ExtendedEObjectReference extendedEObjectReference;
+
+ public ExtendedEObjectReference getExtendedEObjectReference() {
+ return this.extendedEObjectReference;
+ }
+
+ public void setExtendedEObjectReference(final ExtendedEObjectReference extendedEObjectReference) {
+ this.extendedEObjectReference = extendedEObjectReference;
+ }
+
+ @Override
+ public boolean isAdapterForType(final Object type) {
+ return type == ILinkToExtendedEObjectReference.class;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/LinkToExtendedEObjectReferenceAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/LinkToExtendedEObjectReferenceAdapterFactory.java
new file mode 100644
index 00000000000..daec83dd61c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/LinkToExtendedEObjectReferenceAdapterFactory.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.serialization;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+public class LinkToExtendedEObjectReferenceAdapterFactory extends AdapterFactoryImpl implements ILinkToExtendedEObjectReferenceAdapterFactory {
+
+ @Override
+ public boolean isFactoryForType(final Object type) {
+ return type == ILinkToExtendedEObjectReference.class;
+ }
+
+ @Override
+ public Adapter createAdapter(final Notifier target) {
+ return new LinkToExtendedEObjectReferenceAdapter();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/SerializationManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/SerializationManager.java
new file mode 100644
index 00000000000..c4f2f23e575
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/internal/serialization/SerializationManager.java
@@ -0,0 +1,432 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Grégoire Dupé (Mia-Software) - Bug 361612 - [Restructuring] New core for new version of the Facet metamodel
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.internal.serialization;
+
+import java.io.IOException;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.SaveStructuralFeatureInstanceModelException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedContainmentReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedReferenceInstance;
+
+public class SerializationManager {
+
+ private final Resource structuralFeatureInstancesResource;
+
+ public SerializationManager(final Resource structuralFeatureInstancesResource) {
+ this.structuralFeatureInstancesResource = structuralFeatureInstancesResource;
+ if (structuralFeatureInstancesResource != null) {
+ final EList<EObject> contents = structuralFeatureInstancesResource.getContents();
+ for (EObject eObject : contents) {
+ if (eObject instanceof ExtendedEObjectReference) {
+ final ExtendedEObjectReference extendedEObjectReference = (ExtendedEObjectReference) eObject;
+ final LinkToExtendedEObjectReferenceAdapter adapter = (LinkToExtendedEObjectReferenceAdapter) ILinkToExtendedEObjectReferenceAdapterFactory.INSTANCE
+ .adapt(extendedEObjectReference.getExtendedEObject(),
+ ILinkToExtendedEObjectReference.class);
+ adapter.setExtendedEObjectReference(extendedEObjectReference);
+ }
+ }
+ }
+ }
+
+ /**
+ * This method creates a ReferenceInstance in the given {@link ExtendedEObjectReference} with
+ * the reference {@link EStructuralFeature} and the value {@link Object}.
+ */
+ private static MultiValuedContainmentReferenceInstance createMultiValuedContainmentReferenceInstance(final EReference reference,
+ final List<EObject> values,
+ final ExtendedEObjectReference extendedEObjectReference) {
+ final MultiValuedContainmentReferenceInstance containmentReferenceInstance = SerializationFactory.eINSTANCE
+ .createMultiValuedContainmentReferenceInstance();
+ containmentReferenceInstance.setEReference(reference);
+ if (values != null) {
+ containmentReferenceInstance.getOwnedElements().addAll(values);
+ }
+ extendedEObjectReference.getReferenceInstances().add(containmentReferenceInstance);
+ return containmentReferenceInstance;
+ }
+
+ /**
+ * This method returns the {@link ExtendedEObjectReference} associated with the given
+ * {@link EObject} if it exists or <code>null</code> if it does not exist.
+ */
+ private static ExtendedEObjectReference getExtendedEObjectReference(final EObject eObject) {
+ ExtendedEObjectReference result = null;
+ for (final Adapter adapter : eObject.eAdapters()) {
+ if (adapter.isAdapterForType(ILinkToExtendedEObjectReference.class)) {
+ final LinkToExtendedEObjectReferenceAdapter linkToExtendedEObjectReferenceAdapter = (LinkToExtendedEObjectReferenceAdapter) adapter;
+ result = linkToExtendedEObjectReferenceAdapter.getExtendedEObjectReference();
+ break;
+ }
+ }
+ return result;
+ }
+
+ /**
+ * This method creates an AttributeInstance in the given {@link ExtendedEObjectReference} with
+ * the attribute {@link EStructuralFeature} and the value {@link Object}.
+ */
+ private static MultiValuedAttributeInstance createMultiValuedAttributeInstance(final EAttribute attribute, final List<Object> values,
+ final ExtendedEObjectReference extendedEObjectReference) {
+ final MultiValuedAttributeInstance attributeInstance = SerializationFactory.eINSTANCE.createMultiValuedAttributeInstance();
+ attributeInstance.setEAttribute(attribute);
+ if (values != null) {
+ attributeInstance.getValues().addAll(values);
+ }
+ extendedEObjectReference.getAttributeInstances().add(attributeInstance);
+ return attributeInstance;
+ }
+
+ /**
+ * This method creates a ReferenceInstance in the given {@link ExtendedEObjectReference} with
+ * the reference {@link EStructuralFeature} and the value {@link Object}.
+ */
+ private static MultiValuedReferenceInstance createMultiValuedReferenceInstance(final EReference reference, final List<EObject> values,
+ final ExtendedEObjectReference extendedEObjectReference) {
+ final MultiValuedReferenceInstance referenceInstance = SerializationFactory.eINSTANCE
+ .createMultiValuedReferenceInstance();
+ referenceInstance.setEReference(reference);
+ if (values != null) {
+ referenceInstance.getReferencedElements().addAll(values);
+ }
+ extendedEObjectReference.getReferenceInstances().add(referenceInstance);
+ return referenceInstance;
+ }
+
+ private static SingleValuedAttributeInstance getSingleValuedAttributeInstance(final ExtendedEObjectReference extendedEObjectReference,
+ final EAttribute eAttribute) {
+ SingleValuedAttributeInstance result = null;
+ final EList<AbstractAttributeInstance> attributeInstances = extendedEObjectReference.getAttributeInstances();
+ for (final AbstractAttributeInstance attributeInstance : attributeInstances) {
+ if (eAttribute.equals(attributeInstance.getEAttribute())) {
+ if (attributeInstance instanceof SingleValuedAttributeInstance) {
+ result = (SingleValuedAttributeInstance) attributeInstance;
+ break;
+ }
+ throw new IllegalStateException("single valued attribute should be associated to an instance of SingleValuedAttributeInstance"); //$NON-NLS-1$
+ }
+ }
+ return result;
+ }
+
+ private static MultiValuedAttributeInstance getMultiValuedAttributeInstance(final ExtendedEObjectReference extendedEObjectReference,
+ final EAttribute eAttribute) {
+ MultiValuedAttributeInstance result = null;
+ final EList<AbstractAttributeInstance> attributeInstances = extendedEObjectReference.getAttributeInstances();
+ for (final AbstractAttributeInstance attributeInstance : attributeInstances) {
+ if (eAttribute.equals(attributeInstance.getEAttribute())) {
+ if (attributeInstance instanceof MultiValuedAttributeInstance) {
+ result = (MultiValuedAttributeInstance) attributeInstance;
+ break;
+ }
+ throw new IllegalStateException("multi valued attribute should be associated to an instance of MultiValuedAttributeInstance"); //$NON-NLS-1$
+
+ }
+ }
+ return result;
+ }
+
+ private static SingleValuedReferenceInstance getSingleValuedReferenceInstance(final ExtendedEObjectReference extendedEObjectReference,
+ final EReference eReference) {
+ SingleValuedReferenceInstance result = null;
+ final EList<AbstractReferenceInstance> referenceInstances = extendedEObjectReference.getReferenceInstances();
+ for (final AbstractReferenceInstance referenceInstance : referenceInstances) {
+ if (eReference.equals(referenceInstance.getEReference())) {
+ if (referenceInstance instanceof SingleValuedReferenceInstance) {
+ result = (SingleValuedReferenceInstance) referenceInstance;
+ break;
+ }
+ throw new IllegalStateException(
+ "a single valued non-containment reference should be associated to an instance of SingleValuedReferenceInstance"); //$NON-NLS-1$
+ }
+ }
+ return result;
+ }
+
+ private static SingleValuedContainmentReferenceInstance getSingleValuedContainmentReferenceInstance(
+ final ExtendedEObjectReference extendedEObjectReference,
+ final EReference eReference) {
+ SingleValuedContainmentReferenceInstance result = null;
+ final EList<AbstractReferenceInstance> referenceInstances = extendedEObjectReference.getReferenceInstances();
+ for (final AbstractReferenceInstance referenceInstance : referenceInstances) {
+ if (eReference.equals(referenceInstance.getEReference())) {
+ if (referenceInstance instanceof SingleValuedContainmentReferenceInstance) {
+ result = (SingleValuedContainmentReferenceInstance) referenceInstance;
+ break;
+ }
+ throw new IllegalStateException(
+ "a single valued containment reference should be associated to an instance of SingleValuedContainmentReferenceInstance"); //$NON-NLS-1$
+ }
+ }
+ return result;
+ }
+
+ private static MultiValuedReferenceInstance getMultiValuedReferenceInstance(final ExtendedEObjectReference extendedEObjectReference,
+ final EReference eReference) {
+ MultiValuedReferenceInstance result = null;
+ final EList<AbstractReferenceInstance> referenceInstances = extendedEObjectReference.getReferenceInstances();
+ for (final AbstractReferenceInstance referenceInstance : referenceInstances) {
+ if (eReference.equals(referenceInstance.getEReference())) {
+ if (referenceInstance instanceof MultiValuedReferenceInstance) {
+ result = (MultiValuedReferenceInstance) referenceInstance;
+ break;
+ }
+ throw new IllegalStateException(
+ "a multi valued non-containment reference should be associated to an instance of MultiValuedReferenceInstance"); //$NON-NLS-1$
+ }
+ }
+ return result;
+ }
+
+ private static MultiValuedContainmentReferenceInstance getMultiValuedContainmentReferenceInstance(final ExtendedEObjectReference extendedEObjectReference,
+ final EReference eReference) {
+ MultiValuedContainmentReferenceInstance result = null;
+ final EList<AbstractReferenceInstance> referenceInstances = extendedEObjectReference.getReferenceInstances();
+ for (final AbstractReferenceInstance referenceInstance : referenceInstances) {
+ if (eReference.equals(referenceInstance.getEReference())) {
+ if (referenceInstance instanceof MultiValuedContainmentReferenceInstance) {
+ result = (MultiValuedContainmentReferenceInstance) referenceInstance;
+ break;
+ }
+ throw new IllegalStateException(
+ "a multi valued containment reference should be associated to an instance of MultiValuedContainmentReferenceInstance"); //$NON-NLS-1$
+ }
+ }
+ return result;
+ }
+
+ public void saveStructuralFeatureInstanceModel()
+ throws SaveStructuralFeatureInstanceModelException {
+ if (this.structuralFeatureInstancesResource == null) {
+ throw new SaveStructuralFeatureInstanceModelException("This facet manager has been initailized with a null structural feature instances resource"); //$NON-NLS-1$
+ }
+ try {
+ this.structuralFeatureInstancesResource.save(Collections.EMPTY_MAP);
+ } catch (final IOException e) {
+ throw new SaveStructuralFeatureInstanceModelException(e);
+ }
+ }
+
+ /**
+ * This method returns the ExtendedEObjectReference associated with the given {@link EObject} if
+ * it exists or creates it if it does not exist.
+ */
+ private ExtendedEObjectReference getOrCreateExtendedEObjectReference(final EObject eObject) {
+ ExtendedEObjectReference extendedEObjectReference = SerializationManager.getExtendedEObjectReference(eObject);
+ if (extendedEObjectReference == null) {
+ extendedEObjectReference = SerializationFactory.eINSTANCE.createExtendedEObjectReference();
+ extendedEObjectReference.setExtendedEObject(eObject);
+ if (this.structuralFeatureInstancesResource != null) {
+ this.structuralFeatureInstancesResource.getContents().add(extendedEObjectReference);
+ }
+ final LinkToExtendedEObjectReferenceAdapter adapter = (LinkToExtendedEObjectReferenceAdapter) ILinkToExtendedEObjectReferenceAdapterFactory.INSTANCE
+ .adapt(eObject, ILinkToExtendedEObjectReference.class);
+ adapter.setExtendedEObjectReference(extendedEObjectReference);
+ }
+ return extendedEObjectReference;
+ }
+
+ public void setAttribute(final EObject eObject, final EAttribute attribute, final Object newValue) {
+ final ExtendedEObjectReference extendedEObjectReference = this.getOrCreateExtendedEObjectReference(eObject);
+ if (attribute.isMany()) {
+ if (newValue instanceof List) {
+ // safe to cast
+ @SuppressWarnings("unchecked")
+ final List<Object> list = (List<Object>) newValue;
+ final MultiValuedAttributeInstance attributeInstance =
+ SerializationManager.getMultiValuedAttributeInstance(extendedEObjectReference, attribute);
+ if (attributeInstance == null) {
+ SerializationManager.createMultiValuedAttributeInstance(attribute, list, extendedEObjectReference);
+ } else {
+ attributeInstance.getValues().clear();
+ attributeInstance.getValues().addAll(list);
+ }
+ } else {
+ throw new IllegalArgumentException("The given FacetAttribute is multiplicity-many, so the value must be a List"); //$NON-NLS-1$
+ }
+ } else {
+ final SingleValuedAttributeInstance attributeInstance =
+ SerializationManager.getSingleValuedAttributeInstance(extendedEObjectReference, attribute);
+ if (attributeInstance == null) {
+ createSingleValuedAttributeInstance(attribute, newValue, extendedEObjectReference);
+ } else {
+ attributeInstance.setValue(newValue);
+ }
+ }
+
+ }
+
+
+ /**
+ * This method creates an AttributeInstance in the given {@link ExtendedEObjectReference} with
+ * the attribute {@link EStructuralFeature} and the value {@link Object}.
+ */
+ private static SingleValuedAttributeInstance createSingleValuedAttributeInstance(final EAttribute attribute, final Object value,
+ final ExtendedEObjectReference extendedEObjectReference) {
+ final SingleValuedAttributeInstance attributeInstance = SerializationFactory.eINSTANCE.createSingleValuedAttributeInstance();
+ attributeInstance.setEAttribute(attribute);
+ attributeInstance.setValue(value);
+ extendedEObjectReference.getAttributeInstances().add(attributeInstance);
+ return attributeInstance;
+ }
+
+ /**
+ * This method creates a ReferenceInstance in the given {@link ExtendedEObjectReference} with
+ * the reference {@link EStructuralFeature} and the value {@link Object}.
+ */
+ private static SingleValuedReferenceInstance createSingleValuedReferenceInstance(final EReference reference, final EObject value,
+ final ExtendedEObjectReference extendedEObjectReference) {
+ final SingleValuedReferenceInstance referenceInstance = SerializationFactory.eINSTANCE
+ .createSingleValuedReferenceInstance();
+ referenceInstance.setEReference(reference);
+ referenceInstance.setReferencedElement(value);
+ extendedEObjectReference.getReferenceInstances().add(referenceInstance);
+ return referenceInstance;
+ }
+
+ public void setReference(final EObject eObject, final EReference reference, final Object newValue) {
+ final ExtendedEObjectReference extendedEObjectReference = this.getOrCreateExtendedEObjectReference(eObject);
+ if (reference.isMany()) {
+ throw new UnsupportedOperationException(
+ "The given FacetReference is multi-valued : add elements to the list returned by getMultiValuedReference() instead"); //$NON-NLS-1$
+ }
+ if (!(newValue instanceof EObject)) {
+ throw new IllegalArgumentException("newValue should be an EObject because eStructuralFeature is an EReference"); //$NON-NLS-1$
+ }
+ final EObject newEObjectValue = (EObject) newValue;
+ if (reference.isContainment()) {
+ final SingleValuedContainmentReferenceInstance referenceInstance =
+ SerializationManager.getSingleValuedContainmentReferenceInstance(extendedEObjectReference, reference);
+ if (referenceInstance == null) {
+ createSingleValuedContainmentReferenceInstance(reference, newEObjectValue, extendedEObjectReference);
+ } else {
+ referenceInstance.setOwnedElement(newEObjectValue);
+ }
+ } else {
+ final SingleValuedReferenceInstance referenceInstance =
+ SerializationManager.getSingleValuedReferenceInstance(extendedEObjectReference, reference);
+ if (referenceInstance == null) {
+ createSingleValuedReferenceInstance(reference, newEObjectValue, extendedEObjectReference);
+ } else {
+ referenceInstance.setReferencedElement(newEObjectValue);
+ }
+ }
+
+ }
+
+ /**
+ * This method creates a ReferenceInstance in the given {@link ExtendedEObjectReference} with
+ * the reference {@link EStructuralFeature} and the value {@link Object}.
+ */
+ private static SingleValuedContainmentReferenceInstance createSingleValuedContainmentReferenceInstance(final EReference reference,
+ final EObject value,
+ final ExtendedEObjectReference extendedEObjectReference) {
+ final SingleValuedContainmentReferenceInstance containmentReferenceInstance = SerializationFactory.eINSTANCE
+ .createSingleValuedContainmentReferenceInstance();
+ containmentReferenceInstance.setEReference(reference);
+ containmentReferenceInstance.setOwnedElement(value);
+ extendedEObjectReference.getReferenceInstances().add(containmentReferenceInstance);
+ return containmentReferenceInstance;
+ }
+
+ private Object getMultiValuedStructuralFeature(final EObject eObject, final EStructuralFeature structuralFeature) {
+ Object result = null;
+ final ExtendedEObjectReference extendedEObjectReference = this.getOrCreateExtendedEObjectReference(eObject);
+ if (structuralFeature instanceof EAttribute) {
+ final EAttribute eAttribute = (EAttribute) structuralFeature;
+ final MultiValuedAttributeInstance attributeInstance =
+ SerializationManager.getMultiValuedAttributeInstance(extendedEObjectReference, eAttribute);
+ if (attributeInstance != null) {
+ result = attributeInstance.getValues();
+ }
+ } else if (structuralFeature instanceof EReference) {
+ final EReference eReference = (EReference) structuralFeature;
+ if (eReference.isContainment()) {
+ MultiValuedContainmentReferenceInstance referenceInstance =
+ SerializationManager.getMultiValuedContainmentReferenceInstance(extendedEObjectReference, eReference);
+ if (referenceInstance == null) {
+ referenceInstance = SerializationManager.createMultiValuedContainmentReferenceInstance(eReference, null, extendedEObjectReference);
+ result = referenceInstance.getOwnedElements();
+ } else {
+ result = referenceInstance.getOwnedElements();
+ }
+ } else {
+ MultiValuedReferenceInstance referenceInstance =
+ SerializationManager.getMultiValuedReferenceInstance(extendedEObjectReference, eReference);
+ if (referenceInstance == null) {
+ referenceInstance = SerializationManager.createMultiValuedReferenceInstance(eReference, null, extendedEObjectReference);
+ result = referenceInstance.getReferencedElements();
+ } else {
+ result = referenceInstance.getReferencedElements();
+ }
+ }
+ } else {
+ throw new UnsupportedOperationException("Getting a structural feature of type '" + structuralFeature.getClass().getName() + "' is not implemented"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ return result;
+ }
+
+ private static Object getSingleValuedStructuralFeature(final EObject eObject, final EStructuralFeature structuralFeature) {
+ Object result = null;
+ final ExtendedEObjectReference extendedEObjectReference = SerializationManager.getExtendedEObjectReference(eObject);
+ if (extendedEObjectReference != null) {
+ if (structuralFeature instanceof EAttribute) {
+ final EAttribute eAttribute = (EAttribute) structuralFeature;
+ final SingleValuedAttributeInstance attributeInstance = SerializationManager.getSingleValuedAttributeInstance(extendedEObjectReference, eAttribute);
+ if (attributeInstance != null) {
+ result = attributeInstance.getValue();
+ }
+ } else if (structuralFeature instanceof EReference) {
+ final EReference eReference = (EReference) structuralFeature;
+ if (eReference.isContainment()) {
+ final SingleValuedContainmentReferenceInstance referenceInstance =
+ SerializationManager.getSingleValuedContainmentReferenceInstance(extendedEObjectReference, eReference);
+ result = referenceInstance.getOwnedElement();
+ } else {
+ final SingleValuedReferenceInstance referenceInstance =
+ SerializationManager.getSingleValuedReferenceInstance(extendedEObjectReference, eReference);
+ result = referenceInstance.getReferencedElement();
+ }
+ } else {
+ throw new IllegalArgumentException("Unexpected structuralFeature kind"); //$NON-NLS-1$
+ }
+ }
+ return result;
+ }
+
+ public Object getNotDerivedValue(final EObject eObject, final EStructuralFeature structuralFeature) {
+ Object result;
+ if (structuralFeature.isMany()) {
+ result = this.getMultiValuedStructuralFeature(eObject, structuralFeature);
+ } else {
+ result = SerializationManager.getSingleValuedStructuralFeature(eObject, structuralFeature);
+ }
+ return result;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IDerivedTypedElementCollectionImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IDerivedTypedElementCollectionImplementation.java
new file mode 100644
index 00000000000..24883e2847c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IDerivedTypedElementCollectionImplementation.java
@@ -0,0 +1,92 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 362191 - [Restructuring] Query mechanism for eFacet2
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.query;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exception.DerivedTypedElementEvaluationException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult;
+
+/**
+ * This interface can be implemented by EMF Facet derived typed element implementations that want to
+ * handle multiple evaluation themselves, presumably to improve the performance of the evaluation.
+ * <p>
+ * If only {@link IDerivedTypedElementImplementation} is implemented, then the framework will
+ * perform multiple-evaluation by calling the single evaluation multiple times, which may be slow in
+ * the case of high-latency implementations.
+ *
+ * @since 0.2
+ * @deprecated replaced by {@link IQueryCollectionImplementation}. https://bugs.eclipse.org/bugs/show_bug.cgi?id=377057.
+ */
+@Deprecated
+public interface IDerivedTypedElementCollectionImplementation extends IDerivedTypedElementImplementation {
+
+ /**
+ * This method must be implemented by each sub-class to evaluate the query of a derived typed element on a
+ * collection of elements. The query should be evaluated on each of the elements in the given collection.
+ * <p>
+ * This method should throw a {@link DerivedTypedElementException} only if the {@link DerivedTypedElement} is
+ * incorrect. But it must not throw an exception if the evaluation of one element fails. Instead, it must set the
+ * exception on the corresponding result ({@link AbstractDerivedTypedElementResult#setException(Throwable)}).
+ *
+ * @param derivedTypedElement
+ * The derived typed element for which to get the values
+ * @param sources
+ * The model elements on which the derived typed element is evaluated
+ * @param arguments
+ * The parameter values for the derived typed element (in the case of a {@link FacetOperation}); can be <code>null</code>
+ * @return the result :
+ * <ul>
+ * <li> a list of {@link DerivedTypedElementPrimitiveTypeResult} if the derived typed element is
+ * single-valued and returns a primitive type <li> a list of
+ * {@link DerivedTypedElementPrimitiveTypeListResult} if the derived typed element is multi-valued and
+ * returns a primitive type <li> a list of {@link DerivedTypedElementEObjectResult} if the derived typed
+ * element is single-valued and returns a model element <li> a list of
+ * {@link DerivedTypedElementEObjectListResult} if the derived typed element is multi-valued and returns
+ * model elements
+ * </ul>
+ * @throws DerivedTypedElementException
+ * if the given derivedTypedElement is incorrect
+ */
+ List<? extends ETypedElementResult> getValues(DerivedTypedElement derivedTypedElement, Collection<? extends EObject> sources, List<ParameterValue> arguments)
+ throws DerivedTypedElementException;
+
+ /**
+ * This method must be implemented by each sub-class to set the values of a collection of elements. The derived
+ * typed element's query should be used to set the value of each of the elements in the given collection.
+ *
+ * @param query
+ * The query to evaluate
+ * @param source
+ * The model elements on which the query is evaluated
+ * @param arguments
+ * The parameter values for the derived typed element (in the case of a {@link FacetOperation}); can be
+ * <code>null</code>
+ * @param newValues
+ * the new values for the sources; the size of this list must match the size of the list of sources
+ * @throws DerivedTypedElementException
+ * if the given derivedTypedElement is incorrect
+ * @throws DerivedTypedElementEvaluationException
+ * if the query of the derived typed element could not be evaluated correctly
+ * @throws IllegalArgumentException
+ * if the given list of values does not match the list of sources
+ */
+ void setValues(DerivedTypedElement derivedTypedElement, Collection<? extends EObject> sources, List<ParameterValue> arguments, List<? extends Object> newValues)
+ throws DerivedTypedElementException;
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IDerivedTypedElementImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IDerivedTypedElementImplementation.java
new file mode 100644
index 00000000000..8821678e0ac
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IDerivedTypedElementImplementation.java
@@ -0,0 +1,93 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 362191 - [Restructuring] Query mechanism for eFacet2
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.query;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+
+/**
+ * Interface implemented by all EMF Facet derived typed element evaluators.
+ * <p>
+ * A derived typed element evaluator may choose to implement
+ * {@link IDerivedTypedElementCollectionImplementation} instead if it wants to improve the
+ * performance of evaluation on collections of elements.
+ *
+ * @since 0.2
+ * @deprecated replaced by {@link IQueryImplementation}. https://bugs.eclipse.org/bugs/show_bug.cgi?id=377058.
+ */
+@Deprecated
+public interface IDerivedTypedElementImplementation {
+
+ /**
+ * This method must be implemented by each sub class to evaluate a derived
+ * typed element
+ *
+ * @param derivedTypedElement
+ * The derived typed element to evaluate
+ * @param source
+ * The model element on which the derived typed element is
+ * evaluated
+ * @param parameterValues
+ * The derived typed element's query parameter values (in the
+ * case of a {@link FacetOperation}), can be <code>null</code>
+ * @return the result, which can be either a single object or a collection
+ * of values depending on the multiplicity of the given derived
+ * typed element
+ * @throws DerivedTypedElementException
+ * if the query of the derived typed element could not be
+ * evaluated correctly to get the value
+ */
+ Object getValue(DerivedTypedElement derivedTypedElement, EObject source,
+ List<ParameterValue> parameterValues, IFacetManager facetManager)
+ throws DerivedTypedElementException;
+
+ /**
+ * This method must be implemented by each sub class to set the value of a
+ * derived typed element
+ *
+ * @param derivedTypedElement
+ * The derived typed element to set
+ * @param source
+ * The model element on which the derived typed element is set
+ * @param parameterValues
+ * The derived typed element's query parameter values (in the
+ * case of a {@link FacetOperation}), can be <code>null</code>
+ * @param newValue
+ * the value to set on the derived typed element
+ * @throws DerivedTypedElementException
+ * if the query of the derived typed element could not be
+ * evaluated correctly to set the value
+ */
+ void setValue(DerivedTypedElement derivedTypedElement, EObject source,
+ List<ParameterValue> parameterValues, Object newValue)
+ throws DerivedTypedElementException;
+
+ /**
+ * Return whether to check the type of the derived typed element result after its evaluation
+ * <p>
+ * Normally, this is <code>true</code>, but the derived typed element evaluator can choose to
+ * skip the check, for example if the return type of the query can't be loaded.
+ *
+ * @return whether to check the type of the derived typed element result after its evaluation
+ */
+ boolean getCheckResultType();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IDerivedTypedElementImplementationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IDerivedTypedElementImplementationFactory.java
new file mode 100644
index 00000000000..c47667d7a2b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IDerivedTypedElementImplementationFactory.java
@@ -0,0 +1,54 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 362191 - [Restructuring] Query mechanism for eFacet2
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.query;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.osgi.framework.Bundle;
+
+/**
+ * This factory allows clients to create a {@link IDerivedTypedElementImplementation} for queries
+ * corresponding to this type of factory.
+ *
+ * @since 0.2
+ * @deprecated replaced by {@link IQueryImplementationFactory}. https://bugs.eclipse.org/bugs/show_bug.cgi?id=377059.
+ */
+@Deprecated
+public interface IDerivedTypedElementImplementationFactory {
+ // Copy of org.eclipse.papyrus.emf.facet.infra.query.core.IModelQueryFactory
+
+ /**
+ * Create a derived typed element implementation, for getting and setting the value of the
+ * derived typed element.
+ *
+ * @param derivedTypedElement
+ * the derived typed element to create an implementation for
+ * @param queryBundle
+ * the bundle in which the query used to get or set this derived typed element is
+ * defined. May be <code>null</code> if the query is not defined in a {@link Bundle}.
+ */
+ public IDerivedTypedElementImplementation create(Query derivedTypedElement, Bundle queryBundle, IDerivedTypedElementManager derivedTEManager)
+ throws DerivedTypedElementException;
+
+ /**
+ * Return the type of query handled by this implementation.
+ *
+ * @return the type of query this implementation handles.
+ */
+ public EClass getManagedQueryType();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryCollectionImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryCollectionImplementation.java
new file mode 100644
index 00000000000..e4d56b32976
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryCollectionImplementation.java
@@ -0,0 +1,97 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.query;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult;
+
+/**
+ * This interface can be implemented by EMF Facet query implementations that want to handle multiple evaluation
+ * themselves, presumably to improve the performance of the evaluation.
+ * <p>
+ * If only {@link IQueryImplementation} is implemented, then the framework will perform multiple-evaluation by calling
+ * the single evaluation multiple times, which may be slow in the case of high-latency implementations.
+ *
+ * @since 0.2
+ */
+public interface IQueryCollectionImplementation extends IQueryImplementation {
+
+ /**
+ * This method must be implemented by each sub-class to evaluate a query on a collection of elements. The query
+ * should be evaluated on each of the elements in the given collection.
+ * <p>
+ * This method should throw a {@link DerivedTypedElementException} only if the eTypedElement is an incorrect
+ * {@link DerivedTypedElement}. But it must not throw an exception if the evaluation of one element fails. Instead,
+ * it must set the exception on the corresponding result ({@link ETypedElementResult#setException(Throwable)}).
+ *
+ * @param query
+ * The query to evaluate
+ * @param eTypedElement
+ * The feature or operation to get on the sources
+ * @param sources
+ * The model elements on which the feature or operation is evaluated using the query
+ * @param arguments
+ * The parameter values for the eTypedElement (in the case of a {@link FacetOperation}); can be
+ * <code>null</code>
+ * @return the result :
+ * <ul>
+ * <li> a list of {@link ETypedElementPrimitiveTypeResult} if the eTypedElement is single-valued and returns
+ * a primitive type <li> a list of {@link ETypedElementPrimitiveTypeListResult} if the eTypedElement is
+ * multi-valued and returns a primitive type <li> a list of {@link ETypedElementEObjectResult} if the
+ * eTypedElement is single-valued and returns a model element <li> a list of
+ * {@link ETypedElementEObjectListResult} if the eTypedElement is multi-valued and returns model elements
+ * </ul>
+ * @throws DerivedTypedElementException
+ * if the given derivedTypedElement is incorrect
+ */
+ List<? extends ETypedElementResult> getValues(Query query, ETypedElement eTypedElement, Collection<? extends EObject> sources,
+ List<ParameterValue> arguments)
+ throws DerivedTypedElementException;
+
+ /**
+ * This method must be implemented by each sub-class to set the values of a collection of elements. The query should
+ * be used to set the value of each of the elements in the given collection.
+ *
+ * @param query
+ * The query to evaluate
+ * @param feature
+ * The derived typed element to set
+ * @param sources
+ * The model elements on which the query is evaluated
+ * @param arguments
+ * The parameter values for the derived typed element (in the case of a {@link FacetOperation}); can be
+ * <code>null</code>
+ * @param newValues
+ * the new values for the sources; the size of this list must match the size of the list of sources
+ * @throws DerivedTypedElementException
+ * if the given derivedTypedElement is incorrect
+ * @throws DerivedTypedElementEvaluationException
+ * if the query could not be evaluated correctly
+ * @throws IllegalArgumentException
+ * if the given list of values does not match the list of sources
+ */
+ void setValues(Query query, DerivedTypedElement feature, Collection<? extends EObject> sources, List<ParameterValue> arguments,
+ List<? extends Object> newValues)
+ throws DerivedTypedElementException;
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryEvaluator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryEvaluator.java
new file mode 100644
index 00000000000..eac50a9fee8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryEvaluator.java
@@ -0,0 +1,111 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 361617 - Deprecation of APIs for the old Facet metamodels
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.query;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.QueryResult;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.QueryException;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.QueryExecutionException;
+
+/**
+ * This interface is the EMF Facet QueryEvaluator for query evaluation
+ *
+ * @deprecated use {@link IQueryImplementation} with the new eFacet2 metamodel (https://bugs.eclipse.org/bugs/show_bug.cgi?id=381227)
+ */
+@Deprecated
+public interface IQueryEvaluator {
+
+ /**
+ * This method must be implemented by each sub class to evaluate a query
+ *
+ * @param query
+ * The query to evaluate
+ * @param context
+ * The model element on which the query is evaluated
+ * @param parameterValues
+ * The query parameter values, can be <code>null</code>
+ * @return A list of {@link QueryResult}s (one per evaluation)
+ * @throws QueryExecutionException
+ */
+ public Object basicEvaluate(final Query query, EObject context,
+ final List<ParameterValue> parameterValues) throws QueryException;
+
+ /**
+ * Return whether to check the query result after its evaluation
+ *
+ * @return whether to check the query result after its evaluation
+ */
+ public abstract boolean getCheckResultType();
+
+ /**
+ * Called when starting the evaluation of a query on one or several context
+ * elements (when
+ * {@link AbstractQueryEvaluator#evaluate(ModelQueryContext, List)} is
+ * called).
+ * <p>
+ * A subclass will receive in order:<br>
+ *
+ * <pre>
+ * startEvaluate()
+ * basicEvaluate(context1, parameters)
+ * basicEvaluate(context2, parameters)
+ * ...
+ * basicEvaluate(contextn, parameters)
+ * endEvaluate()
+ * </pre>
+ *
+ * </p>
+ *
+ * When evaluating a query on several context elements, basicEvaluate is
+ * called repeatedly with each context element. For some implementations
+ * that make use of a system with which you must establish a connection (e.g.
+ * a database) for each call, this is costly.
+ *
+ * The methods startEvaluate and endEvaluate satisfy this requirement
+ *
+ * @see {@link AbstractQueryEvaluator#endEvaluate()}
+ */
+ public void startEvaluate();
+
+ /**
+ * Called when ending the evaluation of a query on one or several context
+ * elements.
+ * <p>
+ * A subclass will receive in order:<br>
+ *
+ * <pre>
+ * startEvaluate()
+ * basicEvaluate(context1, parameters)
+ * basicEvaluate(context2, parameters)
+ * ...
+ * basicEvaluate(contextn, parameters)
+ * endEvaluate()
+ * </pre>
+ *
+ * </p>
+ * When evaluating a query on several context elements, basicEvaluate is
+ * called repeatedly with each context element. For some implementations
+ * that make use of a system with which you must establish a connection
+ * (e.g. a database) for each call, this is costly.
+ *
+ * The methods startEvaluate and endEvaluate satisfy this requirement
+ *
+ * @see {@link AbstractQueryEvaluator#startEvaluate()}
+ */
+ public void endEvaluate();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryEvaluatorFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryEvaluatorFactory.java
new file mode 100644
index 00000000000..979445e4e7e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryEvaluatorFactory.java
@@ -0,0 +1,42 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ * Nicolas Bros (Mia-Software) - Bug 361617 - Deprecation of APIs for the old Facet metamodels
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.query;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.QueryException;
+import org.osgi.framework.Bundle;
+
+/**
+ * This factory allows the user to create a {@link IQueryEvaluator} conforming to the EMF Facet
+ * framework.
+ *
+ * @deprecated use {@link IQueryImplementationFactory} with the new eFacet2 metamodel (https://bugs.eclipse.org/bugs/show_bug.cgi?id=381229)
+ */
+@Deprecated
+public interface IQueryEvaluatorFactory {
+ // Copy of org.eclipse.papyrus.emf.facet.infra.query.core.IModelQueryFactory
+
+ /**
+ * Create a query evaluator.
+ */
+ public IQueryEvaluator create(Query query, Bundle bundle) throws QueryException;
+
+ /**
+ * Return the type of query this evaluator can evaluate.
+ *
+ * @return the type of query this evaluator can evaluate.
+ */
+ public EClass getManagedQueryType();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryImplementation.java
new file mode 100644
index 00000000000..ffa1245af82
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryImplementation.java
@@ -0,0 +1,85 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.query;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * Interface implemented by all EMF Facet query evaluators.
+ * <p>
+ * A query evaluator may choose to implement {@link IQueryCollectionImplementation} instead if it wants to improve the
+ * performance of evaluation on collections of elements.
+ *
+ * @since 0.2
+ */
+public interface IQueryImplementation {
+
+ /**
+ * This method must be implemented by each sub class to evaluate a query
+ *
+ * @param query
+ * The query to evaluate
+ * @param feature
+ * The feature or operation to get on the source
+ * @param source
+ * The model element on which the query is evaluated
+ * @param parameterValues
+ * The derived typed element's query parameter values (in the case of a {@link FacetOperation}); can be
+ * <code>null</code>
+ * @return the result, which can be either a single object or a collection of values depending on the multiplicity
+ * of the given derived typed element
+ * @throws DerivedTypedElementException
+ * if the query could not be evaluated correctly to get the value
+ */
+ Object getValue(Query query, DerivedTypedElement feature, EObject source,
+ List<ParameterValue> parameterValues, IFacetManager facetManager)
+ throws DerivedTypedElementException;
+
+ /**
+ * This method must be implemented by each sub class that allows to set the value of a derivedTypedElement using a
+ * query
+ *
+ * @param query
+ * The query that sets the value
+ * @param feature
+ * The derived typed element to set
+ * @param source
+ * The model element on which the derived typed element must be set
+ * @param parameterValues
+ * The query parameter values (in the case of a {@link FacetOperation}); can be <code>null</code>
+ * @param newValue
+ * the value to set on the derived typed element
+ * @throws DerivedTypedElementException
+ * if the query could not be evaluated correctly to set the value
+ */
+ void setValue(Query query, DerivedTypedElement feature, EObject source,
+ List<ParameterValue> parameterValues, Object newValue)
+ throws DerivedTypedElementException;
+
+ /**
+ * Return whether to check the type of the query result after its evaluation
+ * <p>
+ * Normally, this is <code>true</code>, but the query evaluator can choose to skip the check, for example if the
+ * return type of the query can't be loaded.
+ *
+ * @return whether to check the type of the query result after its evaluation
+ */
+ boolean isCheckResultType();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryImplementationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryImplementationFactory.java
new file mode 100644
index 00000000000..fe823954360
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryImplementationFactory.java
@@ -0,0 +1,45 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.core.query;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.osgi.framework.Bundle;
+
+/**
+ * This factory allows clients to create a {@link IQueryImplementation} for queries corresponding to this type of
+ * factory.
+ *
+ * @since 0.2
+ */
+public interface IQueryImplementationFactory {
+
+ /**
+ * Create a query implementation for the given query.
+ *
+ * @param query
+ * the query to create an implementation for
+ * @param queryBundle
+ * the bundle in which the query is defined. May be <code>null</code> if the query is not defined in a
+ * {@link Bundle}.
+ */
+ IQueryImplementation create(Query query, Bundle queryBundle, IDerivedTypedElementManager manager)
+ throws DerivedTypedElementException;
+
+ /**
+ * Return the type of query handled by this implementation.
+ *
+ * @return the type of query this implementation handles.
+ */
+ EClass getManagedQueryType();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryUtils.java
new file mode 100644
index 00000000000..10214173772
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.core/src/org/eclipse/papyrus/emf/facet/efacet/core/query/IQueryUtils.java
@@ -0,0 +1,45 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 333553 - The user has not to deal with two files to create a facet
+ * Nicolas Bros (Mia-Software) - Bug 361617 - Deprecation of APIs for the old Facet metamodels
+ */
+package org.eclipse.papyrus.emf.facet.efacet.core.query;
+
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.QuerySetCatalog;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.query.QueryUtilsImpl;
+
+/**
+ * Utility methods for manipulating queries.
+ *
+ * @deprecated This class manipulated the old facet metamodel. With the new eFacet2 metamodel, there
+ * are no QuerySets anymore. Queries are used only in Facets. (https://bugs.eclipse.org/bugs/show_bug.cgi?id=381230)
+ */
+@Deprecated
+public interface IQueryUtils {
+
+ /** The singleton {@link IQueryUtils} */
+ IQueryUtils INSTANCE = new QueryUtilsImpl();
+
+ /**
+ * This method searches a query in all registered {@link QuerySetCatalog}s.
+ *
+ * @param querySetName
+ * the name of the querySet to search into.
+ * @param queryName
+ * the name of the query to search for.
+ * @return the query if found; <code>null</code> otherwise
+ * @deprecated there are no QuerySets anymore. Queries are now a second-level concept only
+ * defined in Facets. An equivalent is to search for an attribute or operation on a
+ * Facet : see {@link IFacetUtils}
+ */
+ @Deprecated
+ public Query searchQuery(String querySetName, String queryName);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.checkstyle
new file mode 100644
index 00000000000..5e2499a8942
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.checkstyle
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2011 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Guyomar (Mia-Software)
+-->
+<fileset-config file-format-version="1.2.0" simple-config="true">
+ <local-check-config name="EmfFacet" location="../org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <filter name="FilesFromPackage" enabled="false">
+ <filter-data value="org/eclipse/emf/facet/efacet/provider"/>
+ </filter>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.classpath
new file mode 100644
index 00000000000..45f024e850e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.project
new file mode 100644
index 00000000000..bfc9dcc44d2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.efacet.edit</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.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..cc88c86a395
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,3 @@
+#Thu Mar 17 13:46:47 CET 2011
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..7c7ca764767
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,68 @@
+#Tue Jan 18 14:37:11 CET 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
+org.eclipse.jdt.core.compiler.problem.autoboxing=warning
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.deadCode=warning
+org.eclipse.jdt.core.compiler.problem.deprecation=warning
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=ignore
+org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
+org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
+org.eclipse.jdt.core.compiler.problem.nullReference=warning
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=warning
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=warning
+org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
+org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..a3475c98be2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/META-INF/MANIFEST.MF
@@ -0,0 +1,15 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.efacet.edit;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-ClassPath: .
+Bundle-Activator: org.eclipse.papyrus.emf.facet.efacet.provider.EfacetEditPlugin$Implementation
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Export-Package: org.eclipse.papyrus.emf.facet.efacet.provider
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore.edit,
+ org.eclipse.papyrus.emf.facet.efacet;bundle-version="0.1.0"
+Bundle-ActivationPolicy: lazy
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/about.html
new file mode 100644
index 00000000000..6f266717681
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/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>June 16, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/build.properties
new file mode 100644
index 00000000000..047ded6e172
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/build.properties
@@ -0,0 +1,22 @@
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Design
+# Nicolas Guyomar (Mia-Software) - Implementation
+#
+
+bin.includes = .,\
+ icons/,\
+ META-INF/,\
+ plugin.xml,\
+ plugin.properties,\
+ about.html
+jars.compile.order = .
+source.. = src/
+output.. = bin/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacetSet_categories_Category.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacetSet_categories_Category.gif
new file mode 100644
index 00000000000..f33bed84b34
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacetSet_categories_Category.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacetSet_facets_Facet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacetSet_facets_Facet.gif
new file mode 100644
index 00000000000..6915cb8e979
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacetSet_facets_Facet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_conformanceQuery_Literal.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_conformanceQuery_Literal.gif
new file mode 100644
index 00000000000..fc576a1c112
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_conformanceQuery_Literal.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_conformanceQuery_TypedElementRef.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_conformanceQuery_TypedElementRef.gif
new file mode 100644
index 00000000000..7402e2232e3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_conformanceQuery_TypedElementRef.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_facetElements_FacetAttribute.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_facetElements_FacetAttribute.gif
new file mode 100644
index 00000000000..d75b2067789
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_facetElements_FacetAttribute.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_facetElements_FacetOperation.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_facetElements_FacetOperation.gif
new file mode 100644
index 00000000000..11142a338f3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_facetElements_FacetOperation.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_facetElements_FacetReference.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_facetElements_FacetReference.gif
new file mode 100644
index 00000000000..590936f17ea
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_facetElements_FacetReference.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_facetElements_OppositeReference.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_facetElements_OppositeReference.gif
new file mode 100644
index 00000000000..bcfc2ce1ff7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateFacet_facetElements_OppositeReference.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQueryFacetElement_query_Literal.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQueryFacetElement_query_Literal.gif
new file mode 100644
index 00000000000..f9c132ceaca
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQueryFacetElement_query_Literal.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQueryFacetElement_query_TypedElementRef.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQueryFacetElement_query_TypedElementRef.gif
new file mode 100644
index 00000000000..eacefe82e9e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQueryFacetElement_query_TypedElementRef.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQueryResult_parameterValues_ParameterValue.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQueryResult_parameterValues_ParameterValue.gif
new file mode 100644
index 00000000000..27dc0ef81a9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQueryResult_parameterValues_ParameterValue.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQuerySet_queries_Literal.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQuerySet_queries_Literal.gif
new file mode 100644
index 00000000000..78ca278d6fa
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQuerySet_queries_Literal.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQuerySet_queries_TypedElementRef.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQuerySet_queries_TypedElementRef.gif
new file mode 100644
index 00000000000..c14b9095c1e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQuerySet_queries_TypedElementRef.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQuery_parameters_Parameter.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQuery_parameters_Parameter.gif
new file mode 100644
index 00000000000..df046406a90
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/ctool16/CreateQuery_parameters_Parameter.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Category.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Category.gif
new file mode 100644
index 00000000000..caf2804510d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Category.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Facet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Facet.gif
new file mode 100644
index 00000000000..ef56c140853
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Facet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetAttribute.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetAttribute.gif
new file mode 100644
index 00000000000..c673a5200a5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetAttribute.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetElement.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetElement.gif
new file mode 100644
index 00000000000..e4bc22dd17e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetElement.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetOperation.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetOperation.gif
new file mode 100644
index 00000000000..b3643da048a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetOperation.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetReference.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetReference.gif
new file mode 100644
index 00000000000..a3908bcf7b4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetReference.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetSet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetSet.gif
new file mode 100644
index 00000000000..7c2aaac84ee
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/FacetSet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Literal.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Literal.gif
new file mode 100644
index 00000000000..d3dc5a9ad81
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Literal.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/OppositeReference.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/OppositeReference.gif
new file mode 100644
index 00000000000..30f0c48da8d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/OppositeReference.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Parameter.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Parameter.gif
new file mode 100644
index 00000000000..a3908bcf7b4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Parameter.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/ParameterValue.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/ParameterValue.gif
new file mode 100644
index 00000000000..2b692560297
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/ParameterValue.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Query.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Query.gif
new file mode 100644
index 00000000000..d92f34c8aea
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/Query.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/QueryContext.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/QueryContext.gif
new file mode 100644
index 00000000000..a26660ec28f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/QueryContext.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/QueryFacetElement.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/QueryFacetElement.gif
new file mode 100644
index 00000000000..2124f3e3ab2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/QueryFacetElement.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/QueryResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/QueryResult.gif
new file mode 100644
index 00000000000..2124f3e3ab2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/QueryResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/QuerySet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/QuerySet.gif
new file mode 100644
index 00000000000..badaab0664a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/QuerySet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/TypedElementRef.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/TypedElementRef.gif
new file mode 100644
index 00000000000..9250fecbffd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/icons/full/obj16/TypedElementRef.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/plugin.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/plugin.properties
new file mode 100644
index 00000000000..c51a28301d3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/plugin.properties
@@ -0,0 +1,81 @@
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Design
+# Nicolas Guyomar (Mia-Software) - Implementation
+#
+
+pluginName = EMF Facet Edit Support (Deprecated) (Incubation)
+providerName = Eclipse Modeling Project
+
+_UI_CreateChild_text = {0}
+_UI_CreateChild_text2 = {1} {0}
+_UI_CreateChild_text3 = {1}
+_UI_CreateChild_tooltip = Create New {0} Under {1} Feature
+_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}.
+_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent.
+
+_UI_PropertyDescriptor_description = The {0} of the {1}
+
+_UI_FacetAttribute_type = Facet Attribute
+_UI_FacetReference_type = Facet Reference
+_UI_FacetOperation_type = Facet Operation
+_UI_FacetSet_type = Facet Set
+_UI_Facet_type = Facet
+_UI_Query_type = Query
+_UI_QueryResult_type = Query Result
+_UI_Category_type = Category
+_UI_FacetElement_type = Facet Element
+_UI_QueryFacetElement_type = Query Facet Element
+_UI_OppositeReference_type = Opposite Reference
+_UI_QuerySet_type = Query Set
+_UI_Literal_type = Literal
+_UI_TypedElementRef_type = Typed Element Ref
+_UI_Parameter_type = Parameter
+_UI_ParameterValue_type = Parameter Value
+_UI_QueryContext_type = Query Context
+_UI_Unknown_type = Object
+
+_UI_Unknown_datatype= Value
+
+_UI_FacetSet_facets_feature = Facets
+_UI_FacetSet_categories_feature = Categories
+_UI_Facet_facetSet_feature = Facet Set
+_UI_Facet_conformanceQuery_feature = Conformance Query
+_UI_Facet_extendedMetaclass_feature = Extended Metaclass
+_UI_Facet_facetElements_feature = Facet Elements
+_UI_Query_scope_feature = Scope
+_UI_Query_hasSideEffect_feature = Has Side Effect
+_UI_Query_canBeCached_feature = Can Be Cached
+_UI_Query_parameters_feature = Parameters
+_UI_QueryResult_query_feature = Query
+_UI_QueryResult_scope_feature = Scope
+_UI_QueryResult_parameterValues_feature = Parameter Values
+_UI_QueryResult_result_feature = Result
+_UI_QueryResult_exception_feature = Exception
+_UI_QueryResult_source_feature = Source
+_UI_FacetElement_categories_feature = Categories
+_UI_FacetElement_facet_feature = Facet
+_UI_FacetElement_override_feature = Override
+_UI_QueryFacetElement_query_feature = Query
+_UI_OppositeReference_fOpposite_feature = FOpposite
+_UI_QuerySet_queries_feature = Queries
+_UI_QuerySet_name_feature = Name
+_UI_Literal_value_feature = Value
+_UI_TypedElementRef_typedElement_feature = Typed Element
+_UI_ParameterValue_parameter_feature = Parameter
+_UI_ParameterValue_value_feature = Value
+_UI_QueryContext_selectedModelElements_feature = Selected Model Elements
+_UI_QueryContext_selectedModels_feature = Selected Models
+_UI_Unknown_feature = Unspecified
+
+_UI_FacetSet_name_feature = Name
+_UI_Facet_name_feature = Name
+_UI_FacetSet_extendedPackage_feature = Extended Package
+_UI_FacetSet_extendedMetamodel_feature = Extended Metamodel
+_UI_FacetSet_extendedEPackage_feature = Extended EPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/plugin.xml
new file mode 100644
index 00000000000..7efaae87a5b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/plugin.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Gregoire Dupe (Mia-Software) - Design
+ Nicolas Guyomar (Mia-Software) - Implementation
+
+-->
+
+<plugin>
+
+ <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+ <factory
+ uri="http://www.eclipse.org/papyrus/emf/facet/efacet/0.1.incubation"
+ class="org.eclipse.papyrus.emf.facet.efacet.provider.EFacetItemProviderAdapterFactory"
+ supportedTypes=
+ "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+ org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+ org.eclipse.emf.edit.provider.ITreeItemContentProvider
+ org.eclipse.emf.edit.provider.IItemLabelProvider
+ org.eclipse.emf.edit.provider.IItemPropertySource"/>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/CategoryItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/CategoryItemProvider.java
new file mode 100644
index 00000000000..784ae6b887f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/CategoryItemProvider.java
@@ -0,0 +1,132 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.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.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.ItemProviderAdapter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.Category} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class CategoryItemProvider
+ 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 CategoryItemProvider(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);
+
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This returns Category.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/Category")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ return getString("_UI_Category_type"); //$NON-NLS-1$
+ }
+
+ /**
+ * 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);
+ 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/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/EFacetItemProviderAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/EFacetItemProviderAdapterFactory.java
new file mode 100644
index 00000000000..ac2717f6df6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/EFacetItemProviderAdapterFactory.java
@@ -0,0 +1,566 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ChildCreationExtenderManager;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IChildCreationExtender;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.util.EFacetAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+// generated code
+@SuppressWarnings("all")
+public class EFacetItemProviderAdapterFactory extends EFacetAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable, IChildCreationExtender {
+ /**
+ * This keeps track of the root adapter factory that delegates to this adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ComposedAdapterFactory parentAdapterFactory;
+
+ /**
+ * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+ /**
+ * This helps manage the child creation extenders.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ChildCreationExtenderManager childCreationExtenderManager = new ChildCreationExtenderManager(EfacetEditPlugin.INSTANCE, EFacetPackage.eNS_URI);
+
+ /**
+ * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+ /**
+ * This constructs an instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EFacetItemProviderAdapterFactory() {
+ supportedTypes.add(IEditingDomainItemProvider.class);
+ supportedTypes.add(IStructuredItemContentProvider.class);
+ supportedTypes.add(ITreeItemContentProvider.class);
+ supportedTypes.add(IItemLabelProvider.class);
+ supportedTypes.add(IItemPropertySource.class);
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.FacetAttribute} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetAttributeItemProvider facetAttributeItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.FacetAttribute}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createFacetAttributeAdapter() {
+ if (facetAttributeItemProvider == null) {
+ facetAttributeItemProvider = new FacetAttributeItemProvider(this);
+ }
+
+ return facetAttributeItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.FacetReference} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetReferenceItemProvider facetReferenceItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.FacetReference}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createFacetReferenceAdapter() {
+ if (facetReferenceItemProvider == null) {
+ facetReferenceItemProvider = new FacetReferenceItemProvider(this);
+ }
+
+ return facetReferenceItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.FacetOperation} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetOperationItemProvider facetOperationItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.FacetOperation}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createFacetOperationAdapter() {
+ if (facetOperationItemProvider == null) {
+ facetOperationItemProvider = new FacetOperationItemProvider(this);
+ }
+
+ return facetOperationItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.FacetSet} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetSetItemProvider facetSetItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.FacetSet}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createFacetSetAdapter() {
+ if (facetSetItemProvider == null) {
+ facetSetItemProvider = new FacetSetItemProvider(this);
+ }
+
+ return facetSetItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.Facet} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetItemProvider facetItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.Facet}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createFacetAdapter() {
+ if (facetItemProvider == null) {
+ facetItemProvider = new FacetItemProvider(this);
+ }
+
+ return facetItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.QueryResult} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected QueryResultItemProvider queryResultItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.QueryResult}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createQueryResultAdapter() {
+ if (queryResultItemProvider == null) {
+ queryResultItemProvider = new QueryResultItemProvider(this);
+ }
+
+ return queryResultItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.Category} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CategoryItemProvider categoryItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.Category}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createCategoryAdapter() {
+ if (categoryItemProvider == null) {
+ categoryItemProvider = new CategoryItemProvider(this);
+ }
+
+ return categoryItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.OppositeReference} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected OppositeReferenceItemProvider oppositeReferenceItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.OppositeReference}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createOppositeReferenceAdapter() {
+ if (oppositeReferenceItemProvider == null) {
+ oppositeReferenceItemProvider = new OppositeReferenceItemProvider(this);
+ }
+
+ return oppositeReferenceItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.QuerySet} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected QuerySetItemProvider querySetItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.QuerySet}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createQuerySetAdapter() {
+ if (querySetItemProvider == null) {
+ querySetItemProvider = new QuerySetItemProvider(this);
+ }
+
+ return querySetItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.Literal} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected LiteralItemProvider literalItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.Literal}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createLiteralAdapter() {
+ if (literalItemProvider == null) {
+ literalItemProvider = new LiteralItemProvider(this);
+ }
+
+ return literalItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.TypedElementRef} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TypedElementRefItemProvider typedElementRefItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.TypedElementRef}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createTypedElementRefAdapter() {
+ if (typedElementRefItemProvider == null) {
+ typedElementRefItemProvider = new TypedElementRefItemProvider(this);
+ }
+
+ return typedElementRefItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.Parameter} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ParameterItemProvider parameterItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.Parameter}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createParameterAdapter() {
+ if (parameterItemProvider == null) {
+ parameterItemProvider = new ParameterItemProvider(this);
+ }
+
+ return parameterItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.ParameterValue} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ParameterValueItemProvider parameterValueItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.ParameterValue}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createParameterValueAdapter() {
+ if (parameterValueItemProvider == null) {
+ parameterValueItemProvider = new ParameterValueItemProvider(this);
+ }
+
+ return parameterValueItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.QueryContext} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected QueryContextItemProvider queryContextItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.QueryContext}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createQueryContextAdapter() {
+ if (queryContextItemProvider == null) {
+ queryContextItemProvider = new QueryContextItemProvider(this);
+ }
+
+ return queryContextItemProvider;
+ }
+
+ /**
+ * This returns the root adapter factory that contains this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ComposeableAdapterFactory getRootAdapterFactory() {
+ return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+ }
+
+ /**
+ * This sets the composed adapter factory that contains this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+ this.parentAdapterFactory = parentAdapterFactory;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object type) {
+ return supportedTypes.contains(type) || super.isFactoryForType(type);
+ }
+
+ /**
+ * This implementation substitutes the factory itself as the key for the adapter.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter adapt(Notifier notifier, Object type) {
+ return super.adapt(notifier, this);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object adapt(Object object, Object type) {
+ if (isFactoryForType(type)) {
+ Object adapter = super.adapt(object, type);
+ if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+ return adapter;
+ }
+ }
+
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public List<IChildCreationExtender> getChildCreationExtenders() {
+ return childCreationExtenderManager.getChildCreationExtenders();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Collection<?> getNewChildDescriptors(Object object, EditingDomain editingDomain) {
+ return childCreationExtenderManager.getNewChildDescriptors(object, editingDomain);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ResourceLocator getResourceLocator() {
+ return childCreationExtenderManager;
+ }
+
+ /**
+ * This adds a listener.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void addListener(INotifyChangedListener notifyChangedListener) {
+ changeNotifier.addListener(notifyChangedListener);
+ }
+
+ /**
+ * This removes a listener.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void removeListener(INotifyChangedListener notifyChangedListener) {
+ changeNotifier.removeListener(notifyChangedListener);
+ }
+
+ /**
+ * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void fireNotifyChanged(Notification notification) {
+ changeNotifier.fireNotifyChanged(notification);
+
+ if (parentAdapterFactory != null) {
+ parentAdapterFactory.fireNotifyChanged(notification);
+ }
+ }
+
+ /**
+ * This disposes all of the item providers created by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void dispose() {
+ if (facetAttributeItemProvider != null) facetAttributeItemProvider.dispose();
+ if (facetReferenceItemProvider != null) facetReferenceItemProvider.dispose();
+ if (facetOperationItemProvider != null) facetOperationItemProvider.dispose();
+ if (facetSetItemProvider != null) facetSetItemProvider.dispose();
+ if (facetItemProvider != null) facetItemProvider.dispose();
+ if (queryResultItemProvider != null) queryResultItemProvider.dispose();
+ if (categoryItemProvider != null) categoryItemProvider.dispose();
+ if (oppositeReferenceItemProvider != null) oppositeReferenceItemProvider.dispose();
+ if (querySetItemProvider != null) querySetItemProvider.dispose();
+ if (literalItemProvider != null) literalItemProvider.dispose();
+ if (typedElementRefItemProvider != null) typedElementRefItemProvider.dispose();
+ if (parameterItemProvider != null) parameterItemProvider.dispose();
+ if (parameterValueItemProvider != null) parameterValueItemProvider.dispose();
+ if (queryContextItemProvider != null) queryContextItemProvider.dispose();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/EfacetEditPlugin.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/EfacetEditPlugin.java
new file mode 100644
index 00000000000..5a873e0aeef
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/EfacetEditPlugin.java
@@ -0,0 +1,105 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.provider;
+
+import org.eclipse.emf.common.EMFPlugin;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.ecore.provider.EcoreEditPlugin;
+
+/**
+ * This is the central singleton for the Efacet edit plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public final class EfacetEditPlugin extends EMFPlugin {
+ /**
+ * Keep track of the singleton.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final EfacetEditPlugin INSTANCE = new EfacetEditPlugin();
+
+ /**
+ * Keep track of the singleton.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static Implementation plugin;
+
+ /**
+ * Create the instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EfacetEditPlugin() {
+ super
+ (new ResourceLocator [] {
+ EcoreEditPlugin.INSTANCE,
+ });
+ }
+
+ /**
+ * Returns the singleton instance of the Eclipse plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the singleton instance.
+ * @generated
+ */
+ @Override
+ public ResourceLocator getPluginResourceLocator() {
+ return plugin;
+ }
+
+ /**
+ * Returns the singleton instance of the Eclipse plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the singleton instance.
+ * @generated
+ */
+ public static Implementation getPlugin() {
+ return plugin;
+ }
+
+ /**
+ * The actual implementation of the Eclipse <b>Plugin</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Deprecated
+ public static class Implementation extends EclipsePlugin {
+ /**
+ * Creates an instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Implementation() {
+ super();
+
+ // Remember the static instance.
+ //
+ plugin = this;
+ }
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetAttributeItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetAttributeItemProvider.java
new file mode 100644
index 00000000000..cdad51127cc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetAttributeItemProvider.java
@@ -0,0 +1,649 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.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.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+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.emf.facet.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.FacetAttribute;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.FacetAttribute} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+//generated code
+@SuppressWarnings("all")
+public class FacetAttributeItemProvider
+ 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 FacetAttributeItemProvider(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);
+ addOrderedPropertyDescriptor(object);
+ addUniquePropertyDescriptor(object);
+ addLowerBoundPropertyDescriptor(object);
+ addUpperBoundPropertyDescriptor(object);
+ addManyPropertyDescriptor(object);
+ addRequiredPropertyDescriptor(object);
+ addETypePropertyDescriptor(object);
+ addChangeablePropertyDescriptor(object);
+ addVolatilePropertyDescriptor(object);
+ addTransientPropertyDescriptor(object);
+ addDefaultValueLiteralPropertyDescriptor(object);
+ addDefaultValuePropertyDescriptor(object);
+ addUnsettablePropertyDescriptor(object);
+ addDerivedPropertyDescriptor(object);
+ addIDPropertyDescriptor(object);
+ addEAttributeTypePropertyDescriptor(object);
+ addCategoriesPropertyDescriptor(object);
+ addOverridePropertyDescriptor(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_ENamedElement_name_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ENamedElement_name_feature", "_UI_ENamedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ENAMED_ELEMENT__NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Ordered feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOrderedPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_ordered_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_ordered_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ORDERED,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Unique feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUniquePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_unique_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_unique_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UNIQUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Lower Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addLowerBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_lowerBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_lowerBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__LOWER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Upper Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUpperBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_upperBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_upperBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UPPER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Many feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addManyPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_many_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_many_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__MANY,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Required feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addRequiredPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_required_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_required_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__REQUIRED,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EType feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addETypePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_eType_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_eType_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ETYPE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Changeable feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addChangeablePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_changeable_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_changeable_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__CHANGEABLE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Volatile feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addVolatilePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_volatile_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_volatile_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__VOLATILE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Transient feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addTransientPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_transient_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_transient_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__TRANSIENT,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Default Value Literal feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDefaultValueLiteralPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_defaultValueLiteral_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_defaultValueLiteral_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__DEFAULT_VALUE_LITERAL,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Default Value feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDefaultValuePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_defaultValue_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_defaultValue_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__DEFAULT_VALUE,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Unsettable feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUnsettablePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_unsettable_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_unsettable_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__UNSETTABLE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Derived feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDerivedPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_derived_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_derived_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__DERIVED,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the ID feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addIDPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EAttribute_iD_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EAttribute_iD_feature", "_UI_EAttribute_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EATTRIBUTE__ID,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EAttribute Type feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addEAttributeTypePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EAttribute_eAttributeType_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EAttribute_eAttributeType_feature", "_UI_EAttribute_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EATTRIBUTE__EATTRIBUTE_TYPE,
+ false,
+ false,
+ false,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Categories feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addCategoriesPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_FacetElement_categories_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_FacetElement_categories_feature", "_UI_FacetElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.FACET_ELEMENT__CATEGORIES,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Override feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOverridePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_FacetElement_override_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_FacetElement_override_feature", "_UI_FacetElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.FACET_ELEMENT__OVERRIDE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+ childrenFeatures.add(EcorePackage.Literals.ETYPED_ELEMENT__EGENERIC_TYPE);
+ childrenFeatures.add(EFacetPackage.Literals.QUERY_FACET_ELEMENT__QUERY);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns FacetAttribute.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/FacetAttribute")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((FacetAttribute)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_FacetAttribute_type") : //$NON-NLS-1$
+ getString("_UI_FacetAttribute_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(FacetAttribute.class)) {
+ case EFacetPackage.FACET_ATTRIBUTE__NAME:
+ case EFacetPackage.FACET_ATTRIBUTE__ORDERED:
+ case EFacetPackage.FACET_ATTRIBUTE__UNIQUE:
+ case EFacetPackage.FACET_ATTRIBUTE__LOWER_BOUND:
+ case EFacetPackage.FACET_ATTRIBUTE__UPPER_BOUND:
+ case EFacetPackage.FACET_ATTRIBUTE__MANY:
+ case EFacetPackage.FACET_ATTRIBUTE__REQUIRED:
+ case EFacetPackage.FACET_ATTRIBUTE__CHANGEABLE:
+ case EFacetPackage.FACET_ATTRIBUTE__VOLATILE:
+ case EFacetPackage.FACET_ATTRIBUTE__TRANSIENT:
+ case EFacetPackage.FACET_ATTRIBUTE__DEFAULT_VALUE_LITERAL:
+ case EFacetPackage.FACET_ATTRIBUTE__DEFAULT_VALUE:
+ case EFacetPackage.FACET_ATTRIBUTE__UNSETTABLE:
+ case EFacetPackage.FACET_ATTRIBUTE__DERIVED:
+ case EFacetPackage.FACET_ATTRIBUTE__ID:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case EFacetPackage.FACET_ATTRIBUTE__EANNOTATIONS:
+ case EFacetPackage.FACET_ATTRIBUTE__EGENERIC_TYPE:
+ case EFacetPackage.FACET_ATTRIBUTE__QUERY:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.QUERY_FACET_ELEMENT__QUERY,
+ EFacetFactory.eINSTANCE.createLiteral()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.QUERY_FACET_ELEMENT__QUERY,
+ EFacetFactory.eINSTANCE.createTypedElementRef()));
+ }
+
+ /**
+ * 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/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetElementItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetElementItemProvider.java
new file mode 100644
index 00000000000..6e42c8fa086
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetElementItemProvider.java
@@ -0,0 +1,421 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.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.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+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.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.FacetElement;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.FacetElement} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+//generated code
+@SuppressWarnings("all")
+public class FacetElementItemProvider
+ 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 FacetElementItemProvider(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);
+ addOrderedPropertyDescriptor(object);
+ addUniquePropertyDescriptor(object);
+ addLowerBoundPropertyDescriptor(object);
+ addUpperBoundPropertyDescriptor(object);
+ addManyPropertyDescriptor(object);
+ addRequiredPropertyDescriptor(object);
+ addETypePropertyDescriptor(object);
+ addCategoriesPropertyDescriptor(object);
+ addOverridePropertyDescriptor(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_ENamedElement_name_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ENamedElement_name_feature", "_UI_ENamedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ENAMED_ELEMENT__NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Ordered feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOrderedPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_ordered_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_ordered_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ORDERED,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Unique feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUniquePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_unique_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_unique_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UNIQUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Lower Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addLowerBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_lowerBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_lowerBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__LOWER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Upper Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUpperBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_upperBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_upperBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UPPER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Many feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addManyPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_many_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_many_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__MANY,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Required feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addRequiredPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_required_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_required_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__REQUIRED,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EType feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addETypePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_eType_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_eType_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ETYPE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Categories feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addCategoriesPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_FacetElement_categories_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_FacetElement_categories_feature", "_UI_FacetElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.FACET_ELEMENT__CATEGORIES,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Override feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOverridePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_FacetElement_override_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_FacetElement_override_feature", "_UI_FacetElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.FACET_ELEMENT__OVERRIDE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+ childrenFeatures.add(EcorePackage.Literals.ETYPED_ELEMENT__EGENERIC_TYPE);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns FacetElement.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/FacetElement")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((FacetElement)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_FacetElement_type") : //$NON-NLS-1$
+ getString("_UI_FacetElement_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(FacetElement.class)) {
+ case EFacetPackage.FACET_ELEMENT__NAME:
+ case EFacetPackage.FACET_ELEMENT__ORDERED:
+ case EFacetPackage.FACET_ELEMENT__UNIQUE:
+ case EFacetPackage.FACET_ELEMENT__LOWER_BOUND:
+ case EFacetPackage.FACET_ELEMENT__UPPER_BOUND:
+ case EFacetPackage.FACET_ELEMENT__MANY:
+ case EFacetPackage.FACET_ELEMENT__REQUIRED:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case EFacetPackage.FACET_ELEMENT__EANNOTATIONS:
+ case EFacetPackage.FACET_ELEMENT__EGENERIC_TYPE:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetItemProvider.java
new file mode 100644
index 00000000000..ab0f96efa5e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetItemProvider.java
@@ -0,0 +1,362 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.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.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+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.emf.facet.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Facet;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.Facet} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+//generated code
+@SuppressWarnings("all")
+public class FacetItemProvider
+ 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 FacetItemProvider(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);
+ addInstanceClassNamePropertyDescriptor(object);
+ addInstanceClassPropertyDescriptor(object);
+ addDefaultValuePropertyDescriptor(object);
+ addInstanceTypeNamePropertyDescriptor(object);
+ addExtendedMetaclassPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Extended Metaclass feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addExtendedMetaclassPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_Facet_extendedMetaclass_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_Facet_extendedMetaclass_feature", "_UI_Facet_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.FACET__EXTENDED_METACLASS,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * 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_ENamedElement_name_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ENamedElement_name_feature", "_UI_ENamedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ENAMED_ELEMENT__NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Instance Class Name feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addInstanceClassNamePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EClassifier_instanceClassName_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EClassifier_instanceClassName_feature", "_UI_EClassifier_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ECLASSIFIER__INSTANCE_CLASS_NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Instance Class feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addInstanceClassPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EClassifier_instanceClass_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EClassifier_instanceClass_feature", "_UI_EClassifier_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ECLASSIFIER__INSTANCE_CLASS,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Default Value feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDefaultValuePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EClassifier_defaultValue_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EClassifier_defaultValue_feature", "_UI_EClassifier_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ECLASSIFIER__DEFAULT_VALUE,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Instance Type Name feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addInstanceTypeNamePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EClassifier_instanceTypeName_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EClassifier_instanceTypeName_feature", "_UI_EClassifier_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ECLASSIFIER__INSTANCE_TYPE_NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+ childrenFeatures.add(EcorePackage.Literals.ECLASSIFIER__ETYPE_PARAMETERS);
+ childrenFeatures.add(EFacetPackage.Literals.FACET__CONFORMANCE_QUERY);
+ childrenFeatures.add(EFacetPackage.Literals.FACET__FACET_ELEMENTS);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns Facet.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/Facet")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((Facet)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_Facet_type") : //$NON-NLS-1$
+ getString("_UI_Facet_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(Facet.class)) {
+ case EFacetPackage.FACET__NAME:
+ case EFacetPackage.FACET__INSTANCE_CLASS_NAME:
+ case EFacetPackage.FACET__INSTANCE_CLASS:
+ case EFacetPackage.FACET__DEFAULT_VALUE:
+ case EFacetPackage.FACET__INSTANCE_TYPE_NAME:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case EFacetPackage.FACET__EANNOTATIONS:
+ case EFacetPackage.FACET__ETYPE_PARAMETERS:
+ case EFacetPackage.FACET__CONFORMANCE_QUERY:
+ case EFacetPackage.FACET__FACET_ELEMENTS:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.FACET__CONFORMANCE_QUERY,
+ EFacetFactory.eINSTANCE.createLiteral()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.FACET__CONFORMANCE_QUERY,
+ EFacetFactory.eINSTANCE.createTypedElementRef()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.FACET__FACET_ELEMENTS,
+ EFacetFactory.eINSTANCE.createFacetAttribute()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.FACET__FACET_ELEMENTS,
+ EFacetFactory.eINSTANCE.createFacetReference()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.FACET__FACET_ELEMENTS,
+ EFacetFactory.eINSTANCE.createFacetOperation()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.FACET__FACET_ELEMENTS,
+ EFacetFactory.eINSTANCE.createOppositeReference()));
+ }
+
+ /**
+ * 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/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetOperationItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetOperationItemProvider.java
new file mode 100644
index 00000000000..606fb5c0bf3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetOperationItemProvider.java
@@ -0,0 +1,463 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.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.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+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.emf.facet.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.FacetOperation;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.FacetOperation} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+//generated code
+@SuppressWarnings("all")
+public class FacetOperationItemProvider
+ 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 FacetOperationItemProvider(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);
+ addOrderedPropertyDescriptor(object);
+ addUniquePropertyDescriptor(object);
+ addLowerBoundPropertyDescriptor(object);
+ addUpperBoundPropertyDescriptor(object);
+ addManyPropertyDescriptor(object);
+ addRequiredPropertyDescriptor(object);
+ addETypePropertyDescriptor(object);
+ addEExceptionsPropertyDescriptor(object);
+ addCategoriesPropertyDescriptor(object);
+ addOverridePropertyDescriptor(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_ENamedElement_name_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ENamedElement_name_feature", "_UI_ENamedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ENAMED_ELEMENT__NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Ordered feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOrderedPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_ordered_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_ordered_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ORDERED,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Unique feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUniquePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_unique_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_unique_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UNIQUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Lower Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addLowerBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_lowerBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_lowerBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__LOWER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Upper Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUpperBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_upperBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_upperBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UPPER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Many feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addManyPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_many_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_many_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__MANY,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Required feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addRequiredPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_required_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_required_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__REQUIRED,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EType feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addETypePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_eType_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_eType_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ETYPE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EExceptions feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addEExceptionsPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EOperation_eExceptions_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EOperation_eExceptions_feature", "_UI_EOperation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EOPERATION__EEXCEPTIONS,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Categories feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addCategoriesPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_FacetElement_categories_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_FacetElement_categories_feature", "_UI_FacetElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.FACET_ELEMENT__CATEGORIES,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Override feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOverridePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_FacetElement_override_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_FacetElement_override_feature", "_UI_FacetElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.FACET_ELEMENT__OVERRIDE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+ childrenFeatures.add(EcorePackage.Literals.ETYPED_ELEMENT__EGENERIC_TYPE);
+ childrenFeatures.add(EcorePackage.Literals.EOPERATION__ETYPE_PARAMETERS);
+ childrenFeatures.add(EcorePackage.Literals.EOPERATION__EPARAMETERS);
+ childrenFeatures.add(EcorePackage.Literals.EOPERATION__EGENERIC_EXCEPTIONS);
+ childrenFeatures.add(EFacetPackage.Literals.QUERY_FACET_ELEMENT__QUERY);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns FacetOperation.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/FacetOperation")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((FacetOperation)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_FacetOperation_type") : //$NON-NLS-1$
+ getString("_UI_FacetOperation_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(FacetOperation.class)) {
+ case EFacetPackage.FACET_OPERATION__NAME:
+ case EFacetPackage.FACET_OPERATION__ORDERED:
+ case EFacetPackage.FACET_OPERATION__UNIQUE:
+ case EFacetPackage.FACET_OPERATION__LOWER_BOUND:
+ case EFacetPackage.FACET_OPERATION__UPPER_BOUND:
+ case EFacetPackage.FACET_OPERATION__MANY:
+ case EFacetPackage.FACET_OPERATION__REQUIRED:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case EFacetPackage.FACET_OPERATION__EANNOTATIONS:
+ case EFacetPackage.FACET_OPERATION__EGENERIC_TYPE:
+ case EFacetPackage.FACET_OPERATION__ETYPE_PARAMETERS:
+ case EFacetPackage.FACET_OPERATION__EPARAMETERS:
+ case EFacetPackage.FACET_OPERATION__EGENERIC_EXCEPTIONS:
+ case EFacetPackage.FACET_OPERATION__QUERY:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.QUERY_FACET_ELEMENT__QUERY,
+ EFacetFactory.eINSTANCE.createLiteral()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.QUERY_FACET_ELEMENT__QUERY,
+ EFacetFactory.eINSTANCE.createTypedElementRef()));
+ }
+
+ /**
+ * 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/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetReferenceItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetReferenceItemProvider.java
new file mode 100644
index 00000000000..096dcaffbe5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetReferenceItemProvider.java
@@ -0,0 +1,743 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.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.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+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.emf.facet.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.FacetReference;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.FacetReference} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+//generated code
+@SuppressWarnings("all")
+public class FacetReferenceItemProvider
+ 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 FacetReferenceItemProvider(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);
+ addOrderedPropertyDescriptor(object);
+ addUniquePropertyDescriptor(object);
+ addLowerBoundPropertyDescriptor(object);
+ addUpperBoundPropertyDescriptor(object);
+ addManyPropertyDescriptor(object);
+ addRequiredPropertyDescriptor(object);
+ addETypePropertyDescriptor(object);
+ addChangeablePropertyDescriptor(object);
+ addVolatilePropertyDescriptor(object);
+ addTransientPropertyDescriptor(object);
+ addDefaultValueLiteralPropertyDescriptor(object);
+ addDefaultValuePropertyDescriptor(object);
+ addUnsettablePropertyDescriptor(object);
+ addDerivedPropertyDescriptor(object);
+ addContainmentPropertyDescriptor(object);
+ addContainerPropertyDescriptor(object);
+ addResolveProxiesPropertyDescriptor(object);
+ addEOppositePropertyDescriptor(object);
+ addEReferenceTypePropertyDescriptor(object);
+ addEKeysPropertyDescriptor(object);
+ addCategoriesPropertyDescriptor(object);
+ addOverridePropertyDescriptor(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_ENamedElement_name_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ENamedElement_name_feature", "_UI_ENamedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ENAMED_ELEMENT__NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Ordered feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOrderedPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_ordered_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_ordered_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ORDERED,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Unique feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUniquePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_unique_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_unique_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UNIQUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Lower Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addLowerBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_lowerBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_lowerBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__LOWER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Upper Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUpperBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_upperBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_upperBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UPPER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Many feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addManyPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_many_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_many_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__MANY,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Required feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addRequiredPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_required_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_required_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__REQUIRED,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EType feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addETypePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_eType_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_eType_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ETYPE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Changeable feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addChangeablePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_changeable_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_changeable_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__CHANGEABLE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Volatile feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addVolatilePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_volatile_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_volatile_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__VOLATILE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Transient feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addTransientPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_transient_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_transient_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__TRANSIENT,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Default Value Literal feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDefaultValueLiteralPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_defaultValueLiteral_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_defaultValueLiteral_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__DEFAULT_VALUE_LITERAL,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Default Value feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDefaultValuePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_defaultValue_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_defaultValue_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__DEFAULT_VALUE,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Unsettable feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUnsettablePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_unsettable_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_unsettable_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__UNSETTABLE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Derived feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDerivedPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_derived_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_derived_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__DERIVED,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Containment feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addContainmentPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EReference_containment_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EReference_containment_feature", "_UI_EReference_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EREFERENCE__CONTAINMENT,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Container feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addContainerPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EReference_container_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EReference_container_feature", "_UI_EReference_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EREFERENCE__CONTAINER,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Resolve Proxies feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addResolveProxiesPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EReference_resolveProxies_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EReference_resolveProxies_feature", "_UI_EReference_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EREFERENCE__RESOLVE_PROXIES,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EOpposite feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addEOppositePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EReference_eOpposite_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EReference_eOpposite_feature", "_UI_EReference_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EREFERENCE__EOPPOSITE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EReference Type feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addEReferenceTypePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EReference_eReferenceType_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EReference_eReferenceType_feature", "_UI_EReference_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EREFERENCE__EREFERENCE_TYPE,
+ false,
+ false,
+ false,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EKeys feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addEKeysPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EReference_eKeys_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EReference_eKeys_feature", "_UI_EReference_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EREFERENCE__EKEYS,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Categories feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addCategoriesPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_FacetElement_categories_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_FacetElement_categories_feature", "_UI_FacetElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.FACET_ELEMENT__CATEGORIES,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Override feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOverridePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_FacetElement_override_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_FacetElement_override_feature", "_UI_FacetElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.FACET_ELEMENT__OVERRIDE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+ childrenFeatures.add(EcorePackage.Literals.ETYPED_ELEMENT__EGENERIC_TYPE);
+ childrenFeatures.add(EFacetPackage.Literals.QUERY_FACET_ELEMENT__QUERY);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns FacetReference.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/FacetReference")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((FacetReference)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_FacetReference_type") : //$NON-NLS-1$
+ getString("_UI_FacetReference_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(FacetReference.class)) {
+ case EFacetPackage.FACET_REFERENCE__NAME:
+ case EFacetPackage.FACET_REFERENCE__ORDERED:
+ case EFacetPackage.FACET_REFERENCE__UNIQUE:
+ case EFacetPackage.FACET_REFERENCE__LOWER_BOUND:
+ case EFacetPackage.FACET_REFERENCE__UPPER_BOUND:
+ case EFacetPackage.FACET_REFERENCE__MANY:
+ case EFacetPackage.FACET_REFERENCE__REQUIRED:
+ case EFacetPackage.FACET_REFERENCE__CHANGEABLE:
+ case EFacetPackage.FACET_REFERENCE__VOLATILE:
+ case EFacetPackage.FACET_REFERENCE__TRANSIENT:
+ case EFacetPackage.FACET_REFERENCE__DEFAULT_VALUE_LITERAL:
+ case EFacetPackage.FACET_REFERENCE__DEFAULT_VALUE:
+ case EFacetPackage.FACET_REFERENCE__UNSETTABLE:
+ case EFacetPackage.FACET_REFERENCE__DERIVED:
+ case EFacetPackage.FACET_REFERENCE__CONTAINMENT:
+ case EFacetPackage.FACET_REFERENCE__CONTAINER:
+ case EFacetPackage.FACET_REFERENCE__RESOLVE_PROXIES:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case EFacetPackage.FACET_REFERENCE__EANNOTATIONS:
+ case EFacetPackage.FACET_REFERENCE__EGENERIC_TYPE:
+ case EFacetPackage.FACET_REFERENCE__QUERY:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.QUERY_FACET_ELEMENT__QUERY,
+ EFacetFactory.eINSTANCE.createLiteral()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.QUERY_FACET_ELEMENT__QUERY,
+ EFacetFactory.eINSTANCE.createTypedElementRef()));
+ }
+
+ /**
+ * 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/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetSetItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetSetItemProvider.java
new file mode 100644
index 00000000000..2cf3943026f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/FacetSetItemProvider.java
@@ -0,0 +1,352 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.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.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+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.emf.facet.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.FacetSet} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+//generated code
+@SuppressWarnings("all")
+public class FacetSetItemProvider
+ 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 FacetSetItemProvider(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);
+ addNsURIPropertyDescriptor(object);
+ addNsPrefixPropertyDescriptor(object);
+ addEFactoryInstancePropertyDescriptor(object);
+ addExtendedEPackagePropertyDescriptor(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_ENamedElement_name_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ENamedElement_name_feature", "_UI_ENamedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ENAMED_ELEMENT__NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Ns URI feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addNsURIPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EPackage_nsURI_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EPackage_nsURI_feature", "_UI_EPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EPACKAGE__NS_URI,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Ns Prefix feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addNsPrefixPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EPackage_nsPrefix_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EPackage_nsPrefix_feature", "_UI_EPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EPACKAGE__NS_PREFIX,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EFactory Instance feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addEFactoryInstancePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EPackage_eFactoryInstance_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EPackage_eFactoryInstance_feature", "_UI_EPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EPACKAGE__EFACTORY_INSTANCE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Extended EPackage feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addExtendedEPackagePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_FacetSet_extendedEPackage_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_FacetSet_extendedEPackage_feature", "_UI_FacetSet_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.FACET_SET__EXTENDED_EPACKAGE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+ childrenFeatures.add(EcorePackage.Literals.EPACKAGE__ECLASSIFIERS);
+ childrenFeatures.add(EcorePackage.Literals.EPACKAGE__ESUBPACKAGES);
+ childrenFeatures.add(EFacetPackage.Literals.FACET_SET__FACETS);
+ childrenFeatures.add(EFacetPackage.Literals.FACET_SET__CATEGORIES);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns FacetSet.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/FacetSet")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((FacetSet)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_FacetSet_type") : //$NON-NLS-1$
+ getString("_UI_FacetSet_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(FacetSet.class)) {
+ case EFacetPackage.FACET_SET__NAME:
+ case EFacetPackage.FACET_SET__NS_URI:
+ case EFacetPackage.FACET_SET__NS_PREFIX:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case EFacetPackage.FACET_SET__EANNOTATIONS:
+ case EFacetPackage.FACET_SET__ECLASSIFIERS:
+ case EFacetPackage.FACET_SET__ESUBPACKAGES:
+ case EFacetPackage.FACET_SET__FACETS:
+ case EFacetPackage.FACET_SET__CATEGORIES:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EcorePackage.Literals.EPACKAGE__ECLASSIFIERS,
+ EFacetFactory.eINSTANCE.createFacet()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EcorePackage.Literals.EPACKAGE__ESUBPACKAGES,
+ EFacetFactory.eINSTANCE.createFacetSet()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.FACET_SET__FACETS,
+ EFacetFactory.eINSTANCE.createFacet()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.FACET_SET__CATEGORIES,
+ EFacetFactory.eINSTANCE.createCategory()));
+ }
+
+ /**
+ * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+ Object childFeature = feature;
+ Object childObject = child;
+
+ boolean qualify =
+ childFeature == EcorePackage.Literals.EPACKAGE__ECLASSIFIERS ||
+ childFeature == EFacetPackage.Literals.FACET_SET__FACETS;
+
+ if (qualify) {
+ return getString
+ ("_UI_CreateChild_text2", //$NON-NLS-1$
+ new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+ }
+ return super.getCreateChildText(owner, feature, child, selection);
+ }
+
+ /**
+ * 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/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/LiteralItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/LiteralItemProvider.java
new file mode 100644
index 00000000000..ed0812ca252
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/LiteralItemProvider.java
@@ -0,0 +1,157 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.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.edit.provider.ComposeableAdapterFactory;
+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.ViewerNotification;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Literal;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.Literal} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+//generated code
+@SuppressWarnings("all")
+public class LiteralItemProvider
+ extends QueryItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public LiteralItemProvider(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);
+
+ addValuePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Value feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addValuePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_Literal_value_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_Literal_value_feature", "_UI_Literal_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.LITERAL__VALUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This returns Literal.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/Literal")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((Literal)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_Literal_type") : //$NON-NLS-1$
+ getString("_UI_Literal_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(Literal.class)) {
+ case EFacetPackage.LITERAL__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);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/OppositeReferenceItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/OppositeReferenceItemProvider.java
new file mode 100644
index 00000000000..99b70d7eefd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/OppositeReferenceItemProvider.java
@@ -0,0 +1,149 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.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.edit.provider.ComposeableAdapterFactory;
+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.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.OppositeReference;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.OppositeReference} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+//generated code
+@SuppressWarnings("all")
+public class OppositeReferenceItemProvider
+ extends FacetElementItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public OppositeReferenceItemProvider(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);
+
+ addFOppositePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the FOpposite feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addFOppositePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_OppositeReference_fOpposite_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_OppositeReference_fOpposite_feature", "_UI_OppositeReference_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.OPPOSITE_REFERENCE__FOPPOSITE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This returns OppositeReference.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/OppositeReference")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((OppositeReference)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_OppositeReference_type") : //$NON-NLS-1$
+ getString("_UI_OppositeReference_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);
+ 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);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/ParameterItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/ParameterItemProvider.java
new file mode 100644
index 00000000000..6f3de6a941a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/ParameterItemProvider.java
@@ -0,0 +1,375 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.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.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+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.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Parameter;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.Parameter} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+//generated code
+@SuppressWarnings("all")
+public class ParameterItemProvider
+ 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 ParameterItemProvider(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);
+ addOrderedPropertyDescriptor(object);
+ addUniquePropertyDescriptor(object);
+ addLowerBoundPropertyDescriptor(object);
+ addUpperBoundPropertyDescriptor(object);
+ addManyPropertyDescriptor(object);
+ addRequiredPropertyDescriptor(object);
+ addETypePropertyDescriptor(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_ENamedElement_name_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ENamedElement_name_feature", "_UI_ENamedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ENAMED_ELEMENT__NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Ordered feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOrderedPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_ordered_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_ordered_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ORDERED,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Unique feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUniquePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_unique_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_unique_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UNIQUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Lower Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addLowerBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_lowerBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_lowerBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__LOWER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Upper Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUpperBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_upperBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_upperBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UPPER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Many feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addManyPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_many_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_many_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__MANY,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Required feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addRequiredPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_required_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_required_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__REQUIRED,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EType feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addETypePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_eType_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_eType_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ETYPE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+ childrenFeatures.add(EcorePackage.Literals.ETYPED_ELEMENT__EGENERIC_TYPE);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns Parameter.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/Parameter")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((Parameter)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_Parameter_type") : //$NON-NLS-1$
+ getString("_UI_Parameter_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(Parameter.class)) {
+ case EFacetPackage.PARAMETER__NAME:
+ case EFacetPackage.PARAMETER__ORDERED:
+ case EFacetPackage.PARAMETER__UNIQUE:
+ case EFacetPackage.PARAMETER__LOWER_BOUND:
+ case EFacetPackage.PARAMETER__UPPER_BOUND:
+ case EFacetPackage.PARAMETER__MANY:
+ case EFacetPackage.PARAMETER__REQUIRED:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case EFacetPackage.PARAMETER__EANNOTATIONS:
+ case EFacetPackage.PARAMETER__EGENERIC_TYPE:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/ParameterValueItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/ParameterValueItemProvider.java
new file mode 100644
index 00000000000..c9d0a666492
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/ParameterValueItemProvider.java
@@ -0,0 +1,191 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.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.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.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.ParameterValue;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.ParameterValue} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+//generated code
+@SuppressWarnings("all")
+public class ParameterValueItemProvider
+ 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 ParameterValueItemProvider(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);
+
+ addParameterPropertyDescriptor(object);
+ addValuePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Parameter feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addParameterPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ParameterValue_parameter_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ParameterValue_parameter_feature", "_UI_ParameterValue_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.PARAMETER_VALUE__PARAMETER,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Value feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addValuePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ParameterValue_value_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ParameterValue_value_feature", "_UI_ParameterValue_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.PARAMETER_VALUE__VALUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This returns ParameterValue.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/ParameterValue")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ return getString("_UI_ParameterValue_type"); //$NON-NLS-1$
+ }
+
+ /**
+ * 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(ParameterValue.class)) {
+ case EFacetPackage.PARAMETER_VALUE__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/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QueryContextItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QueryContextItemProvider.java
new file mode 100644
index 00000000000..43149a02de7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QueryContextItemProvider.java
@@ -0,0 +1,191 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.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.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.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.QueryContext;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.QueryContext} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+//generated code
+@SuppressWarnings("all")
+public class QueryContextItemProvider
+ 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 QueryContextItemProvider(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);
+
+ addSelectedModelElementsPropertyDescriptor(object);
+ addSelectedModelsPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Selected Model Elements feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addSelectedModelElementsPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_QueryContext_selectedModelElements_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_QueryContext_selectedModelElements_feature", "_UI_QueryContext_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.QUERY_CONTEXT__SELECTED_MODEL_ELEMENTS,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Selected Models feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addSelectedModelsPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_QueryContext_selectedModels_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_QueryContext_selectedModels_feature", "_UI_QueryContext_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.QUERY_CONTEXT__SELECTED_MODELS,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This returns QueryContext.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/QueryContext")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ return getString("_UI_QueryContext_type"); //$NON-NLS-1$
+ }
+
+ /**
+ * 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(QueryContext.class)) {
+ case EFacetPackage.QUERY_CONTEXT__SELECTED_MODELS:
+ 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/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QueryFacetElementItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QueryFacetElementItemProvider.java
new file mode 100644
index 00000000000..ae3c244d727
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QueryFacetElementItemProvider.java
@@ -0,0 +1,174 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.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.ecore.EStructuralFeature;
+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.ViewerNotification;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.QueryFacetElement;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.QueryFacetElement} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+//generated code
+@SuppressWarnings("all")
+public class QueryFacetElementItemProvider
+ extends FacetElementItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public QueryFacetElementItemProvider(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);
+
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EFacetPackage.Literals.QUERY_FACET_ELEMENT__QUERY);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns QueryFacetElement.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/QueryFacetElement")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((QueryFacetElement)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_QueryFacetElement_type") : //$NON-NLS-1$
+ getString("_UI_QueryFacetElement_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(QueryFacetElement.class)) {
+ case EFacetPackage.QUERY_FACET_ELEMENT__QUERY:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.QUERY_FACET_ELEMENT__QUERY,
+ EFacetFactory.eINSTANCE.createLiteral()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.QUERY_FACET_ELEMENT__QUERY,
+ EFacetFactory.eINSTANCE.createTypedElementRef()));
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QueryItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QueryItemProvider.java
new file mode 100644
index 00000000000..bfabdb60d82
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QueryItemProvider.java
@@ -0,0 +1,454 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.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.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+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.emf.facet.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.Query} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+//generated code
+@SuppressWarnings("all")
+public class QueryItemProvider
+ 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 QueryItemProvider(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);
+ addOrderedPropertyDescriptor(object);
+ addUniquePropertyDescriptor(object);
+ addLowerBoundPropertyDescriptor(object);
+ addUpperBoundPropertyDescriptor(object);
+ addManyPropertyDescriptor(object);
+ addRequiredPropertyDescriptor(object);
+ addETypePropertyDescriptor(object);
+ addScopePropertyDescriptor(object);
+ addHasSideEffectPropertyDescriptor(object);
+ addCanBeCachedPropertyDescriptor(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_ENamedElement_name_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ENamedElement_name_feature", "_UI_ENamedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ENAMED_ELEMENT__NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Ordered feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOrderedPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_ordered_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_ordered_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ORDERED,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Unique feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUniquePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_unique_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_unique_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UNIQUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Lower Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addLowerBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_lowerBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_lowerBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__LOWER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Upper Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUpperBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_upperBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_upperBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UPPER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Many feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addManyPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_many_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_many_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__MANY,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Required feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addRequiredPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_required_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_required_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__REQUIRED,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EType feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addETypePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_eType_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_eType_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ETYPE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Scope feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addScopePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_Query_scope_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_Query_scope_feature", "_UI_Query_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.QUERY__SCOPE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Has Side Effect feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addHasSideEffectPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_Query_hasSideEffect_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_Query_hasSideEffect_feature", "_UI_Query_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.QUERY__HAS_SIDE_EFFECT,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Can Be Cached feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addCanBeCachedPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_Query_canBeCached_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_Query_canBeCached_feature", "_UI_Query_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.QUERY__CAN_BE_CACHED,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+ childrenFeatures.add(EcorePackage.Literals.ETYPED_ELEMENT__EGENERIC_TYPE);
+ childrenFeatures.add(EFacetPackage.Literals.QUERY__PARAMETERS);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns Query.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/Query")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((Query)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_Query_type") : //$NON-NLS-1$
+ getString("_UI_Query_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(Query.class)) {
+ case EFacetPackage.QUERY__NAME:
+ case EFacetPackage.QUERY__ORDERED:
+ case EFacetPackage.QUERY__UNIQUE:
+ case EFacetPackage.QUERY__LOWER_BOUND:
+ case EFacetPackage.QUERY__UPPER_BOUND:
+ case EFacetPackage.QUERY__MANY:
+ case EFacetPackage.QUERY__REQUIRED:
+ case EFacetPackage.QUERY__HAS_SIDE_EFFECT:
+ case EFacetPackage.QUERY__CAN_BE_CACHED:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case EFacetPackage.QUERY__EANNOTATIONS:
+ case EFacetPackage.QUERY__EGENERIC_TYPE:
+ case EFacetPackage.QUERY__PARAMETERS:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.QUERY__PARAMETERS,
+ EFacetFactory.eINSTANCE.createParameter()));
+ }
+
+ /**
+ * 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/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QueryResultItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QueryResultItemProvider.java
new file mode 100644
index 00000000000..89eea1e6e91
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QueryResultItemProvider.java
@@ -0,0 +1,305 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.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.ecore.EStructuralFeature;
+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.emf.facet.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.QueryResult;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.QueryResult} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+//generated code
+@SuppressWarnings("all")
+public class QueryResultItemProvider
+ 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 QueryResultItemProvider(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);
+
+ addQueryPropertyDescriptor(object);
+ addScopePropertyDescriptor(object);
+ addResultPropertyDescriptor(object);
+ addExceptionPropertyDescriptor(object);
+ addSourcePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Query feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addQueryPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_QueryResult_query_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_QueryResult_query_feature", "_UI_QueryResult_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.QUERY_RESULT__QUERY,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Scope feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addScopePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_QueryResult_scope_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_QueryResult_scope_feature", "_UI_QueryResult_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.QUERY_RESULT__SCOPE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Result feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addResultPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_QueryResult_result_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_QueryResult_result_feature", "_UI_QueryResult_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.QUERY_RESULT__RESULT,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Exception feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addExceptionPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_QueryResult_exception_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_QueryResult_exception_feature", "_UI_QueryResult_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.QUERY_RESULT__EXCEPTION,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Source feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addSourcePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_QueryResult_source_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_QueryResult_source_feature", "_UI_QueryResult_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.QUERY_RESULT__SOURCE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EFacetPackage.Literals.QUERY_RESULT__PARAMETER_VALUES);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns QueryResult.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/QueryResult")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ Object labelValue = ((QueryResult)object).getResult();
+ String label = labelValue == null ? null : labelValue.toString();
+ return label == null || label.length() == 0 ?
+ getString("_UI_QueryResult_type") : //$NON-NLS-1$
+ getString("_UI_QueryResult_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(QueryResult.class)) {
+ case EFacetPackage.QUERY_RESULT__RESULT:
+ case EFacetPackage.QUERY_RESULT__EXCEPTION:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case EFacetPackage.QUERY_RESULT__PARAMETER_VALUES:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.QUERY_RESULT__PARAMETER_VALUES,
+ EFacetFactory.eINSTANCE.createParameterValue()));
+ }
+
+ /**
+ * 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/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QuerySetItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QuerySetItemProvider.java
new file mode 100644
index 00000000000..c361722655f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/QuerySetItemProvider.java
@@ -0,0 +1,216 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.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.ecore.EStructuralFeature;
+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.emf.facet.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.QuerySet;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.QuerySet} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+//generated code
+@SuppressWarnings("all")
+public class QuerySetItemProvider
+ 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 QuerySetItemProvider(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);
+ }
+ 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_QuerySet_name_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_QuerySet_name_feature", "_UI_QuerySet_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.QUERY_SET__NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EFacetPackage.Literals.QUERY_SET__QUERIES);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns QuerySet.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/QuerySet")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((QuerySet)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_QuerySet_type") : //$NON-NLS-1$
+ getString("_UI_QuerySet_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(QuerySet.class)) {
+ case EFacetPackage.QUERY_SET__NAME:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case EFacetPackage.QUERY_SET__QUERIES:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.QUERY_SET__QUERIES,
+ EFacetFactory.eINSTANCE.createLiteral()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.QUERY_SET__QUERIES,
+ EFacetFactory.eINSTANCE.createTypedElementRef()));
+ }
+
+ /**
+ * 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/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/TypedElementRefItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/TypedElementRefItemProvider.java
new file mode 100644
index 00000000000..efbd07954d8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.edit/src/org/eclipse/papyrus/emf/facet/efacet/provider/TypedElementRefItemProvider.java
@@ -0,0 +1,149 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.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.edit.provider.ComposeableAdapterFactory;
+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.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.TypedElementRef;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.TypedElementRef} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+//generated code
+@SuppressWarnings("all")
+public class TypedElementRefItemProvider
+ extends QueryItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TypedElementRefItemProvider(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);
+
+ addTypedElementPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Typed Element feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addTypedElementPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_TypedElementRef_typedElement_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_TypedElementRef_typedElement_feature", "_UI_TypedElementRef_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.TYPED_ELEMENT_REF__TYPED_ELEMENT,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This returns TypedElementRef.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/TypedElementRef")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((TypedElementRef)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_TypedElementRef_type") : //$NON-NLS-1$
+ getString("_UI_TypedElementRef_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);
+ 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);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/.classpath
new file mode 100644
index 00000000000..45f024e850e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/.project
new file mode 100644
index 00000000000..5c7e1481bd7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.efacet.editor</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.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..a3a1f9f1759
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,3 @@
+#Thu Mar 17 13:44:35 CET 2011
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..e122386cdff
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,71 @@
+#Fri Feb 18 11:18:06 CET 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
+org.eclipse.jdt.core.compiler.problem.autoboxing=warning
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.deadCode=warning
+org.eclipse.jdt.core.compiler.problem.deprecation=warning
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
+org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
+org.eclipse.jdt.core.compiler.problem.nullReference=warning
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=warning
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=ignore
+org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
+org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..b9025cb5bfd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/META-INF/MANIFEST.MF
@@ -0,0 +1,20 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.efacet.editor;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-ClassPath: .
+Bundle-Activator: org.eclipse.papyrus.emf.facet.efacet.presentation.EfacetEditorPlugin$Implementation
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.core.resources,
+ org.eclipse.papyrus.emf.facet.efacet.edit;visibility:=reexport,
+ org.eclipse.emf.ecore.xmi,
+ org.eclipse.emf.edit.ui,
+ org.eclipse.ui.ide,
+ org.eclipse.papyrus.emf.facet.efacet;bundle-version="0.1.0",
+ org.eclipse.emf.ecore.edit;bundle-version="2.6.0"
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.efacet.presentation;x-internal:=true
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/about.html
new file mode 100644
index 00000000000..6f266717681
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/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>June 16, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/build.properties
new file mode 100644
index 00000000000..97709507298
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/build.properties
@@ -0,0 +1,22 @@
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Design
+# Nicolas Guyomar (Mia-Software) - Implementation
+#
+
+bin.includes = .,\
+ icons/,\
+ META-INF/,\
+ plugin.xml,\
+ plugin.properties,\
+ about.html
+jars.compile.order = .
+source.. = src/
+output.. = bin
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/icons/full/obj16/EFacetModelFile.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/icons/full/obj16/EFacetModelFile.gif
new file mode 100644
index 00000000000..8c67c03cc10
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/icons/full/obj16/EFacetModelFile.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/plugin.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/plugin.properties
new file mode 100644
index 00000000000..820b9dd8395
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/plugin.properties
@@ -0,0 +1,63 @@
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Design
+# Nicolas Guyomar (Mia-Software) - Implementation
+#
+
+pluginName = EMF Facet Editor (Deprecated)(Incubation)
+providerName = Eclipse Modeling Project
+
+_UI_EFacetEditor_menu = &EFacet Editor
+
+_UI_CreateChild_menu_item = &New Child
+_UI_CreateSibling_menu_item = N&ew Sibling
+
+_UI_ShowPropertiesView_menu_item = Show &Properties View
+_UI_RefreshViewer_menu_item = &Refresh
+
+_UI_SelectionPage_label = Selection
+_UI_ParentPage_label = Parent
+_UI_ListPage_label = List
+_UI_TreePage_label = Tree
+_UI_TablePage_label = Table
+_UI_TreeWithColumnsPage_label = Tree with Columns
+_UI_ObjectColumn_label = Object
+_UI_SelfColumn_label = Self
+
+_UI_NoObjectSelected = Selected Nothing
+_UI_SingleObjectSelected = Selected Object: {0}
+_UI_MultiObjectSelected = Selected {0} Objects
+
+_UI_OpenEditorError_label = Open Editor
+
+_UI_Wizard_category = Example EMF Model Creation Wizards
+
+_UI_CreateModelError_message = Problems encountered in file "{0}"
+
+_UI_EFacetModelWizard_label = EFacet Model
+_UI_EFacetModelWizard_description = Create a new EFacet model
+
+_UI_EFacetEditor_label = EFacet Model Editor
+
+_UI_EFacetEditorFilenameDefaultBase = My
+_UI_EFacetEditorFilenameExtensions = efacet
+
+_UI_Wizard_label = New
+
+_WARN_FilenameExtension = The file name must end in ''.{0}''
+_WARN_FilenameExtensions = The file name must have one of the following extensions: {0}
+
+_UI_ModelObject = &Model Object
+_UI_XMLEncoding = &XML Encoding
+_UI_XMLEncodingChoices = UTF-8 ASCII UTF-16 UTF-16BE UTF-16LE ISO-8859-1
+_UI_Wizard_initial_object_description = Select a model object to create
+
+_UI_FileConflict_label = File Conflict
+_WARN_FileConflict = There are unsaved changes that conflict with changes made outside the editor. Do you wish to discard this editor's changes?
+
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/plugin.xml
new file mode 100644
index 00000000000..6177adecda8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/plugin.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Gregoire Dupe (Mia-Software) - Design
+ Nicolas Guyomar (Mia-Software) - Implementation
+
+-->
+
+<plugin>
+
+
+ <extension point="org.eclipse.ui.editors">
+ <editor
+ id="org.eclipse.papyrus.emf.facet.efacet.presentation.EFacetEditorID"
+ name="%_UI_EFacetEditor_label"
+ icon="icons/full/obj16/EFacetModelFile.gif"
+ extensions="efacet"
+ class="org.eclipse.papyrus.emf.facet.efacet.presentation.EFacetEditor"
+ contributorClass="org.eclipse.papyrus.emf.facet.efacet.presentation.EFacetActionBarContributor">
+ </editor>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/src/org/eclipse/papyrus/emf/facet/efacet/presentation/EFacetActionBarContributor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/src/org/eclipse/papyrus/emf/facet/efacet/presentation/EFacetActionBarContributor.java
new file mode 100644
index 00000000000..3159b5a171b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/src/org/eclipse/papyrus/emf/facet/efacet/presentation/EFacetActionBarContributor.java
@@ -0,0 +1,439 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.presentation;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.ui.viewer.IViewerProvider;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+
+import org.eclipse.emf.edit.ui.action.ControlAction;
+import org.eclipse.emf.edit.ui.action.CreateChildAction;
+import org.eclipse.emf.edit.ui.action.CreateSiblingAction;
+import org.eclipse.emf.edit.ui.action.EditingDomainActionBarContributor;
+import org.eclipse.emf.edit.ui.action.LoadResourceAction;
+import org.eclipse.emf.edit.ui.action.ValidateAction;
+
+import org.eclipse.jface.action.Action;
+import org.eclipse.jface.action.ActionContributionItem;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.action.IContributionItem;
+import org.eclipse.jface.action.IContributionManager;
+import org.eclipse.jface.action.IMenuListener;
+import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.action.IToolBarManager;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.action.Separator;
+import org.eclipse.jface.action.SubContributionItem;
+
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.ISelectionProvider;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.Viewer;
+
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.PartInitException;
+
+/**
+ * This is the action bar contributor for the EFacet model editor.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class EFacetActionBarContributor
+ extends EditingDomainActionBarContributor
+ implements ISelectionChangedListener {
+ /**
+ * This keeps track of the active editor.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IEditorPart activeEditorPart;
+
+ /**
+ * This keeps track of the current selection provider.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ISelectionProvider selectionProvider;
+
+ /**
+ * This action opens the Properties view.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IAction showPropertiesViewAction =
+ new Action(EfacetEditorPlugin.INSTANCE.getString("_UI_ShowPropertiesView_menu_item")) //$NON-NLS-1$
+ {
+ @Override
+ public void run() {
+ try {
+ getPage().showView("org.eclipse.ui.views.PropertySheet"); //$NON-NLS-1$
+ }
+ catch (PartInitException exception) {
+ EfacetEditorPlugin.INSTANCE.log(exception);
+ }
+ }
+ };
+
+ /**
+ * This action refreshes the viewer of the current editor if the editor
+ * implements {@link org.eclipse.emf.common.ui.viewer.IViewerProvider}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IAction refreshViewerAction =
+ new Action(EfacetEditorPlugin.INSTANCE.getString("_UI_RefreshViewer_menu_item")) //$NON-NLS-1$
+ {
+ @Override
+ public boolean isEnabled() {
+ return activeEditorPart instanceof IViewerProvider;
+ }
+
+ @Override
+ public void run() {
+ if (activeEditorPart instanceof IViewerProvider) {
+ Viewer viewer = ((IViewerProvider)activeEditorPart).getViewer();
+ if (viewer != null) {
+ viewer.refresh();
+ }
+ }
+ }
+ };
+
+ /**
+ * This will contain one {@link org.eclipse.emf.edit.ui.action.CreateChildAction} corresponding to each descriptor
+ * generated for the current selection by the item provider.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<IAction> createChildActions;
+
+ /**
+ * This is the menu manager into which menu contribution items should be added for CreateChild actions.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IMenuManager createChildMenuManager;
+
+ /**
+ * This will contain one {@link org.eclipse.emf.edit.ui.action.CreateSiblingAction} corresponding to each descriptor
+ * generated for the current selection by the item provider.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<IAction> createSiblingActions;
+
+ /**
+ * This is the menu manager into which menu contribution items should be added for CreateSibling actions.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IMenuManager createSiblingMenuManager;
+
+ /**
+ * This creates an instance of the contributor.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EFacetActionBarContributor() {
+ super(ADDITIONS_LAST_STYLE);
+ loadResourceAction = new LoadResourceAction();
+ validateAction = new ValidateAction();
+ controlAction = new ControlAction();
+ }
+
+ /**
+ * This adds Separators for editor additions to the tool bar.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void contributeToToolBar(IToolBarManager toolBarManager) {
+ toolBarManager.add(new Separator("efacet-settings")); //$NON-NLS-1$
+ toolBarManager.add(new Separator("efacet-additions")); //$NON-NLS-1$
+ }
+
+ /**
+ * This adds to the menu bar a menu and some separators for editor additions,
+ * as well as the sub-menus for object creation items.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void contributeToMenu(IMenuManager menuManager) {
+ super.contributeToMenu(menuManager);
+
+ IMenuManager submenuManager = new MenuManager(EfacetEditorPlugin.INSTANCE.getString("_UI_EFacetEditor_menu"), "org.eclipse.papyrus.emf.facet.efacetMenuID"); //$NON-NLS-1$ //$NON-NLS-2$
+ menuManager.insertAfter("additions", submenuManager); //$NON-NLS-1$
+ submenuManager.add(new Separator("settings")); //$NON-NLS-1$
+ submenuManager.add(new Separator("actions")); //$NON-NLS-1$
+ submenuManager.add(new Separator("additions")); //$NON-NLS-1$
+ submenuManager.add(new Separator("additions-end")); //$NON-NLS-1$
+
+ // Prepare for CreateChild item addition or removal.
+ //
+ createChildMenuManager = new MenuManager(EfacetEditorPlugin.INSTANCE.getString("_UI_CreateChild_menu_item")); //$NON-NLS-1$
+ submenuManager.insertBefore("additions", createChildMenuManager); //$NON-NLS-1$
+
+ // Prepare for CreateSibling item addition or removal.
+ //
+ createSiblingMenuManager = new MenuManager(EfacetEditorPlugin.INSTANCE.getString("_UI_CreateSibling_menu_item")); //$NON-NLS-1$
+ submenuManager.insertBefore("additions", createSiblingMenuManager); //$NON-NLS-1$
+
+ // Force an update because Eclipse hides empty menus now.
+ //
+ submenuManager.addMenuListener
+ (new IMenuListener() {
+ public void menuAboutToShow(IMenuManager menuManager) {
+ menuManager.updateAll(true);
+ }
+ });
+
+ addGlobalActions(submenuManager);
+ }
+
+ /**
+ * When the active editor changes, this remembers the change and registers with it as a selection provider.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setActiveEditor(IEditorPart part) {
+ super.setActiveEditor(part);
+ activeEditorPart = part;
+
+ // Switch to the new selection provider.
+ //
+ if (selectionProvider != null) {
+ selectionProvider.removeSelectionChangedListener(this);
+ }
+ if (part == null) {
+ selectionProvider = null;
+ }
+ else {
+ selectionProvider = part.getSite().getSelectionProvider();
+ selectionProvider.addSelectionChangedListener(this);
+
+ // Fake a selection changed event to update the menus.
+ //
+ if (selectionProvider.getSelection() != null) {
+ selectionChanged(new SelectionChangedEvent(selectionProvider, selectionProvider.getSelection()));
+ }
+ }
+ }
+
+ /**
+ * This implements {@link org.eclipse.jface.viewers.ISelectionChangedListener},
+ * handling {@link org.eclipse.jface.viewers.SelectionChangedEvent}s by querying for the children and siblings
+ * that can be added to the selected object and updating the menus accordingly.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void selectionChanged(SelectionChangedEvent event) {
+ // Remove any menu items for old selection.
+ //
+ if (createChildMenuManager != null) {
+ depopulateManager(createChildMenuManager, createChildActions);
+ }
+ if (createSiblingMenuManager != null) {
+ depopulateManager(createSiblingMenuManager, createSiblingActions);
+ }
+
+ // Query the new selection for appropriate new child/sibling descriptors
+ //
+ Collection<?> newChildDescriptors = null;
+ Collection<?> newSiblingDescriptors = null;
+
+ ISelection selection = event.getSelection();
+ if (selection instanceof IStructuredSelection && ((IStructuredSelection)selection).size() == 1) {
+ Object object = ((IStructuredSelection)selection).getFirstElement();
+
+ EditingDomain domain = ((IEditingDomainProvider)activeEditorPart).getEditingDomain();
+
+ newChildDescriptors = domain.getNewChildDescriptors(object, null);
+ newSiblingDescriptors = domain.getNewChildDescriptors(null, object);
+ }
+
+ // Generate actions for selection; populate and redraw the menus.
+ //
+ createChildActions = generateCreateChildActions(newChildDescriptors, selection);
+ createSiblingActions = generateCreateSiblingActions(newSiblingDescriptors, selection);
+
+ if (createChildMenuManager != null) {
+ populateManager(createChildMenuManager, createChildActions, null);
+ createChildMenuManager.update(true);
+ }
+ if (createSiblingMenuManager != null) {
+ populateManager(createSiblingMenuManager, createSiblingActions, null);
+ createSiblingMenuManager.update(true);
+ }
+ }
+
+ /**
+ * This generates a {@link org.eclipse.emf.edit.ui.action.CreateChildAction} for each object in <code>descriptors</code>,
+ * and returns the collection of these actions.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<IAction> generateCreateChildActions(Collection<?> descriptors, ISelection selection) {
+ Collection<IAction> actions = new ArrayList<IAction>();
+ if (descriptors != null) {
+ for (Object descriptor : descriptors) {
+ actions.add(new CreateChildAction(activeEditorPart, selection, descriptor));
+ }
+ }
+ return actions;
+ }
+
+ /**
+ * This generates a {@link org.eclipse.emf.edit.ui.action.CreateSiblingAction} for each object in <code>descriptors</code>,
+ * and returns the collection of these actions.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<IAction> generateCreateSiblingActions(Collection<?> descriptors, ISelection selection) {
+ Collection<IAction> actions = new ArrayList<IAction>();
+ if (descriptors != null) {
+ for (Object descriptor : descriptors) {
+ actions.add(new CreateSiblingAction(activeEditorPart, selection, descriptor));
+ }
+ }
+ return actions;
+ }
+
+ /**
+ * This populates the specified <code>manager</code> with {@link org.eclipse.jface.action.ActionContributionItem}s
+ * based on the {@link org.eclipse.jface.action.IAction}s contained in the <code>actions</code> collection,
+ * by inserting them before the specified contribution item <code>contributionID</code>.
+ * If <code>contributionID</code> is <code>null</code>, they are simply added.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void populateManager(IContributionManager manager, Collection<? extends IAction> actions, String contributionID) {
+ if (actions != null) {
+ for (IAction action : actions) {
+ if (contributionID != null) {
+ manager.insertBefore(contributionID, action);
+ }
+ else {
+ manager.add(action);
+ }
+ }
+ }
+ }
+
+ /**
+ * This removes from the specified <code>manager</code> all {@link org.eclipse.jface.action.ActionContributionItem}s
+ * based on the {@link org.eclipse.jface.action.IAction}s contained in the <code>actions</code> collection.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void depopulateManager(IContributionManager manager, Collection<? extends IAction> actions) {
+ if (actions != null) {
+ IContributionItem[] items = manager.getItems();
+ for (int i = 0; i < items.length; i++) {
+ // Look into SubContributionItems
+ //
+ IContributionItem contributionItem = items[i];
+ while (contributionItem instanceof SubContributionItem) {
+ contributionItem = ((SubContributionItem)contributionItem).getInnerItem();
+ }
+
+ // Delete the ActionContributionItems with matching action.
+ //
+ if (contributionItem instanceof ActionContributionItem) {
+ IAction action = ((ActionContributionItem)contributionItem).getAction();
+ if (actions.contains(action)) {
+ manager.remove(contributionItem);
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * This populates the pop-up menu before it appears.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void menuAboutToShow(IMenuManager menuManager) {
+ super.menuAboutToShow(menuManager);
+ MenuManager submenuManager = null;
+
+ submenuManager = new MenuManager(EfacetEditorPlugin.INSTANCE.getString("_UI_CreateChild_menu_item")); //$NON-NLS-1$
+ populateManager(submenuManager, createChildActions, null);
+ menuManager.insertBefore("edit", submenuManager); //$NON-NLS-1$
+
+ submenuManager = new MenuManager(EfacetEditorPlugin.INSTANCE.getString("_UI_CreateSibling_menu_item")); //$NON-NLS-1$
+ populateManager(submenuManager, createSiblingActions, null);
+ menuManager.insertBefore("edit", submenuManager); //$NON-NLS-1$
+ }
+
+ /**
+ * This inserts global actions before the "additions-end" separator.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected void addGlobalActions(IMenuManager menuManager) {
+ menuManager.insertAfter("additions-end", new Separator("ui-actions")); //$NON-NLS-1$ //$NON-NLS-2$
+ menuManager.insertAfter("ui-actions", showPropertiesViewAction); //$NON-NLS-1$
+
+ refreshViewerAction.setEnabled(refreshViewerAction.isEnabled());
+ menuManager.insertAfter("ui-actions", refreshViewerAction); //$NON-NLS-1$
+
+ super.addGlobalActions(menuManager);
+ }
+
+ /**
+ * This ensures that a delete action will clean up all references to deleted objects.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected boolean removeAllReferencesOnDelete() {
+ return true;
+ }
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/src/org/eclipse/papyrus/emf/facet/efacet/presentation/EFacetEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/src/org/eclipse/papyrus/emf/facet/efacet/presentation/EFacetEditor.java
new file mode 100644
index 00000000000..b8be94124a0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/src/org/eclipse/papyrus/emf/facet/efacet/presentation/EFacetEditor.java
@@ -0,0 +1,1568 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.presentation;
+
+import java.io.IOException;
+import java.io.InputStream;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.EventObject;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IResourceChangeEvent;
+import org.eclipse.core.resources.IResourceChangeListener;
+import org.eclipse.core.resources.IResourceDelta;
+import org.eclipse.core.resources.IResourceDeltaVisitor;
+import org.eclipse.core.resources.ResourcesPlugin;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.NullProgressMonitor;
+
+import org.eclipse.jface.action.IMenuListener;
+import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.action.IStatusLineManager;
+import org.eclipse.jface.action.IToolBarManager;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.action.Separator;
+
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.dialogs.ProgressMonitorDialog;
+
+import org.eclipse.jface.viewers.ColumnWeightData;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.ISelectionProvider;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.ListViewer;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.viewers.StructuredViewer;
+import org.eclipse.jface.viewers.TableLayout;
+import org.eclipse.jface.viewers.TableViewer;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jface.viewers.Viewer;
+
+import org.eclipse.swt.SWT;
+
+import org.eclipse.swt.custom.CTabFolder;
+
+import org.eclipse.swt.dnd.DND;
+import org.eclipse.swt.dnd.Transfer;
+
+import org.eclipse.swt.events.ControlAdapter;
+import org.eclipse.swt.events.ControlEvent;
+
+import org.eclipse.swt.graphics.Point;
+
+import org.eclipse.swt.layout.FillLayout;
+
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Menu;
+import org.eclipse.swt.widgets.Table;
+import org.eclipse.swt.widgets.TableColumn;
+import org.eclipse.swt.widgets.Tree;
+import org.eclipse.swt.widgets.TreeColumn;
+
+import org.eclipse.ui.IActionBars;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IEditorSite;
+import org.eclipse.ui.IPartListener;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.PartInitException;
+
+import org.eclipse.ui.dialogs.SaveAsDialog;
+
+import org.eclipse.ui.ide.IGotoMarker;
+
+import org.eclipse.ui.part.FileEditorInput;
+import org.eclipse.ui.part.MultiPageEditorPart;
+
+import org.eclipse.ui.views.contentoutline.ContentOutline;
+import org.eclipse.ui.views.contentoutline.ContentOutlinePage;
+import org.eclipse.ui.views.contentoutline.IContentOutlinePage;
+
+import org.eclipse.ui.views.properties.IPropertySheetPage;
+import org.eclipse.ui.views.properties.PropertySheet;
+import org.eclipse.ui.views.properties.PropertySheetPage;
+
+import org.eclipse.emf.common.command.BasicCommandStack;
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.common.command.CommandStack;
+import org.eclipse.emf.common.command.CommandStackListener;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.ui.MarkerHelper;
+import org.eclipse.emf.common.ui.ViewerPane;
+
+import org.eclipse.emf.common.ui.editor.ProblemEditorPart;
+
+import org.eclipse.emf.common.ui.viewer.IViewerProvider;
+
+import org.eclipse.emf.common.util.BasicDiagnostic;
+import org.eclipse.emf.common.util.Diagnostic;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.URI;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EValidator;
+
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+
+import org.eclipse.emf.ecore.util.EContentAdapter;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+
+import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+
+import org.eclipse.emf.edit.provider.AdapterFactoryItemDelegator;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.ReflectiveItemProviderAdapterFactory;
+
+import org.eclipse.emf.edit.provider.resource.ResourceItemProviderAdapterFactory;
+
+import org.eclipse.emf.edit.ui.action.EditingDomainActionBarContributor;
+
+import org.eclipse.emf.edit.ui.celleditor.AdapterFactoryTreeEditor;
+
+import org.eclipse.emf.edit.ui.dnd.EditingDomainViewerDropAdapter;
+import org.eclipse.emf.edit.ui.dnd.LocalTransfer;
+import org.eclipse.emf.edit.ui.dnd.ViewerDragAdapter;
+
+import org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvider;
+import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider;
+import org.eclipse.emf.edit.ui.provider.UnwrappingSelectionProvider;
+
+import org.eclipse.emf.edit.ui.util.EditUIMarkerHelper;
+import org.eclipse.emf.edit.ui.util.EditUIUtil;
+
+import org.eclipse.emf.edit.ui.view.ExtendedPropertySheetPage;
+
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.provider.EFacetItemProviderAdapterFactory;
+import org.eclipse.emf.ecore.EPackage.Registry;
+import org.eclipse.emf.ecore.provider.EcoreItemProviderAdapterFactory;
+
+import org.eclipse.ui.actions.WorkspaceModifyOperation;
+
+/**
+ * This is an example of a EFacet model editor.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+//generated code
+@SuppressWarnings("all")
+public class EFacetEditor extends MultiPageEditorPart implements
+ IEditingDomainProvider, ISelectionProvider, IMenuListener,
+ IViewerProvider, IGotoMarker {
+ /**
+ * This keeps track of the editing domain that is used to track all changes to the model.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected AdapterFactoryEditingDomain editingDomain;
+
+ /**
+ * This is the one adapter factory used for providing views of the model.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ComposedAdapterFactory adapterFactory;
+
+ /**
+ * This is the content outline page.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @generated
+ */
+ protected IContentOutlinePage contentOutlinePage;
+
+ /**
+ * This is a kludge...
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IStatusLineManager contentOutlineStatusLineManager;
+
+ /**
+ * This is the content outline page's viewer.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @generated
+ */
+ protected TreeViewer contentOutlineViewer;
+
+ /**
+ * This is the property sheet page.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @generated
+ */
+ protected PropertySheetPage propertySheetPage;
+
+ /**
+ * This is the viewer that shadows the selection in the content outline. The
+ * parent relation must be correctly defined for this to work. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected TreeViewer selectionViewer;
+
+ /**
+ * This keeps track of the active content viewer, which may be either one of
+ * the viewers in the pages or the content outline viewer. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected Viewer currentViewer;
+
+ /**
+ * This listens to which ever viewer is active.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @generated
+ */
+ protected ISelectionChangedListener selectionChangedListener;
+
+ /**
+ * This keeps track of all the {@link org.eclipse.jface.viewers.ISelectionChangedListener}s that are listening to this editor.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<ISelectionChangedListener> selectionChangedListeners = new ArrayList<ISelectionChangedListener>();
+
+ /**
+ * This keeps track of the selection of the editor as a whole. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected ISelection editorSelection = StructuredSelection.EMPTY;
+
+ /**
+ * The MarkerHelper is responsible for creating workspace resource markers presented
+ * in Eclipse's Problems View.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @generated
+ */
+ protected MarkerHelper markerHelper = new EditUIMarkerHelper();
+
+ /**
+ * This listens for when the outline becomes active
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IPartListener partListener = new IPartListener() {
+ public void partActivated(IWorkbenchPart p) {
+ if (p instanceof ContentOutline) {
+ if (((ContentOutline)p).getCurrentPage() == contentOutlinePage) {
+ getActionBarContributor().setActiveEditor(EFacetEditor.this);
+
+ setCurrentViewer(contentOutlineViewer);
+ }
+ }
+ else if (p instanceof PropertySheet) {
+ if (((PropertySheet)p).getCurrentPage() == propertySheetPage) {
+ getActionBarContributor().setActiveEditor(EFacetEditor.this);
+ handleActivate();
+ }
+ }
+ else if (p == EFacetEditor.this) {
+ handleActivate();
+ }
+ }
+ public void partBroughtToTop(IWorkbenchPart p) {
+ // Ignore.
+ }
+ public void partClosed(IWorkbenchPart p) {
+ // Ignore.
+ }
+ public void partDeactivated(IWorkbenchPart p) {
+ // Ignore.
+ }
+ public void partOpened(IWorkbenchPart p) {
+ // Ignore.
+ }
+ };
+
+ /**
+ * Resources that have been removed since last activation. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected Collection<Resource> removedResources = new ArrayList<Resource>();
+
+ /**
+ * Resources that have been changed since last activation. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected Collection<Resource> changedResources = new ArrayList<Resource>();
+
+ /**
+ * Resources that have been saved. <!-- begin-user-doc --> <!-- end-user-doc
+ * -->
+ *
+ * @generated
+ */
+ protected Collection<Resource> savedResources = new ArrayList<Resource>();
+
+ /**
+ * Map to store the diagnostic associated with a resource. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected Map<Resource, Diagnostic> resourceToDiagnosticMap = new LinkedHashMap<Resource, Diagnostic>();
+
+ /**
+ * Controls whether the problem indication should be updated. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected boolean updateProblemIndication = true;
+
+ /**
+ * Adapter used to update the problem indication when resources are demanded loaded.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected EContentAdapter problemIndicationAdapter = new EContentAdapter() {
+ @Override
+ public void notifyChanged(Notification notification) {
+ if (notification.getNotifier() instanceof Resource) {
+ switch (notification.getFeatureID(Resource.class)) {
+ case Resource.RESOURCE__IS_LOADED:
+ case Resource.RESOURCE__ERRORS:
+ case Resource.RESOURCE__WARNINGS: {
+ Resource resource = (Resource)notification.getNotifier();
+ Diagnostic diagnostic = analyzeResourceProblems(resource, null);
+ if (diagnostic.getSeverity() != Diagnostic.OK) {
+ resourceToDiagnosticMap.put(resource, diagnostic);
+ }
+ else {
+ resourceToDiagnosticMap.remove(resource);
+ }
+
+ if (updateProblemIndication) {
+ getSite().getShell().getDisplay().asyncExec
+ (new Runnable() {
+ public void run() {
+ updateProblemIndication();
+ }
+ });
+ }
+ break;
+ }
+ }
+ }
+ else {
+ super.notifyChanged(notification);
+ }
+ }
+
+ @Override
+ protected void setTarget(Resource target) {
+ basicSetTarget(target);
+ }
+
+ @Override
+ protected void unsetTarget(Resource target) {
+ basicUnsetTarget(target);
+ }
+ };
+
+ /**
+ * This listens for workspace changes.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @generated
+ */
+ protected IResourceChangeListener resourceChangeListener = new IResourceChangeListener() {
+ public void resourceChanged(IResourceChangeEvent event) {
+ IResourceDelta delta = event.getDelta();
+ try {
+ class ResourceDeltaVisitor implements IResourceDeltaVisitor {
+ protected ResourceSet resourceSet = editingDomain.getResourceSet();
+ protected Collection<Resource> changedResources = new ArrayList<Resource>();
+ protected Collection<Resource> removedResources = new ArrayList<Resource>();
+
+ public boolean visit(IResourceDelta delta) {
+ if (delta.getResource().getType() == IResource.FILE) {
+ if (delta.getKind() == IResourceDelta.REMOVED ||
+ delta.getKind() == IResourceDelta.CHANGED && delta.getFlags() != IResourceDelta.MARKERS) {
+ Resource resource = resourceSet.getResource(URI.createPlatformResourceURI(delta.getFullPath().toString(), true), false);
+ if (resource != null) {
+ if (delta.getKind() == IResourceDelta.REMOVED) {
+ removedResources.add(resource);
+ }
+ else if (!savedResources.remove(resource)) {
+ changedResources.add(resource);
+ }
+ }
+ }
+ }
+
+ return true;
+ }
+
+ public Collection<Resource> getChangedResources() {
+ return changedResources;
+ }
+
+ public Collection<Resource> getRemovedResources() {
+ return removedResources;
+ }
+ }
+
+ final ResourceDeltaVisitor visitor = new ResourceDeltaVisitor();
+ delta.accept(visitor);
+
+ if (!visitor.getRemovedResources().isEmpty()) {
+ getSite().getShell().getDisplay().asyncExec
+ (new Runnable() {
+ public void run() {
+ removedResources.addAll(visitor.getRemovedResources());
+ if (!isDirty()) {
+ getSite().getPage().closeEditor(EFacetEditor.this, false);
+ }
+ }
+ });
+ }
+
+ if (!visitor.getChangedResources().isEmpty()) {
+ getSite().getShell().getDisplay().asyncExec
+ (new Runnable() {
+ public void run() {
+ changedResources.addAll(visitor.getChangedResources());
+ if (getSite().getPage().getActiveEditor() == EFacetEditor.this) {
+ handleActivate();
+ }
+ }
+ });
+ }
+ }
+ catch (CoreException exception) {
+ EfacetEditorPlugin.INSTANCE.log(exception);
+ }
+ }
+ };
+
+ /**
+ * Handles activation of the editor or it's associated views. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void handleActivate() {
+ // Recompute the read only state.
+ //
+ if (editingDomain.getResourceToReadOnlyMap() != null) {
+ editingDomain.getResourceToReadOnlyMap().clear();
+
+ // Refresh any actions that may become enabled or disabled.
+ //
+ setSelection(getSelection());
+ }
+
+ if (!removedResources.isEmpty()) {
+ if (handleDirtyConflict()) {
+ getSite().getPage().closeEditor(EFacetEditor.this, false);
+ }
+ else {
+ removedResources.clear();
+ changedResources.clear();
+ savedResources.clear();
+ }
+ }
+ else if (!changedResources.isEmpty()) {
+ changedResources.removeAll(savedResources);
+ handleChangedResources();
+ changedResources.clear();
+ savedResources.clear();
+ }
+ }
+
+ /**
+ * Handles what to do with changed resources on activation. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void handleChangedResources() {
+ if (!changedResources.isEmpty() && (!isDirty() || handleDirtyConflict())) {
+ if (isDirty()) {
+ changedResources.addAll(editingDomain.getResourceSet().getResources());
+ }
+ editingDomain.getCommandStack().flush();
+
+ updateProblemIndication = false;
+ for (Resource resource : changedResources) {
+ if (resource.isLoaded()) {
+ resource.unload();
+ try {
+ resource.load(Collections.EMPTY_MAP);
+ }
+ catch (IOException exception) {
+ if (!resourceToDiagnosticMap.containsKey(resource)) {
+ resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception));
+ }
+ }
+ }
+ }
+
+ if (AdapterFactoryEditingDomain.isStale(editorSelection)) {
+ setSelection(StructuredSelection.EMPTY);
+ }
+
+ updateProblemIndication = true;
+ updateProblemIndication();
+ }
+ }
+
+ /**
+ * Updates the problems indication with the information described in the specified diagnostic.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected void updateProblemIndication() {
+ if (updateProblemIndication) {
+ BasicDiagnostic diagnostic =
+ new BasicDiagnostic
+ (Diagnostic.OK,
+ "org.eclipse.papyrus.emf.facet.efacet.editor", //$NON-NLS-1$
+ 0,
+ null,
+ new Object [] { editingDomain.getResourceSet() });
+ for (Diagnostic childDiagnostic : resourceToDiagnosticMap.values()) {
+ if (childDiagnostic.getSeverity() != Diagnostic.OK) {
+ diagnostic.add(childDiagnostic);
+ }
+ }
+
+ int lastEditorPage = getPageCount() - 1;
+ if (lastEditorPage >= 0 && getEditor(lastEditorPage) instanceof ProblemEditorPart) {
+ ((ProblemEditorPart)getEditor(lastEditorPage)).setDiagnostic(diagnostic);
+ if (diagnostic.getSeverity() != Diagnostic.OK) {
+ setActivePage(lastEditorPage);
+ }
+ }
+ else if (diagnostic.getSeverity() != Diagnostic.OK) {
+ ProblemEditorPart problemEditorPart = new ProblemEditorPart();
+ problemEditorPart.setDiagnostic(diagnostic);
+ problemEditorPart.setMarkerHelper(markerHelper);
+ try {
+ addPage(++lastEditorPage, problemEditorPart, getEditorInput());
+ setPageText(lastEditorPage, problemEditorPart.getPartName());
+ setActivePage(lastEditorPage);
+ showTabs();
+ }
+ catch (PartInitException exception) {
+ EfacetEditorPlugin.INSTANCE.log(exception);
+ }
+ }
+
+ if (markerHelper.hasMarkers(editingDomain.getResourceSet())) {
+ markerHelper.deleteMarkers(editingDomain.getResourceSet());
+ if (diagnostic.getSeverity() != Diagnostic.OK) {
+ try {
+ markerHelper.createMarkers(diagnostic);
+ }
+ catch (CoreException exception) {
+ EfacetEditorPlugin.INSTANCE.log(exception);
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * Shows a dialog that asks if conflicting changes should be discarded. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected boolean handleDirtyConflict() {
+ return
+ MessageDialog.openQuestion
+ (getSite().getShell(),
+ getString("_UI_FileConflict_label"), //$NON-NLS-1$
+ getString("_WARN_FileConflict")); //$NON-NLS-1$
+ }
+
+ /**
+ * This creates a model editor. <!-- begin-user-doc --> <!-- end-user-doc
+ * -->
+ *
+ * @generated
+ */
+ public EFacetEditor() {
+ super();
+ initializeEditingDomain();
+ }
+
+ /**
+ * This sets up the editing domain for the model editor.
+ * <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected void initializeEditingDomain() {
+ // Create an adapter factory that yields item providers.
+ //
+ adapterFactory = new ComposedAdapterFactory(ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
+
+ adapterFactory.addAdapterFactory(new ResourceItemProviderAdapterFactory());
+ adapterFactory.addAdapterFactory(new EFacetItemProviderAdapterFactory());
+ adapterFactory.addAdapterFactory(new EcoreItemProviderAdapterFactory());
+ adapterFactory.addAdapterFactory(new ReflectiveItemProviderAdapterFactory());
+
+ // Create the command stack that will notify this editor as commands are executed.
+ //
+ BasicCommandStack commandStack = new BasicCommandStack();
+
+ // Add a listener to set the most recent command's affected objects to be the selection of the viewer with focus.
+ //
+ commandStack.addCommandStackListener
+ (new CommandStackListener() {
+ public void commandStackChanged(final EventObject event) {
+ getContainer().getDisplay().asyncExec
+ (new Runnable() {
+ public void run() {
+ firePropertyChange(IEditorPart.PROP_DIRTY);
+
+ // Try to select the affected objects.
+ //
+ Command mostRecentCommand = ((CommandStack)event.getSource()).getMostRecentCommand();
+ if (mostRecentCommand != null) {
+ setSelectionToViewer(mostRecentCommand.getAffectedObjects());
+ }
+ if (propertySheetPage != null && !propertySheetPage.getControl().isDisposed()) {
+ propertySheetPage.refresh();
+ }
+ }
+ });
+ }
+ });
+
+ // Create the editing domain with a special command stack.
+ //
+ editingDomain = new AdapterFactoryEditingDomain(adapterFactory, commandStack, new HashMap<Resource, Boolean>());
+ }
+
+ /**
+ * This is here for the listener to be able to call it.
+ * <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected void firePropertyChange(int action) {
+ super.firePropertyChange(action);
+ }
+
+ /**
+ * This sets the selection into whichever viewer is active. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setSelectionToViewer(Collection<?> collection) {
+ final Collection<?> theSelection = collection;
+ // Make sure it's okay.
+ //
+ if (theSelection != null && !theSelection.isEmpty()) {
+ Runnable runnable =
+ new Runnable() {
+ public void run() {
+ // Try to select the items in the current content viewer of the editor.
+ //
+ if (currentViewer != null) {
+ currentViewer.setSelection(new StructuredSelection(theSelection.toArray()), true);
+ }
+ }
+ };
+ getSite().getShell().getDisplay().asyncExec(runnable);
+ }
+ }
+
+ /**
+ * This returns the editing domain as required by the {@link IEditingDomainProvider} interface.
+ * This is important for implementing the static methods of {@link AdapterFactoryEditingDomain}
+ * and for supporting {@link org.eclipse.emf.edit.ui.action.CommandAction}.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EditingDomain getEditingDomain() {
+ return editingDomain;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public class ReverseAdapterFactoryContentProvider extends
+ AdapterFactoryContentProvider {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ReverseAdapterFactoryContentProvider(
+ AdapterFactory adapterFactory) {
+ super(adapterFactory);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object [] getElements(Object object) {
+ Object parent = super.getParent(object);
+ return (parent == null ? Collections.EMPTY_SET : Collections.singleton(parent)).toArray();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object [] getChildren(Object object) {
+ Object parent = super.getParent(object);
+ return (parent == null ? Collections.EMPTY_SET : Collections.singleton(parent)).toArray();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean hasChildren(Object object) {
+ Object parent = super.getParent(object);
+ return parent != null;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getParent(Object object) {
+ return null;
+ }
+ }
+
+ /**
+ * This makes sure that one content viewer, either for the current page or
+ * the outline view, if it has focus, is the current one. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setCurrentViewer(Viewer viewer) {
+ // If it is changing...
+ //
+ if (currentViewer != viewer) {
+ if (selectionChangedListener == null) {
+ // Create the listener on demand.
+ //
+ selectionChangedListener =
+ new ISelectionChangedListener() {
+ // This just notifies those things that are affected by the section.
+ //
+ public void selectionChanged(SelectionChangedEvent selectionChangedEvent) {
+ setSelection(selectionChangedEvent.getSelection());
+ }
+ };
+ }
+
+ // Stop listening to the old one.
+ //
+ if (currentViewer != null) {
+ currentViewer.removeSelectionChangedListener(selectionChangedListener);
+ }
+
+ // Start listening to the new one.
+ //
+ if (viewer != null) {
+ viewer.addSelectionChangedListener(selectionChangedListener);
+ }
+
+ // Remember it.
+ //
+ currentViewer = viewer;
+
+ // Set the editors selection based on the current viewer's selection.
+ //
+ setSelection(currentViewer == null ? StructuredSelection.EMPTY : currentViewer.getSelection());
+ }
+ }
+
+ /**
+ * This returns the viewer as required by the {@link IViewerProvider} interface.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Viewer getViewer() {
+ return currentViewer;
+ }
+
+ /**
+ * This creates a context menu for the viewer and adds a listener as well registering the menu for extension.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @generated
+ */
+ protected void createContextMenuFor(StructuredViewer viewer) {
+ MenuManager contextMenu = new MenuManager("#PopUp"); //$NON-NLS-1$
+ contextMenu.add(new Separator("additions")); //$NON-NLS-1$
+ contextMenu.setRemoveAllWhenShown(true);
+ contextMenu.addMenuListener(this);
+ Menu menu= contextMenu.createContextMenu(viewer.getControl());
+ viewer.getControl().setMenu(menu);
+ getSite().registerContextMenu(contextMenu, new UnwrappingSelectionProvider(viewer));
+
+ int dndOperations = DND.DROP_COPY | DND.DROP_MOVE | DND.DROP_LINK;
+ Transfer[] transfers = new Transfer[] { LocalTransfer.getInstance() };
+ viewer.addDragSupport(dndOperations, transfers, new ViewerDragAdapter(viewer));
+ viewer.addDropSupport(dndOperations, transfers, new EditingDomainViewerDropAdapter(editingDomain, viewer));
+ }
+
+ /**
+ * This is the method called to load a resource into the editing domain's resource set based on the editor's input.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @generated
+ */
+ public void createModel() {
+ URI resourceURI = EditUIUtil.getURI(getEditorInput());
+ Exception exception = null;
+ Resource resource = null;
+ try {
+ // Load the resource through the editing domain.
+ //
+ resource = editingDomain.getResourceSet().getResource(resourceURI, true);
+ }
+ catch (Exception e) {
+ exception = e;
+ resource = editingDomain.getResourceSet().getResource(resourceURI, false);
+ }
+
+ Diagnostic diagnostic = analyzeResourceProblems(resource, exception);
+ if (diagnostic.getSeverity() != Diagnostic.OK) {
+ resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception));
+ }
+ editingDomain.getResourceSet().eAdapters().add(problemIndicationAdapter);
+ }
+
+ /**
+ * Returns a diagnostic describing the errors and warnings listed in the resource
+ * and the specified exception (if any).
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Diagnostic analyzeResourceProblems(Resource resource, Exception exception) {
+ if (!resource.getErrors().isEmpty() || !resource.getWarnings().isEmpty()) {
+ BasicDiagnostic basicDiagnostic =
+ new BasicDiagnostic
+ (Diagnostic.ERROR,
+ "org.eclipse.papyrus.emf.facet.efacet.editor", //$NON-NLS-1$
+ 0,
+ getString("_UI_CreateModelError_message", resource.getURI()), //$NON-NLS-1$
+ new Object [] { exception == null ? (Object)resource : exception });
+ basicDiagnostic.merge(EcoreUtil.computeDiagnostic(resource, true));
+ return basicDiagnostic;
+ }
+ else if (exception != null) {
+ return
+ new BasicDiagnostic
+ (Diagnostic.ERROR,
+ "org.eclipse.papyrus.emf.facet.efacet.editor", //$NON-NLS-1$
+ 0,
+ getString("_UI_CreateModelError_message", resource.getURI()), //$NON-NLS-1$
+ new Object[] { exception });
+ }
+ else {
+ return Diagnostic.OK_INSTANCE;
+ }
+ }
+
+ /**
+ * This is the method used by the framework to install your own controls.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void createPages() {
+ // Creates the model from the editor input
+ //
+ createModel();
+
+ // Only creates the other pages if there is something that can be edited
+ //
+ if (!getEditingDomain().getResourceSet().getResources().isEmpty()) {
+ // Create a page for the selection tree view.
+ //
+ Tree tree = new Tree(getContainer(), SWT.MULTI);
+ selectionViewer = new TreeViewer(tree);
+ setCurrentViewer(selectionViewer);
+
+ selectionViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
+ selectionViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
+ selectionViewer.setInput(editingDomain.getResourceSet());
+ selectionViewer.setSelection(new StructuredSelection(editingDomain.getResourceSet().getResources().get(0)), true);
+
+ new AdapterFactoryTreeEditor(selectionViewer.getTree(), adapterFactory);
+
+ createContextMenuFor(selectionViewer);
+ int pageIndex = addPage(tree);
+ setPageText(pageIndex, getString("_UI_SelectionPage_label")); //$NON-NLS-1$
+
+ getSite().getShell().getDisplay().asyncExec
+ (new Runnable() {
+ public void run() {
+ setActivePage(0);
+ }
+ });
+ }
+
+ // Ensures that this editor will only display the page's tab
+ // area if there are more than one page
+ //
+ getContainer().addControlListener
+ (new ControlAdapter() {
+ boolean guard = false;
+ @Override
+ public void controlResized(ControlEvent event) {
+ if (!guard) {
+ guard = true;
+ hideTabs();
+ guard = false;
+ }
+ }
+ });
+
+ getSite().getShell().getDisplay().asyncExec
+ (new Runnable() {
+ public void run() {
+ updateProblemIndication();
+ }
+ });
+ }
+
+ /**
+ * If there is just one page in the multi-page editor part,
+ * this hides the single tab at the bottom.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected void hideTabs() {
+ 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);
+ }
+ }
+ }
+
+ /**
+ * If there is more than one page in the multi-page editor part,
+ * this shows the tabs at the bottom.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected void showTabs() {
+ 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);
+ }
+ }
+ }
+
+ /**
+ * This is used to track the active viewer.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected void pageChange(int pageIndex) {
+ super.pageChange(pageIndex);
+
+ if (contentOutlinePage != null) {
+ handleContentOutlineSelection(contentOutlinePage.getSelection());
+ }
+ }
+
+ /**
+ * This is how the framework determines which interfaces we implement. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @SuppressWarnings("rawtypes")
+ @Override
+ public Object getAdapter(Class key) {
+ if (key.equals(IContentOutlinePage.class)) {
+ return showOutlineView() ? getContentOutlinePage() : null;
+ }
+ else if (key.equals(IPropertySheetPage.class)) {
+ return getPropertySheetPage();
+ }
+ else if (key.equals(IGotoMarker.class)) {
+ return this;
+ }
+ else {
+ return super.getAdapter(key);
+ }
+ }
+
+ /**
+ * This accesses a cached version of the content outliner. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public IContentOutlinePage getContentOutlinePage() {
+ if (contentOutlinePage == null) {
+ // The content outline is just a tree.
+ //
+ class MyContentOutlinePage extends ContentOutlinePage {
+ @Override
+ public void createControl(Composite parent) {
+ super.createControl(parent);
+ contentOutlineViewer = getTreeViewer();
+ contentOutlineViewer.addSelectionChangedListener(this);
+
+ // Set up the tree viewer.
+ //
+ contentOutlineViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
+ contentOutlineViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
+ contentOutlineViewer.setInput(editingDomain.getResourceSet());
+
+ // Make sure our popups work.
+ //
+ createContextMenuFor(contentOutlineViewer);
+
+ if (!editingDomain.getResourceSet().getResources().isEmpty()) {
+ // Select the root object in the view.
+ //
+ contentOutlineViewer.setSelection(new StructuredSelection(editingDomain.getResourceSet().getResources().get(0)), true);
+ }
+ }
+
+ @Override
+ public void makeContributions(IMenuManager menuManager, IToolBarManager toolBarManager, IStatusLineManager statusLineManager) {
+ super.makeContributions(menuManager, toolBarManager, statusLineManager);
+ contentOutlineStatusLineManager = statusLineManager;
+ }
+
+ @Override
+ public void setActionBars(IActionBars actionBars) {
+ super.setActionBars(actionBars);
+ getActionBarContributor().shareGlobalActions(this, actionBars);
+ }
+ }
+
+ contentOutlinePage = new MyContentOutlinePage();
+
+ // Listen to selection so that we can handle it is a special way.
+ //
+ contentOutlinePage.addSelectionChangedListener
+ (new ISelectionChangedListener() {
+ // This ensures that we handle selections correctly.
+ //
+ public void selectionChanged(SelectionChangedEvent event) {
+ handleContentOutlineSelection(event.getSelection());
+ }
+ });
+ }
+
+ return contentOutlinePage;
+ }
+
+ /**
+ * This accesses a cached version of the property sheet.
+ * <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IPropertySheetPage getPropertySheetPage() {
+ if (propertySheetPage == null) {
+ propertySheetPage =
+ new ExtendedPropertySheetPage(editingDomain) {
+ @Override
+ public void setSelectionToViewer(List<?> selection) {
+ EFacetEditor.this.setSelectionToViewer(selection);
+ EFacetEditor.this.setFocus();
+ }
+
+ @Override
+ public void setActionBars(IActionBars actionBars) {
+ super.setActionBars(actionBars);
+ getActionBarContributor().shareGlobalActions(this, actionBars);
+ }
+ };
+ propertySheetPage.setPropertySourceProvider(new AdapterFactoryContentProvider(adapterFactory));
+ }
+
+ return propertySheetPage;
+ }
+
+ /**
+ * This deals with how we want selection in the outliner to affect the other views.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void handleContentOutlineSelection(ISelection selection) {
+ if (selectionViewer != null && !selection.isEmpty() && selection instanceof IStructuredSelection) {
+ Iterator<?> selectedElements = ((IStructuredSelection)selection).iterator();
+ if (selectedElements.hasNext()) {
+ // Get the first selected element.
+ //
+ Object selectedElement = selectedElements.next();
+
+ ArrayList<Object> selectionList = new ArrayList<Object>();
+ selectionList.add(selectedElement);
+ while (selectedElements.hasNext()) {
+ selectionList.add(selectedElements.next());
+ }
+
+ // Set the selection to the widget.
+ //
+ selectionViewer.setSelection(new StructuredSelection(selectionList));
+ }
+ }
+ }
+
+ /**
+ * This is for implementing {@link IEditorPart} and simply tests the command stack.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isDirty() {
+ return ((BasicCommandStack)editingDomain.getCommandStack()).isSaveNeeded();
+ }
+
+ /**
+ * This is for implementing {@link IEditorPart} and simply saves the model
+ * file. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated NOT
+ */
+ @Override
+ public void doSave(final IProgressMonitor progressMonitor) {
+ // Save only resources that have actually changed.
+ //
+ final Map<Object, Object> saveOptions = new HashMap<Object, Object>();
+ saveOptions.put(Resource.OPTION_SAVE_ONLY_IF_CHANGED,
+ Resource.OPTION_SAVE_ONLY_IF_CHANGED_MEMORY_BUFFER);
+
+ // Do the work within an operation because this is a long running
+ // activity that modifies the workbench.
+ //
+ WorkspaceModifyOperation operation = new WorkspaceModifyOperation() {
+ // This is the method that gets invoked when the operation runs.
+ //
+ @Override
+ public void execute(final IProgressMonitor monitor) {
+ EList<Resource> resources = editingDomain.getResourceSet()
+ .getResources();
+ // save only the resource that contains the FacetSet
+ Resource resource = null;
+ for (Resource aResource : resources) {
+ if (aResource.getContents().size() > 0
+ && aResource.getContents().get(0) instanceof FacetSet) {
+ resource = aResource;
+ break;
+ }
+ }
+ if (resource == null) {
+ return;
+ }
+ try {
+ long timeStamp = resource.getTimeStamp();
+ resource.save(saveOptions);
+ if (resource.getTimeStamp() != timeStamp) {
+ savedResources.add(resource);
+ }
+ } catch (Exception exception) {
+ resourceToDiagnosticMap.put(resource,
+ analyzeResourceProblems(resource, exception));
+ }
+ // // Save the resources to the file system.
+ // //
+ // boolean first = true;
+ // for (Resource resource :
+ // editingDomain.getResourceSet().getResources()) {
+ // if ((first || !resource.getContents().isEmpty() ||
+ // isPersisted(resource)) &&
+ // !editingDomain.isReadOnly(resource)) {
+ // try {
+ // long timeStamp = resource.getTimeStamp();
+ // resource.save(saveOptions);
+ // if (resource.getTimeStamp() != timeStamp) {
+ // savedResources.add(resource);
+ // }
+ // }
+ // catch (Exception exception) {
+ // resourceToDiagnosticMap.put(resource,
+ // analyzeResourceProblems(resource, exception));
+ // }
+ // first = false;
+ // }
+ // }
+ }
+ };
+
+ updateProblemIndication = false;
+ try {
+ // This runs the options, and shows progress.
+ //
+ new ProgressMonitorDialog(getSite().getShell()).run(true, false,
+ operation);
+
+ // Refresh the necessary state.
+ //
+ ((BasicCommandStack) editingDomain.getCommandStack()).saveIsDone();
+ firePropertyChange(IEditorPart.PROP_DIRTY);
+ } catch (Exception exception) {
+ // Something went wrong that shouldn't.
+ //
+ EfacetEditorPlugin.INSTANCE.log(exception);
+ }
+ updateProblemIndication = true;
+ updateProblemIndication();
+ }
+
+ /**
+ * This returns whether something has been persisted to the URI of the specified resource.
+ * The implementation uses the URI converter from the editor's resource set to try to open an input stream.
+ * <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected boolean isPersisted(Resource resource) {
+ boolean result = false;
+ try {
+ InputStream stream = editingDomain.getResourceSet().getURIConverter().createInputStream(resource.getURI());
+ if (stream != null) {
+ result = true;
+ stream.close();
+ }
+ }
+ catch (IOException e) {
+ // Ignore
+ }
+ return result;
+ }
+
+ /**
+ * This always returns true because it is not currently supported. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isSaveAsAllowed() {
+ return true;
+ }
+
+ /**
+ * This also changes the editor's input.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void doSaveAs() {
+ SaveAsDialog saveAsDialog = new SaveAsDialog(getSite().getShell());
+ saveAsDialog.open();
+ IPath path = saveAsDialog.getResult();
+ if (path != null) {
+ IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(path);
+ if (file != null) {
+ doSaveAs(URI.createPlatformResourceURI(file.getFullPath().toString(), true), new FileEditorInput(file));
+ }
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected void doSaveAs(URI uri, IEditorInput editorInput) {
+ (editingDomain.getResourceSet().getResources().get(0)).setURI(uri);
+ setInputWithNotify(editorInput);
+ setPartName(editorInput.getName());
+ IProgressMonitor progressMonitor =
+ getActionBars().getStatusLineManager() != null ?
+ getActionBars().getStatusLineManager().getProgressMonitor() :
+ new NullProgressMonitor();
+ doSave(progressMonitor);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void gotoMarker(IMarker marker) {
+ try {
+ if (marker.getType().equals(EValidator.MARKER)) {
+ String uriAttribute = marker.getAttribute(EValidator.URI_ATTRIBUTE, null);
+ if (uriAttribute != null) {
+ URI uri = URI.createURI(uriAttribute);
+ EObject eObject = editingDomain.getResourceSet().getEObject(uri, true);
+ if (eObject != null) {
+ setSelectionToViewer(Collections.singleton(editingDomain.getWrapper(eObject)));
+ }
+ }
+ }
+ }
+ catch (CoreException exception) {
+ EfacetEditorPlugin.INSTANCE.log(exception);
+ }
+ }
+
+ /**
+ * This is called during startup. <!-- begin-user-doc --> <!-- end-user-doc
+ * -->
+ *
+ * @generated
+ */
+ @Override
+ public void init(IEditorSite site, IEditorInput editorInput) {
+ setSite(site);
+ setInputWithNotify(editorInput);
+ setPartName(editorInput.getName());
+ site.setSelectionProvider(this);
+ site.getPage().addPartListener(partListener);
+ ResourcesPlugin.getWorkspace().addResourceChangeListener(resourceChangeListener, IResourceChangeEvent.POST_CHANGE);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setFocus() {
+ getControl(getActivePage()).setFocus();
+ }
+
+ /**
+ * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void addSelectionChangedListener(
+ ISelectionChangedListener listener) {
+ selectionChangedListeners.add(listener);
+ }
+
+ /**
+ * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void removeSelectionChangedListener(
+ ISelectionChangedListener listener) {
+ selectionChangedListeners.remove(listener);
+ }
+
+ /**
+ * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to return this editor's overall selection.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @generated
+ */
+ public ISelection getSelection() {
+ return editorSelection;
+ }
+
+ /**
+ * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to set this editor's overall selection.
+ * Calling this result will notify the listeners.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSelection(ISelection selection) {
+ editorSelection = selection;
+
+ for (ISelectionChangedListener listener : selectionChangedListeners) {
+ listener.selectionChanged(new SelectionChangedEvent(this, selection));
+ }
+ setStatusLineManager(selection);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStatusLineManager(ISelection selection) {
+ IStatusLineManager statusLineManager = currentViewer != null && currentViewer == contentOutlineViewer ?
+ contentOutlineStatusLineManager : getActionBars().getStatusLineManager();
+
+ if (statusLineManager != null) {
+ if (selection instanceof IStructuredSelection) {
+ Collection<?> collection = ((IStructuredSelection)selection).toList();
+ switch (collection.size()) {
+ case 0: {
+ statusLineManager.setMessage(getString("_UI_NoObjectSelected")); //$NON-NLS-1$
+ break;
+ }
+ case 1: {
+ String text = new AdapterFactoryItemDelegator(adapterFactory).getText(collection.iterator().next());
+ statusLineManager.setMessage(getString("_UI_SingleObjectSelected", text)); //$NON-NLS-1$
+ break;
+ }
+ default: {
+ statusLineManager.setMessage(getString("_UI_MultiObjectSelected", Integer.toString(collection.size()))); //$NON-NLS-1$
+ break;
+ }
+ }
+ }
+ else {
+ statusLineManager.setMessage(""); //$NON-NLS-1$
+ }
+ }
+ }
+
+ /**
+ * This looks up a string in the plugin's plugin.properties file. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private static String getString(String key) {
+ return EfacetEditorPlugin.INSTANCE.getString(key);
+ }
+
+ /**
+ * This looks up a string in plugin.properties, making a substitution. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private static String getString(String key, Object s1) {
+ return EfacetEditorPlugin.INSTANCE.getString(key, new Object [] { s1 });
+ }
+
+ /**
+ * This implements {@link org.eclipse.jface.action.IMenuListener} to help
+ * fill the context menus with contributions from the Edit menu. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void menuAboutToShow(IMenuManager menuManager) {
+ ((IMenuListener)getEditorSite().getActionBarContributor()).menuAboutToShow(menuManager);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EditingDomainActionBarContributor getActionBarContributor() {
+ return (EditingDomainActionBarContributor)getEditorSite().getActionBarContributor();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IActionBars getActionBars() {
+ return getActionBarContributor().getActionBars();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public AdapterFactory getAdapterFactory() {
+ return adapterFactory;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void dispose() {
+ updateProblemIndication = false;
+
+ ResourcesPlugin.getWorkspace().removeResourceChangeListener(resourceChangeListener);
+
+ getSite().getPage().removePartListener(partListener);
+
+ adapterFactory.dispose();
+
+ if (getActionBarContributor().getActiveEditor() == this) {
+ getActionBarContributor().setActiveEditor(null);
+ }
+
+ if (propertySheetPage != null) {
+ propertySheetPage.dispose();
+ }
+
+ if (contentOutlinePage != null) {
+ contentOutlinePage.dispose();
+ }
+
+ super.dispose();
+ }
+
+ /**
+ * Returns whether the outline view should be presented to the user. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected boolean showOutlineView() {
+ return false;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/src/org/eclipse/papyrus/emf/facet/efacet/presentation/EfacetEditorPlugin.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/src/org/eclipse/papyrus/emf/facet/efacet/presentation/EfacetEditorPlugin.java
new file mode 100644
index 00000000000..afaf27d770a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.editor/src/org/eclipse/papyrus/emf/facet/efacet/presentation/EfacetEditorPlugin.java
@@ -0,0 +1,108 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.presentation;
+
+import org.eclipse.emf.common.EMFPlugin;
+
+import org.eclipse.emf.common.ui.EclipseUIPlugin;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+
+import org.eclipse.emf.ecore.provider.EcoreEditPlugin;
+
+/**
+ * This is the central singleton for the Efacet editor plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public final class EfacetEditorPlugin extends EMFPlugin {
+ /**
+ * Keep track of the singleton.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final EfacetEditorPlugin INSTANCE = new EfacetEditorPlugin();
+
+ /**
+ * Keep track of the singleton.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static Implementation plugin;
+
+ /**
+ * Create the instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EfacetEditorPlugin() {
+ super
+ (new ResourceLocator [] {
+ EcoreEditPlugin.INSTANCE,
+ });
+ }
+
+ /**
+ * Returns the singleton instance of the Eclipse plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the singleton instance.
+ * @generated
+ */
+ @Override
+ public ResourceLocator getPluginResourceLocator() {
+ return plugin;
+ }
+
+ /**
+ * Returns the singleton instance of the Eclipse plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the singleton instance.
+ * @generated
+ */
+ public static Implementation getPlugin() {
+ return plugin;
+ }
+
+ /**
+ * The actual implementation of the Eclipse <b>Plugin</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static class Implementation extends EclipseUIPlugin {
+ /**
+ * Creates an instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Implementation() {
+ super();
+
+ // Remember the static instance.
+ //
+ plugin = this;
+ }
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/.project
new file mode 100644
index 00000000000..e145f72414f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.efacet.metamodel.edit</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.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..2de63e90563
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,77 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=ignore
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=ignore
+org.eclipse.jdt.core.compiler.problem.deadCode=ignore
+org.eclipse.jdt.core.compiler.problem.deprecation=ignore
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=ignore
+org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
+org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=ignore
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=ignore
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=ignore
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=ignore
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=ignore
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=ignore
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
+org.eclipse.jdt.core.compiler.problem.nullReference=ignore
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=ignore
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=ignore
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
+org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=ignore
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=ignore
+org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=ignore
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=ignore
+org.eclipse.jdt.core.compiler.problem.unusedLabel=ignore
+org.eclipse.jdt.core.compiler.problem.unusedLocal=ignore
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=ignore
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=ignore
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=ignore
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..4e2dbeb7fc3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/META-INF/MANIFEST.MF
@@ -0,0 +1,23 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.efacet.metamodel.edit;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-ClassPath: .
+Bundle-Activator: org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin$Implementation
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.edit,
+ org.eclipse.emf.ecore,
+ org.eclipse.emf.ecore.edit,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel
+Bundle-ActivationPolicy: lazy
+Export-Package:
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.provider,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.provider,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.provider,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.provider
+
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/about.html
new file mode 100644
index 00000000000..4919fecb866
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/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>February 17, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/build.properties
new file mode 100644
index 00000000000..24b8897d15c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/build.properties
@@ -0,0 +1,26 @@
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Design
+# Nicolas Guyomar (Mia-Software) - Implementation
+# Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+# Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+# Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+# Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+# Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+
+bin.includes = .,\
+ icons/,\
+ META-INF/,\
+ plugin.xml,\
+ plugin.properties,\
+ about.html
+jars.compile.order = .
+source.. = src/
+output.. = bin/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateAbstractDerivedTypedElementResult_parameterValues_ParameterValue.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateAbstractDerivedTypedElementResult_parameterValues_ParameterValue.gif
new file mode 100644
index 00000000000..481a9950949
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateAbstractDerivedTypedElementResult_parameterValues_ParameterValue.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_EObjectLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_EObjectLiteralQuery.gif
new file mode 100644
index 00000000000..1e01c877ff8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_EObjectLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_ETypeElementSwitchQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_ETypeElementSwitchQuery.gif
new file mode 100644
index 00000000000..267893188f2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_ETypeElementSwitchQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_ETypedElementSwitchQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_ETypedElementSwitchQuery.gif
new file mode 100644
index 00000000000..23270616b61
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_ETypedElementSwitchQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_FalseLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_FalseLiteralQuery.gif
new file mode 100644
index 00000000000..267893188f2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_FalseLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_FloatLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_FloatLiteralQuery.gif
new file mode 100644
index 00000000000..90b42b5ae81
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_FloatLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_IntegerLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_IntegerLiteralQuery.gif
new file mode 100644
index 00000000000..8640819ef61
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_IntegerLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_IsOneOfQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_IsOneOfQuery.gif
new file mode 100644
index 00000000000..a88faa19497
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_IsOneOfQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_NavigationQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_NavigationQuery.gif
new file mode 100644
index 00000000000..097f1cbd354
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_NavigationQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_NullLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_NullLiteralQuery.gif
new file mode 100644
index 00000000000..59376686693
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_NullLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_OperationCallQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_OperationCallQuery.gif
new file mode 100644
index 00000000000..f9aefc52cd3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_OperationCallQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_StringLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_StringLiteralQuery.gif
new file mode 100644
index 00000000000..f3e037faa8a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_StringLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_TrueLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_TrueLiteralQuery.gif
new file mode 100644
index 00000000000..097f1cbd354
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateDerivedTypedElement_query_TrueLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_ETypeElementSwitchQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_ETypeElementSwitchQuery.gif
new file mode 100644
index 00000000000..a46f97945e4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_ETypeElementSwitchQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_FalseLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_FalseLiteralQuery.gif
new file mode 100644
index 00000000000..a46f97945e4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_FalseLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_IsOneOfQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_IsOneOfQuery.gif
new file mode 100644
index 00000000000..301a4bc4f3e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_IsOneOfQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_NavigationQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_NavigationQuery.gif
new file mode 100644
index 00000000000..96b347e1ad4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_NavigationQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_NullLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_NullLiteralQuery.gif
new file mode 100644
index 00000000000..36e9ea8424e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_NullLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_StringLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_StringLiteralQuery.gif
new file mode 100644
index 00000000000..d3edfe38c49
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_StringLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_TrueLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_TrueLiteralQuery.gif
new file mode 100644
index 00000000000..96b347e1ad4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementCase_value_TrueLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementSwitchQuery_cases_ETypeElementCase.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementSwitchQuery_cases_ETypeElementCase.gif
new file mode 100644
index 00000000000..ff5397fa2a2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypeElementSwitchQuery_cases_ETypeElementCase.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_ETypedElementSwitchQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_ETypedElementSwitchQuery.gif
new file mode 100644
index 00000000000..a5b59a28b56
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_ETypedElementSwitchQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_FalseLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_FalseLiteralQuery.gif
new file mode 100644
index 00000000000..fd7e5e196f1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_FalseLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_IsOneOfQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_IsOneOfQuery.gif
new file mode 100644
index 00000000000..47209bab6d2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_IsOneOfQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NavigationQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NavigationQuery.gif
new file mode 100644
index 00000000000..43703db9854
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NavigationQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NullLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NullLiteralQuery.gif
new file mode 100644
index 00000000000..a31e5142add
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_NullLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_StringLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_StringLiteralQuery.gif
new file mode 100644
index 00000000000..f33bed84b34
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_StringLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_TrueLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_TrueLiteralQuery.gif
new file mode 100644
index 00000000000..43703db9854
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementCase_value_TrueLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementResult_parameterValues_ParameterValue.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementResult_parameterValues_ParameterValue.gif
new file mode 100644
index 00000000000..79a0a45b269
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementResult_parameterValues_ParameterValue.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementSwitchQuery_cases_ETypedElementCase.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementSwitchQuery_cases_ETypedElementCase.gif
new file mode 100644
index 00000000000..26942d5f053
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateETypedElementSwitchQuery_cases_ETypedElementCase.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_attributeInstances_AbstractAttributeInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_attributeInstances_AbstractAttributeInstance.gif
new file mode 100644
index 00000000000..daa2b9d19cf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_attributeInstances_AbstractAttributeInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_attributeInstances_MultiValuedAttributeInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_attributeInstances_MultiValuedAttributeInstance.gif
new file mode 100644
index 00000000000..92c6e53c956
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_attributeInstances_MultiValuedAttributeInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_attributeInstances_SingleValuedAttributeInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_attributeInstances_SingleValuedAttributeInstance.gif
new file mode 100644
index 00000000000..7510fe464c5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_attributeInstances_SingleValuedAttributeInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_AbstractReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_AbstractReferenceInstance.gif
new file mode 100644
index 00000000000..dac0ebb0d01
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_AbstractReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_MultiValuedContainmentReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_MultiValuedContainmentReferenceInstance.gif
new file mode 100644
index 00000000000..82807fa1fe6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_MultiValuedContainmentReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_MultiValuedReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_MultiValuedReferenceInstance.gif
new file mode 100644
index 00000000000..d8233b0ffd4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_MultiValuedReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_SingleValuedContainmentReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_SingleValuedContainmentReferenceInstance.gif
new file mode 100644
index 00000000000..95a524524a9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_SingleValuedContainmentReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_SingleValuedReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_SingleValuedReferenceInstance.gif
new file mode 100644
index 00000000000..7387309112e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateExtendedEObjectReference_referenceInstances_SingleValuedReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateFacetSet_categories_Category.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateFacetSet_categories_Category.gif
new file mode 100644
index 00000000000..f33bed84b34
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateFacetSet_categories_Category.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateFacet_facetElements_FacetAttribute.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateFacet_facetElements_FacetAttribute.gif
new file mode 100644
index 00000000000..d75b2067789
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateFacet_facetElements_FacetAttribute.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateFacet_facetElements_FacetReference.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateFacet_facetElements_FacetReference.gif
new file mode 100644
index 00000000000..590936f17ea
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateFacet_facetElements_FacetReference.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateFacet_facetOperations_FacetOperation.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateFacet_facetOperations_FacetOperation.gif
new file mode 100644
index 00000000000..11142a338f3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateFacet_facetOperations_FacetOperation.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AbstractAttributeInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AbstractAttributeInstance.gif
new file mode 100644
index 00000000000..fdf618977f6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AbstractAttributeInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AbstractReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AbstractReferenceInstance.gif
new file mode 100644
index 00000000000..391d0b31318
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AbstractReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_Aggregate.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_Aggregate.gif
new file mode 100644
index 00000000000..74d3e585a60
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_Aggregate.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AggregatedFacet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AggregatedFacet.gif
new file mode 100644
index 00000000000..3093c78a17e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AggregatedFacet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AggregatedFacetElement.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AggregatedFacetElement.gif
new file mode 100644
index 00000000000..3799bd45b69
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AggregatedFacetElement.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AggregatedFacetSet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AggregatedFacetSet.gif
new file mode 100644
index 00000000000..190b4e2875d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_AggregatedFacetSet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_Category.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_Category.gif
new file mode 100644
index 00000000000..e81c185d38b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_Category.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DerivedTypedElementEObjectListResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DerivedTypedElementEObjectListResult.gif
new file mode 100644
index 00000000000..74d3e585a60
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DerivedTypedElementEObjectListResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DerivedTypedElementEObjectResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DerivedTypedElementEObjectResult.gif
new file mode 100644
index 00000000000..9221f55c973
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DerivedTypedElementEObjectResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DerivedTypedElementPrimitiveTypeListResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DerivedTypedElementPrimitiveTypeListResult.gif
new file mode 100644
index 00000000000..fce4def8ef1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DerivedTypedElementPrimitiveTypeListResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DerivedTypedElementPrimitiveTypeResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DerivedTypedElementPrimitiveTypeResult.gif
new file mode 100644
index 00000000000..0c30291c31e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DerivedTypedElementPrimitiveTypeResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DocumentedElement.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DocumentedElement.gif
new file mode 100644
index 00000000000..c5017769251
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_DocumentedElement.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EAnnotation.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EAnnotation.gif
new file mode 100644
index 00000000000..e2bf8c1fb42
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EAnnotation.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EAttribute.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EAttribute.gif
new file mode 100644
index 00000000000..9221f55c973
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EAttribute.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EClass.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EClass.gif
new file mode 100644
index 00000000000..6664d2939ca
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EClass.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EDataType.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EDataType.gif
new file mode 100644
index 00000000000..fce4def8ef1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EDataType.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EEnum.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EEnum.gif
new file mode 100644
index 00000000000..4ac9c84f956
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EEnum.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EEnumLiteral.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EEnumLiteral.gif
new file mode 100644
index 00000000000..2fde4889b9e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EEnumLiteral.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EFactory.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EFactory.gif
new file mode 100644
index 00000000000..b4a2918a055
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EFactory.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EGenericType.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EGenericType.gif
new file mode 100644
index 00000000000..43035507eed
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EGenericType.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EObject.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EObject.gif
new file mode 100644
index 00000000000..f7a01deebad
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EObject.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EObjectLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EObjectLiteralQuery.gif
new file mode 100644
index 00000000000..3093c78a17e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EObjectLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EOperation.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EOperation.gif
new file mode 100644
index 00000000000..7cb2132b359
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EOperation.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EPackage.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EPackage.gif
new file mode 100644
index 00000000000..4ac9c84f956
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EPackage.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EParameter.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EParameter.gif
new file mode 100644
index 00000000000..d31be0d688d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EParameter.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EReference.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EReference.gif
new file mode 100644
index 00000000000..38e8cc2ed10
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EReference.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EStringToStringMapEntry.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EStringToStringMapEntry.gif
new file mode 100644
index 00000000000..fdf618977f6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_EStringToStringMapEntry.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypeElementCase.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypeElementCase.gif
new file mode 100644
index 00000000000..3799bd45b69
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypeElementCase.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypeElementSwitchQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypeElementSwitchQuery.gif
new file mode 100644
index 00000000000..c9faf2dedef
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypeElementSwitchQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypeParameter.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypeParameter.gif
new file mode 100644
index 00000000000..b4a2918a055
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypeParameter.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementCase.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementCase.gif
new file mode 100644
index 00000000000..c9faf2dedef
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementCase.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementEObjectListResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementEObjectListResult.gif
new file mode 100644
index 00000000000..bad30bb8e3d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementEObjectListResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementEObjectResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementEObjectResult.gif
new file mode 100644
index 00000000000..d31be0d688d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementEObjectResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementPrimitiveTypeListResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementPrimitiveTypeListResult.gif
new file mode 100644
index 00000000000..4ac9c84f956
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementPrimitiveTypeListResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementPrimitiveTypeResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementPrimitiveTypeResult.gif
new file mode 100644
index 00000000000..3093c78a17e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementPrimitiveTypeResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementSwitchQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementSwitchQuery.gif
new file mode 100644
index 00000000000..e95168980f0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ETypedElementSwitchQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ExtendedEObjectReference.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ExtendedEObjectReference.gif
new file mode 100644
index 00000000000..e059b62b3e6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ExtendedEObjectReference.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_Facet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_Facet.gif
new file mode 100644
index 00000000000..9b14586f011
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_Facet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FacetAttribute.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FacetAttribute.gif
new file mode 100644
index 00000000000..d31be0d688d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FacetAttribute.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FacetOperation.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FacetOperation.gif
new file mode 100644
index 00000000000..5560b51391a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FacetOperation.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FacetReference.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FacetReference.gif
new file mode 100644
index 00000000000..d695231564a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FacetReference.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FacetSet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FacetSet.gif
new file mode 100644
index 00000000000..c9faf2dedef
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FacetSet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FalseLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FalseLiteralQuery.gif
new file mode 100644
index 00000000000..c9faf2dedef
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FalseLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FloatLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FloatLiteralQuery.gif
new file mode 100644
index 00000000000..38e8cc2ed10
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_FloatLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_IntegerLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_IntegerLiteralQuery.gif
new file mode 100644
index 00000000000..63dbadf56c1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_IntegerLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_IsOneOfQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_IsOneOfQuery.gif
new file mode 100644
index 00000000000..1d169590e8f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_IsOneOfQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_MultiValuedAttributeInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_MultiValuedAttributeInstance.gif
new file mode 100644
index 00000000000..b4a2918a055
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_MultiValuedAttributeInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_MultiValuedContainmentReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_MultiValuedContainmentReferenceInstance.gif
new file mode 100644
index 00000000000..7cb2132b359
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_MultiValuedContainmentReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_MultiValuedReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_MultiValuedReferenceInstance.gif
new file mode 100644
index 00000000000..1d169590e8f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_MultiValuedReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_NavigationQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_NavigationQuery.gif
new file mode 100644
index 00000000000..cdcc329291d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_NavigationQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_NullLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_NullLiteralQuery.gif
new file mode 100644
index 00000000000..7b5823c27e1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_NullLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_OperationCallQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_OperationCallQuery.gif
new file mode 100644
index 00000000000..63deb7e8cc2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_OperationCallQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ParameterValue.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ParameterValue.gif
new file mode 100644
index 00000000000..2fde4889b9e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_ParameterValue.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_SingleValuedAttributeInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_SingleValuedAttributeInstance.gif
new file mode 100644
index 00000000000..bad30bb8e3d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_SingleValuedAttributeInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_SingleValuedContainmentReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_SingleValuedContainmentReferenceInstance.gif
new file mode 100644
index 00000000000..f7a01deebad
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_SingleValuedContainmentReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_SingleValuedReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_SingleValuedReferenceInstance.gif
new file mode 100644
index 00000000000..289eb8bf385
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_SingleValuedReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_StringLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_StringLiteralQuery.gif
new file mode 100644
index 00000000000..e81c185d38b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_StringLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_TrueLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_TrueLiteralQuery.gif
new file mode 100644
index 00000000000..cdcc329291d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateMultiValuedContainmentReferenceInstance_ownedElements_TrueLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_EObjectLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_EObjectLiteralQuery.gif
new file mode 100644
index 00000000000..8859fcea8db
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_EObjectLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FacetAttribute.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FacetAttribute.gif
new file mode 100644
index 00000000000..3d6ebc8241a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FacetAttribute.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FacetOperation.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FacetOperation.gif
new file mode 100644
index 00000000000..42dc8d621a8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FacetOperation.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FacetReference.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FacetReference.gif
new file mode 100644
index 00000000000..8ff152568d6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FacetReference.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FalseLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FalseLiteralQuery.gif
new file mode 100644
index 00000000000..4bbf122431a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FalseLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FloatLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FloatLiteralQuery.gif
new file mode 100644
index 00000000000..01f032eb60a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_FloatLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_IntegerLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_IntegerLiteralQuery.gif
new file mode 100644
index 00000000000..b6257c64aaf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_IntegerLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_IsOneOfQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_IsOneOfQuery.gif
new file mode 100644
index 00000000000..ed66130ca38
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_IsOneOfQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_NavigationQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_NavigationQuery.gif
new file mode 100644
index 00000000000..84faae19d97
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_NavigationQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_NullLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_NullLiteralQuery.gif
new file mode 100644
index 00000000000..27cf4fd3517
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_NullLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_OperationCallQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_OperationCallQuery.gif
new file mode 100644
index 00000000000..8a06919132f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_OperationCallQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_StringLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_StringLiteralQuery.gif
new file mode 100644
index 00000000000..c575cb55287
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_StringLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_TrueLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_TrueLiteralQuery.gif
new file mode 100644
index 00000000000..84faae19d97
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateOperationCallQuery_arguments_TrueLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AbstractAttributeInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AbstractAttributeInstance.gif
new file mode 100644
index 00000000000..ac6a8a22ea7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AbstractAttributeInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AbstractReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AbstractReferenceInstance.gif
new file mode 100644
index 00000000000..e6b48d9a4f3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AbstractReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_Aggregate.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_Aggregate.gif
new file mode 100644
index 00000000000..16dbb0e6769
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_Aggregate.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AggregatedFacet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AggregatedFacet.gif
new file mode 100644
index 00000000000..94b1be2fbb6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AggregatedFacet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AggregatedFacetElement.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AggregatedFacetElement.gif
new file mode 100644
index 00000000000..88150e61379
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AggregatedFacetElement.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AggregatedFacetSet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AggregatedFacetSet.gif
new file mode 100644
index 00000000000..324a64d3407
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_AggregatedFacetSet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_Category.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_Category.gif
new file mode 100644
index 00000000000..04a67489e48
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_Category.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DerivedTypedElementEObjectListResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DerivedTypedElementEObjectListResult.gif
new file mode 100644
index 00000000000..16dbb0e6769
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DerivedTypedElementEObjectListResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DerivedTypedElementEObjectResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DerivedTypedElementEObjectResult.gif
new file mode 100644
index 00000000000..43a8eef94fb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DerivedTypedElementEObjectResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DerivedTypedElementPrimitiveTypeListResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DerivedTypedElementPrimitiveTypeListResult.gif
new file mode 100644
index 00000000000..4bf40a98248
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DerivedTypedElementPrimitiveTypeListResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DerivedTypedElementPrimitiveTypeResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DerivedTypedElementPrimitiveTypeResult.gif
new file mode 100644
index 00000000000..9a7f5b85570
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DerivedTypedElementPrimitiveTypeResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DocumentedElement.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DocumentedElement.gif
new file mode 100644
index 00000000000..70597ff15fa
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_DocumentedElement.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EAnnotation.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EAnnotation.gif
new file mode 100644
index 00000000000..e9b333df51f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EAnnotation.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EAttribute.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EAttribute.gif
new file mode 100644
index 00000000000..43a8eef94fb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EAttribute.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EClass.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EClass.gif
new file mode 100644
index 00000000000..5a20caaa715
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EClass.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EDataType.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EDataType.gif
new file mode 100644
index 00000000000..4bf40a98248
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EDataType.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EEnum.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EEnum.gif
new file mode 100644
index 00000000000..bb229d1f37f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EEnum.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EEnumLiteral.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EEnumLiteral.gif
new file mode 100644
index 00000000000..6010ac9e9e6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EEnumLiteral.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EFactory.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EFactory.gif
new file mode 100644
index 00000000000..7e2fd2ea3bd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EFactory.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EGenericType.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EGenericType.gif
new file mode 100644
index 00000000000..970be05e66e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EGenericType.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EObject.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EObject.gif
new file mode 100644
index 00000000000..a47b32b7d9b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EObject.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EObjectLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EObjectLiteralQuery.gif
new file mode 100644
index 00000000000..94b1be2fbb6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EObjectLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EOperation.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EOperation.gif
new file mode 100644
index 00000000000..e268a9e4429
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EOperation.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EPackage.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EPackage.gif
new file mode 100644
index 00000000000..bb229d1f37f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EPackage.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EParameter.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EParameter.gif
new file mode 100644
index 00000000000..3473a1ffdd0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EParameter.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EReference.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EReference.gif
new file mode 100644
index 00000000000..dadbe43f561
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EReference.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EStringToStringMapEntry.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EStringToStringMapEntry.gif
new file mode 100644
index 00000000000..ac6a8a22ea7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_EStringToStringMapEntry.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypeElementCase.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypeElementCase.gif
new file mode 100644
index 00000000000..88150e61379
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypeElementCase.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypeElementSwitchQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypeElementSwitchQuery.gif
new file mode 100644
index 00000000000..8d196458a82
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypeElementSwitchQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypeParameter.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypeParameter.gif
new file mode 100644
index 00000000000..7e2fd2ea3bd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypeParameter.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementCase.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementCase.gif
new file mode 100644
index 00000000000..8d196458a82
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementCase.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementEObjectListResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementEObjectListResult.gif
new file mode 100644
index 00000000000..cfb2d6e244d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementEObjectListResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementEObjectResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementEObjectResult.gif
new file mode 100644
index 00000000000..3473a1ffdd0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementEObjectResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementPrimitiveTypeListResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementPrimitiveTypeListResult.gif
new file mode 100644
index 00000000000..bb229d1f37f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementPrimitiveTypeListResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementPrimitiveTypeResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementPrimitiveTypeResult.gif
new file mode 100644
index 00000000000..94b1be2fbb6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementPrimitiveTypeResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementSwitchQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementSwitchQuery.gif
new file mode 100644
index 00000000000..5e751d194ba
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ETypedElementSwitchQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ExtendedEObjectReference.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ExtendedEObjectReference.gif
new file mode 100644
index 00000000000..a0ba1274f20
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ExtendedEObjectReference.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_Facet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_Facet.gif
new file mode 100644
index 00000000000..63e7a6f58b5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_Facet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FacetAttribute.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FacetAttribute.gif
new file mode 100644
index 00000000000..3473a1ffdd0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FacetAttribute.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FacetOperation.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FacetOperation.gif
new file mode 100644
index 00000000000..f00d4537826
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FacetOperation.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FacetReference.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FacetReference.gif
new file mode 100644
index 00000000000..08ad00b367b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FacetReference.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FacetSet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FacetSet.gif
new file mode 100644
index 00000000000..8d196458a82
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FacetSet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FalseLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FalseLiteralQuery.gif
new file mode 100644
index 00000000000..8d196458a82
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FalseLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FloatLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FloatLiteralQuery.gif
new file mode 100644
index 00000000000..dadbe43f561
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_FloatLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_IntegerLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_IntegerLiteralQuery.gif
new file mode 100644
index 00000000000..4cc41403e53
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_IntegerLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_IsOneOfQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_IsOneOfQuery.gif
new file mode 100644
index 00000000000..69741809155
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_IsOneOfQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_MultiValuedAttributeInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_MultiValuedAttributeInstance.gif
new file mode 100644
index 00000000000..7e2fd2ea3bd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_MultiValuedAttributeInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_MultiValuedContainmentReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_MultiValuedContainmentReferenceInstance.gif
new file mode 100644
index 00000000000..e268a9e4429
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_MultiValuedContainmentReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_MultiValuedReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_MultiValuedReferenceInstance.gif
new file mode 100644
index 00000000000..69741809155
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_MultiValuedReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_NavigationQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_NavigationQuery.gif
new file mode 100644
index 00000000000..12536cb884c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_NavigationQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_NullLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_NullLiteralQuery.gif
new file mode 100644
index 00000000000..b42028e7060
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_NullLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_OperationCallQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_OperationCallQuery.gif
new file mode 100644
index 00000000000..573d6eecf0d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_OperationCallQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ParameterValue.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ParameterValue.gif
new file mode 100644
index 00000000000..6010ac9e9e6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_ParameterValue.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_SingleValuedAttributeInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_SingleValuedAttributeInstance.gif
new file mode 100644
index 00000000000..cfb2d6e244d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_SingleValuedAttributeInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_SingleValuedContainmentReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_SingleValuedContainmentReferenceInstance.gif
new file mode 100644
index 00000000000..a47b32b7d9b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_SingleValuedContainmentReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_SingleValuedReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_SingleValuedReferenceInstance.gif
new file mode 100644
index 00000000000..d21c4637715
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_SingleValuedReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_StringLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_StringLiteralQuery.gif
new file mode 100644
index 00000000000..04a67489e48
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_StringLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_TrueLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_TrueLiteralQuery.gif
new file mode 100644
index 00000000000..12536cb884c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/ctool16/CreateSingleValuedContainmentReferenceInstance_ownedElement_TrueLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AbstractAttributeInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AbstractAttributeInstance.gif
new file mode 100644
index 00000000000..e4bc22dd17e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AbstractAttributeInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AbstractReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AbstractReferenceInstance.gif
new file mode 100644
index 00000000000..45731fe28e7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AbstractReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/Aggregate.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/Aggregate.gif
new file mode 100644
index 00000000000..d3dc5a9ad81
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/Aggregate.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AggregatedFacet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AggregatedFacet.gif
new file mode 100644
index 00000000000..be22463d291
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AggregatedFacet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AggregatedFacetElement.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AggregatedFacetElement.gif
new file mode 100644
index 00000000000..33a997a1606
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AggregatedFacetElement.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AggregatedFacetSet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AggregatedFacetSet.gif
new file mode 100644
index 00000000000..134551bff7e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/AggregatedFacetSet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/Category.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/Category.gif
new file mode 100644
index 00000000000..caf2804510d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/Category.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DerivedTypedElementEObjectListResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DerivedTypedElementEObjectListResult.gif
new file mode 100644
index 00000000000..d3dc5a9ad81
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DerivedTypedElementEObjectListResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DerivedTypedElementEObjectResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DerivedTypedElementEObjectResult.gif
new file mode 100644
index 00000000000..89ad5da38ab
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DerivedTypedElementEObjectResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DerivedTypedElementPrimitiveTypeListResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DerivedTypedElementPrimitiveTypeListResult.gif
new file mode 100644
index 00000000000..2124f3e3ab2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DerivedTypedElementPrimitiveTypeListResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DerivedTypedElementPrimitiveTypeResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DerivedTypedElementPrimitiveTypeResult.gif
new file mode 100644
index 00000000000..e4b530eca17
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DerivedTypedElementPrimitiveTypeResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DocumentedElement.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DocumentedElement.gif
new file mode 100644
index 00000000000..48e3cf22687
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/DocumentedElement.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/EObjectLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/EObjectLiteralQuery.gif
new file mode 100644
index 00000000000..be22463d291
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/EObjectLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypeElementCase.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypeElementCase.gif
new file mode 100644
index 00000000000..33a997a1606
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypeElementCase.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypeElementSwitchQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypeElementSwitchQuery.gif
new file mode 100644
index 00000000000..7c2aaac84ee
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypeElementSwitchQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementCase.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementCase.gif
new file mode 100644
index 00000000000..7c2aaac84ee
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementCase.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementEObjectListResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementEObjectListResult.gif
new file mode 100644
index 00000000000..420eee17752
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementEObjectListResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementEObjectResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementEObjectResult.gif
new file mode 100644
index 00000000000..c673a5200a5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementEObjectResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementPrimitiveTypeListResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementPrimitiveTypeListResult.gif
new file mode 100644
index 00000000000..db7414e9372
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementPrimitiveTypeListResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementPrimitiveTypeResult.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementPrimitiveTypeResult.gif
new file mode 100644
index 00000000000..be22463d291
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementPrimitiveTypeResult.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementSwitchQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementSwitchQuery.gif
new file mode 100644
index 00000000000..b1f8afa4766
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ETypedElementSwitchQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ExtendedEObjectReference.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ExtendedEObjectReference.gif
new file mode 100644
index 00000000000..c4a8af41844
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ExtendedEObjectReference.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/Facet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/Facet.gif
new file mode 100644
index 00000000000..8c67c03cc10
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/Facet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FacetAttribute.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FacetAttribute.gif
new file mode 100644
index 00000000000..78d42474957
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FacetAttribute.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FacetOperation.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FacetOperation.gif
new file mode 100644
index 00000000000..b3643da048a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FacetOperation.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FacetReference.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FacetReference.gif
new file mode 100644
index 00000000000..0c9154c7997
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FacetReference.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FacetSet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FacetSet.gif
new file mode 100644
index 00000000000..d8a3e957c58
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FacetSet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FalseLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FalseLiteralQuery.gif
new file mode 100644
index 00000000000..7c2aaac84ee
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FalseLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FloatLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FloatLiteralQuery.gif
new file mode 100644
index 00000000000..7b7c428c715
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/FloatLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/IntegerLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/IntegerLiteralQuery.gif
new file mode 100644
index 00000000000..8a5c70cbd74
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/IntegerLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/IsOneOfQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/IsOneOfQuery.gif
new file mode 100644
index 00000000000..98b351f1c44
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/IsOneOfQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/MultiValuedAttributeInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/MultiValuedAttributeInstance.gif
new file mode 100644
index 00000000000..c4fb30e9687
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/MultiValuedAttributeInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/MultiValuedContainmentReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/MultiValuedContainmentReferenceInstance.gif
new file mode 100644
index 00000000000..c3370c7ddd5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/MultiValuedContainmentReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/MultiValuedReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/MultiValuedReferenceInstance.gif
new file mode 100644
index 00000000000..98b351f1c44
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/MultiValuedReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/NavigationQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/NavigationQuery.gif
new file mode 100644
index 00000000000..53500daf98e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/NavigationQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/NullLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/NullLiteralQuery.gif
new file mode 100644
index 00000000000..904159880b3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/NullLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/OperationCallQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/OperationCallQuery.gif
new file mode 100644
index 00000000000..f8041d22553
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/OperationCallQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ParameterValue.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ParameterValue.gif
new file mode 100644
index 00000000000..2b692560297
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/ParameterValue.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/SingleValuedAttributeInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/SingleValuedAttributeInstance.gif
new file mode 100644
index 00000000000..420eee17752
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/SingleValuedAttributeInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/SingleValuedContainmentReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/SingleValuedContainmentReferenceInstance.gif
new file mode 100644
index 00000000000..33854e98c25
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/SingleValuedContainmentReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/SingleValuedReferenceInstance.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/SingleValuedReferenceInstance.gif
new file mode 100644
index 00000000000..afb82ea48a5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/SingleValuedReferenceInstance.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/StringLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/StringLiteralQuery.gif
new file mode 100644
index 00000000000..caf2804510d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/StringLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/TrueLiteralQuery.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/TrueLiteralQuery.gif
new file mode 100644
index 00000000000..53500daf98e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/icons/full/obj16/TrueLiteralQuery.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/plugin.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/plugin.properties
new file mode 100644
index 00000000000..8759babfc09
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/plugin.properties
@@ -0,0 +1,159 @@
+# Copyright (c) 2011, 2012 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Design
+# Nicolas Guyomar (Mia-Software) - Implementation
+# Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+# Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+# Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+# Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+# Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+# Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+# Gregoire Dupe (Mia-Software) - Bug 376576 - [EFacet] Change the multiplicity of Facet::extendedFacet
+
+pluginName = EMF Facet EFacet Edit Support (Incubation)
+providerName = Eclipse Modeling Project
+
+_UI_CreateChild_text = {0}
+_UI_CreateChild_text2 = {1} {0}
+_UI_CreateChild_text3 = {1}
+_UI_CreateChild_tooltip = Create New {0} Under {1} Feature
+_UI_CreateChild_description = Create a new child of type {0} for the {1} feature of the selected {2}.
+_UI_CreateSibling_description = Create a new sibling of type {0} for the selected {2}, under the {1} feature of their parent.
+
+_UI_PropertyDescriptor_description = The {0} of the {1}
+
+_UI_FacetAttribute_type =
+_UI_FacetReference_type =
+_UI_FacetOperation_type =
+_UI_FacetSet_type = Facet Set
+_UI_Facet_type = Facet
+_UI_AbstractDerivedTypedElementResult_type = Abstract Derived Typed Element Result
+_UI_Category_type = Category
+_UI_FacetElement_type = Facet Element
+_UI_DerivedTypedElement_type = Derived Typed Element
+_UI_ParameterValue_type = Parameter Value
+_UI_DocumentedElement_type = Documented Element
+_UI_DerivedTypedElementPrimitiveTypeResult_type = Derived Typed Element Primitive Type Result
+_UI_DerivedTypedElementEObjectResult_type = Derived Typed Element EObject Result
+_UI_DerivedTypedElementPrimitiveTypeListResult_type = Derived Typed Element Primitive Type List Result
+_UI_DerivedTypedElementEObjectListResult_type = Derived Typed Element EObject List Result
+_UI_AbstractReferenceInstance_type = Abstract Reference Instance
+_UI_MultiValuedContainmentReferenceInstance_type = Multi Valued Containment Reference Instance
+_UI_MultiValuedReferenceInstance_type = Multi Valued Reference Instance
+_UI_SingleValuedAttributeInstance_type = Single Valued Attribute Instance
+_UI_ExtendedEObjectReference_type = Extended EObject Reference
+_UI_SingleValuedContainmentReferenceInstance_type = Single Valued Containment Reference Instance
+_UI_SingleValuedReferenceInstance_type = Single Valued Reference Instance
+_UI_MultiValuedAttributeInstance_type = Multi Valued Attribute Instance
+_UI_AbstractAttributeInstance_type = Abstract Attribute Instance
+_UI_Query_type = Query
+_UI_NavigationQuery_type = Navigation Query
+_UI_IsOneOfQuery_type = Is One Of Query
+_UI_StringLiteralQuery_type = String Literal Query
+_UI_Unknown_type = Object
+
+_UI_Unknown_datatype= Value
+
+_UI_FacetSet_facets_feature = Facets
+_UI_FacetSet_categories_feature = Categories
+_UI_FacetSet_extendedEPackage_feature = Extended EPackage
+_UI_Facet_facetSet_feature = Facet Set
+_UI_Facet_extendedMetaclass_feature = Extended Metaclass
+_UI_Facet_facetElements_feature = Facet Elements
+_UI_Facet_facetOperations_feature = Facet Operations
+_UI_Facet_conformanceTypedElement_feature = Conformance Typed Element
+_UI_Facet_extendedFacet_feature = Extended Facet
+_UI_AbstractDerivedTypedElementResult_derivedTypedElement_feature = Derived Typed Element
+_UI_AbstractDerivedTypedElementResult_parameterValues_feature = Parameter Values
+_UI_AbstractDerivedTypedElementResult_source_feature = Source
+_UI_AbstractDerivedTypedElementResult_exception_feature = Exception
+_UI_FacetElement_categories_feature = Categories
+_UI_DerivedTypedElement_query_feature = Query
+_UI_DerivedTypedElement_override_feature = Override
+_UI_ParameterValue_parameter_feature = Parameter
+_UI_ParameterValue_value_feature = Value
+_UI_DocumentedElement_documentation_feature = Documentation
+_UI_DerivedTypedElementPrimitiveTypeResult_result_feature = Result
+_UI_DerivedTypedElementEObjectResult_result_feature = Result
+_UI_DerivedTypedElementPrimitiveTypeListResult_resultList_feature = Result List
+_UI_DerivedTypedElementEObjectListResult_resultList_feature = Result List
+_UI_AbstractReferenceInstance_eReference_feature = EReference
+_UI_MultiValuedContainmentReferenceInstance_ownedElements_feature = Owned Elements
+_UI_MultiValuedReferenceInstance_referencedElements_feature = Referenced Elements
+_UI_SingleValuedAttributeInstance_value_feature = Value
+_UI_ExtendedEObjectReference_extendedEObject_feature = Extended EObject
+_UI_ExtendedEObjectReference_attributeInstances_feature = Attribute Instances
+_UI_ExtendedEObjectReference_referenceInstances_feature = Reference Instances
+_UI_SingleValuedContainmentReferenceInstance_ownedElement_feature = Owned Element
+_UI_SingleValuedReferenceInstance_referencedElement_feature = Referenced Element
+_UI_MultiValuedAttributeInstance_values_feature = Values
+_UI_AbstractAttributeInstance_eAttribute_feature = EAttribute
+_UI_Query_owningDerivedTypedElement_feature = Owning Derived Typed Element
+_UI_Query_sourceType_feature = Source Type
+_UI_Query_returnType_feature = Return Type
+_UI_Query_parameters_feature = Parameters
+_UI_Query_upperBound_feature = Upper Bound
+_UI_Query_lowerBound_feature = Lower Bound
+_UI_Query_canHaveSideEffects_feature = Can Have Side Effects
+_UI_Query_canBeCached_feature = Can Be Cached
+_UI_Query_many_feature = Many
+_UI_NavigationQuery_path_feature = Path
+_UI_IsOneOfQuery_expectedEObjects_feature = Expected EObjects
+_UI_StringLiteralQuery_value_feature = Value
+_UI_Unknown_feature = Unspecified
+
+_UI_TrueLiteralQuery_type = True Literal Query
+_UI_FalseLiteralQuery_type = False Literal Query
+_UI_NullLiteralQuery_type = Null Literal Query
+_UI_ETypedElementSwitchQuery_type = EType Element Switch Query
+_UI_ETypedElementCase_type = EType Element Case
+_UI_ETypedElementSwitchQuery_cases_feature = Cases
+_UI_ETypedElementCase_case_feature = Case
+_UI_ETypedElementCase_value_feature = Value
+_UI_ETypedElementSwitchQuery_type = ETyped Element Switch Query
+_UI_ETypedElementCase_type = ETyped Element Case
+_UI_ETypedElementSwitchQuery_cases_feature = Cases
+_UI_ETypedElementCase_case_feature = Case
+_UI_ETypedElementCase_value_feature = Value
+_UI_ETypedElementPrimitiveTypeResult_type = ETyped Element Primitive Type Result
+_UI_ETypedElementEObjectResult_type = ETyped Element EObject Result
+_UI_ETypedElementPrimitiveTypeListResult_type = ETyped Element Primitive Type List Result
+_UI_ETypedElementEObjectListResult_type = ETyped Element EObject List Result
+_UI_ETypedElementResult_type = ETyped Element Result
+_UI_ETypedElementPrimitiveTypeResult_result_feature = Result
+_UI_ETypedElementEObjectResult_result_feature = Result
+_UI_ETypedElementPrimitiveTypeListResult_resultList_feature = Result List
+_UI_ETypedElementEObjectListResult_resultList_feature = Result List
+_UI_ETypedElementResult_derivedTypedElement_feature = Derived Typed Element
+_UI_ETypedElementResult_parameterValues_feature = Parameter Values
+_UI_ETypedElementResult_source_feature = Source
+_UI_ETypedElementResult_exception_feature = Exception
+_UI_Aggregate_type = Aggregate
+_UI_AggregatedFacetSet_type = Aggregated Facet Set
+_UI_AggregatedFacet_type = Aggregated Facet
+_UI_AggregatedFacetElement_type = Aggregated Facet Element
+_UI_Aggregate_aggregatedFacetSets_feature = Aggregated Facet Sets
+_UI_Aggregate_proxies_feature = Proxies
+_UI_AggregatedFacetSet_facetSet_feature = Facet Set
+_UI_AggregatedFacetSet_facetProxies_feature = Facet Proxies
+_UI_AggregatedFacetSet_facetSetProxies_feature = Facet Set Proxies
+_UI_AggregatedFacet_facet_feature = Facet
+_UI_AggregatedFacet_proxies_feature = Proxies
+_UI_AggregatedFacetElement_facetElement_feature = Facet Element
+_UI_NavigationQuery_failOnError_feature = Fail On Error
+_UI_IntegerLiteralQuery_type = Integer Literal Query
+_UI_FloatLiteralQuery_type = Float Literal Query
+_UI_EObjectLiteralQuery_type = EObject Literal Query
+_UI_OperationCallQuery_type = Operation Call Query
+_UI_IntegerLiteralQuery_value_feature = Value
+_UI_FloatLiteralQuery_value_feature = Value
+_UI_EObjectLiteralQuery_element_feature = Element
+_UI_OperationCallQuery_operation_feature = Operation
+_UI_OperationCallQuery_arguments_feature = Arguments
+_UI_Facet_extendedFacets_feature = Extended Facets
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/plugin.xml
new file mode 100644
index 00000000000..8671747e8d3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/plugin.xml
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Gregoire Dupe (Mia-Software) - Design
+ Nicolas Guyomar (Mia-Software) - Implementation
+ Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+-->
+
+<plugin>
+
+ <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+ <factory
+ uri="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet"
+ class="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.EFacetItemProviderAdapterFactory"
+ supportedTypes=
+ "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+ org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+ org.eclipse.emf.edit.provider.ITreeItemContentProvider
+ org.eclipse.emf.edit.provider.IItemLabelProvider
+ org.eclipse.emf.edit.provider.IItemPropertySource"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+ <factory
+ uri="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/serialization"
+ class="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.provider.SerializationItemProviderAdapterFactory"
+ supportedTypes=
+ "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+ org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+ org.eclipse.emf.edit.provider.ITreeItemContentProvider
+ org.eclipse.emf.edit.provider.IItemLabelProvider
+ org.eclipse.emf.edit.provider.IItemPropertySource"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+ <factory
+ uri="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/extensible"
+ class="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.provider.ExtensibleItemProviderAdapterFactory"
+ supportedTypes=
+ "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+ org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+ org.eclipse.emf.edit.provider.ITreeItemContentProvider
+ org.eclipse.emf.edit.provider.IItemLabelProvider
+ org.eclipse.emf.edit.provider.IItemPropertySource"/>
+ </extension>
+
+ <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+ <factory
+ uri="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/query"
+ class="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.provider.QueryItemProviderAdapterFactory"
+ supportedTypes=
+ "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+ org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+ org.eclipse.emf.edit.provider.ITreeItemContentProvider
+ org.eclipse.emf.edit.provider.IItemLabelProvider
+ org.eclipse.emf.edit.provider.IItemPropertySource"/>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/provider/ExtensibleItemProviderAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/provider/ExtensibleItemProviderAdapterFactory.java
new file mode 100644
index 00000000000..db78277b232
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/provider/ExtensibleItemProviderAdapterFactory.java
@@ -0,0 +1,188 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.util.ExtensibleAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ExtensibleItemProviderAdapterFactory extends ExtensibleAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+ /**
+ * This keeps track of the root adapter factory that delegates to this adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ComposedAdapterFactory parentAdapterFactory;
+
+ /**
+ * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+ /**
+ * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+ /**
+ * This constructs an instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ExtensibleItemProviderAdapterFactory() {
+ supportedTypes.add(IEditingDomainItemProvider.class);
+ supportedTypes.add(IStructuredItemContentProvider.class);
+ supportedTypes.add(ITreeItemContentProvider.class);
+ supportedTypes.add(IItemLabelProvider.class);
+ supportedTypes.add(IItemPropertySource.class);
+ }
+
+ /**
+ * This returns the root adapter factory that contains this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ComposeableAdapterFactory getRootAdapterFactory() {
+ return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+ }
+
+ /**
+ * This sets the composed adapter factory that contains this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+ this.parentAdapterFactory = parentAdapterFactory;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object type) {
+ return supportedTypes.contains(type) || super.isFactoryForType(type);
+ }
+
+ /**
+ * This implementation substitutes the factory itself as the key for the adapter.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter adapt(Notifier notifier, Object type) {
+ return super.adapt(notifier, this);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object adapt(Object object, Object type) {
+ if (isFactoryForType(type)) {
+ Object adapter = super.adapt(object, type);
+ if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+ return adapter;
+ }
+ }
+
+ return null;
+ }
+
+ /**
+ * This adds a listener.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void addListener(INotifyChangedListener notifyChangedListener) {
+ changeNotifier.addListener(notifyChangedListener);
+ }
+
+ /**
+ * This removes a listener.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void removeListener(INotifyChangedListener notifyChangedListener) {
+ changeNotifier.removeListener(notifyChangedListener);
+ }
+
+ /**
+ * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void fireNotifyChanged(Notification notification) {
+ changeNotifier.fireNotifyChanged(notification);
+
+ if (parentAdapterFactory != null) {
+ parentAdapterFactory.fireNotifyChanged(notification);
+ }
+ }
+
+ /**
+ * This disposes all of the item providers created by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void dispose() {
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/provider/QueryItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/provider/QueryItemProvider.java
new file mode 100644
index 00000000000..e1ecd9d1c42
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/provider/QueryItemProvider.java
@@ -0,0 +1,182 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.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.edit.provider.ComposeableAdapterFactory;
+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.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class QueryItemProvider
+ 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 QueryItemProvider(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);
+
+ addCanHaveSideEffectsPropertyDescriptor(object);
+ addCanBeCachedPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Can Have Side Effects feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addCanHaveSideEffectsPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_Query_canHaveSideEffects_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_Query_canHaveSideEffects_feature", "_UI_Query_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ ExtensiblePackage.Literals.QUERY__CAN_HAVE_SIDE_EFFECTS,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Can Be Cached feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addCanBeCachedPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_Query_canBeCached_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_Query_canBeCached_feature", "_UI_Query_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ ExtensiblePackage.Literals.QUERY__CAN_BE_CACHED,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ Query query = (Query)object;
+ return getString("_UI_Query_type") + " " + query.isCanHaveSideEffects(); //$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(Query.class)) {
+ case ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS:
+ case ExtensiblePackage.QUERY__CAN_BE_CACHED:
+ 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 Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/CategoryItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/CategoryItemProvider.java
new file mode 100644
index 00000000000..22d08d20899
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/CategoryItemProvider.java
@@ -0,0 +1,228 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.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.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+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.emf.facet.efacet.metamodel.v0_2_0.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CategoryItemProvider
+ 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 CategoryItemProvider(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);
+ addDocumentationPropertyDescriptor(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_ENamedElement_name_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ENamedElement_name_feature", "_UI_ENamedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ENAMED_ELEMENT__NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Documentation feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDocumentationPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_DocumentedElement_documentation_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_DocumentedElement_documentation_feature", "_UI_DocumentedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.DOCUMENTED_ELEMENT__DOCUMENTATION,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns Category.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/Category")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((Category)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_Category_type") : //$NON-NLS-1$
+ getString("_UI_Category_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(Category.class)) {
+ case EFacetPackage.CATEGORY__NAME:
+ case EFacetPackage.CATEGORY__DOCUMENTATION:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case EFacetPackage.CATEGORY__EANNOTATIONS:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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 Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/DerivedTypedElementItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/DerivedTypedElementItemProvider.java
new file mode 100644
index 00000000000..9f21061c251
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/DerivedTypedElementItemProvider.java
@@ -0,0 +1,226 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.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.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+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.ViewerNotification;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryFactory;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DerivedTypedElementItemProvider
+ extends FacetElementItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DerivedTypedElementItemProvider(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);
+
+ addOverridePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Override feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOverridePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_DerivedTypedElement_override_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_DerivedTypedElement_override_feature", "_UI_DerivedTypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__OVERRIDE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((DerivedTypedElement)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_DerivedTypedElement_type") : //$NON-NLS-1$
+ getString("_UI_DerivedTypedElement_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(DerivedTypedElement.class)) {
+ case EFacetPackage.DERIVED_TYPED_ELEMENT__QUERY:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createNavigationQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createIsOneOfQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createStringLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createTrueLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createFalseLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createNullLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createIntegerLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createFloatLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createEObjectLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createOperationCallQuery()));
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/DocumentedElementItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/DocumentedElementItemProvider.java
new file mode 100644
index 00000000000..514c6f50f3e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/DocumentedElementItemProvider.java
@@ -0,0 +1,169 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.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.edit.provider.ComposeableAdapterFactory;
+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.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DocumentedElementItemProvider
+ 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 DocumentedElementItemProvider(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);
+
+ addDocumentationPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Documentation feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDocumentationPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_DocumentedElement_documentation_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_DocumentedElement_documentation_feature", "_UI_DocumentedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.DOCUMENTED_ELEMENT__DOCUMENTATION,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This returns DocumentedElement.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/DocumentedElement")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((DocumentedElement)object).getDocumentation();
+ return label == null || label.length() == 0 ?
+ getString("_UI_DocumentedElement_type") : //$NON-NLS-1$
+ getString("_UI_DocumentedElement_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(DocumentedElement.class)) {
+ case EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION:
+ 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 Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/EFacetItemProviderAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/EFacetItemProviderAdapterFactory.java
new file mode 100644
index 00000000000..edb9d1013c1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/EFacetItemProviderAdapterFactory.java
@@ -0,0 +1,381 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.util.EFacetAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class EFacetItemProviderAdapterFactory extends EFacetAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+ /**
+ * This keeps track of the root adapter factory that delegates to this adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ComposedAdapterFactory parentAdapterFactory;
+
+ /**
+ * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+ /**
+ * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+ /**
+ * This constructs an instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EFacetItemProviderAdapterFactory() {
+ supportedTypes.add(IEditingDomainItemProvider.class);
+ supportedTypes.add(IStructuredItemContentProvider.class);
+ supportedTypes.add(ITreeItemContentProvider.class);
+ supportedTypes.add(IItemLabelProvider.class);
+ supportedTypes.add(IItemPropertySource.class);
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetAttributeItemProvider facetAttributeItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createFacetAttributeAdapter() {
+ if (facetAttributeItemProvider == null) {
+ facetAttributeItemProvider = new FacetAttributeItemProvider(this);
+ }
+
+ return facetAttributeItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetReferenceItemProvider facetReferenceItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createFacetReferenceAdapter() {
+ if (facetReferenceItemProvider == null) {
+ facetReferenceItemProvider = new FacetReferenceItemProvider(this);
+ }
+
+ return facetReferenceItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetOperationItemProvider facetOperationItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createFacetOperationAdapter() {
+ if (facetOperationItemProvider == null) {
+ facetOperationItemProvider = new FacetOperationItemProvider(this);
+ }
+
+ return facetOperationItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetSetItemProvider facetSetItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createFacetSetAdapter() {
+ if (facetSetItemProvider == null) {
+ facetSetItemProvider = new FacetSetItemProvider(this);
+ }
+
+ return facetSetItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetItemProvider facetItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createFacetAdapter() {
+ if (facetItemProvider == null) {
+ facetItemProvider = new FacetItemProvider(this);
+ }
+
+ return facetItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CategoryItemProvider categoryItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createCategoryAdapter() {
+ if (categoryItemProvider == null) {
+ categoryItemProvider = new CategoryItemProvider(this);
+ }
+
+ return categoryItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ParameterValueItemProvider parameterValueItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createParameterValueAdapter() {
+ if (parameterValueItemProvider == null) {
+ parameterValueItemProvider = new ParameterValueItemProvider(this);
+ }
+
+ return parameterValueItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DocumentedElementItemProvider documentedElementItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createDocumentedElementAdapter() {
+ if (documentedElementItemProvider == null) {
+ documentedElementItemProvider = new DocumentedElementItemProvider(this);
+ }
+
+ return documentedElementItemProvider;
+ }
+
+ /**
+ * This returns the root adapter factory that contains this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ComposeableAdapterFactory getRootAdapterFactory() {
+ return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+ }
+
+ /**
+ * This sets the composed adapter factory that contains this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+ this.parentAdapterFactory = parentAdapterFactory;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object type) {
+ return supportedTypes.contains(type) || super.isFactoryForType(type);
+ }
+
+ /**
+ * This implementation substitutes the factory itself as the key for the adapter.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter adapt(Notifier notifier, Object type) {
+ return super.adapt(notifier, this);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object adapt(Object object, Object type) {
+ if (isFactoryForType(type)) {
+ Object adapter = super.adapt(object, type);
+ if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+ return adapter;
+ }
+ }
+
+ return null;
+ }
+
+ /**
+ * This adds a listener.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void addListener(INotifyChangedListener notifyChangedListener) {
+ changeNotifier.addListener(notifyChangedListener);
+ }
+
+ /**
+ * This removes a listener.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void removeListener(INotifyChangedListener notifyChangedListener) {
+ changeNotifier.removeListener(notifyChangedListener);
+ }
+
+ /**
+ * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void fireNotifyChanged(Notification notification) {
+ changeNotifier.fireNotifyChanged(notification);
+
+ if (parentAdapterFactory != null) {
+ parentAdapterFactory.fireNotifyChanged(notification);
+ }
+ }
+
+ /**
+ * This disposes all of the item providers created by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void dispose() {
+ if (facetAttributeItemProvider != null) facetAttributeItemProvider.dispose();
+ if (facetReferenceItemProvider != null) facetReferenceItemProvider.dispose();
+ if (facetOperationItemProvider != null) facetOperationItemProvider.dispose();
+ if (facetSetItemProvider != null) facetSetItemProvider.dispose();
+ if (facetItemProvider != null) facetItemProvider.dispose();
+ if (categoryItemProvider != null) categoryItemProvider.dispose();
+ if (parameterValueItemProvider != null) parameterValueItemProvider.dispose();
+ if (documentedElementItemProvider != null) documentedElementItemProvider.dispose();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/Efacet2EditPlugin.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/Efacet2EditPlugin.java
new file mode 100644
index 00000000000..4414eb707b3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/Efacet2EditPlugin.java
@@ -0,0 +1,105 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider;
+
+import org.eclipse.emf.common.EMFPlugin;
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.ecore.provider.EcoreEditPlugin;
+
+/**
+ * This is the central singleton for the Efacet2 edit plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public final class Efacet2EditPlugin extends EMFPlugin {
+ /**
+ * Keep track of the singleton.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final Efacet2EditPlugin INSTANCE = new Efacet2EditPlugin();
+
+ /**
+ * Keep track of the singleton.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static Implementation plugin;
+
+ /**
+ * Create the instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Efacet2EditPlugin() {
+ super
+ (new ResourceLocator [] {
+ EcoreEditPlugin.INSTANCE,
+ });
+ }
+
+ /**
+ * Returns the singleton instance of the Eclipse plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the singleton instance.
+ * @generated
+ */
+ @Override
+ public ResourceLocator getPluginResourceLocator() {
+ return plugin;
+ }
+
+ /**
+ * Returns the singleton instance of the Eclipse plugin.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the singleton instance.
+ * @generated
+ */
+ public static Implementation getPlugin() {
+ return plugin;
+ }
+
+ /**
+ * The actual implementation of the Eclipse <b>Plugin</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static class Implementation extends EclipsePlugin {
+ /**
+ * Creates an instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Implementation() {
+ super();
+
+ // Remember the static instance.
+ //
+ plugin = this;
+ }
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetAttributeItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetAttributeItemProvider.java
new file mode 100644
index 00000000000..635bf4b391f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetAttributeItemProvider.java
@@ -0,0 +1,711 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.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.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+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.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryFactory;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class FacetAttributeItemProvider
+ 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 FacetAttributeItemProvider(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);
+ addOrderedPropertyDescriptor(object);
+ addUniquePropertyDescriptor(object);
+ addLowerBoundPropertyDescriptor(object);
+ addUpperBoundPropertyDescriptor(object);
+ addManyPropertyDescriptor(object);
+ addRequiredPropertyDescriptor(object);
+ addETypePropertyDescriptor(object);
+ addChangeablePropertyDescriptor(object);
+ addVolatilePropertyDescriptor(object);
+ addTransientPropertyDescriptor(object);
+ addDefaultValueLiteralPropertyDescriptor(object);
+ addDefaultValuePropertyDescriptor(object);
+ addUnsettablePropertyDescriptor(object);
+ addDerivedPropertyDescriptor(object);
+ addIDPropertyDescriptor(object);
+ addEAttributeTypePropertyDescriptor(object);
+ addDocumentationPropertyDescriptor(object);
+ addCategoriesPropertyDescriptor(object);
+ addOverridePropertyDescriptor(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_ENamedElement_name_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ENamedElement_name_feature", "_UI_ENamedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ENAMED_ELEMENT__NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Ordered feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOrderedPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_ordered_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_ordered_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ORDERED,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Unique feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUniquePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_unique_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_unique_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UNIQUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Lower Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addLowerBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_lowerBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_lowerBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__LOWER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Upper Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUpperBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_upperBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_upperBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UPPER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Many feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addManyPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_many_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_many_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__MANY,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Required feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addRequiredPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_required_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_required_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__REQUIRED,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EType feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addETypePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_eType_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_eType_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ETYPE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Changeable feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addChangeablePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_changeable_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_changeable_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__CHANGEABLE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Volatile feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addVolatilePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_volatile_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_volatile_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__VOLATILE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Transient feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addTransientPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_transient_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_transient_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__TRANSIENT,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Default Value Literal feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDefaultValueLiteralPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_defaultValueLiteral_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_defaultValueLiteral_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__DEFAULT_VALUE_LITERAL,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Default Value feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDefaultValuePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_defaultValue_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_defaultValue_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__DEFAULT_VALUE,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Unsettable feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUnsettablePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_unsettable_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_unsettable_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__UNSETTABLE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Derived feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDerivedPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_derived_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_derived_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__DERIVED,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the ID feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addIDPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EAttribute_iD_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EAttribute_iD_feature", "_UI_EAttribute_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EATTRIBUTE__ID,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EAttribute Type feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addEAttributeTypePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EAttribute_eAttributeType_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EAttribute_eAttributeType_feature", "_UI_EAttribute_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EATTRIBUTE__EATTRIBUTE_TYPE,
+ false,
+ false,
+ false,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Documentation feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDocumentationPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_DocumentedElement_documentation_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_DocumentedElement_documentation_feature", "_UI_DocumentedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.DOCUMENTED_ELEMENT__DOCUMENTATION,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Categories feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addCategoriesPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_FacetElement_categories_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_FacetElement_categories_feature", "_UI_FacetElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.FACET_ELEMENT__CATEGORIES,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Override feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOverridePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_DerivedTypedElement_override_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_DerivedTypedElement_override_feature", "_UI_DerivedTypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__OVERRIDE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+ childrenFeatures.add(EcorePackage.Literals.ETYPED_ELEMENT__EGENERIC_TYPE);
+ childrenFeatures.add(EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns FacetAttribute.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/FacetAttribute")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((FacetAttribute)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_FacetAttribute_type") : //$NON-NLS-1$
+ getString("_UI_FacetAttribute_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(FacetAttribute.class)) {
+ case EFacetPackage.FACET_ATTRIBUTE__NAME:
+ case EFacetPackage.FACET_ATTRIBUTE__ORDERED:
+ case EFacetPackage.FACET_ATTRIBUTE__UNIQUE:
+ case EFacetPackage.FACET_ATTRIBUTE__LOWER_BOUND:
+ case EFacetPackage.FACET_ATTRIBUTE__UPPER_BOUND:
+ case EFacetPackage.FACET_ATTRIBUTE__MANY:
+ case EFacetPackage.FACET_ATTRIBUTE__REQUIRED:
+ case EFacetPackage.FACET_ATTRIBUTE__CHANGEABLE:
+ case EFacetPackage.FACET_ATTRIBUTE__VOLATILE:
+ case EFacetPackage.FACET_ATTRIBUTE__TRANSIENT:
+ case EFacetPackage.FACET_ATTRIBUTE__DEFAULT_VALUE_LITERAL:
+ case EFacetPackage.FACET_ATTRIBUTE__DEFAULT_VALUE:
+ case EFacetPackage.FACET_ATTRIBUTE__UNSETTABLE:
+ case EFacetPackage.FACET_ATTRIBUTE__DERIVED:
+ case EFacetPackage.FACET_ATTRIBUTE__ID:
+ case EFacetPackage.FACET_ATTRIBUTE__DOCUMENTATION:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case EFacetPackage.FACET_ATTRIBUTE__EANNOTATIONS:
+ case EFacetPackage.FACET_ATTRIBUTE__EGENERIC_TYPE:
+ case EFacetPackage.FACET_ATTRIBUTE__QUERY:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createNavigationQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createIsOneOfQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createStringLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createTrueLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createFalseLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createNullLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createIntegerLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createFloatLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createEObjectLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createOperationCallQuery()));
+ }
+
+ /**
+ * Return the resource locator for this item provider's resources.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ResourceLocator getResourceLocator() {
+ return Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetElementItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetElementItemProvider.java
new file mode 100644
index 00000000000..7425dc7fad7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetElementItemProvider.java
@@ -0,0 +1,409 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.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.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+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.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class FacetElementItemProvider
+ 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 FacetElementItemProvider(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);
+ addOrderedPropertyDescriptor(object);
+ addUniquePropertyDescriptor(object);
+ addLowerBoundPropertyDescriptor(object);
+ addUpperBoundPropertyDescriptor(object);
+ addManyPropertyDescriptor(object);
+ addRequiredPropertyDescriptor(object);
+ addETypePropertyDescriptor(object);
+ addDocumentationPropertyDescriptor(object);
+ addCategoriesPropertyDescriptor(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_ENamedElement_name_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ENamedElement_name_feature", "_UI_ENamedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ENAMED_ELEMENT__NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Ordered feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOrderedPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_ordered_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_ordered_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ORDERED,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Unique feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUniquePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_unique_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_unique_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UNIQUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Lower Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addLowerBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_lowerBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_lowerBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__LOWER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Upper Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUpperBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_upperBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_upperBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UPPER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Many feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addManyPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_many_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_many_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__MANY,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Required feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addRequiredPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_required_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_required_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__REQUIRED,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EType feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addETypePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_eType_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_eType_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ETYPE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Documentation feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDocumentationPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_DocumentedElement_documentation_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_DocumentedElement_documentation_feature", "_UI_DocumentedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.DOCUMENTED_ELEMENT__DOCUMENTATION,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Categories feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addCategoriesPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_FacetElement_categories_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_FacetElement_categories_feature", "_UI_FacetElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.FACET_ELEMENT__CATEGORIES,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+ childrenFeatures.add(EcorePackage.Literals.ETYPED_ELEMENT__EGENERIC_TYPE);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((FacetElement)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_FacetElement_type") : //$NON-NLS-1$
+ getString("_UI_FacetElement_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(FacetElement.class)) {
+ case EFacetPackage.FACET_ELEMENT__NAME:
+ case EFacetPackage.FACET_ELEMENT__ORDERED:
+ case EFacetPackage.FACET_ELEMENT__UNIQUE:
+ case EFacetPackage.FACET_ELEMENT__LOWER_BOUND:
+ case EFacetPackage.FACET_ELEMENT__UPPER_BOUND:
+ case EFacetPackage.FACET_ELEMENT__MANY:
+ case EFacetPackage.FACET_ELEMENT__REQUIRED:
+ case EFacetPackage.FACET_ELEMENT__DOCUMENTATION:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case EFacetPackage.FACET_ELEMENT__EANNOTATIONS:
+ case EFacetPackage.FACET_ELEMENT__EGENERIC_TYPE:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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 Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetItemProvider.java
new file mode 100644
index 00000000000..64400655475
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetItemProvider.java
@@ -0,0 +1,417 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 376576 - [EFacet] Change the multiplicity of Facet::extendedFacet
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.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.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+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.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class FacetItemProvider
+ 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 FacetItemProvider(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);
+ addInstanceClassNamePropertyDescriptor(object);
+ addInstanceClassPropertyDescriptor(object);
+ addDefaultValuePropertyDescriptor(object);
+ addInstanceTypeNamePropertyDescriptor(object);
+ addDocumentationPropertyDescriptor(object);
+ addExtendedMetaclassPropertyDescriptor(object);
+ addConformanceTypedElementPropertyDescriptor(object);
+ addExtendedFacetsPropertyDescriptor(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_ENamedElement_name_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ENamedElement_name_feature", "_UI_ENamedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ENAMED_ELEMENT__NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Instance Class Name feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addInstanceClassNamePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EClassifier_instanceClassName_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EClassifier_instanceClassName_feature", "_UI_EClassifier_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ECLASSIFIER__INSTANCE_CLASS_NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Instance Class feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addInstanceClassPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EClassifier_instanceClass_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EClassifier_instanceClass_feature", "_UI_EClassifier_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ECLASSIFIER__INSTANCE_CLASS,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Default Value feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDefaultValuePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EClassifier_defaultValue_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EClassifier_defaultValue_feature", "_UI_EClassifier_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ECLASSIFIER__DEFAULT_VALUE,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Instance Type Name feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addInstanceTypeNamePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EClassifier_instanceTypeName_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EClassifier_instanceTypeName_feature", "_UI_EClassifier_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ECLASSIFIER__INSTANCE_TYPE_NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Documentation feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDocumentationPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_DocumentedElement_documentation_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_DocumentedElement_documentation_feature", "_UI_DocumentedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.DOCUMENTED_ELEMENT__DOCUMENTATION,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Extended Metaclass feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addExtendedMetaclassPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_Facet_extendedMetaclass_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_Facet_extendedMetaclass_feature", "_UI_Facet_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.FACET__EXTENDED_METACLASS,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Conformance Typed Element feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addConformanceTypedElementPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_Facet_conformanceTypedElement_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_Facet_conformanceTypedElement_feature", "_UI_Facet_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.FACET__CONFORMANCE_TYPED_ELEMENT,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Extended Facets feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addExtendedFacetsPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_Facet_extendedFacets_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_Facet_extendedFacets_feature", "_UI_Facet_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.FACET__EXTENDED_FACETS,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+ childrenFeatures.add(EcorePackage.Literals.ECLASSIFIER__ETYPE_PARAMETERS);
+ childrenFeatures.add(EFacetPackage.Literals.FACET__FACET_ELEMENTS);
+ childrenFeatures.add(EFacetPackage.Literals.FACET__FACET_OPERATIONS);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns Facet.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/Facet")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((Facet)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_Facet_type") : //$NON-NLS-1$
+ getString("_UI_Facet_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(Facet.class)) {
+ case EFacetPackage.FACET__NAME:
+ case EFacetPackage.FACET__INSTANCE_CLASS_NAME:
+ case EFacetPackage.FACET__INSTANCE_CLASS:
+ case EFacetPackage.FACET__DEFAULT_VALUE:
+ case EFacetPackage.FACET__INSTANCE_TYPE_NAME:
+ case EFacetPackage.FACET__DOCUMENTATION:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case EFacetPackage.FACET__EANNOTATIONS:
+ case EFacetPackage.FACET__ETYPE_PARAMETERS:
+ case EFacetPackage.FACET__FACET_ELEMENTS:
+ case EFacetPackage.FACET__FACET_OPERATIONS:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.FACET__FACET_ELEMENTS,
+ EFacetFactory.eINSTANCE.createFacetAttribute()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.FACET__FACET_ELEMENTS,
+ EFacetFactory.eINSTANCE.createFacetReference()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.FACET__FACET_OPERATIONS,
+ EFacetFactory.eINSTANCE.createFacetOperation()));
+ }
+
+ /**
+ * Return the resource locator for this item provider's resources.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ResourceLocator getResourceLocator() {
+ return Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetOperationItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetOperationItemProvider.java
new file mode 100644
index 00000000000..13a65d1f0b7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetOperationItemProvider.java
@@ -0,0 +1,525 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.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.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+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.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryFactory;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class FacetOperationItemProvider
+ 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 FacetOperationItemProvider(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);
+ addOrderedPropertyDescriptor(object);
+ addUniquePropertyDescriptor(object);
+ addLowerBoundPropertyDescriptor(object);
+ addUpperBoundPropertyDescriptor(object);
+ addManyPropertyDescriptor(object);
+ addRequiredPropertyDescriptor(object);
+ addETypePropertyDescriptor(object);
+ addEExceptionsPropertyDescriptor(object);
+ addDocumentationPropertyDescriptor(object);
+ addCategoriesPropertyDescriptor(object);
+ addOverridePropertyDescriptor(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_ENamedElement_name_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ENamedElement_name_feature", "_UI_ENamedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ENAMED_ELEMENT__NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Ordered feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOrderedPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_ordered_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_ordered_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ORDERED,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Unique feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUniquePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_unique_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_unique_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UNIQUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Lower Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addLowerBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_lowerBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_lowerBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__LOWER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Upper Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUpperBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_upperBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_upperBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UPPER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Many feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addManyPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_many_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_many_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__MANY,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Required feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addRequiredPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_required_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_required_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__REQUIRED,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EType feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addETypePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_eType_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_eType_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ETYPE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EExceptions feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addEExceptionsPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EOperation_eExceptions_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EOperation_eExceptions_feature", "_UI_EOperation_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EOPERATION__EEXCEPTIONS,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Documentation feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDocumentationPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_DocumentedElement_documentation_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_DocumentedElement_documentation_feature", "_UI_DocumentedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.DOCUMENTED_ELEMENT__DOCUMENTATION,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Categories feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addCategoriesPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_FacetElement_categories_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_FacetElement_categories_feature", "_UI_FacetElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.FACET_ELEMENT__CATEGORIES,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Override feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOverridePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_DerivedTypedElement_override_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_DerivedTypedElement_override_feature", "_UI_DerivedTypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__OVERRIDE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+ childrenFeatures.add(EcorePackage.Literals.ETYPED_ELEMENT__EGENERIC_TYPE);
+ childrenFeatures.add(EcorePackage.Literals.EOPERATION__ETYPE_PARAMETERS);
+ childrenFeatures.add(EcorePackage.Literals.EOPERATION__EPARAMETERS);
+ childrenFeatures.add(EcorePackage.Literals.EOPERATION__EGENERIC_EXCEPTIONS);
+ childrenFeatures.add(EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns FacetOperation.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/FacetOperation")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((FacetOperation)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_FacetOperation_type") : //$NON-NLS-1$
+ getString("_UI_FacetOperation_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(FacetOperation.class)) {
+ case EFacetPackage.FACET_OPERATION__NAME:
+ case EFacetPackage.FACET_OPERATION__ORDERED:
+ case EFacetPackage.FACET_OPERATION__UNIQUE:
+ case EFacetPackage.FACET_OPERATION__LOWER_BOUND:
+ case EFacetPackage.FACET_OPERATION__UPPER_BOUND:
+ case EFacetPackage.FACET_OPERATION__MANY:
+ case EFacetPackage.FACET_OPERATION__REQUIRED:
+ case EFacetPackage.FACET_OPERATION__DOCUMENTATION:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case EFacetPackage.FACET_OPERATION__EANNOTATIONS:
+ case EFacetPackage.FACET_OPERATION__EGENERIC_TYPE:
+ case EFacetPackage.FACET_OPERATION__ETYPE_PARAMETERS:
+ case EFacetPackage.FACET_OPERATION__EPARAMETERS:
+ case EFacetPackage.FACET_OPERATION__EGENERIC_EXCEPTIONS:
+ case EFacetPackage.FACET_OPERATION__QUERY:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createNavigationQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createIsOneOfQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createStringLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createTrueLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createFalseLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createNullLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createIntegerLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createFloatLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createEObjectLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createOperationCallQuery()));
+ }
+
+ /**
+ * Return the resource locator for this item provider's resources.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ResourceLocator getResourceLocator() {
+ return Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetReferenceItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetReferenceItemProvider.java
new file mode 100644
index 00000000000..bd3974e651a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetReferenceItemProvider.java
@@ -0,0 +1,805 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.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.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+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.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryFactory;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class FacetReferenceItemProvider
+ 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 FacetReferenceItemProvider(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);
+ addOrderedPropertyDescriptor(object);
+ addUniquePropertyDescriptor(object);
+ addLowerBoundPropertyDescriptor(object);
+ addUpperBoundPropertyDescriptor(object);
+ addManyPropertyDescriptor(object);
+ addRequiredPropertyDescriptor(object);
+ addETypePropertyDescriptor(object);
+ addChangeablePropertyDescriptor(object);
+ addVolatilePropertyDescriptor(object);
+ addTransientPropertyDescriptor(object);
+ addDefaultValueLiteralPropertyDescriptor(object);
+ addDefaultValuePropertyDescriptor(object);
+ addUnsettablePropertyDescriptor(object);
+ addDerivedPropertyDescriptor(object);
+ addContainmentPropertyDescriptor(object);
+ addContainerPropertyDescriptor(object);
+ addResolveProxiesPropertyDescriptor(object);
+ addEOppositePropertyDescriptor(object);
+ addEReferenceTypePropertyDescriptor(object);
+ addEKeysPropertyDescriptor(object);
+ addDocumentationPropertyDescriptor(object);
+ addCategoriesPropertyDescriptor(object);
+ addOverridePropertyDescriptor(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_ENamedElement_name_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ENamedElement_name_feature", "_UI_ENamedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ENAMED_ELEMENT__NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Ordered feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOrderedPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_ordered_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_ordered_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ORDERED,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Unique feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUniquePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_unique_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_unique_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UNIQUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Lower Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addLowerBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_lowerBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_lowerBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__LOWER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Upper Bound feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUpperBoundPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_upperBound_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_upperBound_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__UPPER_BOUND,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Many feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addManyPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_many_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_many_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__MANY,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Required feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addRequiredPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_required_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_required_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__REQUIRED,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EType feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addETypePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElement_eType_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElement_eType_feature", "_UI_ETypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ETYPED_ELEMENT__ETYPE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Changeable feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addChangeablePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_changeable_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_changeable_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__CHANGEABLE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Volatile feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addVolatilePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_volatile_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_volatile_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__VOLATILE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Transient feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addTransientPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_transient_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_transient_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__TRANSIENT,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Default Value Literal feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDefaultValueLiteralPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_defaultValueLiteral_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_defaultValueLiteral_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__DEFAULT_VALUE_LITERAL,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Default Value feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDefaultValuePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_defaultValue_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_defaultValue_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__DEFAULT_VALUE,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Unsettable feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addUnsettablePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_unsettable_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_unsettable_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__UNSETTABLE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Derived feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDerivedPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EStructuralFeature_derived_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EStructuralFeature_derived_feature", "_UI_EStructuralFeature_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ESTRUCTURAL_FEATURE__DERIVED,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Containment feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addContainmentPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EReference_containment_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EReference_containment_feature", "_UI_EReference_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EREFERENCE__CONTAINMENT,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Container feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addContainerPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EReference_container_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EReference_container_feature", "_UI_EReference_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EREFERENCE__CONTAINER,
+ false,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Resolve Proxies feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addResolveProxiesPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EReference_resolveProxies_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EReference_resolveProxies_feature", "_UI_EReference_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EREFERENCE__RESOLVE_PROXIES,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EOpposite feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addEOppositePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EReference_eOpposite_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EReference_eOpposite_feature", "_UI_EReference_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EREFERENCE__EOPPOSITE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EReference Type feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addEReferenceTypePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EReference_eReferenceType_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EReference_eReferenceType_feature", "_UI_EReference_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EREFERENCE__EREFERENCE_TYPE,
+ false,
+ false,
+ false,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EKeys feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addEKeysPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EReference_eKeys_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EReference_eKeys_feature", "_UI_EReference_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EREFERENCE__EKEYS,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Documentation feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDocumentationPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_DocumentedElement_documentation_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_DocumentedElement_documentation_feature", "_UI_DocumentedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.DOCUMENTED_ELEMENT__DOCUMENTATION,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Categories feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addCategoriesPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_FacetElement_categories_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_FacetElement_categories_feature", "_UI_FacetElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.FACET_ELEMENT__CATEGORIES,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Override feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOverridePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_DerivedTypedElement_override_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_DerivedTypedElement_override_feature", "_UI_DerivedTypedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__OVERRIDE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+ childrenFeatures.add(EcorePackage.Literals.ETYPED_ELEMENT__EGENERIC_TYPE);
+ childrenFeatures.add(EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns FacetReference.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/FacetReference")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((FacetReference)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_FacetReference_type") : //$NON-NLS-1$
+ getString("_UI_FacetReference_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(FacetReference.class)) {
+ case EFacetPackage.FACET_REFERENCE__NAME:
+ case EFacetPackage.FACET_REFERENCE__ORDERED:
+ case EFacetPackage.FACET_REFERENCE__UNIQUE:
+ case EFacetPackage.FACET_REFERENCE__LOWER_BOUND:
+ case EFacetPackage.FACET_REFERENCE__UPPER_BOUND:
+ case EFacetPackage.FACET_REFERENCE__MANY:
+ case EFacetPackage.FACET_REFERENCE__REQUIRED:
+ case EFacetPackage.FACET_REFERENCE__CHANGEABLE:
+ case EFacetPackage.FACET_REFERENCE__VOLATILE:
+ case EFacetPackage.FACET_REFERENCE__TRANSIENT:
+ case EFacetPackage.FACET_REFERENCE__DEFAULT_VALUE_LITERAL:
+ case EFacetPackage.FACET_REFERENCE__DEFAULT_VALUE:
+ case EFacetPackage.FACET_REFERENCE__UNSETTABLE:
+ case EFacetPackage.FACET_REFERENCE__DERIVED:
+ case EFacetPackage.FACET_REFERENCE__CONTAINMENT:
+ case EFacetPackage.FACET_REFERENCE__CONTAINER:
+ case EFacetPackage.FACET_REFERENCE__RESOLVE_PROXIES:
+ case EFacetPackage.FACET_REFERENCE__DOCUMENTATION:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case EFacetPackage.FACET_REFERENCE__EANNOTATIONS:
+ case EFacetPackage.FACET_REFERENCE__EGENERIC_TYPE:
+ case EFacetPackage.FACET_REFERENCE__QUERY:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createNavigationQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createIsOneOfQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createStringLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createTrueLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createFalseLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createNullLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createIntegerLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createFloatLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createEObjectLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.DERIVED_TYPED_ELEMENT__QUERY,
+ QueryFactory.eINSTANCE.createOperationCallQuery()));
+ }
+
+ /**
+ * Return the resource locator for this item provider's resources.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ResourceLocator getResourceLocator() {
+ return Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetSetItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetSetItemProvider.java
new file mode 100644
index 00000000000..31e8f139221
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/FacetSetItemProvider.java
@@ -0,0 +1,322 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.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.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+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.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class FacetSetItemProvider
+ 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 FacetSetItemProvider(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);
+ addNsURIPropertyDescriptor(object);
+ addNsPrefixPropertyDescriptor(object);
+ addEFactoryInstancePropertyDescriptor(object);
+ addDocumentationPropertyDescriptor(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_ENamedElement_name_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ENamedElement_name_feature", "_UI_ENamedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.ENAMED_ELEMENT__NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Ns URI feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addNsURIPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EPackage_nsURI_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EPackage_nsURI_feature", "_UI_EPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EPACKAGE__NS_URI,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Ns Prefix feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addNsPrefixPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EPackage_nsPrefix_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EPackage_nsPrefix_feature", "_UI_EPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EPACKAGE__NS_PREFIX,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EFactory Instance feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addEFactoryInstancePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EPackage_eFactoryInstance_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EPackage_eFactoryInstance_feature", "_UI_EPackage_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EcorePackage.Literals.EPACKAGE__EFACTORY_INSTANCE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Documentation feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDocumentationPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_DocumentedElement_documentation_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_DocumentedElement_documentation_feature", "_UI_DocumentedElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.DOCUMENTED_ELEMENT__DOCUMENTATION,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(EcorePackage.Literals.EMODEL_ELEMENT__EANNOTATIONS);
+ childrenFeatures.add(EcorePackage.Literals.EPACKAGE__ECLASSIFIERS);
+ childrenFeatures.add(EcorePackage.Literals.EPACKAGE__ESUBPACKAGES);
+ childrenFeatures.add(EFacetPackage.Literals.FACET_SET__CATEGORIES);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns FacetSet.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/FacetSet")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((FacetSet)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_FacetSet_type") : //$NON-NLS-1$
+ getString("_UI_FacetSet_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(FacetSet.class)) {
+ case EFacetPackage.FACET_SET__NAME:
+ case EFacetPackage.FACET_SET__NS_URI:
+ case EFacetPackage.FACET_SET__NS_PREFIX:
+ case EFacetPackage.FACET_SET__DOCUMENTATION:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case EFacetPackage.FACET_SET__EANNOTATIONS:
+ case EFacetPackage.FACET_SET__ECLASSIFIERS:
+ case EFacetPackage.FACET_SET__ESUBPACKAGES:
+ case EFacetPackage.FACET_SET__CATEGORIES:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EcorePackage.Literals.EPACKAGE__ECLASSIFIERS,
+ EFacetFactory.eINSTANCE.createFacet()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EcorePackage.Literals.EPACKAGE__ESUBPACKAGES,
+ EFacetFactory.eINSTANCE.createFacetSet()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (EFacetPackage.Literals.FACET_SET__CATEGORIES,
+ EFacetFactory.eINSTANCE.createCategory()));
+ }
+
+ /**
+ * Return the resource locator for this item provider's resources.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ResourceLocator getResourceLocator() {
+ return Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/ParameterValueItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/ParameterValueItemProvider.java
new file mode 100644
index 00000000000..7e643d12812
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/provider/ParameterValueItemProvider.java
@@ -0,0 +1,193 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.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.edit.provider.ComposeableAdapterFactory;
+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.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ParameterValueItemProvider
+ 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 ParameterValueItemProvider(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);
+
+ addParameterPropertyDescriptor(object);
+ addValuePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Parameter feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addParameterPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ParameterValue_parameter_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ParameterValue_parameter_feature", "_UI_ParameterValue_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.PARAMETER_VALUE__PARAMETER,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Value feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addValuePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ParameterValue_value_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ParameterValue_value_feature", "_UI_ParameterValue_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ EFacetPackage.Literals.PARAMETER_VALUE__VALUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This returns ParameterValue.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/ParameterValue")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ Object labelValue = ((ParameterValue)object).getValue();
+ String label = labelValue == null ? null : labelValue.toString();
+ return label == null || label.length() == 0 ?
+ getString("_UI_ParameterValue_type") : //$NON-NLS-1$
+ getString("_UI_ParameterValue_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(ParameterValue.class)) {
+ case EFacetPackage.PARAMETER_VALUE__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 Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/EObjectLiteralQueryItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/EObjectLiteralQueryItemProvider.java
new file mode 100644
index 00000000000..5ac9bbb5822
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/EObjectLiteralQueryItemProvider.java
@@ -0,0 +1,170 @@
+/**
+ * Copyright (c) 2011-2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 372626 - [Facet] Aggregates
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.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.edit.provider.ComposeableAdapterFactory;
+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.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.provider.QueryItemProvider;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.EObjectLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.EObjectLiteralQuery} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class EObjectLiteralQueryItemProvider
+ extends QueryItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EObjectLiteralQueryItemProvider(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);
+
+ addElementPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Element feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addElementPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_EObjectLiteralQuery_element_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_EObjectLiteralQuery_element_feature", "_UI_EObjectLiteralQuery_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ QueryPackage.Literals.EOBJECT_LITERAL_QUERY__ELEMENT,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This returns EObjectLiteralQuery.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/EObjectLiteralQuery")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ EObjectLiteralQuery eObjectLiteralQuery = (EObjectLiteralQuery)object;
+ return getString("_UI_EObjectLiteralQuery_type") + " " + eObjectLiteralQuery.isCanHaveSideEffects(); //$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);
+ 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 Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/FalseLiteralQueryItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/FalseLiteralQueryItemProvider.java
new file mode 100644
index 00000000000..d9d84163e8b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/FalseLiteralQueryItemProvider.java
@@ -0,0 +1,137 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.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.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.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.provider.QueryItemProvider;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FalseLiteralQuery;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FalseLiteralQuery} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class FalseLiteralQueryItemProvider
+ extends QueryItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FalseLiteralQueryItemProvider(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);
+
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This returns FalseLiteralQuery.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/FalseLiteralQuery")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ FalseLiteralQuery falseLiteralQuery = (FalseLiteralQuery)object;
+ return getString("_UI_FalseLiteralQuery_type") + " " + falseLiteralQuery.isCanHaveSideEffects(); //$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);
+ 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 Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/FloatLiteralQueryItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/FloatLiteralQueryItemProvider.java
new file mode 100644
index 00000000000..20c968825f5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/FloatLiteralQueryItemProvider.java
@@ -0,0 +1,178 @@
+/**
+ * Copyright (c) 2011-2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 372626 - [Facet] Aggregates
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.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.edit.provider.ComposeableAdapterFactory;
+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.ViewerNotification;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.provider.QueryItemProvider;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FloatLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FloatLiteralQuery} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class FloatLiteralQueryItemProvider
+ extends QueryItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FloatLiteralQueryItemProvider(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);
+
+ addValuePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Value feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addValuePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_FloatLiteralQuery_value_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_FloatLiteralQuery_value_feature", "_UI_FloatLiteralQuery_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ QueryPackage.Literals.FLOAT_LITERAL_QUERY__VALUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.REAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This returns FloatLiteralQuery.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/FloatLiteralQuery")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ FloatLiteralQuery floatLiteralQuery = (FloatLiteralQuery)object;
+ return getString("_UI_FloatLiteralQuery_type") + " " + floatLiteralQuery.isCanHaveSideEffects(); //$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(FloatLiteralQuery.class)) {
+ case QueryPackage.FLOAT_LITERAL_QUERY__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 Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/IntegerLiteralQueryItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/IntegerLiteralQueryItemProvider.java
new file mode 100644
index 00000000000..f572878b467
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/IntegerLiteralQueryItemProvider.java
@@ -0,0 +1,178 @@
+/**
+ * Copyright (c) 2011-2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 372626 - [Facet] Aggregates
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.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.edit.provider.ComposeableAdapterFactory;
+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.ViewerNotification;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.provider.QueryItemProvider;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IntegerLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IntegerLiteralQuery} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IntegerLiteralQueryItemProvider
+ extends QueryItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IntegerLiteralQueryItemProvider(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);
+
+ addValuePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Value feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addValuePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_IntegerLiteralQuery_value_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_IntegerLiteralQuery_value_feature", "_UI_IntegerLiteralQuery_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ QueryPackage.Literals.INTEGER_LITERAL_QUERY__VALUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This returns IntegerLiteralQuery.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/IntegerLiteralQuery")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ IntegerLiteralQuery integerLiteralQuery = (IntegerLiteralQuery)object;
+ return getString("_UI_IntegerLiteralQuery_type") + " " + integerLiteralQuery.isCanHaveSideEffects(); //$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(IntegerLiteralQuery.class)) {
+ case QueryPackage.INTEGER_LITERAL_QUERY__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 Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/IsOneOfQueryItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/IsOneOfQueryItemProvider.java
new file mode 100644
index 00000000000..7330a336218
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/IsOneOfQueryItemProvider.java
@@ -0,0 +1,161 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.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.edit.provider.ComposeableAdapterFactory;
+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.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.provider.QueryItemProvider;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class IsOneOfQueryItemProvider
+ extends QueryItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IsOneOfQueryItemProvider(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);
+
+ addExpectedEObjectsPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Expected EObjects feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addExpectedEObjectsPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_IsOneOfQuery_expectedEObjects_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_IsOneOfQuery_expectedEObjects_feature", "_UI_IsOneOfQuery_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ QueryPackage.Literals.IS_ONE_OF_QUERY__EXPECTED_EOBJECTS,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This returns IsOneOfQuery.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/IsOneOfQuery")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ IsOneOfQuery isOneOfQuery = (IsOneOfQuery)object;
+ return getString("_UI_IsOneOfQuery_type") + " " + isOneOfQuery.isCanHaveSideEffects(); //$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);
+ 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 Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/NavigationQueryItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/NavigationQueryItemProvider.java
new file mode 100644
index 00000000000..14b669336b0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/NavigationQueryItemProvider.java
@@ -0,0 +1,192 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.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.edit.provider.ComposeableAdapterFactory;
+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.ViewerNotification;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.provider.QueryItemProvider;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class NavigationQueryItemProvider
+ extends QueryItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NavigationQueryItemProvider(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);
+
+ addPathPropertyDescriptor(object);
+ addFailOnErrorPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Path feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addPathPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_NavigationQuery_path_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_NavigationQuery_path_feature", "_UI_NavigationQuery_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ QueryPackage.Literals.NAVIGATION_QUERY__PATH,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Fail On Error feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addFailOnErrorPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_NavigationQuery_failOnError_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_NavigationQuery_failOnError_feature", "_UI_NavigationQuery_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ QueryPackage.Literals.NAVIGATION_QUERY__FAIL_ON_ERROR,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This returns NavigationQuery.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/NavigationQuery")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ NavigationQuery navigationQuery = (NavigationQuery)object;
+ return getString("_UI_NavigationQuery_type") + " " + navigationQuery.isCanHaveSideEffects(); //$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(NavigationQuery.class)) {
+ case QueryPackage.NAVIGATION_QUERY__FAIL_ON_ERROR:
+ 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 Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/NullLiteralQueryItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/NullLiteralQueryItemProvider.java
new file mode 100644
index 00000000000..0a7e9eeb6cc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/NullLiteralQueryItemProvider.java
@@ -0,0 +1,137 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.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.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.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.provider.QueryItemProvider;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NullLiteralQuery;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NullLiteralQuery} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class NullLiteralQueryItemProvider
+ extends QueryItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NullLiteralQueryItemProvider(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);
+
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This returns NullLiteralQuery.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/NullLiteralQuery")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ NullLiteralQuery nullLiteralQuery = (NullLiteralQuery)object;
+ return getString("_UI_NullLiteralQuery_type") + " " + nullLiteralQuery.isCanHaveSideEffects(); //$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);
+ 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 Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/OperationCallQueryItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/OperationCallQueryItemProvider.java
new file mode 100644
index 00000000000..97698ba5800
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/OperationCallQueryItemProvider.java
@@ -0,0 +1,261 @@
+/**
+ * Copyright (c) 2011-2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 372626 - [Facet] Aggregates
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.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.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+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.ViewerNotification;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.provider.QueryItemProvider;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class OperationCallQueryItemProvider
+ extends QueryItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public OperationCallQueryItemProvider(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);
+
+ addOperationPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Operation feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addOperationPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_OperationCallQuery_operation_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_OperationCallQuery_operation_feature", "_UI_OperationCallQuery_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ QueryPackage.Literals.OPERATION_CALL_QUERY__OPERATION,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(QueryPackage.Literals.OPERATION_CALL_QUERY__ARGUMENTS);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns OperationCallQuery.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/OperationCallQuery")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ OperationCallQuery operationCallQuery = (OperationCallQuery)object;
+ return getString("_UI_OperationCallQuery_type") + " " + operationCallQuery.isCanHaveSideEffects(); //$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(OperationCallQuery.class)) {
+ case QueryPackage.OPERATION_CALL_QUERY__ARGUMENTS:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (QueryPackage.Literals.OPERATION_CALL_QUERY__ARGUMENTS,
+ QueryFactory.eINSTANCE.createNavigationQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (QueryPackage.Literals.OPERATION_CALL_QUERY__ARGUMENTS,
+ QueryFactory.eINSTANCE.createIsOneOfQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (QueryPackage.Literals.OPERATION_CALL_QUERY__ARGUMENTS,
+ QueryFactory.eINSTANCE.createStringLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (QueryPackage.Literals.OPERATION_CALL_QUERY__ARGUMENTS,
+ QueryFactory.eINSTANCE.createTrueLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (QueryPackage.Literals.OPERATION_CALL_QUERY__ARGUMENTS,
+ QueryFactory.eINSTANCE.createFalseLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (QueryPackage.Literals.OPERATION_CALL_QUERY__ARGUMENTS,
+ QueryFactory.eINSTANCE.createNullLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (QueryPackage.Literals.OPERATION_CALL_QUERY__ARGUMENTS,
+ QueryFactory.eINSTANCE.createIntegerLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (QueryPackage.Literals.OPERATION_CALL_QUERY__ARGUMENTS,
+ QueryFactory.eINSTANCE.createFloatLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (QueryPackage.Literals.OPERATION_CALL_QUERY__ARGUMENTS,
+ QueryFactory.eINSTANCE.createEObjectLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (QueryPackage.Literals.OPERATION_CALL_QUERY__ARGUMENTS,
+ QueryFactory.eINSTANCE.createOperationCallQuery()));
+ }
+
+ /**
+ * Return the resource locator for this item provider's resources.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ResourceLocator getResourceLocator() {
+ return Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/QueryItemProviderAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/QueryItemProviderAdapterFactory.java
new file mode 100644
index 00000000000..004e78c7be2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/QueryItemProviderAdapterFactory.java
@@ -0,0 +1,428 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.util.QueryAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class QueryItemProviderAdapterFactory extends QueryAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+ /**
+ * This keeps track of the root adapter factory that delegates to this adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ComposedAdapterFactory parentAdapterFactory;
+
+ /**
+ * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+ /**
+ * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+ /**
+ * This constructs an instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public QueryItemProviderAdapterFactory() {
+ supportedTypes.add(IEditingDomainItemProvider.class);
+ supportedTypes.add(IStructuredItemContentProvider.class);
+ supportedTypes.add(ITreeItemContentProvider.class);
+ supportedTypes.add(IItemLabelProvider.class);
+ supportedTypes.add(IItemPropertySource.class);
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected NavigationQueryItemProvider navigationQueryItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createNavigationQueryAdapter() {
+ if (navigationQueryItemProvider == null) {
+ navigationQueryItemProvider = new NavigationQueryItemProvider(this);
+ }
+
+ return navigationQueryItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsOneOfQueryItemProvider isOneOfQueryItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createIsOneOfQueryAdapter() {
+ if (isOneOfQueryItemProvider == null) {
+ isOneOfQueryItemProvider = new IsOneOfQueryItemProvider(this);
+ }
+
+ return isOneOfQueryItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected StringLiteralQueryItemProvider stringLiteralQueryItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createStringLiteralQueryAdapter() {
+ if (stringLiteralQueryItemProvider == null) {
+ stringLiteralQueryItemProvider = new StringLiteralQueryItemProvider(this);
+ }
+
+ return stringLiteralQueryItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.TrueLiteralQuery} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TrueLiteralQueryItemProvider trueLiteralQueryItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.TrueLiteralQuery}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createTrueLiteralQueryAdapter() {
+ if (trueLiteralQueryItemProvider == null) {
+ trueLiteralQueryItemProvider = new TrueLiteralQueryItemProvider(this);
+ }
+
+ return trueLiteralQueryItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FalseLiteralQuery} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FalseLiteralQueryItemProvider falseLiteralQueryItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FalseLiteralQuery}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createFalseLiteralQueryAdapter() {
+ if (falseLiteralQueryItemProvider == null) {
+ falseLiteralQueryItemProvider = new FalseLiteralQueryItemProvider(this);
+ }
+
+ return falseLiteralQueryItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NullLiteralQuery} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected NullLiteralQueryItemProvider nullLiteralQueryItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NullLiteralQuery}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createNullLiteralQueryAdapter() {
+ if (nullLiteralQueryItemProvider == null) {
+ nullLiteralQueryItemProvider = new NullLiteralQueryItemProvider(this);
+ }
+
+ return nullLiteralQueryItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IntegerLiteralQuery} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IntegerLiteralQueryItemProvider integerLiteralQueryItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IntegerLiteralQuery}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createIntegerLiteralQueryAdapter() {
+ if (integerLiteralQueryItemProvider == null) {
+ integerLiteralQueryItemProvider = new IntegerLiteralQueryItemProvider(this);
+ }
+
+ return integerLiteralQueryItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FloatLiteralQuery} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FloatLiteralQueryItemProvider floatLiteralQueryItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FloatLiteralQuery}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createFloatLiteralQueryAdapter() {
+ if (floatLiteralQueryItemProvider == null) {
+ floatLiteralQueryItemProvider = new FloatLiteralQueryItemProvider(this);
+ }
+
+ return floatLiteralQueryItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.EObjectLiteralQuery} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EObjectLiteralQueryItemProvider eObjectLiteralQueryItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.EObjectLiteralQuery}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createEObjectLiteralQueryAdapter() {
+ if (eObjectLiteralQueryItemProvider == null) {
+ eObjectLiteralQueryItemProvider = new EObjectLiteralQueryItemProvider(this);
+ }
+
+ return eObjectLiteralQueryItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected OperationCallQueryItemProvider operationCallQueryItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createOperationCallQueryAdapter() {
+ if (operationCallQueryItemProvider == null) {
+ operationCallQueryItemProvider = new OperationCallQueryItemProvider(this);
+ }
+
+ return operationCallQueryItemProvider;
+ }
+
+ /**
+ * This returns the root adapter factory that contains this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ComposeableAdapterFactory getRootAdapterFactory() {
+ return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+ }
+
+ /**
+ * This sets the composed adapter factory that contains this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+ this.parentAdapterFactory = parentAdapterFactory;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object type) {
+ return supportedTypes.contains(type) || super.isFactoryForType(type);
+ }
+
+ /**
+ * This implementation substitutes the factory itself as the key for the adapter.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter adapt(Notifier notifier, Object type) {
+ return super.adapt(notifier, this);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object adapt(Object object, Object type) {
+ if (isFactoryForType(type)) {
+ Object adapter = super.adapt(object, type);
+ if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+ return adapter;
+ }
+ }
+
+ return null;
+ }
+
+ /**
+ * This adds a listener.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void addListener(INotifyChangedListener notifyChangedListener) {
+ changeNotifier.addListener(notifyChangedListener);
+ }
+
+ /**
+ * This removes a listener.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void removeListener(INotifyChangedListener notifyChangedListener) {
+ changeNotifier.removeListener(notifyChangedListener);
+ }
+
+ /**
+ * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void fireNotifyChanged(Notification notification) {
+ changeNotifier.fireNotifyChanged(notification);
+
+ if (parentAdapterFactory != null) {
+ parentAdapterFactory.fireNotifyChanged(notification);
+ }
+ }
+
+ /**
+ * This disposes all of the item providers created by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void dispose() {
+ if (navigationQueryItemProvider != null) navigationQueryItemProvider.dispose();
+ if (isOneOfQueryItemProvider != null) isOneOfQueryItemProvider.dispose();
+ if (stringLiteralQueryItemProvider != null) stringLiteralQueryItemProvider.dispose();
+ if (trueLiteralQueryItemProvider != null) trueLiteralQueryItemProvider.dispose();
+ if (falseLiteralQueryItemProvider != null) falseLiteralQueryItemProvider.dispose();
+ if (nullLiteralQueryItemProvider != null) nullLiteralQueryItemProvider.dispose();
+ if (integerLiteralQueryItemProvider != null) integerLiteralQueryItemProvider.dispose();
+ if (floatLiteralQueryItemProvider != null) floatLiteralQueryItemProvider.dispose();
+ if (eObjectLiteralQueryItemProvider != null) eObjectLiteralQueryItemProvider.dispose();
+ if (operationCallQueryItemProvider != null) operationCallQueryItemProvider.dispose();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/StringLiteralQueryItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/StringLiteralQueryItemProvider.java
new file mode 100644
index 00000000000..c9ec34d41cb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/StringLiteralQueryItemProvider.java
@@ -0,0 +1,169 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.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.edit.provider.ComposeableAdapterFactory;
+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.ViewerNotification;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.provider.QueryItemProvider;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class StringLiteralQueryItemProvider
+ extends QueryItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StringLiteralQueryItemProvider(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);
+
+ addValuePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Value feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addValuePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_StringLiteralQuery_value_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_StringLiteralQuery_value_feature", "_UI_StringLiteralQuery_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ QueryPackage.Literals.STRING_LITERAL_QUERY__VALUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This returns StringLiteralQuery.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/StringLiteralQuery")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ StringLiteralQuery stringLiteralQuery = (StringLiteralQuery)object;
+ return getString("_UI_StringLiteralQuery_type") + " " + stringLiteralQuery.isCanHaveSideEffects(); //$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(StringLiteralQuery.class)) {
+ case QueryPackage.STRING_LITERAL_QUERY__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 Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/TrueLiteralQueryItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/TrueLiteralQueryItemProvider.java
new file mode 100644
index 00000000000..16c8795974a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/provider/TrueLiteralQueryItemProvider.java
@@ -0,0 +1,137 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.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.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.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.provider.QueryItemProvider;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.TrueLiteralQuery;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.TrueLiteralQuery} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class TrueLiteralQueryItemProvider
+ extends QueryItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TrueLiteralQueryItemProvider(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);
+
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This returns TrueLiteralQuery.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/TrueLiteralQuery")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ TrueLiteralQuery trueLiteralQuery = (TrueLiteralQuery)object;
+ return getString("_UI_TrueLiteralQuery_type") + " " + trueLiteralQuery.isCanHaveSideEffects(); //$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);
+ 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 Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementEObjectListResultItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementEObjectListResultItemProvider.java
new file mode 100644
index 00000000000..daee57933ef
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementEObjectListResultItemProvider.java
@@ -0,0 +1,151 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.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.edit.provider.ComposeableAdapterFactory;
+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.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ETypedElementEObjectListResultItemProvider
+ extends ETypedElementResultItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ETypedElementEObjectListResultItemProvider(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);
+
+ addResultListPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Result List feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addResultListPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElementEObjectListResult_resultList_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElementEObjectListResult_resultList_feature", "_UI_ETypedElementEObjectListResult_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ RuntimePackage.Literals.ETYPED_ELEMENT_EOBJECT_LIST_RESULT__RESULT_LIST,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This returns ETypedElementEObjectListResult.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/ETypedElementEObjectListResult")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ Throwable labelValue = ((ETypedElementEObjectListResult<?>)object).getException();
+ String label = labelValue == null ? null : labelValue.toString();
+ return label == null || label.length() == 0 ?
+ getString("_UI_ETypedElementEObjectListResult_type") : //$NON-NLS-1$
+ getString("_UI_ETypedElementEObjectListResult_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);
+ 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);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementEObjectResultItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementEObjectResultItemProvider.java
new file mode 100644
index 00000000000..b6a4041cc2f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementEObjectResultItemProvider.java
@@ -0,0 +1,151 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.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.edit.provider.ComposeableAdapterFactory;
+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.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ETypedElementEObjectResultItemProvider
+ extends ETypedElementResultItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ETypedElementEObjectResultItemProvider(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);
+
+ addResultPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Result feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addResultPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElementEObjectResult_result_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElementEObjectResult_result_feature", "_UI_ETypedElementEObjectResult_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ RuntimePackage.Literals.ETYPED_ELEMENT_EOBJECT_RESULT__RESULT,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This returns ETypedElementEObjectResult.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/ETypedElementEObjectResult")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ Throwable labelValue = ((ETypedElementEObjectResult<?>)object).getException();
+ String label = labelValue == null ? null : labelValue.toString();
+ return label == null || label.length() == 0 ?
+ getString("_UI_ETypedElementEObjectResult_type") : //$NON-NLS-1$
+ getString("_UI_ETypedElementEObjectResult_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);
+ 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);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementPrimitiveTypeListResultItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementPrimitiveTypeListResultItemProvider.java
new file mode 100644
index 00000000000..365738ffe52
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementPrimitiveTypeListResultItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.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.edit.provider.ComposeableAdapterFactory;
+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.ViewerNotification;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ETypedElementPrimitiveTypeListResultItemProvider
+ extends ETypedElementResultItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ETypedElementPrimitiveTypeListResultItemProvider(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);
+
+ addResultListPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Result List feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addResultListPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElementPrimitiveTypeListResult_resultList_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElementPrimitiveTypeListResult_resultList_feature", "_UI_ETypedElementPrimitiveTypeListResult_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ RuntimePackage.Literals.ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT__RESULT_LIST,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This returns ETypedElementPrimitiveTypeListResult.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/ETypedElementPrimitiveTypeListResult")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ Throwable labelValue = ((ETypedElementPrimitiveTypeListResult<?>)object).getException();
+ String label = labelValue == null ? null : labelValue.toString();
+ return label == null || label.length() == 0 ?
+ getString("_UI_ETypedElementPrimitiveTypeListResult_type") : //$NON-NLS-1$
+ getString("_UI_ETypedElementPrimitiveTypeListResult_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(ETypedElementPrimitiveTypeListResult.class)) {
+ case RuntimePackage.ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT__RESULT_LIST:
+ 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);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementPrimitiveTypeResultItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementPrimitiveTypeResultItemProvider.java
new file mode 100644
index 00000000000..6c19c8ba397
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementPrimitiveTypeResultItemProvider.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.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.edit.provider.ComposeableAdapterFactory;
+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.ViewerNotification;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ETypedElementPrimitiveTypeResultItemProvider
+ extends ETypedElementResultItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ETypedElementPrimitiveTypeResultItemProvider(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);
+
+ addResultPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Result feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addResultPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElementPrimitiveTypeResult_result_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElementPrimitiveTypeResult_result_feature", "_UI_ETypedElementPrimitiveTypeResult_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ RuntimePackage.Literals.ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT__RESULT,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This returns ETypedElementPrimitiveTypeResult.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/ETypedElementPrimitiveTypeResult")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ Throwable labelValue = ((ETypedElementPrimitiveTypeResult<?>)object).getException();
+ String label = labelValue == null ? null : labelValue.toString();
+ return label == null || label.length() == 0 ?
+ getString("_UI_ETypedElementPrimitiveTypeResult_type") : //$NON-NLS-1$
+ getString("_UI_ETypedElementPrimitiveTypeResult_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(ETypedElementPrimitiveTypeResult.class)) {
+ case RuntimePackage.ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT__RESULT:
+ 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);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementResultItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementResultItemProvider.java
new file mode 100644
index 00000000000..62bb704d006
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/ETypedElementResultItemProvider.java
@@ -0,0 +1,248 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.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.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+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.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ETypedElementResultItemProvider
+ 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 ETypedElementResultItemProvider(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);
+
+ addDerivedTypedElementPropertyDescriptor(object);
+ addSourcePropertyDescriptor(object);
+ addExceptionPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Derived Typed Element feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDerivedTypedElementPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElementResult_derivedTypedElement_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElementResult_derivedTypedElement_feature", "_UI_ETypedElementResult_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ RuntimePackage.Literals.ETYPED_ELEMENT_RESULT__DERIVED_TYPED_ELEMENT,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Source feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addSourcePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElementResult_source_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElementResult_source_feature", "_UI_ETypedElementResult_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ RuntimePackage.Literals.ETYPED_ELEMENT_RESULT__SOURCE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Exception feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addExceptionPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ETypedElementResult_exception_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ETypedElementResult_exception_feature", "_UI_ETypedElementResult_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ RuntimePackage.Literals.ETYPED_ELEMENT_RESULT__EXCEPTION,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(RuntimePackage.Literals.ETYPED_ELEMENT_RESULT__PARAMETER_VALUES);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ Throwable labelValue = ((ETypedElementResult)object).getException();
+ String label = labelValue == null ? null : labelValue.toString();
+ return label == null || label.length() == 0 ?
+ getString("_UI_ETypedElementResult_type") : //$NON-NLS-1$
+ getString("_UI_ETypedElementResult_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(ETypedElementResult.class)) {
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__EXCEPTION:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__PARAMETER_VALUES:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (RuntimePackage.Literals.ETYPED_ELEMENT_RESULT__PARAMETER_VALUES,
+ EFacetFactory.eINSTANCE.createParameterValue()));
+ }
+
+ /**
+ * Return the resource locator for this item provider's resources.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ResourceLocator getResourceLocator() {
+ return Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/RuntimeItemProviderAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/RuntimeItemProviderAdapterFactory.java
new file mode 100644
index 00000000000..173fa59c787
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/provider/RuntimeItemProviderAdapterFactory.java
@@ -0,0 +1,286 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.util.RuntimeAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class RuntimeItemProviderAdapterFactory extends RuntimeAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+ /**
+ * This keeps track of the root adapter factory that delegates to this adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ComposedAdapterFactory parentAdapterFactory;
+
+ /**
+ * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+ /**
+ * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+ /**
+ * This constructs an instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public RuntimeItemProviderAdapterFactory() {
+ supportedTypes.add(IEditingDomainItemProvider.class);
+ supportedTypes.add(IStructuredItemContentProvider.class);
+ supportedTypes.add(ITreeItemContentProvider.class);
+ supportedTypes.add(IItemLabelProvider.class);
+ supportedTypes.add(IItemPropertySource.class);
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ETypedElementPrimitiveTypeResultItemProvider eTypedElementPrimitiveTypeResultItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createETypedElementPrimitiveTypeResultAdapter() {
+ if (eTypedElementPrimitiveTypeResultItemProvider == null) {
+ eTypedElementPrimitiveTypeResultItemProvider = new ETypedElementPrimitiveTypeResultItemProvider(this);
+ }
+
+ return eTypedElementPrimitiveTypeResultItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ETypedElementEObjectResultItemProvider eTypedElementEObjectResultItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createETypedElementEObjectResultAdapter() {
+ if (eTypedElementEObjectResultItemProvider == null) {
+ eTypedElementEObjectResultItemProvider = new ETypedElementEObjectResultItemProvider(this);
+ }
+
+ return eTypedElementEObjectResultItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ETypedElementPrimitiveTypeListResultItemProvider eTypedElementPrimitiveTypeListResultItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createETypedElementPrimitiveTypeListResultAdapter() {
+ if (eTypedElementPrimitiveTypeListResultItemProvider == null) {
+ eTypedElementPrimitiveTypeListResultItemProvider = new ETypedElementPrimitiveTypeListResultItemProvider(this);
+ }
+
+ return eTypedElementPrimitiveTypeListResultItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ETypedElementEObjectListResultItemProvider eTypedElementEObjectListResultItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createETypedElementEObjectListResultAdapter() {
+ if (eTypedElementEObjectListResultItemProvider == null) {
+ eTypedElementEObjectListResultItemProvider = new ETypedElementEObjectListResultItemProvider(this);
+ }
+
+ return eTypedElementEObjectListResultItemProvider;
+ }
+
+ /**
+ * This returns the root adapter factory that contains this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ComposeableAdapterFactory getRootAdapterFactory() {
+ return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+ }
+
+ /**
+ * This sets the composed adapter factory that contains this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+ this.parentAdapterFactory = parentAdapterFactory;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object type) {
+ return supportedTypes.contains(type) || super.isFactoryForType(type);
+ }
+
+ /**
+ * This implementation substitutes the factory itself as the key for the adapter.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter adapt(Notifier notifier, Object type) {
+ return super.adapt(notifier, this);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object adapt(Object object, Object type) {
+ if (isFactoryForType(type)) {
+ Object adapter = super.adapt(object, type);
+ if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+ return adapter;
+ }
+ }
+
+ return null;
+ }
+
+ /**
+ * This adds a listener.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void addListener(INotifyChangedListener notifyChangedListener) {
+ changeNotifier.addListener(notifyChangedListener);
+ }
+
+ /**
+ * This removes a listener.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void removeListener(INotifyChangedListener notifyChangedListener) {
+ changeNotifier.removeListener(notifyChangedListener);
+ }
+
+ /**
+ * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void fireNotifyChanged(Notification notification) {
+ changeNotifier.fireNotifyChanged(notification);
+
+ if (parentAdapterFactory != null) {
+ parentAdapterFactory.fireNotifyChanged(notification);
+ }
+ }
+
+ /**
+ * This disposes all of the item providers created by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void dispose() {
+ if (eTypedElementPrimitiveTypeResultItemProvider != null) eTypedElementPrimitiveTypeResultItemProvider.dispose();
+ if (eTypedElementEObjectResultItemProvider != null) eTypedElementEObjectResultItemProvider.dispose();
+ if (eTypedElementPrimitiveTypeListResultItemProvider != null) eTypedElementPrimitiveTypeListResultItemProvider.dispose();
+ if (eTypedElementEObjectListResultItemProvider != null) eTypedElementEObjectListResultItemProvider.dispose();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/AbstractAttributeInstanceItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/AbstractAttributeInstanceItemProvider.java
new file mode 100644
index 00000000000..f6e2dc841f6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/AbstractAttributeInstanceItemProvider.java
@@ -0,0 +1,158 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.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.edit.provider.ComposeableAdapterFactory;
+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.ItemProviderAdapter;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class AbstractAttributeInstanceItemProvider
+ 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 AbstractAttributeInstanceItemProvider(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);
+
+ addEAttributePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * 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_AbstractAttributeInstance_eAttribute_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_AbstractAttributeInstance_eAttribute_feature", "_UI_AbstractAttributeInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ SerializationPackage.Literals.ABSTRACT_ATTRIBUTE_INSTANCE__EATTRIBUTE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This returns AbstractAttributeInstance.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/AbstractAttributeInstance")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ return getString("_UI_AbstractAttributeInstance_type"); //$NON-NLS-1$
+ }
+
+ /**
+ * 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);
+ 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 Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/AbstractReferenceInstanceItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/AbstractReferenceInstanceItemProvider.java
new file mode 100644
index 00000000000..064b0df286a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/AbstractReferenceInstanceItemProvider.java
@@ -0,0 +1,158 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.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.edit.provider.ComposeableAdapterFactory;
+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.ItemProviderAdapter;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class AbstractReferenceInstanceItemProvider
+ 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 AbstractReferenceInstanceItemProvider(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);
+
+ addEReferencePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the EReference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addEReferencePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_AbstractReferenceInstance_eReference_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_AbstractReferenceInstance_eReference_feature", "_UI_AbstractReferenceInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ SerializationPackage.Literals.ABSTRACT_REFERENCE_INSTANCE__EREFERENCE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This returns AbstractReferenceInstance.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/AbstractReferenceInstance")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ return getString("_UI_AbstractReferenceInstance_type"); //$NON-NLS-1$
+ }
+
+ /**
+ * 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);
+ 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 Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/ExtendedEObjectReferenceItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/ExtendedEObjectReferenceItemProvider.java
new file mode 100644
index 00000000000..e22d6d72160
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/ExtendedEObjectReferenceItemProvider.java
@@ -0,0 +1,240 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.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.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+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.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.provider.Efacet2EditPlugin;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ExtendedEObjectReferenceItemProvider
+ 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 ExtendedEObjectReferenceItemProvider(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);
+
+ addExtendedEObjectPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Extended EObject feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addExtendedEObjectPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_ExtendedEObjectReference_extendedEObject_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_ExtendedEObjectReference_extendedEObject_feature", "_UI_ExtendedEObjectReference_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ SerializationPackage.Literals.EXTENDED_EOBJECT_REFERENCE__EXTENDED_EOBJECT,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(SerializationPackage.Literals.EXTENDED_EOBJECT_REFERENCE__ATTRIBUTE_INSTANCES);
+ childrenFeatures.add(SerializationPackage.Literals.EXTENDED_EOBJECT_REFERENCE__REFERENCE_INSTANCES);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns ExtendedEObjectReference.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/ExtendedEObjectReference")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ return getString("_UI_ExtendedEObjectReference_type"); //$NON-NLS-1$
+ }
+
+ /**
+ * 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(ExtendedEObjectReference.class)) {
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE__ATTRIBUTE_INSTANCES:
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE__REFERENCE_INSTANCES:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.EXTENDED_EOBJECT_REFERENCE__ATTRIBUTE_INSTANCES,
+ SerializationFactory.eINSTANCE.createAbstractAttributeInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.EXTENDED_EOBJECT_REFERENCE__ATTRIBUTE_INSTANCES,
+ SerializationFactory.eINSTANCE.createSingleValuedAttributeInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.EXTENDED_EOBJECT_REFERENCE__ATTRIBUTE_INSTANCES,
+ SerializationFactory.eINSTANCE.createMultiValuedAttributeInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.EXTENDED_EOBJECT_REFERENCE__REFERENCE_INSTANCES,
+ SerializationFactory.eINSTANCE.createAbstractReferenceInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.EXTENDED_EOBJECT_REFERENCE__REFERENCE_INSTANCES,
+ SerializationFactory.eINSTANCE.createMultiValuedContainmentReferenceInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.EXTENDED_EOBJECT_REFERENCE__REFERENCE_INSTANCES,
+ SerializationFactory.eINSTANCE.createMultiValuedReferenceInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.EXTENDED_EOBJECT_REFERENCE__REFERENCE_INSTANCES,
+ SerializationFactory.eINSTANCE.createSingleValuedContainmentReferenceInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.EXTENDED_EOBJECT_REFERENCE__REFERENCE_INSTANCES,
+ SerializationFactory.eINSTANCE.createSingleValuedReferenceInstance()));
+ }
+
+ /**
+ * Return the resource locator for this item provider's resources.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ResourceLocator getResourceLocator() {
+ return Efacet2EditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/MultiValuedAttributeInstanceItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/MultiValuedAttributeInstanceItemProvider.java
new file mode 100644
index 00000000000..5230f7c369f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/MultiValuedAttributeInstanceItemProvider.java
@@ -0,0 +1,153 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.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.edit.provider.ComposeableAdapterFactory;
+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.ViewerNotification;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedAttributeInstance} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class MultiValuedAttributeInstanceItemProvider
+ extends AbstractAttributeInstanceItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public MultiValuedAttributeInstanceItemProvider(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);
+
+ addValuesPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Values feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addValuesPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_MultiValuedAttributeInstance_values_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_MultiValuedAttributeInstance_values_feature", "_UI_MultiValuedAttributeInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ SerializationPackage.Literals.MULTI_VALUED_ATTRIBUTE_INSTANCE__VALUES,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This returns MultiValuedAttributeInstance.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/MultiValuedAttributeInstance")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ return getString("_UI_MultiValuedAttributeInstance_type"); //$NON-NLS-1$
+ }
+
+ /**
+ * 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(MultiValuedAttributeInstance.class)) {
+ case SerializationPackage.MULTI_VALUED_ATTRIBUTE_INSTANCE__VALUES:
+ 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);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/MultiValuedContainmentReferenceInstanceItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/MultiValuedContainmentReferenceInstanceItemProvider.java
new file mode 100644
index 00000000000..e48ab86793f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/MultiValuedContainmentReferenceInstanceItemProvider.java
@@ -0,0 +1,396 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.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.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcoreFactory;
+import org.eclipse.emf.ecore.EcorePackage;
+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.ViewerNotification;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimeFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedContainmentReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedContainmentReferenceInstance} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class MultiValuedContainmentReferenceInstanceItemProvider
+ extends AbstractReferenceInstanceItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public MultiValuedContainmentReferenceInstanceItemProvider(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);
+
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns MultiValuedContainmentReferenceInstance.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/MultiValuedContainmentReferenceInstance")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ return getString("_UI_MultiValuedContainmentReferenceInstance_type"); //$NON-NLS-1$
+ }
+
+ /**
+ * 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(MultiValuedContainmentReferenceInstance.class)) {
+ case SerializationPackage.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ SerializationFactory.eINSTANCE.createAbstractReferenceInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ SerializationFactory.eINSTANCE.createMultiValuedContainmentReferenceInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ SerializationFactory.eINSTANCE.createMultiValuedReferenceInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ SerializationFactory.eINSTANCE.createAbstractAttributeInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ SerializationFactory.eINSTANCE.createSingleValuedAttributeInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ SerializationFactory.eINSTANCE.createExtendedEObjectReference()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ SerializationFactory.eINSTANCE.createSingleValuedContainmentReferenceInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ SerializationFactory.eINSTANCE.createSingleValuedReferenceInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ SerializationFactory.eINSTANCE.createMultiValuedAttributeInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EFacetFactory.eINSTANCE.createFacetAttribute()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EFacetFactory.eINSTANCE.createFacetReference()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EFacetFactory.eINSTANCE.createFacetOperation()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EFacetFactory.eINSTANCE.createFacetSet()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EFacetFactory.eINSTANCE.createFacet()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EFacetFactory.eINSTANCE.createCategory()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EFacetFactory.eINSTANCE.createParameterValue()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EFacetFactory.eINSTANCE.createDocumentedElement()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ QueryFactory.eINSTANCE.createNavigationQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ QueryFactory.eINSTANCE.createIsOneOfQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ QueryFactory.eINSTANCE.createStringLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ QueryFactory.eINSTANCE.createTrueLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ QueryFactory.eINSTANCE.createFalseLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ QueryFactory.eINSTANCE.createNullLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ QueryFactory.eINSTANCE.createIntegerLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ QueryFactory.eINSTANCE.createFloatLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ QueryFactory.eINSTANCE.createEObjectLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ QueryFactory.eINSTANCE.createOperationCallQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ RuntimeFactory.eINSTANCE.createETypedElementPrimitiveTypeResult()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ RuntimeFactory.eINSTANCE.createETypedElementEObjectResult()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ RuntimeFactory.eINSTANCE.createETypedElementPrimitiveTypeListResult()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ RuntimeFactory.eINSTANCE.createETypedElementEObjectListResult()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EcoreFactory.eINSTANCE.createEAttribute()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EcoreFactory.eINSTANCE.createEAnnotation()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EcoreFactory.eINSTANCE.createEClass()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EcoreFactory.eINSTANCE.createEDataType()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EcoreFactory.eINSTANCE.createEEnum()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EcoreFactory.eINSTANCE.createEEnumLiteral()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EcoreFactory.eINSTANCE.createEFactory()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EcoreFactory.eINSTANCE.createEObject()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EcoreFactory.eINSTANCE.createEOperation()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EcoreFactory.eINSTANCE.createEPackage()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EcoreFactory.eINSTANCE.createEParameter()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EcoreFactory.eINSTANCE.createEReference()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EcoreFactory.eINSTANCE.create(EcorePackage.Literals.ESTRING_TO_STRING_MAP_ENTRY)));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EcoreFactory.eINSTANCE.createEGenericType()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS,
+ EcoreFactory.eINSTANCE.createETypeParameter()));
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/MultiValuedReferenceInstanceItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/MultiValuedReferenceInstanceItemProvider.java
new file mode 100644
index 00000000000..33c171572f1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/MultiValuedReferenceInstanceItemProvider.java
@@ -0,0 +1,144 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.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.edit.provider.ComposeableAdapterFactory;
+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.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedReferenceInstance} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class MultiValuedReferenceInstanceItemProvider
+ extends AbstractReferenceInstanceItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public MultiValuedReferenceInstanceItemProvider(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);
+
+ addReferencedElementsPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Referenced Elements feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addReferencedElementsPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_MultiValuedReferenceInstance_referencedElements_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_MultiValuedReferenceInstance_referencedElements_feature", "_UI_MultiValuedReferenceInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ SerializationPackage.Literals.MULTI_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENTS,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This returns MultiValuedReferenceInstance.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/MultiValuedReferenceInstance")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ return getString("_UI_MultiValuedReferenceInstance_type"); //$NON-NLS-1$
+ }
+
+ /**
+ * 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);
+ 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);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/SerializationItemProviderAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/SerializationItemProviderAdapterFactory.java
new file mode 100644
index 00000000000..e9415ea1990
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/SerializationItemProviderAdapterFactory.java
@@ -0,0 +1,404 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.provider;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.edit.provider.ChangeNotifier;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IChangeNotifier;
+import org.eclipse.emf.edit.provider.IDisposable;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.INotifyChangedListener;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.util.SerializationAdapterFactory;
+
+/**
+ * This is the factory that is used to provide the interfaces needed to support Viewers.
+ * The adapters generated by this factory convert EMF adapter notifications into calls to {@link #fireNotifyChanged fireNotifyChanged}.
+ * The adapters also support Eclipse property sheets.
+ * Note that most of the adapters are shared among multiple instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class SerializationItemProviderAdapterFactory extends SerializationAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
+ /**
+ * This keeps track of the root adapter factory that delegates to this adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ComposedAdapterFactory parentAdapterFactory;
+
+ /**
+ * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IChangeNotifier changeNotifier = new ChangeNotifier();
+
+ /**
+ * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected Collection<Object> supportedTypes = new ArrayList<Object>();
+
+ /**
+ * This constructs an instance.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SerializationItemProviderAdapterFactory() {
+ supportedTypes.add(IEditingDomainItemProvider.class);
+ supportedTypes.add(IStructuredItemContentProvider.class);
+ supportedTypes.add(ITreeItemContentProvider.class);
+ supportedTypes.add(IItemLabelProvider.class);
+ supportedTypes.add(IItemPropertySource.class);
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected AbstractReferenceInstanceItemProvider abstractReferenceInstanceItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createAbstractReferenceInstanceAdapter() {
+ if (abstractReferenceInstanceItemProvider == null) {
+ abstractReferenceInstanceItemProvider = new AbstractReferenceInstanceItemProvider(this);
+ }
+
+ return abstractReferenceInstanceItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedContainmentReferenceInstance} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected MultiValuedContainmentReferenceInstanceItemProvider multiValuedContainmentReferenceInstanceItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedContainmentReferenceInstance}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createMultiValuedContainmentReferenceInstanceAdapter() {
+ if (multiValuedContainmentReferenceInstanceItemProvider == null) {
+ multiValuedContainmentReferenceInstanceItemProvider = new MultiValuedContainmentReferenceInstanceItemProvider(this);
+ }
+
+ return multiValuedContainmentReferenceInstanceItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedReferenceInstance} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected MultiValuedReferenceInstanceItemProvider multiValuedReferenceInstanceItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedReferenceInstance}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createMultiValuedReferenceInstanceAdapter() {
+ if (multiValuedReferenceInstanceItemProvider == null) {
+ multiValuedReferenceInstanceItemProvider = new MultiValuedReferenceInstanceItemProvider(this);
+ }
+
+ return multiValuedReferenceInstanceItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SingleValuedAttributeInstanceItemProvider singleValuedAttributeInstanceItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createSingleValuedAttributeInstanceAdapter() {
+ if (singleValuedAttributeInstanceItemProvider == null) {
+ singleValuedAttributeInstanceItemProvider = new SingleValuedAttributeInstanceItemProvider(this);
+ }
+
+ return singleValuedAttributeInstanceItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ExtendedEObjectReferenceItemProvider extendedEObjectReferenceItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createExtendedEObjectReferenceAdapter() {
+ if (extendedEObjectReferenceItemProvider == null) {
+ extendedEObjectReferenceItemProvider = new ExtendedEObjectReferenceItemProvider(this);
+ }
+
+ return extendedEObjectReferenceItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SingleValuedContainmentReferenceInstanceItemProvider singleValuedContainmentReferenceInstanceItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createSingleValuedContainmentReferenceInstanceAdapter() {
+ if (singleValuedContainmentReferenceInstanceItemProvider == null) {
+ singleValuedContainmentReferenceInstanceItemProvider = new SingleValuedContainmentReferenceInstanceItemProvider(this);
+ }
+
+ return singleValuedContainmentReferenceInstanceItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedReferenceInstance} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SingleValuedReferenceInstanceItemProvider singleValuedReferenceInstanceItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedReferenceInstance}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createSingleValuedReferenceInstanceAdapter() {
+ if (singleValuedReferenceInstanceItemProvider == null) {
+ singleValuedReferenceInstanceItemProvider = new SingleValuedReferenceInstanceItemProvider(this);
+ }
+
+ return singleValuedReferenceInstanceItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedAttributeInstance} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected MultiValuedAttributeInstanceItemProvider multiValuedAttributeInstanceItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedAttributeInstance}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createMultiValuedAttributeInstanceAdapter() {
+ if (multiValuedAttributeInstanceItemProvider == null) {
+ multiValuedAttributeInstanceItemProvider = new MultiValuedAttributeInstanceItemProvider(this);
+ }
+
+ return multiValuedAttributeInstanceItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected AbstractAttributeInstanceItemProvider abstractAttributeInstanceItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createAbstractAttributeInstanceAdapter() {
+ if (abstractAttributeInstanceItemProvider == null) {
+ abstractAttributeInstanceItemProvider = new AbstractAttributeInstanceItemProvider(this);
+ }
+
+ return abstractAttributeInstanceItemProvider;
+ }
+
+ /**
+ * This returns the root adapter factory that contains this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ComposeableAdapterFactory getRootAdapterFactory() {
+ return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+ }
+
+ /**
+ * This sets the composed adapter factory that contains this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
+ this.parentAdapterFactory = parentAdapterFactory;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object type) {
+ return supportedTypes.contains(type) || super.isFactoryForType(type);
+ }
+
+ /**
+ * This implementation substitutes the factory itself as the key for the adapter.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter adapt(Notifier notifier, Object type) {
+ return super.adapt(notifier, this);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object adapt(Object object, Object type) {
+ if (isFactoryForType(type)) {
+ Object adapter = super.adapt(object, type);
+ if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+ return adapter;
+ }
+ }
+
+ return null;
+ }
+
+ /**
+ * This adds a listener.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void addListener(INotifyChangedListener notifyChangedListener) {
+ changeNotifier.addListener(notifyChangedListener);
+ }
+
+ /**
+ * This removes a listener.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void removeListener(INotifyChangedListener notifyChangedListener) {
+ changeNotifier.removeListener(notifyChangedListener);
+ }
+
+ /**
+ * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void fireNotifyChanged(Notification notification) {
+ changeNotifier.fireNotifyChanged(notification);
+
+ if (parentAdapterFactory != null) {
+ parentAdapterFactory.fireNotifyChanged(notification);
+ }
+ }
+
+ /**
+ * This disposes all of the item providers created by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void dispose() {
+ if (abstractReferenceInstanceItemProvider != null) abstractReferenceInstanceItemProvider.dispose();
+ if (multiValuedContainmentReferenceInstanceItemProvider != null) multiValuedContainmentReferenceInstanceItemProvider.dispose();
+ if (multiValuedReferenceInstanceItemProvider != null) multiValuedReferenceInstanceItemProvider.dispose();
+ if (singleValuedAttributeInstanceItemProvider != null) singleValuedAttributeInstanceItemProvider.dispose();
+ if (extendedEObjectReferenceItemProvider != null) extendedEObjectReferenceItemProvider.dispose();
+ if (singleValuedContainmentReferenceInstanceItemProvider != null) singleValuedContainmentReferenceInstanceItemProvider.dispose();
+ if (singleValuedReferenceInstanceItemProvider != null) singleValuedReferenceInstanceItemProvider.dispose();
+ if (multiValuedAttributeInstanceItemProvider != null) multiValuedAttributeInstanceItemProvider.dispose();
+ if (abstractAttributeInstanceItemProvider != null) abstractAttributeInstanceItemProvider.dispose();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/SingleValuedAttributeInstanceItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/SingleValuedAttributeInstanceItemProvider.java
new file mode 100644
index 00000000000..64fc31b491d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/SingleValuedAttributeInstanceItemProvider.java
@@ -0,0 +1,157 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.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.edit.provider.ComposeableAdapterFactory;
+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.ViewerNotification;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class SingleValuedAttributeInstanceItemProvider
+ extends AbstractAttributeInstanceItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SingleValuedAttributeInstanceItemProvider(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);
+
+ addValuePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Value feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addValuePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_SingleValuedAttributeInstance_value_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_SingleValuedAttributeInstance_value_feature", "_UI_SingleValuedAttributeInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ SerializationPackage.Literals.SINGLE_VALUED_ATTRIBUTE_INSTANCE__VALUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This returns SingleValuedAttributeInstance.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/SingleValuedAttributeInstance")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ Object labelValue = ((SingleValuedAttributeInstance)object).getValue();
+ String label = labelValue == null ? null : labelValue.toString();
+ return label == null || label.length() == 0 ?
+ getString("_UI_SingleValuedAttributeInstance_type") : //$NON-NLS-1$
+ getString("_UI_SingleValuedAttributeInstance_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(SingleValuedAttributeInstance.class)) {
+ case SerializationPackage.SINGLE_VALUED_ATTRIBUTE_INSTANCE__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);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/SingleValuedContainmentReferenceInstanceItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/SingleValuedContainmentReferenceInstanceItemProvider.java
new file mode 100644
index 00000000000..2702ed6b8ef
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/SingleValuedContainmentReferenceInstanceItemProvider.java
@@ -0,0 +1,396 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.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.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcoreFactory;
+import org.eclipse.emf.ecore.EcorePackage;
+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.ViewerNotification;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimeFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class SingleValuedContainmentReferenceInstanceItemProvider
+ extends AbstractReferenceInstanceItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SingleValuedContainmentReferenceInstanceItemProvider(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);
+
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+ * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+ * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+ if (childrenFeatures == null) {
+ super.getChildrenFeatures(object);
+ childrenFeatures.add(SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT);
+ }
+ return childrenFeatures;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EStructuralFeature getChildFeature(Object object, Object child) {
+ // Check the type of the specified child object and return the proper feature to use for
+ // adding (see {@link AddCommand}) it as a child.
+
+ return super.getChildFeature(object, child);
+ }
+
+ /**
+ * This returns SingleValuedContainmentReferenceInstance.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/SingleValuedContainmentReferenceInstance")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ return getString("_UI_SingleValuedContainmentReferenceInstance_type"); //$NON-NLS-1$
+ }
+
+ /**
+ * 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(SingleValuedContainmentReferenceInstance.class)) {
+ case SerializationPackage.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+ 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);
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ SerializationFactory.eINSTANCE.createAbstractReferenceInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ SerializationFactory.eINSTANCE.createMultiValuedContainmentReferenceInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ SerializationFactory.eINSTANCE.createMultiValuedReferenceInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ SerializationFactory.eINSTANCE.createAbstractAttributeInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ SerializationFactory.eINSTANCE.createSingleValuedAttributeInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ SerializationFactory.eINSTANCE.createExtendedEObjectReference()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ SerializationFactory.eINSTANCE.createSingleValuedContainmentReferenceInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ SerializationFactory.eINSTANCE.createSingleValuedReferenceInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ SerializationFactory.eINSTANCE.createMultiValuedAttributeInstance()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EFacetFactory.eINSTANCE.createFacetAttribute()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EFacetFactory.eINSTANCE.createFacetReference()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EFacetFactory.eINSTANCE.createFacetOperation()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EFacetFactory.eINSTANCE.createFacetSet()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EFacetFactory.eINSTANCE.createFacet()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EFacetFactory.eINSTANCE.createCategory()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EFacetFactory.eINSTANCE.createParameterValue()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EFacetFactory.eINSTANCE.createDocumentedElement()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ QueryFactory.eINSTANCE.createNavigationQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ QueryFactory.eINSTANCE.createIsOneOfQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ QueryFactory.eINSTANCE.createStringLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ QueryFactory.eINSTANCE.createTrueLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ QueryFactory.eINSTANCE.createFalseLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ QueryFactory.eINSTANCE.createNullLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ QueryFactory.eINSTANCE.createIntegerLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ QueryFactory.eINSTANCE.createFloatLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ QueryFactory.eINSTANCE.createEObjectLiteralQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ QueryFactory.eINSTANCE.createOperationCallQuery()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ RuntimeFactory.eINSTANCE.createETypedElementPrimitiveTypeResult()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ RuntimeFactory.eINSTANCE.createETypedElementEObjectResult()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ RuntimeFactory.eINSTANCE.createETypedElementPrimitiveTypeListResult()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ RuntimeFactory.eINSTANCE.createETypedElementEObjectListResult()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EcoreFactory.eINSTANCE.createEAttribute()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EcoreFactory.eINSTANCE.createEAnnotation()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EcoreFactory.eINSTANCE.createEClass()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EcoreFactory.eINSTANCE.createEDataType()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EcoreFactory.eINSTANCE.createEEnum()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EcoreFactory.eINSTANCE.createEEnumLiteral()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EcoreFactory.eINSTANCE.createEFactory()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EcoreFactory.eINSTANCE.createEObject()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EcoreFactory.eINSTANCE.createEOperation()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EcoreFactory.eINSTANCE.createEPackage()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EcoreFactory.eINSTANCE.createEParameter()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EcoreFactory.eINSTANCE.createEReference()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EcoreFactory.eINSTANCE.create(EcorePackage.Literals.ESTRING_TO_STRING_MAP_ENTRY)));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EcoreFactory.eINSTANCE.createEGenericType()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT,
+ EcoreFactory.eINSTANCE.createETypeParameter()));
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/SingleValuedReferenceInstanceItemProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/SingleValuedReferenceInstanceItemProvider.java
new file mode 100644
index 00000000000..19267455880
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel.edit/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/provider/SingleValuedReferenceInstanceItemProvider.java
@@ -0,0 +1,144 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.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.edit.provider.ComposeableAdapterFactory;
+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.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedReferenceInstance} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class SingleValuedReferenceInstanceItemProvider
+ extends AbstractReferenceInstanceItemProvider
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SingleValuedReferenceInstanceItemProvider(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);
+
+ addReferencedElementPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Referenced Element feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addReferencedElementPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_SingleValuedReferenceInstance_referencedElement_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_SingleValuedReferenceInstance_referencedElement_feature", "_UI_SingleValuedReferenceInstance_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ SerializationPackage.Literals.SINGLE_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENT,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null));
+ }
+
+ /**
+ * This returns SingleValuedReferenceInstance.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/SingleValuedReferenceInstance")); //$NON-NLS-1$
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ return getString("_UI_SingleValuedReferenceInstance_type"); //$NON-NLS-1$
+ }
+
+ /**
+ * 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);
+ 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);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.project
new file mode 100644
index 00000000000..3cc87a34c64
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.efacet.metamodel</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.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.settings/.api_filters b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.settings/.api_filters
new file mode 100644
index 00000000000..3f214d76590
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.settings/.api_filters
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<component id="org.eclipse.papyrus.emf.facet.efacet.metamodel" version="2">
+ <resource path="META-INF/MANIFEST.MF">
+ <filter comment="This API break has been allowed by the modeling PMC. cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=376577" id="924844039">
+ <message_arguments>
+ <message_argument value="0.2.0"/>
+ <message_argument value="0.2.0"/>
+ </message_arguments>
+ </filter>
+ </resource>
+ <resource path="src/org/eclipse/emf/facet/efacet/metamodel/v0_2_0/efacet/EFacetPackage.java" type="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage">
+ <filter comment="This an allowed (by modeling PMC) API break. cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=376576" id="403767336">
+ <message_arguments>
+ <message_argument value="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage"/>
+ <message_argument value="FACET__EXTENDED_FACETS"/>
+ </message_arguments>
+ </filter>
+ <filter comment="This an allowed (by modeling PMC) API break. cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=376576" id="403804204">
+ <message_arguments>
+ <message_argument value="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage"/>
+ <message_argument value="getFacet_ExtendedFacets()"/>
+ </message_arguments>
+ </filter>
+ <filter comment="This an allowed (by modeling PMC) API break. cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=376576" id="405864542">
+ <message_arguments>
+ <message_argument value="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage"/>
+ <message_argument value="FACET__EXTENDED_FACET"/>
+ </message_arguments>
+ </filter>
+ </resource>
+ <resource path="src/org/eclipse/emf/facet/efacet/metamodel/v0_2_0/efacet/Facet.java" type="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet">
+ <filter comment="This is an allowed (by modeling PMC) API break. cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=376576" id="405901410">
+ <message_arguments>
+ <message_argument value="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet"/>
+ <message_argument value="setExtendedFacet(Facet)"/>
+ </message_arguments>
+ </filter>
+ </resource>
+ <resource path="src/org/eclipse/emf/facet/efacet/metamodel/v0_2_0/efacet/query/QueryPackage.java" type="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage$Literals">
+ <filter comment="API break allowed by the modeling PMC. cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=376577)" id="403767336">
+ <message_arguments>
+ <message_argument value="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage.Literals"/>
+ <message_argument value="EOBJECT_LITERAL_QUERY"/>
+ </message_arguments>
+ </filter>
+ <filter comment="API break allowed by the modeling PMC. cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=376577)" id="403767336">
+ <message_arguments>
+ <message_argument value="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage.Literals"/>
+ <message_argument value="EOBJECT_LITERAL_QUERY__ELEMENT"/>
+ </message_arguments>
+ </filter>
+ <filter comment="API break allowed by the modeling PMC. cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=376577)" id="403767336">
+ <message_arguments>
+ <message_argument value="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage.Literals"/>
+ <message_argument value="FLOAT_LITERAL_QUERY"/>
+ </message_arguments>
+ </filter>
+ <filter comment="API break allowed by the modeling PMC. cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=376577)" id="403767336">
+ <message_arguments>
+ <message_argument value="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage.Literals"/>
+ <message_argument value="FLOAT_LITERAL_QUERY__VALUE"/>
+ </message_arguments>
+ </filter>
+ <filter comment="API break allowed by the modeling PMC. cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=376577)" id="403767336">
+ <message_arguments>
+ <message_argument value="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage.Literals"/>
+ <message_argument value="INTEGER_LITERAL_QUERY"/>
+ </message_arguments>
+ </filter>
+ <filter comment="API break allowed by the modeling PMC. cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=376577)" id="403767336">
+ <message_arguments>
+ <message_argument value="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage.Literals"/>
+ <message_argument value="INTEGER_LITERAL_QUERY__VALUE"/>
+ </message_arguments>
+ </filter>
+ <filter comment="API break allowed by the modeling PMC. cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=376577)" id="403767336">
+ <message_arguments>
+ <message_argument value="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage.Literals"/>
+ <message_argument value="OPERATION_CALL_QUERY"/>
+ </message_arguments>
+ </filter>
+ <filter comment="API break allowed by the modeling PMC. cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=376577)" id="403767336">
+ <message_arguments>
+ <message_argument value="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage.Literals"/>
+ <message_argument value="OPERATION_CALL_QUERY__ARGUMENTS"/>
+ </message_arguments>
+ </filter>
+ <filter comment="API break allowed by the modeling PMC. cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=376577)" id="403767336">
+ <message_arguments>
+ <message_argument value="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage.Literals"/>
+ <message_argument value="OPERATION_CALL_QUERY__OPERATION"/>
+ </message_arguments>
+ </filter>
+ </resource>
+</component>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..025f7bc098b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,4 @@
+#Thu Sep 22 10:54:38 CEST 2011
+eclipse.preferences.version=1
+encoding//model/efacet2.ecorediag=UTF-8
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..a64b25dbe1f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,77 @@
+#Thu Sep 22 11:01:58 CEST 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=ignore
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=ignore
+org.eclipse.jdt.core.compiler.problem.deadCode=ignore
+org.eclipse.jdt.core.compiler.problem.deprecation=ignore
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=ignore
+org.eclipse.jdt.core.compiler.problem.emptyStatement=ignore
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=ignore
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
+org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=ignore
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=ignore
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=ignore
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=ignore
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=ignore
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=ignore
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=ignore
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=ignore
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
+org.eclipse.jdt.core.compiler.problem.nullReference=ignore
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=ignore
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=ignore
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=ignore
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=ignore
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
+org.eclipse.jdt.core.compiler.problem.suppressignores=enabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=ignore
+org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=ignore
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
+org.eclipse.jdt.core.compiler.problem.unhandledignoreToken=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=ignore
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=ignore
+org.eclipse.jdt.core.compiler.problem.unusedLabel=ignore
+org.eclipse.jdt.core.compiler.problem.unusedLocal=ignore
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=ignore
+org.eclipse.jdt.core.compiler.problem.unusedignoreToken=ignore
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=ignore
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..5ade5d70c57
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/META-INF/MANIFEST.MF
@@ -0,0 +1,30 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.efacet.metamodel;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: %Bundle-Vendor
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore,
+ org.eclipse.papyrus.emf.facet.util.emf.core;bundle-version="0.2.0"
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.util,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.util,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.util,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.util,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.util,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.impl,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.util
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..32072f8dbae
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,13 @@
+############################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+############################################################################
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet EFacet Model (Incubation) \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/about.html
new file mode 100644
index 00000000000..42d1b9aeef4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/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>May 19, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/build.properties
new file mode 100644
index 00000000000..70fae33e66d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/build.properties
@@ -0,0 +1,24 @@
+############################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - design
+# Nicolas Guyomar (Mia-Software) - implementation
+# Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+############################################################################
+
+bin.includes = .,\
+ model/,\
+ META-INF/,\
+ plugin.xml,\
+ OSGI-INF/,\
+ about.html
+jars.compile.order = .
+source.. = src/
+output.. = bin/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.ecore b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.ecore
new file mode 100644
index 00000000000..aef41489788
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.ecore
@@ -0,0 +1,279 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="efacet" nsURI="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet"
+ nsPrefix="efacet">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
+ <details key="validationDelegates" value="org.eclipse.ocl.ecore.OCL"/>
+ </eAnnotations>
+ <eClassifiers xsi:type="ecore:EClass" name="FacetAttribute" eSuperTypes="http://www.eclipse.org/emf/2002/Ecore#//EAttribute #//DerivedTypedElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A FacetAttribute is a virtual attribute added to all the eObjects which conform to the Facet owning the FacetAttribute."/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="FacetReference" eSuperTypes="http://www.eclipse.org/emf/2002/Ecore#//EReference #//DerivedTypedElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A FacetReference is a virtual reference added to all the eObjects which conform to the Facet owning the FacetReference."/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="FacetOperation" eSuperTypes="http://www.eclipse.org/emf/2002/Ecore#//EOperation #//DerivedTypedElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A FacetOperation is a virtual operation added to all the eObjects which conform to the Facet owning the FacetOperation."/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="FacetSet" eSuperTypes="http://www.eclipse.org/emf/2002/Ecore#//EPackage #//DocumentedElement">
+ <eAnnotations source="GenModel">
+ <details key="documentation" value="A &quot;FacetSet&quot; is the root element of a facet model. It contains a list of &quot;Facet&quot;."/>
+ </eAnnotations>
+ <eOperations name="getFacetSets" upperBound="-1" eType="#//FacetSet">
+ <eAnnotations source="GenModel">
+ <details key="documentation" value="The FacetSets aggregated by this FacetSet (this operation is overridden in Aggregate in the aggregate metamodel)."/>
+ </eAnnotations>
+ </eOperations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="categories" upperBound="-1"
+ eType="#//Category" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Facet" eSuperTypes="http://www.eclipse.org/emf/2002/Ecore#//EClassifier #//DocumentedElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
+ <details key="validationDelegates" value="( self.query.scope = self.facet.extendedMetaClass ) and ( self.query.name = self.name )"/>
+ </eAnnotations>
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A Facet is a virtual sub-type of an existing EClass. A Facet cannot be instantiated."/>
+ </eAnnotations>
+ <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
+ <details key="validationDelegates" value="self.conformanceQuery.scope = self.extendedMetaClass"/>
+ </eAnnotations>
+ <eAnnotations source="org.eclipse.ocl.ecore.OCL">
+ <details key="body" value="not(self.container().oclCastAs(FacetSet).facets->exists(f|f.extendedMetaClass.container() &lt;> self.extendedMetaClass.container() ))"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="extendedMetaclass" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EClass">
+ <eAnnotations source="GenModel">
+ <details key="documentation" value="The &quot;extendedMetaclass&quot; reference references the virtually subtyped EClass."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="facetElements" upperBound="-1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature"
+ containment="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This composite reference contains virtual attributes, references and operations."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="facetOperations" upperBound="-1"
+ eType="#//FacetOperation" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="conformanceTypedElement"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="extendedFacets" upperBound="-1"
+ eType="#//Facet">
+ <eAnnotations source="GenModel">
+ <details key="documentation" value="A facet can extend other facets. If A facet A can extend a facet B. In this case an eObject conforms to the facet A if it matches conformance evaluation of A and B. "/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Category" eSuperTypes="http://www.eclipse.org/emf/2002/Ecore#//ENamedElement #//DocumentedElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A Category is used to group related elements."/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="FacetElement" abstract="true" eSuperTypes="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement #//DocumentedElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A facet element is owned by a facet. It can be a facet reference, a facet attribute or a facet operation."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="categories" upperBound="-1"
+ eType="#//Category"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DerivedTypedElement" abstract="true"
+ eSuperTypes="#//FacetElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value=" A derived typed element is a virtual structural feature the value of which is computed using a query."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="query" lowerBound="1" eType="#//extensible/Query"
+ containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="override" eType="#//DerivedTypedElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="If it exists a facet A which extends a facet B then a derived typed element of A can override a typed element of B; if the both typed elements have the same name, same multiplicity, and same type."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ParameterValue">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This is the value given as a parameter to execute a query for an operation."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="parameter" lowerBound="1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EParameter"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EDataType" name="Resource" instanceClassName="org.eclipse.emf.ecore.resource.Resource"/>
+ <eClassifiers xsi:type="ecore:EClass" name="DocumentedElement">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="documentation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eSubpackages name="serialization" nsURI="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/serialization"
+ nsPrefix="serialization">
+ <eClassifiers xsi:type="ecore:EClass" name="AbstractReferenceInstance">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="eReference" lowerBound="1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EReference"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="MultiValuedContainmentReferenceInstance"
+ eSuperTypes="#//serialization/AbstractReferenceInstance">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="ownedElements" upperBound="-1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="MultiValuedReferenceInstance" eSuperTypes="#//serialization/AbstractReferenceInstance">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="referencedElements" upperBound="-1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="SingleValuedAttributeInstance" eSuperTypes="#//serialization/AbstractAttributeInstance">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ExtendedEObjectReference">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="extendedEObject" lowerBound="1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="attributeInstances" upperBound="-1"
+ eType="#//serialization/AbstractAttributeInstance" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="referenceInstances" upperBound="-1"
+ eType="#//serialization/AbstractReferenceInstance" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="SingleValuedContainmentReferenceInstance"
+ eSuperTypes="#//serialization/AbstractReferenceInstance">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="ownedElement" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"
+ containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="SingleValuedReferenceInstance" eSuperTypes="#//serialization/AbstractReferenceInstance">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="referencedElement" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="MultiValuedAttributeInstance" eSuperTypes="#//serialization/AbstractAttributeInstance">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="values" upperBound="-1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="AbstractAttributeInstance">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="eAttribute" lowerBound="1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EAttribute"/>
+ </eClassifiers>
+ </eSubpackages>
+ <eSubpackages name="extensible" nsURI="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/extensible"
+ nsPrefix="extensible">
+ <eClassifiers xsi:type="ecore:EClass" name="Query" abstract="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="Query is the abstract representation of the concept of query. This class has to be sub-classed for each existing query language (Java, OCL, etc.)"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="canHaveSideEffects" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="canBeCached" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ </eClassifiers>
+ </eSubpackages>
+ <eSubpackages name="query" nsURI="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/query"
+ nsPrefix="query">
+ <eClassifiers xsi:type="ecore:EClass" name="NavigationQuery" eSuperTypes="#//extensible/Query">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This query points to a typed element (another attribute, reference or operation for example) that lends it value to the query."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="path" lowerBound="1"
+ upperBound="-1" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="failOnError" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+ defaultValueLiteral="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="IsOneOfQuery" eSuperTypes="#//extensible/Query">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This query returns true if the source of the query is contained in a list of eObject handled by the referennce 'expectedEObjects'."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="expectedEObjects" upperBound="-1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="StringLiteralQuery" eSuperTypes="#//extensible/Query">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="TrueLiteralQuery" eSuperTypes="#//extensible/Query">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This query retrun true."/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="FalseLiteralQuery" eSuperTypes="#//extensible/Query">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This query retrun false."/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="NullLiteralQuery" eSuperTypes="#//extensible/Query">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This query retrun null."/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="IntegerLiteralQuery" eSuperTypes="#//extensible/Query">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="FloatLiteralQuery" eSuperTypes="#//extensible/Query">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="EObjectLiteralQuery" eSuperTypes="#//extensible/Query">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="element" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="OperationCallQuery" eSuperTypes="#//extensible/Query">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="operation" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EOperation"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="arguments" upperBound="-1"
+ eType="#//extensible/Query" containment="true"/>
+ </eClassifiers>
+ </eSubpackages>
+ <eSubpackages name="runtime" nsURI="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/runtime"
+ nsPrefix="runtime">
+ <eClassifiers xsi:type="ecore:EClass" name="ETypedElementPrimitiveTypeResult"
+ eSuperTypes="#//runtime/ETypedElementResult">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This class represents the result of evaluating the value of a multiplicity-one DerivedTypedElement by means of a single-valued query ."/>
+ </eAnnotations>
+ <eTypeParameters name="T"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="result">
+ <eGenericType eTypeParameter="#//runtime/ETypedElementPrimitiveTypeResult/T"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ETypedElementEObjectResult" eSuperTypes="#//runtime/ETypedElementResult">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This class represents the result of evaluating the value of a multiplicity-one DerivedTypedElement by means of a single-valued query ."/>
+ </eAnnotations>
+ <eTypeParameters name="T">
+ <eBounds eClassifier="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eTypeParameters>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="result">
+ <eGenericType eTypeParameter="#//runtime/ETypedElementEObjectResult/T"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ETypedElementPrimitiveTypeListResult"
+ eSuperTypes="#//runtime/ETypedElementResult">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This class represents the result of evaluating the value of a multiplicity-many DerivedTypedElement by means of a multi-valued query ."/>
+ </eAnnotations>
+ <eTypeParameters name="T"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="resultList" upperBound="-1">
+ <eGenericType eTypeParameter="#//runtime/ETypedElementPrimitiveTypeListResult/T"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ETypedElementEObjectListResult" eSuperTypes="#//runtime/ETypedElementResult">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This class represents the result of evaluating the value of a multiplicity-many DerivedTypedElement by means of a multi-valued query ."/>
+ </eAnnotations>
+ <eTypeParameters name="T">
+ <eBounds eClassifier="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eTypeParameters>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="resultList" upperBound="-1">
+ <eGenericType eTypeParameter="#//runtime/ETypedElementEObjectListResult/T"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ETypedElementResult" abstract="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This class represents the result of evaluating the value of a DerivedTypedElement by means of a query ."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="derivedTypedElement"
+ lowerBound="1" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//ETypedElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The reference &quot;query&quot; references the executed query."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="parameterValues" upperBound="-1"
+ eType="#//ParameterValue" containment="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This is the list of the values given as parameters for the query execution."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="source" lowerBound="1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="exception" eType="#//runtime/JavaException"
+ transient="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EDataType" name="JavaException" instanceClassName="java.lang.Throwable"/>
+ </eSubpackages>
+</ecore:EPackage>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.genmodel b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.genmodel
new file mode 100644
index 00000000000..9dc0bab7bb6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.genmodel
@@ -0,0 +1,150 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="Copyright (c) 2011-2012 Mia-Software.&#xD;&#xA;&#xD;&#xA;All rights reserved. This program and the accompanying materials&#xD;&#xA;are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA;which accompanies this distribution, and is available at&#xD;&#xA;http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA;&#xD;&#xA;Contributors:&#xD;&#xA; Gregoire Dupe (Mia-Software) - Design&#xD;&#xA; Nicolas Guyomar (Mia-Software) - Implementation&#xD;&#xA; Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values. &#xD;&#xA; Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model&#xD;&#xA; Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery&#xD;&#xA; Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery&#xD;&#xA; Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query&#xD;&#xA; Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework&#xD;&#xA; Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.&#xD;&#xA; Nicolas Bros (Mia-Software) - Bug 372626 - [Facet] Aggregates&#xD;&#xA; Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model&#xD;&#xA; Gregoire Dupe (Mia-Software) - Bug 376576 - [EFacet] Change the multiplicity of Facet::extendedFacet&#xD;&#xA;"
+ modelDirectory="/org.eclipse.papyrus.emf.facet.efacet.metamodel/src" modelPluginID="org.eclipse.papyrus.emf.facet.efacet.metamodel"
+ modelName="Efacet2" nonNLSMarkers="true" importerID="org.eclipse.emf.importer.ecore"
+ complianceLevel="5.0" copyrightFields="false" runtimeVersion="2.6" language=""
+ usedGenPackages="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore">
+ <foreignModel>efacet-0.2.0.ecore</foreignModel>
+ <genPackages prefix="EFacet" basePackage="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0"
+ disposableProviderFactory="true" ecorePackage="efacet-0.2.0.ecore#/">
+ <genDataTypes ecoreDataType="efacet-0.2.0.ecore#//Resource"/>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//FacetAttribute"/>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//FacetReference"/>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//FacetOperation"/>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//FacetSet">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//FacetSet/categories"/>
+ <genOperations ecoreOperation="efacet-0.2.0.ecore#//FacetSet/getFacetSets"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//Facet">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//Facet/extendedMetaclass"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//Facet/facetElements"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//Facet/facetOperations"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//Facet/conformanceTypedElement"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//Facet/extendedFacets"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//Category"/>
+ <genClasses image="false" ecoreClass="efacet-0.2.0.ecore#//FacetElement">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//FacetElement/categories"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="efacet-0.2.0.ecore#//DerivedTypedElement">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//DerivedTypedElement/query"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//DerivedTypedElement/override"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//ParameterValue">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//ParameterValue/parameter"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet-0.2.0.ecore#//ParameterValue/value"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//DocumentedElement">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet-0.2.0.ecore#//DocumentedElement/documentation"/>
+ </genClasses>
+ <nestedGenPackages prefix="Serialization" basePackage="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet"
+ disposableProviderFactory="true" ecorePackage="efacet-0.2.0.ecore#//serialization">
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//serialization/AbstractReferenceInstance">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//serialization/AbstractReferenceInstance/eReference"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//serialization/MultiValuedContainmentReferenceInstance">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//serialization/MultiValuedContainmentReferenceInstance/ownedElements"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//serialization/MultiValuedReferenceInstance">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//serialization/MultiValuedReferenceInstance/referencedElements"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//serialization/SingleValuedAttributeInstance">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet-0.2.0.ecore#//serialization/SingleValuedAttributeInstance/value"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//serialization/ExtendedEObjectReference">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//serialization/ExtendedEObjectReference/extendedEObject"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//serialization/ExtendedEObjectReference/attributeInstances"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//serialization/ExtendedEObjectReference/referenceInstances"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//serialization/SingleValuedContainmentReferenceInstance">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//serialization/SingleValuedContainmentReferenceInstance/ownedElement"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//serialization/SingleValuedReferenceInstance">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//serialization/SingleValuedReferenceInstance/referencedElement"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//serialization/MultiValuedAttributeInstance">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet-0.2.0.ecore#//serialization/MultiValuedAttributeInstance/values"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//serialization/AbstractAttributeInstance">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//serialization/AbstractAttributeInstance/eAttribute"/>
+ </genClasses>
+ </nestedGenPackages>
+ <nestedGenPackages prefix="Extensible" basePackage="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet"
+ disposableProviderFactory="true" ecorePackage="efacet-0.2.0.ecore#//extensible">
+ <genClasses image="false" ecoreClass="efacet-0.2.0.ecore#//extensible/Query">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet-0.2.0.ecore#//extensible/Query/canHaveSideEffects"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet-0.2.0.ecore#//extensible/Query/canBeCached"/>
+ </genClasses>
+ </nestedGenPackages>
+ <nestedGenPackages prefix="Query" basePackage="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet"
+ disposableProviderFactory="true" ecorePackage="efacet-0.2.0.ecore#//query">
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//query/NavigationQuery">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//query/NavigationQuery/path"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet-0.2.0.ecore#//query/NavigationQuery/failOnError"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//query/IsOneOfQuery">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//query/IsOneOfQuery/expectedEObjects"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//query/StringLiteralQuery">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet-0.2.0.ecore#//query/StringLiteralQuery/value"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//query/TrueLiteralQuery"/>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//query/FalseLiteralQuery"/>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//query/NullLiteralQuery"/>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//query/IntegerLiteralQuery">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet-0.2.0.ecore#//query/IntegerLiteralQuery/value"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//query/FloatLiteralQuery">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet-0.2.0.ecore#//query/FloatLiteralQuery/value"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//query/EObjectLiteralQuery">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//query/EObjectLiteralQuery/element"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//query/OperationCallQuery">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//query/OperationCallQuery/operation"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//query/OperationCallQuery/arguments"/>
+ </genClasses>
+ </nestedGenPackages>
+ <nestedGenPackages prefix="Runtime" basePackage="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet"
+ disposableProviderFactory="true" ecorePackage="efacet-0.2.0.ecore#//runtime">
+ <genDataTypes ecoreDataType="efacet-0.2.0.ecore#//runtime/JavaException"/>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//runtime/ETypedElementPrimitiveTypeResult">
+ <genTypeParameters ecoreTypeParameter="efacet-0.2.0.ecore#//runtime/ETypedElementPrimitiveTypeResult/T"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet-0.2.0.ecore#//runtime/ETypedElementPrimitiveTypeResult/result"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//runtime/ETypedElementEObjectResult">
+ <genTypeParameters ecoreTypeParameter="efacet-0.2.0.ecore#//runtime/ETypedElementEObjectResult/T"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//runtime/ETypedElementEObjectResult/result"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//runtime/ETypedElementPrimitiveTypeListResult">
+ <genTypeParameters ecoreTypeParameter="efacet-0.2.0.ecore#//runtime/ETypedElementPrimitiveTypeListResult/T"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet-0.2.0.ecore#//runtime/ETypedElementPrimitiveTypeListResult/resultList"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet-0.2.0.ecore#//runtime/ETypedElementEObjectListResult">
+ <genTypeParameters ecoreTypeParameter="efacet-0.2.0.ecore#//runtime/ETypedElementEObjectListResult/T"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//runtime/ETypedElementEObjectListResult/resultList"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="efacet-0.2.0.ecore#//runtime/ETypedElementResult">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//runtime/ETypedElementResult/derivedTypedElement"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//runtime/ETypedElementResult/parameterValues"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true"
+ ecoreFeature="ecore:EReference efacet-0.2.0.ecore#//runtime/ETypedElementResult/source"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet-0.2.0.ecore#//runtime/ETypedElementResult/exception"/>
+ </genClasses>
+ </nestedGenPackages>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-all.png b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-all.png
new file mode 100644
index 00000000000..aaae294c927
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-all.png
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-facet.ecorediag b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-facet.ecorediag
new file mode 100644
index 00000000000..0810aa589db
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-facet.ecorediag
@@ -0,0 +1,492 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmi:id="_CmfYMeOIEeCYNNyffmuRHg" type="EcoreTools" name="efacet2.ecorediag" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="_lv2XUf5SEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_lv2XUv5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_lv2XU_5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv2XVP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv2XVf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv2XVv5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv2XV_5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv2XWP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv2XWf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv2XWv5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_lv2XW_5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//Facet"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lv2XXP5SEeCqzpi5PItoVA" x="650" y="285" width="133" height="63"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv2-YP5SEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_lv2-Yf5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_lv2-Yv5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv2-Y_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv2-ZP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv2-Zf5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv2-Zv5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv2-Z_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv2-aP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv2-af5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_lv2-av5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//Category"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lv2-a_5SEeCqzpi5PItoVA" x="370" y="105"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv2-bP5SEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_lv2-bf5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_lv2-bv5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv2-b_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv2-cP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv2-cf5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv2-cv5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv2-c_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv2-dP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv2-df5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_lv2-dv5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//FacetElement"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lv2-d_5SEeCqzpi5PItoVA" x="165" y="110"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv3lhf5SEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_lv3lhv5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_lv3lh_5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv3liP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv3lif5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv3liv5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv3li_5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv3ljP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv3ljf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv3ljv5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_lv3lj_5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//FacetReference"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lv3lkP5SEeCqzpi5PItoVA" x="95" y="510" width="118"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4MgP5SEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_lv4Mgf5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_lv4Mgv5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4Mg_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4MhP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4Mhf5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4Mhv5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4Mh_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4MiP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4Mif5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_lv4Miv5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//FacetAttribute"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lv4Mi_5SEeCqzpi5PItoVA" x="220" y="510" width="113"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4MjP5SEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_lv4Mjf5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_lv4Mjv5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4Mj_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4MkP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4Mkf5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4Mkv5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4Mk_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4MlP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4Mlf5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_lv4Mlv5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//FacetOperation"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lv4Ml_5SEeCqzpi5PItoVA" x="355" y="510" width="123"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4MmP5SEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_lv4Mmf5SEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_lv4Mmv5SEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_lv4Mm_5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_lv4MnP5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4Mnf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4Mnv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4Mn_5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4MoP5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4Mof5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4Mov5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4Mo_5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_lv4MpP5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EReference"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lv4Mpf5SEeCqzpi5PItoVA" x="50" y="425" width="133"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4Mpv5SEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_lv4Mp_5SEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_lv4MqP5SEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_lv4Mqf5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_lv4Mqv5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4Mq_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4MrP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4Mrf5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4Mrv5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4Mr_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4MsP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4Msf5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_lv4Msv5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EAttribute"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lv4Ms_5SEeCqzpi5PItoVA" x="255" y="420" width="113"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4MtP5SEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_lv4Mtf5SEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_lv4Mtv5SEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_lv4Mt_5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_lv4MuP5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4Muf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4Muv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4Mu_5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4MvP5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4Mvf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4Mvv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4Mv_5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_lv4MwP5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EOperation"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lv4Mwf5SEeCqzpi5PItoVA" x="390" y="420" width="117"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4zkP5SEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_lv4zkf5SEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_lv4zkv5SEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_lv4zk_5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_lv4zlP5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4zlf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4zlv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4zl_5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4zmP5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4zmf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4zmv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4zm_5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_lv4znP5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EClass"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lv4znf5SEeCqzpi5PItoVA" x="815" y="185"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4zrP5SEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_lv4zrf5SEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_lv4zrv5SEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_lv4zr_5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_lv4zsP5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4zsf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4zsv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4zs_5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4ztP5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4ztf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4ztv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4zt_5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_lv4zuP5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EPackage"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lv4zuf5SEeCqzpi5PItoVA" x="610" y="15" width="112"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4zuv5SEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_lv4zu_5SEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_lv4zvP5SEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_lv4zvf5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_lv4zvv5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4zv_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4zwP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4zwf5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4zwv5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4zw_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4zxP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4zxf5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_lv4zxv5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lv4zx_5SEeCqzpi5PItoVA" x="145" y="35" width="138"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4zyP5SEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_lv4zyf5SEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_lv4zyv5SEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_lv4zy_5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_lv4zzP5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4zzf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4zzv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4zz_5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4z0P5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4z0f5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4z0v5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4z0_5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_lv4z1P5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EClassifier"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lv4z1f5SEeCqzpi5PItoVA" x="660" y="185" width="112"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4z1v5SEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_lv4z1_5SEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_lv4z2P5SEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_lv4z2f5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_lv4z2v5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4z2_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4z3P5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4z3f5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv4z3v5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv4z3_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv4z4P5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv4z4f5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_lv4z4v5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//ENamedElement"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lv4z4_5SEeCqzpi5PItoVA" x="395" y="15" width="143"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv5aoP5SEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_lv5aof5SEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_lv5aov5SEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_lv5ao_5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_lv5apP5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv5apf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv5apv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv5ap_5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv5aqP5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv5aqf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv5aqv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv5aq_5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_lv5arP5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lv5arf5SEeCqzpi5PItoVA" x="715" y="410" width="138"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv5arv5SEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_lv5ar_5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_lv5asP5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv5asf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv5asv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv5as_5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv5atP5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_lv5atf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_lv5atv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_lv5at_5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_lv5auP5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//DerivedTypedElement"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lv5auf5SEeCqzpi5PItoVA" x="160" y="320" width="248"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_hVqdcH1mEeGyJ4ThVnvTDQ" type="1001">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hWNQAH1mEeGyJ4ThVnvTDQ" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_hWNQAX1mEeGyJ4ThVnvTDQ" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_hVrEgH1mEeGyJ4ThVnvTDQ" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_hVrrkH1mEeGyJ4ThVnvTDQ" type="5001">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_hVrrkX1mEeGyJ4ThVnvTDQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_hVrrkn1mEeGyJ4ThVnvTDQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_hVrrk31mEeGyJ4ThVnvTDQ"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_hVrrlH1mEeGyJ4ThVnvTDQ" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_hVrrlX1mEeGyJ4ThVnvTDQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_hVrrln1mEeGyJ4ThVnvTDQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_hVrrl31mEeGyJ4ThVnvTDQ"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_hVqdcX1mEeGyJ4ThVnvTDQ" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//FacetSet"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hVqdcn1mEeGyJ4ThVnvTDQ" x="575" y="95"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_PUStQH1nEeGyJ4ThVnvTDQ" type="1001">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_PUT7YH1nEeGyJ4ThVnvTDQ" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_PUT7YX1nEeGyJ4ThVnvTDQ" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_PUTUUH1nEeGyJ4ThVnvTDQ" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_PUTUUX1nEeGyJ4ThVnvTDQ" visible="false" type="5001">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_PUTUUn1nEeGyJ4ThVnvTDQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_PUTUU31nEeGyJ4ThVnvTDQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_PUTUVH1nEeGyJ4ThVnvTDQ"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_PUTUVX1nEeGyJ4ThVnvTDQ" visible="false" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_PUTUVn1nEeGyJ4ThVnvTDQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_PUTUV31nEeGyJ4ThVnvTDQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_PUTUWH1nEeGyJ4ThVnvTDQ"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_PUStQX1nEeGyJ4ThVnvTDQ" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PUStQn1nEeGyJ4ThVnvTDQ" x="420" y="285" width="145"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_CmfYMuOIEeCYNNyffmuRHg"/>
+ <element xmi:type="ecore:EPackage" href="efacet-0.2.0.ecore#/"/>
+ <edges xmi:type="notation:Edge" xmi:id="_lv5a2P5SEeCqzpi5PItoVA" type="3002" source="_lv2-bP5SEeCqzpi5PItoVA" target="_lv2-YP5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_lv5a2f5SEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_lv5a2v5SEeCqzpi5PItoVA" x="-24" y="-12"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv5a2_5SEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_lv5a3P5SEeCqzpi5PItoVA" x="-10" y="13"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_lv5a3f5SEeCqzpi5PItoVA" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_lv5a3v5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//FacetElement/categories"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lv5a3_5SEeCqzpi5PItoVA" points="[0, 0, 71, 60]$[-71, -60, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_lv5a4P5SEeCqzpi5PItoVA" id="(0.9313725490196079,0.5)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_lv5a4f5SEeCqzpi5PItoVA" id="(0.0196078431372549,0.5348837209302325)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_lv6Btf5SEeCqzpi5PItoVA" type="3003" source="_lv3lhf5SEeCqzpi5PItoVA" target="_lv4MmP5SEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_lv6Btv5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_lv6Bt_5SEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lv6BuP5SEeCqzpi5PItoVA" points="[-7, -20, 157, 433]$[-164, -452, 0, 1]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_lv6Buf5SEeCqzpi5PItoVA" type="3003" source="_lv4MgP5SEeCqzpi5PItoVA" target="_lv4Mpv5SEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_lv6Buv5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_lv6Bu_5SEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lv6BvP5SEeCqzpi5PItoVA" points="[25, -19, -10, 71]$[25, -71, -10, 19]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_lv6Bxv5SEeCqzpi5PItoVA" type="3003" source="_lv4MjP5SEeCqzpi5PItoVA" target="_lv4MtP5SEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_lv6Bx_5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_lv6ByP5SEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lv6Byf5SEeCqzpi5PItoVA" points="[41, -20, -32, 71]$[41, -72, -32, 19]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_lv6Byv5SEeCqzpi5PItoVA" type="3002" source="_lv2XUf5SEeCqzpi5PItoVA" target="_lv4zkP5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_lv6By_5SEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_lv6BzP5SEeCqzpi5PItoVA" x="-10" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv6Bzf5SEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_lv6Bzv5SEeCqzpi5PItoVA" x="8" y="-16"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_lv6Bz_5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_lv6B0P5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//Facet/extendedMetaclass"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lv6B0f5SEeCqzpi5PItoVA" points="[94, 0, -135, 52]$[94, -25, -135, 27]$[229, -25, 0, 27]$[229, -52, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5x9NMn1mEeGyJ4ThVnvTDQ" id="(0.16541353383458646,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5x9NM31mEeGyJ4ThVnvTDQ" id="(0.5,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_lv6oxP5SEeCqzpi5PItoVA" type="3003" source="_lv2-bP5SEeCqzpi5PItoVA" target="_lv4zuv5SEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_lv6oxf5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_lv6oxv5SEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lv6ox_5SEeCqzpi5PItoVA" points="[-1, -8, -8, 66]$[-1, -55, -8, 19]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_lv6oyP5SEeCqzpi5PItoVA" id="(0.5196078431372549,0.225)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_lv6oyf5SEeCqzpi5PItoVA" type="3003" source="_lv2XUf5SEeCqzpi5PItoVA" target="_lv4zyP5SEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_lv6oyv5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_lv6oy_5SEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lv6ozP5SEeCqzpi5PItoVA" points="[-21, 0, 0, 62]$[-21, -62, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5x7_EH1mEeGyJ4ThVnvTDQ" id="(0.6616541353383458,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5x8mIH1mEeGyJ4ThVnvTDQ" id="(0.5,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_lv6ozf5SEeCqzpi5PItoVA" type="3003" source="_lv2-YP5SEeCqzpi5PItoVA" target="_lv4z1v5SEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_lv6ozv5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_lv6oz_5SEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lv6o0P5SEeCqzpi5PItoVA" points="[-5, -20, 0, 62]$[-5, -49, 0, 33]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_lv6o0f5SEeCqzpi5PItoVA" type="3002" source="_lv2XUf5SEeCqzpi5PItoVA" target="_lv5aoP5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_lv6o0v5SEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_lv6o0_5SEeCqzpi5PItoVA" x="-17" y="-89"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_lv6o1P5SEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_lv6o1f5SEeCqzpi5PItoVA" x="-2" y="-25"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_lv6o1v5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_lv6o1_5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//Facet/conformanceTypedElement"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lv6o2P5SEeCqzpi5PItoVA" points="[10, 31, -27, -67]$[10, 95, -27, -3]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_lv6o2f5SEeCqzpi5PItoVA" id="(0.2753623188405797,0.1)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_lv6o2v5SEeCqzpi5PItoVA" type="3003" source="_lv5arv5SEeCqzpi5PItoVA" target="_lv2-bP5SEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_lv6o2_5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_lv6o3P5SEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lv6o3f5SEeCqzpi5PItoVA" points="[-103, -19, 5, 111]$[-103, -111, 5, 19]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_lv6o3v5SEeCqzpi5PItoVA" type="3003" source="_lv4MgP5SEeCqzpi5PItoVA" target="_lv5arv5SEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_lv6o3_5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_lv6o4P5SEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lv6o4f5SEeCqzpi5PItoVA" points="[-5, -19, -53, 250]$[-5, -248, -53, 21]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_lv6o4v5SEeCqzpi5PItoVA" type="3003" source="_lv3lhf5SEeCqzpi5PItoVA" target="_lv5arv5SEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_lv6o4_5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_lv6o5P5SEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lv6o5f5SEeCqzpi5PItoVA" points="[52, -19, -118, 250]$[52, -248, -118, 21]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_lv6o5v5SEeCqzpi5PItoVA" type="3003" source="_lv4MjP5SEeCqzpi5PItoVA" target="_lv5arv5SEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_lv6o5_5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_lv6o6P5SEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lv6o6f5SEeCqzpi5PItoVA" points="[-30, -19, 97, 171]$[-30, -171, 97, 19]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_jhHBUH1mEeGyJ4ThVnvTDQ" type="3002" source="_hVqdcH1mEeGyJ4ThVnvTDQ" target="_lv2-YP5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_jhHoYH1mEeGyJ4ThVnvTDQ" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jhHoYX1mEeGyJ4ThVnvTDQ" x="-24" y="12"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_jhHoYn1mEeGyJ4ThVnvTDQ" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jhHoY31mEeGyJ4ThVnvTDQ" x="-3" y="-13"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_jhHBUX1mEeGyJ4ThVnvTDQ" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_jhHBUn1mEeGyJ4ThVnvTDQ" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//FacetSet/categories"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_jhHBU31mEeGyJ4ThVnvTDQ" points="[-42, 30, 155, -18]$[-147, 30, 50, -18]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jhqa831mEeGyJ4ThVnvTDQ" id="(0.25,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jhrCAH1mEeGyJ4ThVnvTDQ" id="(0.5,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_jhI2gH1mEeGyJ4ThVnvTDQ" type="3003" source="_hVqdcH1mEeGyJ4ThVnvTDQ" target="_lv4zrP5SEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_jhI2gX1mEeGyJ4ThVnvTDQ" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_jhI2gn1mEeGyJ4ThVnvTDQ" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_jhJdkH1mEeGyJ4ThVnvTDQ" points="[0, 0, 0, 71]$[0, -71, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jhqa8X1mEeGyJ4ThVnvTDQ" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jhqa8n1mEeGyJ4ThVnvTDQ" id="(0.5,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_5xodEH1mEeGyJ4ThVnvTDQ" type="3002" source="_lv2XUf5SEeCqzpi5PItoVA" target="_lv4MjP5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_5xpEIH1mEeGyJ4ThVnvTDQ" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_5xpEIX1mEeGyJ4ThVnvTDQ" x="2" y="12"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_5xpEIn1mEeGyJ4ThVnvTDQ" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_5xpEI31mEeGyJ4ThVnvTDQ" x="40" y="-8"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_5xodEX1mEeGyJ4ThVnvTDQ" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_5xodEn1mEeGyJ4ThVnvTDQ" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//Facet/facetOperations"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5xodE31mEeGyJ4ThVnvTDQ" points="[-50, 61, 250, -202]$[-50, 250, 250, -13]$[-239, 250, 61, -13]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5x8mIX1mEeGyJ4ThVnvTDQ" id="(0.49624060150375937,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5x8mIn1mEeGyJ4ThVnvTDQ" id="(0.4959349593495935,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_5xqSQH1mEeGyJ4ThVnvTDQ" type="3002" source="_lv2XUf5SEeCqzpi5PItoVA" target="_lv2XUf5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_5xq5UH1mEeGyJ4ThVnvTDQ" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_5xq5UX1mEeGyJ4ThVnvTDQ" x="-15" y="7"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_5xq5Un1mEeGyJ4ThVnvTDQ" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_5xq5U31mEeGyJ4ThVnvTDQ" x="12" y="-8"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_5xqSQX1mEeGyJ4ThVnvTDQ" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_5xqSQn1mEeGyJ4ThVnvTDQ" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//Facet/extendedFacets"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5xqSQ31mEeGyJ4ThVnvTDQ" points="[66, 25, 66, 25]$[165, 25, 165, 25]$[165, -15, 165, -15]$[66, -15, 66, -15]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_PUp5oH1nEeGyJ4ThVnvTDQ" type="3002" source="_lv2XUf5SEeCqzpi5PItoVA" target="_PUStQH1nEeGyJ4ThVnvTDQ">
+ <children xmi:type="notation:Node" xmi:id="_PUqgsH1nEeGyJ4ThVnvTDQ" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_PUqgsX1nEeGyJ4ThVnvTDQ" x="-32" y="12"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_PUqgsn1nEeGyJ4ThVnvTDQ" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_PUqgs31nEeGyJ4ThVnvTDQ" x="-1" y="-13"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_PUp5oX1nEeGyJ4ThVnvTDQ" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_PUp5on1nEeGyJ4ThVnvTDQ" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//Facet/facetElements"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PUp5o31nEeGyJ4ThVnvTDQ" points="[-43, 15, 164, -23]$[-145, 15, 62, -23]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PU1f0H1nEeGyJ4ThVnvTDQ" id="(0.3308270676691729,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PU1f0X1nEeGyJ4ThVnvTDQ" id="(0.4976958525345622,1.0)"/>
+ </edges>
+</notation:Diagram>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-query.ecorediag b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-query.ecorediag
new file mode 100644
index 00000000000..a094f7b582e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-query.ecorediag
@@ -0,0 +1,356 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmi:id="_Eq3REOqWEeC2XowyKYkfCg" type="EcoreTools" name="efacet2.ecorediag" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="__mCSPP5SEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="__mCSPf5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="__mCSPv5SEeCqzpi5PItoVA" type="5004">
+ <children xmi:type="notation:Node" xmi:id="__mCSP_5SEeCqzpi5PItoVA" type="2001">
+ <element xmi:type="ecore:EAttribute" href="efacet-0.2.0.ecore#//ParameterValue/value"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__mCSQP5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mCSQf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mCSQv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mCSQ_5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mCSRP5SEeCqzpi5PItoVA" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mCSRf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mCSRv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mCSR_5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="__mCSSP5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//ParameterValue"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__mCSSf5SEeCqzpi5PItoVA" x="990" y="425"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mC5TP5SEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="__mC5Tf5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="__mC5Tv5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mC5T_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mC5UP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mC5Uf5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mC5Uv5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mC5U_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mC5VP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mC5Vf5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="__mC5Vv5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//FacetReference"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__mC5V_5SEeCqzpi5PItoVA" x="170" y="485" width="118"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mC5WP5SEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="__mC5Wf5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="__mC5Wv5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mC5W_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mC5XP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mC5Xf5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mC5Xv5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mC5X_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mC5YP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mC5Yf5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="__mC5Yv5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//FacetAttribute"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__mC5Y_5SEeCqzpi5PItoVA" x="40" y="485" width="108"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mDgUP5SEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="__mDgUf5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="__mDgUv5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mDgU_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mDgVP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mDgVf5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mDgVv5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mDgV_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mDgWP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mDgWf5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="__mDgWv5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//DerivedTypedElement"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__mDgW_5SEeCqzpi5PItoVA" x="165" y="275" height="75"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mDgXP5SEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="__mDgXf5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="__mDgXv5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mDgX_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mDgYP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mDgYf5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mDgYv5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mDgY_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mDgZP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mDgZf5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="__mDgZv5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//FacetOperation"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__mDgZ_5SEeCqzpi5PItoVA" x="305" y="484" width="118"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mDgaP5SEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="__mDgaf5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="__mDgav5SEeCqzpi5PItoVA" type="5004">
+ <children xmi:type="notation:Node" xmi:id="__mDga_5SEeCqzpi5PItoVA" type="2001">
+ <element xmi:type="ecore:EAttribute" href="efacet-0.2.0.ecore#//extensible/Query/canHaveSideEffects"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__mDgbP5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mDgbf5SEeCqzpi5PItoVA" type="2001">
+ <element xmi:type="ecore:EAttribute" href="efacet-0.2.0.ecore#//extensible/Query/canBeCached"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__mDgbv5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mDgb_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mDgcP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mDgcf5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mDgcv5SEeCqzpi5PItoVA" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mDgc_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mDgdP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mDgdf5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="__mDgdv5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//extensible/Query"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__mDgd_5SEeCqzpi5PItoVA" x="390" y="245" width="238" height="88"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mEHYP5SEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__mEHYf5SEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__mEHYv5SEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="__mEHY_5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="__mEHZP5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mEHZf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mEHZv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mEHZ_5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mEHaP5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mEHaf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mEHav5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mEHa_5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="__mEHbP5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__mEHbf5SEeCqzpi5PItoVA" x="1080" y="165"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mEHbv5SEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__mEHb_5SEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__mEHcP5SEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="__mEHcf5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="__mEHcv5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mEHc_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mEHdP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mEHdf5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mEHdv5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mEHd_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mEHeP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mEHef5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="__mEHev5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__mEHe_5SEeCqzpi5PItoVA" x="730" y="355" width="138"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mEHfP5SEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__mEHff5SEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__mEHfv5SEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="__mEHf_5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="__mEHgP5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mEHgf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mEHgv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mEHg_5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mEHhP5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mEHhf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mEHhv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mEHh_5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="__mEHiP5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EOperation"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__mEucP5SEeCqzpi5PItoVA" x="380" y="415" width="128"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mEucf5SEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__mEucv5SEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__mEuc_5SEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="__mEudP5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="__mEudf5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mEudv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mEud_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mEueP5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mEuef5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mEuev5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mEue_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mEufP5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="__mEuff5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EParameter"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__mEufv5SEeCqzpi5PItoVA" x="800" y="425" width="123"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Sor40AB5EeGEGNPtjb321w" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_Sosf4AB5EeGEGNPtjb321w" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_Sosf4QB5EeGEGNPtjb321w" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_Sox_cAB5EeGEGNPtjb321w" type="2001">
+ <element xmi:type="ecore:EAttribute" href="efacet-0.2.0.ecore#//AbstractDerivedTypedElementResult/exception"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Sox_cQB5EeGEGNPtjb321w"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Sosf4gB5EeGEGNPtjb321w"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Sosf4wB5EeGEGNPtjb321w"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Sosf5AB5EeGEGNPtjb321w"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_SotG8AB5EeGEGNPtjb321w" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_SotG8QB5EeGEGNPtjb321w"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_SotG8gB5EeGEGNPtjb321w"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_SotG8wB5EeGEGNPtjb321w"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Sor40QB5EeGEGNPtjb321w" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//AbstractDerivedTypedElementResult"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Sor40gB5EeGEGNPtjb321w" x="965" y="260"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_Eq5GYuqWEeC2XowyKYkfCg"/>
+ <element xmi:type="ecore:EPackage" href="efacet-0.2.0.ecore#/"/>
+ <edges xmi:type="notation:Edge" xmi:id="__l_2AP5SEeCqzpi5PItoVA" type="3003" source="__mC5TP5SEeCqzpi5PItoVA" target="__mDgUP5SEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="__l_2Af5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="__l_2Av5SEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__l_2A_5SEeCqzpi5PItoVA" points="[8, 0, 36, 137]$[8, -137, 36, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__l_2BP5SEeCqzpi5PItoVA" id="(0.4954128440366973,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__l_2Bf5SEeCqzpi5PItoVA" id="(0.24427480916030533,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="__l_2Bv5SEeCqzpi5PItoVA" type="3003" source="__mC5WP5SEeCqzpi5PItoVA" target="__mDgUP5SEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="__l_2B_5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="__l_2CP5SEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__l_2Cf5SEeCqzpi5PItoVA" points="[26, 0, -115, 137]$[26, -82, -115, 55]$[87, -82, -54, 55]$[87, -137, -54, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__l_2Cv5SEeCqzpi5PItoVA" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__l_2C_5SEeCqzpi5PItoVA" id="(0.4961832061068702,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="__l_2DP5SEeCqzpi5PItoVA" type="3002" source="__mDgUP5SEeCqzpi5PItoVA" target="__mDgaP5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="__l_2Df5SEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__l_2Dv5SEeCqzpi5PItoVA" x="-18" y="-17"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__l_2D_5SEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__l_2EP5SEeCqzpi5PItoVA" x="9" y="-12"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="__l_2Ef5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="__l_2Ev5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//DerivedTypedElement/query"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__l_2E_5SEeCqzpi5PItoVA" points="[2, 0, -103, -22]$[101, 0, -4, -22]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__l_2FP5SEeCqzpi5PItoVA" id="(0.986013986013986,0.35555555555555557)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__l_2Ff5SEeCqzpi5PItoVA" id="(0.020202020202020204,0.5689655172413793)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="__mAdAP5SEeCqzpi5PItoVA" type="3003" source="__mDgXP5SEeCqzpi5PItoVA" target="__mDgUP5SEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="__mAdAf5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="__mAdAv5SEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__mAdA_5SEeCqzpi5PItoVA" points="[-27, 0, 65, 136]$[-27, -68, 65, 68]$[-72, -68, 20, 68]$[-72, -136, 20, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__mAdBP5SEeCqzpi5PItoVA" id="(0.4954954954954955,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__mAdBf5SEeCqzpi5PItoVA" id="(0.7480916030534351,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="__mAdGf5SEeCqzpi5PItoVA" type="3003" source="__mDgXP5SEeCqzpi5PItoVA" target="__mEHfP5SEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="__mAdGv5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="__mAdG_5SEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__mAdHP5SEeCqzpi5PItoVA" points="[32, -19, -33, 80]$[32, -80, -33, 19]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="__mBEFP5SEeCqzpi5PItoVA" type="3002" source="__mEucf5SEeCqzpi5PItoVA" target="__mEHfP5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="__mBEFf5SEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__mBEFv5SEeCqzpi5PItoVA" x="-10" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mBEF_5SEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__mBEGP5SEeCqzpi5PItoVA" x="6" y="-28"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="__mBEGf5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="__mBEGv5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/emf/2002/Ecore#//EParameter/eOperation"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__mBEG_5SEeCqzpi5PItoVA" points="[-60, -9, 343, 14]$[-354, -9, 49, 14]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__mBEHP5SEeCqzpi5PItoVA" id="(0.5,0.5)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__mBEHf5SEeCqzpi5PItoVA" id="(0.6171875,0.175)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="__mBEHv5SEeCqzpi5PItoVA" type="3003" source="__mEucf5SEeCqzpi5PItoVA" target="__mEHbv5SEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="__mBEH_5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="__mBEIP5SEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__mBEIf5SEeCqzpi5PItoVA" points="[-45, -19, 22, 70]$[-45, -70, 22, 19]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="__mBEIv5SEeCqzpi5PItoVA" type="3002" source="__mCSPP5SEeCqzpi5PItoVA" target="__mEucf5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="__mBEI_5SEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__mBEJP5SEeCqzpi5PItoVA" x="-19" y="-25"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mBEJf5SEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__mBEJv5SEeCqzpi5PItoVA" y="-11"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="__mBEJ_5SEeCqzpi5PItoVA" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="__mBEKP5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//ParameterValue/parameter"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__mBEKf5SEeCqzpi5PItoVA" points="[-70, -11, 86, 13]$[-139, -21, 17, 3]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__mBEKv5SEeCqzpi5PItoVA" id="(0.926829268292683,0.475)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="__mBrIP5SEeCqzpi5PItoVA" type="3002" source="__mDgaP5SEeCqzpi5PItoVA" target="__mEucf5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="__mBrIf5SEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__mBrIv5SEeCqzpi5PItoVA" x="32" y="-39"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mBrI_5SEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__mBrJP5SEeCqzpi5PItoVA" x="47" y="-15"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="__mBrJf5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="__mBrJv5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//extensible/Query/parameters"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__mBrJ_5SEeCqzpi5PItoVA" points="[3, -7, -257, -130]$[266, -7, 6, -130]$[266, 123, 6, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__mBrKP5SEeCqzpi5PItoVA" id="(0.9873949579831933,0.6666666666666666)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__mBrKf5SEeCqzpi5PItoVA" id="(0.6910569105691057,0.025)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="__mBrKv5SEeCqzpi5PItoVA" type="3002" source="__mEHfP5SEeCqzpi5PItoVA" target="__mEucf5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="__mBrK_5SEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__mBrLP5SEeCqzpi5PItoVA" x="6" y="9"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mBrLf5SEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__mBrLv5SEeCqzpi5PItoVA" x="34" y="24"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="__mBrL_5SEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="__mBrMP5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="http://www.eclipse.org/emf/2002/Ecore#//EOperation/eParameters"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__mBrMf5SEeCqzpi5PItoVA" points="[49, 14, -354, -9]$[343, 14, -60, -9]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jXyd8AB6EeGEGNPtjb321w" id="(0.6171875,0.175)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jXyd8QB6EeGEGNPtjb321w" id="(0.5,0.5)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_VN5nkAB5EeGEGNPtjb321w" type="3002" source="_Sor40AB5EeGEGNPtjb321w" target="__mDgUP5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_VN61sAB5EeGEGNPtjb321w" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VN61sQB5EeGEGNPtjb321w" x="41" y="-63"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_VN7cwAB5EeGEGNPtjb321w" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VN7cwQB5EeGEGNPtjb321w" x="60" y="-78"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_VN5nkQB5EeGEGNPtjb321w" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_VN5nkgB5EeGEGNPtjb321w" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//AbstractDerivedTypedElementResult/derivedTypedElement"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VN5nkwB5EeGEGNPtjb321w" points="[0, 0, 784, -88]$[0, -80, 784, -168]$[-784, -80, 0, -168]$[-784, 15, 0, -73]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VONJkgB5EeGEGNPtjb321w" id="(0.24774774774774774,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VONwoAB5EeGEGNPtjb321w" id="(0.4965034965034965,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_VN9R8AB5EeGEGNPtjb321w" type="3002" source="_Sor40AB5EeGEGNPtjb321w" target="__mCSPP5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_VN95AAB5EeGEGNPtjb321w" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VN95AQB5EeGEGNPtjb321w" x="-10" y="-54"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_VN95AgB5EeGEGNPtjb321w" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VN95AwB5EeGEGNPtjb321w" x="5" y="-19"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_VN9R8QB5EeGEGNPtjb321w" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_VN9R8gB5EeGEGNPtjb321w" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//AbstractDerivedTypedElementResult/parameterValues"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VN9R8wB5EeGEGNPtjb321w" points="[2, 6, 10, -149]$[32, 77, 40, -78]$[9, 122, 17, -33]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VONwowB5EeGEGNPtjb321w" id="(0.1981981981981982,0.8823529411764706)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VOOXsAB5EeGEGNPtjb321w" id="(0.07692307692307693,0.6862745098039216)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_VN_HIAB5EeGEGNPtjb321w" type="3002" source="_Sor40AB5EeGEGNPtjb321w" target="__mEHYP5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_VN_uMAB5EeGEGNPtjb321w" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VN_uMQB5EeGEGNPtjb321w" x="-21" y="24"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_VN_uMgB5EeGEGNPtjb321w" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VN_uMwB5EeGEGNPtjb321w" x="-6" y="14"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_VN_HIQB5EeGEGNPtjb321w" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_VN_HIgB5EeGEGNPtjb321w" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//AbstractDerivedTypedElementResult/source"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VN_HIwB5EeGEGNPtjb321w" points="[0, 0, -128, 95]$[128, -95, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VONwoQB5EeGEGNPtjb321w" id="(0.7477477477477478,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VONwogB5EeGEGNPtjb321w" id="(0.5,1.0)"/>
+ </edges>
+</notation:Diagram>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-result.ecorediag b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-result.ecorediag
new file mode 100644
index 00000000000..a3ced26512e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-result.ecorediag
@@ -0,0 +1,274 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmi:id="_Eq3REOqWEeC2XowyKYkfCg" type="EcoreTools" name="efacet2.ecorediag" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="__mCSPP5SEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="__mCSPf5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="__mCSPv5SEeCqzpi5PItoVA" type="5004">
+ <children xmi:type="notation:Node" xmi:id="__mCSP_5SEeCqzpi5PItoVA" type="2001">
+ <element xmi:type="ecore:EAttribute" href="efacet-0.2.0.ecore#//ParameterValue/value"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__mCSQP5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mCSQf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mCSQv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mCSQ_5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mCSRP5SEeCqzpi5PItoVA" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mCSRf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mCSRv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mCSR_5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="__mCSSP5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//ParameterValue"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__mCSSf5SEeCqzpi5PItoVA" x="65" y="155"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mCSSv5SEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="__mCSS_5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="__mCSTP5SEeCqzpi5PItoVA" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mCSTf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mCSTv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mCST_5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mCSUP5SEeCqzpi5PItoVA" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mCSUf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mCSUv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mCSU_5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="__mCSVP5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//DerivedTypedElementPrimitiveTypeResult"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__mCSVf5SEeCqzpi5PItoVA" x="115" y="355"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mDgUP5SEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="__mDgUf5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="__mDgUv5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mDgU_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mDgVP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mDgVf5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mDgVv5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mDgV_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mDgWP5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mDgWf5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="__mDgWv5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//DerivedTypedElement"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__mDgW_5SEeCqzpi5PItoVA" x="300" y="75" height="30"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mEHYP5SEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__mEHYf5SEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__mEHYv5SEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="__mEHY_5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="__mEHZP5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mEHZf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mEHZv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mEHZ_5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mEHaP5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mEHaf5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mEHav5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mEHa_5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="__mEHbP5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__mEHbf5SEeCqzpi5PItoVA" x="455" y="60"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mEucf5SEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__mEucv5SEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__mEuc_5SEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="__mEudP5SEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="__mEudf5SEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mEudv5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mEud_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mEueP5SEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mEuef5SEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="__mEuev5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="__mEue_5SEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="__mEufP5SEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="__mEuff5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EParameter"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__mEufv5SEeCqzpi5PItoVA" x="25" y="250" width="123"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Sor40AB5EeGEGNPtjb321w" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_Sosf4AB5EeGEGNPtjb321w" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_Sosf4QB5EeGEGNPtjb321w" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_Sox_cAB5EeGEGNPtjb321w" type="2001">
+ <element xmi:type="ecore:EAttribute" href="efacet-0.2.0.ecore#//AbstractDerivedTypedElementResult/exception"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Sox_cQB5EeGEGNPtjb321w"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Sosf4gB5EeGEGNPtjb321w"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Sosf4wB5EeGEGNPtjb321w"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Sosf5AB5EeGEGNPtjb321w"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_SotG8AB5EeGEGNPtjb321w" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_SotG8QB5EeGEGNPtjb321w"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_SotG8gB5EeGEGNPtjb321w"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_SotG8wB5EeGEGNPtjb321w"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Sor40QB5EeGEGNPtjb321w" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//AbstractDerivedTypedElementResult"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Sor40gB5EeGEGNPtjb321w" x="340" y="155"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_VNtaUAB5EeGEGNPtjb321w" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_VNuBYAB5EeGEGNPtjb321w" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_VNuocAB5EeGEGNPtjb321w" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_VNyS0AB5EeGEGNPtjb321w" type="2001">
+ <element xmi:type="ecore:EAttribute" href="efacet-0.2.0.ecore#//DerivedTypedElementPrimitiveTypeListResult/resultList"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VNyS0QB5EeGEGNPtjb321w"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_VNuocQB5EeGEGNPtjb321w"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_VNuocgB5EeGEGNPtjb321w"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_VNuocwB5EeGEGNPtjb321w"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_VNuodAB5EeGEGNPtjb321w" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_VNuodQB5EeGEGNPtjb321w"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_VNuodgB5EeGEGNPtjb321w"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_VNuodwB5EeGEGNPtjb321w"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_VNtaUQB5EeGEGNPtjb321w" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//DerivedTypedElementPrimitiveTypeListResult"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VNtaUgB5EeGEGNPtjb321w" x="380" y="355"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Iym1gRW3EeG2xva9erxGmQ" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_IyrG8BW3EeG2xva9erxGmQ" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_IyrG8RW3EeG2xva9erxGmQ" type="5001">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_IyrG8hW3EeG2xva9erxGmQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IyrG8xW3EeG2xva9erxGmQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IyrG9BW3EeG2xva9erxGmQ"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IyruABW3EeG2xva9erxGmQ" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_IyruARW3EeG2xva9erxGmQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IyruAhW3EeG2xva9erxGmQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IyruAxW3EeG2xva9erxGmQ"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Iym1ghW3EeG2xva9erxGmQ" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//DerivedTypedElementEObjectResult"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Iym1gxW3EeG2xva9erxGmQ" x="665" y="360"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_SM9QEBW3EeG2xva9erxGmQ" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_SM-eMBW3EeG2xva9erxGmQ" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_SM-eMRW3EeG2xva9erxGmQ" type="5001">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_SM-eMhW3EeG2xva9erxGmQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_SM-eMxW3EeG2xva9erxGmQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_SM-eNBW3EeG2xva9erxGmQ"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_SM-eNRW3EeG2xva9erxGmQ" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_SM-eNhW3EeG2xva9erxGmQ"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_SM-eNxW3EeG2xva9erxGmQ"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_SM-eOBW3EeG2xva9erxGmQ"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_SM93IBW3EeG2xva9erxGmQ" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//DerivedTypedElementEObjectListResult"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SM93IRW3EeG2xva9erxGmQ" x="900" y="360"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_Eq5GYuqWEeC2XowyKYkfCg"/>
+ <element xmi:type="ecore:EPackage" href="efacet-0.2.0.ecore#/"/>
+ <edges xmi:type="notation:Edge" xmi:id="__mBEIv5SEeCqzpi5PItoVA" type="3002" source="__mCSPP5SEeCqzpi5PItoVA" target="__mEucf5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="__mBEI_5SEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__mBEJP5SEeCqzpi5PItoVA" x="-20" y="-43"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="__mBEJf5SEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__mBEJv5SEeCqzpi5PItoVA" y="-11"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="__mBEJ_5SEeCqzpi5PItoVA" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="__mBEKP5SEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//ParameterValue/parameter"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__mBEKf5SEeCqzpi5PItoVA" points="[-70, -11, 86, 13]$[-139, -21, 17, 3]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__mBEKv5SEeCqzpi5PItoVA" id="(0.926829268292683,0.475)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_So7wcAB5EeGEGNPtjb321w" type="3003" source="__mCSSv5SEeCqzpi5PItoVA" target="_Sor40AB5EeGEGNPtjb321w">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_So7wcQB5EeGEGNPtjb321w" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_So7wcgB5EeGEGNPtjb321w" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_So7wcwB5EeGEGNPtjb321w" points="[106, 0, -63, 151]$[106, -151, -63, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SpDsQAB5EeGEGNPtjb321w" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SpETUAB5EeGEGNPtjb321w" id="(0.3333333333333333,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_VN5nkAB5EeGEGNPtjb321w" type="3002" source="_Sor40AB5EeGEGNPtjb321w" target="__mDgUP5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_VN61sAB5EeGEGNPtjb321w" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VN61sQB5EeGEGNPtjb321w" x="-6" y="-72"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_VN7cwAB5EeGEGNPtjb321w" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VN7cwQB5EeGEGNPtjb321w" x="-21" y="-16"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_VN5nkQB5EeGEGNPtjb321w" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_VN5nkgB5EeGEGNPtjb321w" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//AbstractDerivedTypedElementResult/derivedTypedElement"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VN5nkwB5EeGEGNPtjb321w" points="[0, -2, 11, 97]$[-11, -99, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VONJkgB5EeGEGNPtjb321w" id="(0.14414414414414414,0.058823529411764705)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VONwoAB5EeGEGNPtjb321w" id="(0.4965034965034965,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_VN9R8AB5EeGEGNPtjb321w" type="3002" source="_Sor40AB5EeGEGNPtjb321w" target="__mCSPP5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_VN95AAB5EeGEGNPtjb321w" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VN95AQB5EeGEGNPtjb321w" x="-38" y="-13"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_VN95AgB5EeGEGNPtjb321w" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VN95AwB5EeGEGNPtjb321w" x="2" y="-28"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_VN9R8QB5EeGEGNPtjb321w" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_VN9R8gB5EeGEGNPtjb321w" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//AbstractDerivedTypedElementResult/parameterValues"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VN9R8wB5EeGEGNPtjb321w" points="[-43, -7, 205, 3]$[-113, -18, 135, -8]$[-117, -18, 131, -8]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VONwowB5EeGEGNPtjb321w" id="(0.03153153153153153,0.43137254901960786)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VOOXsAB5EeGEGNPtjb321w" id="(0.9370629370629371,0.5294117647058824)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_VN_HIAB5EeGEGNPtjb321w" type="3002" source="_Sor40AB5EeGEGNPtjb321w" target="__mEHYP5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_VN_uMAB5EeGEGNPtjb321w" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VN_uMQB5EeGEGNPtjb321w" x="-21" y="24"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_VN_uMgB5EeGEGNPtjb321w" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_VN_uMwB5EeGEGNPtjb321w" x="-6" y="14"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_VN_HIQB5EeGEGNPtjb321w" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_VN_HIgB5EeGEGNPtjb321w" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//AbstractDerivedTypedElementResult/source"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VN_HIwB5EeGEGNPtjb321w" points="[0, 0, -128, 95]$[128, -95, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VONwoQB5EeGEGNPtjb321w" id="(0.7477477477477478,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VONwogB5EeGEGNPtjb321w" id="(0.5,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_VOAVQAB5EeGEGNPtjb321w" type="3003" source="_VNtaUAB5EeGEGNPtjb321w" target="_Sor40AB5EeGEGNPtjb321w">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_VOAVQQB5EeGEGNPtjb321w" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_VOAVQgB5EeGEGNPtjb321w" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VOAVQwB5EeGEGNPtjb321w" points="[-103, 0, -71, 151]$[-103, -151, -71, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VONJkAB5EeGEGNPtjb321w" id="(0.4975369458128079,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VONJkQB5EeGEGNPtjb321w" id="(0.6666666666666666,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IyzCwBW3EeG2xva9erxGmQ" type="3002" source="_Iym1gRW3EeG2xva9erxGmQ" target="__mEHYP5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_Iyzp0BW3EeG2xva9erxGmQ" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Iyzp0RW3EeG2xva9erxGmQ" x="9" y="-8"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Iyzp0hW3EeG2xva9erxGmQ" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Iyzp0xW3EeG2xva9erxGmQ" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IyzCwRW3EeG2xva9erxGmQ" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IyzCwhW3EeG2xva9erxGmQ" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//DerivedTypedElementEObjectResult/result"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IyzCwxW3EeG2xva9erxGmQ" points="[-73, -20, 470, 166]$[-73, -170, 470, 16]$[-493, -170, 50, 16]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_Iy0Q4BW3EeG2xva9erxGmQ" type="3003" source="_Iym1gRW3EeG2xva9erxGmQ" target="_Sor40AB5EeGEGNPtjb321w">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_Iy0Q4RW3EeG2xva9erxGmQ" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Iy0Q4hW3EeG2xva9erxGmQ" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Iy0Q4xW3EeG2xva9erxGmQ" points="[-88, -20, 240, 181]$[-88, -100, 240, 101]$[-248, -100, 80, 101]$[-248, -176, 80, 25]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_SNGaABW3EeG2xva9erxGmQ" type="3002" source="_SM9QEBW3EeG2xva9erxGmQ" target="__mEHYP5SEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_SNHBEBW3EeG2xva9erxGmQ" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_SNHBERW3EeG2xva9erxGmQ" x="-6" y="-8"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_SNHBEhW3EeG2xva9erxGmQ" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_SNHBExW3EeG2xva9erxGmQ" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_SNGaARW3EeG2xva9erxGmQ" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_SNGaAhW3EeG2xva9erxGmQ" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//DerivedTypedElementEObjectListResult/resultList"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_SNGaAxW3EeG2xva9erxGmQ" points="[-53, -20, 465, 281]$[-53, -315, 465, -14]$[-468, -315, 50, -14]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_SNIPMBW3EeG2xva9erxGmQ" type="3003" source="_SM9QEBW3EeG2xva9erxGmQ" target="_Sor40AB5EeGEGNPtjb321w">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_SNIPMRW3EeG2xva9erxGmQ" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_SNIPMhW3EeG2xva9erxGmQ" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_SNIPMxW3EeG2xva9erxGmQ" points="[-93, -20, 480, 181]$[-93, -127, 480, 74]$[-473, -127, 100, 74]$[-473, -176, 100, 25]"/>
+ </edges>
+</notation:Diagram>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-serialization.ecorediag b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-serialization.ecorediag
new file mode 100644
index 00000000000..729367b9c67
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2-serialization.ecorediag
@@ -0,0 +1,406 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmi:id="_CmfYMeOIEeCYNNyffmuRHg" type="EcoreTools" name="efacet2.ecorediag" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="_Cm5n4OOIEeCYNNyffmuRHg" type="1002">
+ <children xmi:type="notation:Node" xmi:id="_Cm5n5OOIEeCYNNyffmuRHg" type="4006"/>
+ <children xmi:type="notation:Node" xmi:id="_Cm5n5eOIEeCYNNyffmuRHg" type="5003">
+ <children xmi:type="notation:Node" xmi:id="_GBhUoOOIEeCYNNyffmuRHg" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_GBh7sOOIEeCYNNyffmuRHg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_GBh7seOIEeCYNNyffmuRHg" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_GBh7suOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBh7s-OIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBh7tOOIEeCYNNyffmuRHg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GBiiwOOIEeCYNNyffmuRHg" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_GBiiweOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBiiwuOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBiiw-OIEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_GBhUoeOIEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//serialization/ExtendedEObjectReference"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBhUouOIEeCYNNyffmuRHg" x="320" y="12" width="183"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GBkX8-OIEeCYNNyffmuRHg" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_GBk_AOOIEeCYNNyffmuRHg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_GBlmEOOIEeCYNNyffmuRHg" type="5004">
+ <children xmi:type="notation:Node" xmi:id="_GBvXEOOIEeCYNNyffmuRHg" type="2001">
+ <element xmi:type="ecore:EAttribute" href="efacet-0.2.0.ecore#//serialization/SingleValuedAttributeInstance/value"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GBvXEeOIEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_GBlmEeOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBlmEuOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBlmE-OIEeCYNNyffmuRHg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GBlmFOOIEeCYNNyffmuRHg" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_GBlmFeOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBlmFuOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBlmF-OIEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_GBkX9OOIEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//serialization/SingleValuedAttributeInstance"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBkX9eOIEeCYNNyffmuRHg" x="225" y="187" width="198"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GBmNIOOIEeCYNNyffmuRHg" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_GBm0MOOIEeCYNNyffmuRHg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_GBm0MeOIEeCYNNyffmuRHg" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_GBm0MuOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBm0M-OIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBm0NOOIEeCYNNyffmuRHg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GBnbQOOIEeCYNNyffmuRHg" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_GBnbQeOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBnbQuOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBnbQ-OIEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_GBmNIeOIEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//serialization/AbstractReferenceInstance"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBmNIuOIEeCYNNyffmuRHg" x="450" y="182"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GBnbROOIEeCYNNyffmuRHg" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_GBoCUOOIEeCYNNyffmuRHg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_GBopYOOIEeCYNNyffmuRHg" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_GBopYeOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBopYuOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBopY-OIEeCYNNyffmuRHg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GBopZOOIEeCYNNyffmuRHg" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_GBopZeOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBopZuOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBopZ-OIEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_GBnbReOIEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//serialization/MultiValuedReferenceInstance"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBnbRuOIEeCYNNyffmuRHg" x="640" y="272" width="208"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_6rbCQOOLEeCYNNyffmuRHg" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_6rt9MOOLEeCYNNyffmuRHg" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_6rt9MeOLEeCYNNyffmuRHg" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_6rbpUOOLEeCYNNyffmuRHg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_6rbpUeOLEeCYNNyffmuRHg" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_6rbpUuOLEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_6rbpU-OLEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_6rbpVOOLEeCYNNyffmuRHg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_6rcQYOOLEeCYNNyffmuRHg" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_6rcQYeOLEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_6rcQYuOLEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_6rcQY-OLEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_6rbCQeOLEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EAttribute"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6rbCQuOLEeCYNNyffmuRHg" y="112" width="117"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_G4rCQOOMEeCYNNyffmuRHg" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_G5KKcOOMEeCYNNyffmuRHg" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_G5KKceOMEeCYNNyffmuRHg" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_G4rpUOOMEeCYNNyffmuRHg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_G4rpUeOMEeCYNNyffmuRHg" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_G4rpUuOMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_G4rpU-OMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_G4rpVOOMEeCYNNyffmuRHg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_G4rpVeOMEeCYNNyffmuRHg" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_G4rpVuOMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_G4rpV-OMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_G4rpWOOMEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_G4rCQeOMEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EReference"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_G4rCQuOMEeCYNNyffmuRHg" x="720" y="192" width="118"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_mxDwIOOMEeCYNNyffmuRHg" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_mxi4UOOMEeCYNNyffmuRHg" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_mxi4UeOMEeCYNNyffmuRHg" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_mxGzcOOMEeCYNNyffmuRHg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_mxGzceOMEeCYNNyffmuRHg" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_mxGzcuOMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_mxGzc-OMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_mxGzdOOMEeCYNNyffmuRHg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_mxHagOOMEeCYNNyffmuRHg" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_mxHageOMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_mxHaguOMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_mxHag-OMEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_mxDwIeOMEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mxDwIuOMEeCYNNyffmuRHg" x="655" y="17"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_wNcLAeOMEeCYNNyffmuRHg" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_wNcLAuOMEeCYNNyffmuRHg" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_wNcLA-OMEeCYNNyffmuRHg" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_wNcLBOOMEeCYNNyffmuRHg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_wNcLBeOMEeCYNNyffmuRHg" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_wNcLBuOMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_wNcLB-OMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_wNcLCOOMEeCYNNyffmuRHg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_wNcLCeOMEeCYNNyffmuRHg" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_wNcLCuOMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_wNcLC-OMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_wNcLDOOMEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_wNcLDeOMEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wNcLDuOMEeCYNNyffmuRHg" x="485" y="387"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_w3w2IORXEeC5WpT-Wrn0aw" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_w3zSYORXEeC5WpT-Wrn0aw" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_w3z5cORXEeC5WpT-Wrn0aw" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_w3z5ceRXEeC5WpT-Wrn0aw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w3z5cuRXEeC5WpT-Wrn0aw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w3z5c-RXEeC5WpT-Wrn0aw"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_w3z5dORXEeC5WpT-Wrn0aw" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_w3z5deRXEeC5WpT-Wrn0aw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w3z5duRXEeC5WpT-Wrn0aw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w3z5d-RXEeC5WpT-Wrn0aw"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_w3w2IeRXEeC5WpT-Wrn0aw" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//serialization/MultiValuedContainmentReferenceInstance"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w3w2IuRXEeC5WpT-Wrn0aw" x="355" y="272" width="278"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_cXQZYQYrEeGYDsUJWg2Svg" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_cXRngAYrEeGYDsUJWg2Svg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_cXRngQYrEeGYDsUJWg2Svg" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_cXRnggYrEeGYDsUJWg2Svg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cXRngwYrEeGYDsUJWg2Svg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cXRnhAYrEeGYDsUJWg2Svg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_cXSOkAYrEeGYDsUJWg2Svg" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_cXSOkQYrEeGYDsUJWg2Svg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_cXSOkgYrEeGYDsUJWg2Svg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_cXSOkwYrEeGYDsUJWg2Svg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_cXQZYgYrEeGYDsUJWg2Svg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//serialization/SingleValuedContainmentReferenceInstance"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cXQZYwYrEeGYDsUJWg2Svg" x="65" y="272" width="283"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_rkjqAAYrEeGYDsUJWg2Svg" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_rkkREAYrEeGYDsUJWg2Svg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_rkkREQYrEeGYDsUJWg2Svg" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_rkkREgYrEeGYDsUJWg2Svg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_rkkREwYrEeGYDsUJWg2Svg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_rkkRFAYrEeGYDsUJWg2Svg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_rkk4IAYrEeGYDsUJWg2Svg" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_rkk4IQYrEeGYDsUJWg2Svg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_rkk4IgYrEeGYDsUJWg2Svg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_rkk4IwYrEeGYDsUJWg2Svg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_rkjqAQYrEeGYDsUJWg2Svg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//serialization/SingleValuedReferenceInstance"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rkjqAgYrEeGYDsUJWg2Svg" x="855" y="272" width="208"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_UzFn4AYsEeGYDsUJWg2Svg" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_UzGO8AYsEeGYDsUJWg2Svg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_UzG2AAYsEeGYDsUJWg2Svg" type="5004">
+ <children xmi:type="notation:Node" xmi:id="_YnRrMAYsEeGYDsUJWg2Svg" type="2001">
+ <element xmi:type="ecore:EAttribute" href="efacet-0.2.0.ecore#//serialization/MultiValuedAttributeInstance/values"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YnSSQAYsEeGYDsUJWg2Svg"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_UzG2AQYsEeGYDsUJWg2Svg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_UzG2AgYsEeGYDsUJWg2Svg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_UzG2AwYsEeGYDsUJWg2Svg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_UzG2BAYsEeGYDsUJWg2Svg" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_UzG2BQYsEeGYDsUJWg2Svg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_UzG2BgYsEeGYDsUJWg2Svg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_UzG2BwYsEeGYDsUJWg2Svg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_UzFn4QYsEeGYDsUJWg2Svg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//serialization/MultiValuedAttributeInstance"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UzFn4gYsEeGYDsUJWg2Svg" x="25" y="187" width="193"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_nIhHEAYsEeGYDsUJWg2Svg" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_nIhuIAYsEeGYDsUJWg2Svg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_nIhuIQYsEeGYDsUJWg2Svg" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_nIhuIgYsEeGYDsUJWg2Svg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_nIhuIwYsEeGYDsUJWg2Svg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_nIhuJAYsEeGYDsUJWg2Svg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_nIiVMAYsEeGYDsUJWg2Svg" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_nIiVMQYsEeGYDsUJWg2Svg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_nIiVMgYsEeGYDsUJWg2Svg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_nIiVMwYsEeGYDsUJWg2Svg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_nIhHEQYsEeGYDsUJWg2Svg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet-0.2.0.ecore#//serialization/AbstractAttributeInstance"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nIhHEgYsEeGYDsUJWg2Svg" x="180" y="107" height="23"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Cm5n5uOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Cm5n5-OIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Cm5n6OOIEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Cm5n4eOIEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" lineColor="4210752"/>
+ <styles xmi:type="notation:MultiDiagramLinkStyle" xmi:id="_Cm5n4uOIEeCYNNyffmuRHg"/>
+ <element xmi:type="ecore:EPackage" href="efacet-0.2.0.ecore#//serialization"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cm5n4-OIEeCYNNyffmuRHg" x="20" y="20" width="1123" height="483"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_CmfYMuOIEeCYNNyffmuRHg"/>
+ <element xmi:type="ecore:EPackage" href="efacet-0.2.0.ecore#/"/>
+ <edges xmi:type="notation:Edge" xmi:id="_GB3S4OOIEeCYNNyffmuRHg" type="3002" source="_GBhUoOOIEeCYNNyffmuRHg" target="_nIhHEAYsEeGYDsUJWg2Svg">
+ <children xmi:type="notation:Node" xmi:id="_GB3S5OOIEeCYNNyffmuRHg" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GB3S5eOIEeCYNNyffmuRHg" x="27" y="53"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GB3S5uOIEeCYNNyffmuRHg" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GB3S5-OIEeCYNNyffmuRHg" x="11" y="15"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_GB3S4eOIEeCYNNyffmuRHg" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_GB3S4uOIEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//serialization/ExtendedEObjectReference/attributeInstances"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GB3S4-OIEeCYNNyffmuRHg" points="[0, 0, 0, 60]$[0, -60, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GCIYouOIEeCYNNyffmuRHg" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GCIYo-OIEeCYNNyffmuRHg" id="(0.7831325301204819,0.20930232558139536)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_GB358OOIEeCYNNyffmuRHg" type="3002" source="_GBhUoOOIEeCYNNyffmuRHg" target="_GBmNIOOIEeCYNNyffmuRHg">
+ <children xmi:type="notation:Node" xmi:id="_GB4hAOOIEeCYNNyffmuRHg" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GB4hAeOIEeCYNNyffmuRHg" x="3" y="-64"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GB4hAuOIEeCYNNyffmuRHg" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GB4hA-OIEeCYNNyffmuRHg" x="7" y="-20"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_GB358eOIEeCYNNyffmuRHg" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_GB358uOIEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//serialization/ExtendedEObjectReference/referenceInstances"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GB358-OIEeCYNNyffmuRHg" points="[0, 0, -164, 68]$[164, -68, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GCI_sOOIEeCYNNyffmuRHg" id="(0.7134831460674157,0.9767441860465116)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GCI_seOIEeCYNNyffmuRHg" id="(0.2471264367816092,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_GB8LYOOIEeCYNNyffmuRHg" type="3003" source="_GBnbROOIEeCYNNyffmuRHg" target="_GBmNIOOIEeCYNNyffmuRHg">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_GB8LYeOIEeCYNNyffmuRHg" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_GB8LYuOIEeCYNNyffmuRHg" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GB8LY-OIEeCYNNyffmuRHg" points="[-83, 0, 82, 52]$[-83, -10, 82, 42]$[-178, -10, -13, 42]$[-178, -52, -13, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GCIYoOOIEeCYNNyffmuRHg" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GCIYoeOIEeCYNNyffmuRHg" id="(0.7471264367816092,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_G4654OOMEeCYNNyffmuRHg" type="3002" source="_GBmNIOOIEeCYNNyffmuRHg" target="_G4rCQOOMEeCYNNyffmuRHg">
+ <children xmi:type="notation:Node" xmi:id="_G47g8OOMEeCYNNyffmuRHg" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_G47g8eOMEeCYNNyffmuRHg" x="-18" y="-11"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_G47g8uOMEeCYNNyffmuRHg" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_G47g8-OMEeCYNNyffmuRHg" y="9"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_G4654eOMEeCYNNyffmuRHg" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_G4654uOMEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//serialization/AbstractReferenceInstance/eReference"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_G4654-OMEeCYNNyffmuRHg" points="[-86, -8, 311, 30]$[-396, -38, 1, 0]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_mxaVcOOMEeCYNNyffmuRHg" type="3002" source="_GBhUoOOIEeCYNNyffmuRHg" target="_mxDwIOOMEeCYNNyffmuRHg">
+ <children xmi:type="notation:Node" xmi:id="_mxaVdOOMEeCYNNyffmuRHg" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_mxaVdeOMEeCYNNyffmuRHg" x="-36" y="-11"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_mxaVduOMEeCYNNyffmuRHg" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_mxaVd-OMEeCYNNyffmuRHg" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_mxaVceOMEeCYNNyffmuRHg" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_mxaVcuOMEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//serialization/ExtendedEObjectReference/extendedEObject"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_mxaVc-OMEeCYNNyffmuRHg" points="[-88, -8, 286, 25]$[-373, -33, 1, 0]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_pXKB4ORLEeC5WpT-Wrn0aw" type="3002" source="_GBnbROOIEeCYNNyffmuRHg" target="_wNcLAeOMEeCYNNyffmuRHg">
+ <children xmi:type="notation:Node" xmi:id="_pXKo8uRLEeC5WpT-Wrn0aw" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_pXKo8-RLEeC5WpT-Wrn0aw" x="-18" y="11"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_pXLQAORLEeC5WpT-Wrn0aw" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_pXLQAeRLEeC5WpT-Wrn0aw" x="13" y="12"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_pXKB4eRLEeC5WpT-Wrn0aw" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_pXKo8ORLEeC5WpT-Wrn0aw" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//serialization/MultiValuedReferenceInstance/referencedElements"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_pXKo8eRLEeC5WpT-Wrn0aw" points="[9, -20, -354, 746]$[354, -747, -9, 19]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_NbL6sORVEeC5WpT-Wrn0aw" id="(0.7647058823529411,0.15)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_w37OMORXEeC5WpT-Wrn0aw" type="3002" source="_w3w2IORXEeC5WpT-Wrn0aw" target="_wNcLAeOMEeCYNNyffmuRHg">
+ <children xmi:type="notation:Node" xmi:id="_w371QORXEeC5WpT-Wrn0aw" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w371QeRXEeC5WpT-Wrn0aw" x="-26" y="33"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_w371QuRXEeC5WpT-Wrn0aw" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w371Q-RXEeC5WpT-Wrn0aw" x="-8" y="11"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_w37OMeRXEeC5WpT-Wrn0aw" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w37OMuRXEeC5WpT-Wrn0aw" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//serialization/MultiValuedContainmentReferenceInstance/ownedElements"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w37OM-RXEeC5WpT-Wrn0aw" points="[11, 21, -26, -51]$[33, 65, -4, -7]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y2QjIORXEeC5WpT-Wrn0aw" id="(0.2549019607843137,0.2)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_w38cUORXEeC5WpT-Wrn0aw" type="3003" source="_w3w2IORXEeC5WpT-Wrn0aw" target="_GBmNIOOIEeCYNNyffmuRHg">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_w38cUeRXEeC5WpT-Wrn0aw" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w38cUuRXEeC5WpT-Wrn0aw" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w38cU-RXEeC5WpT-Wrn0aw" points="[32, -19, -46, 71]$[32, -71, -46, 19]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_k-dfwAYrEeGYDsUJWg2Svg" type="3003" source="_cXQZYQYrEeGYDsUJWg2Svg" target="_GBmNIOOIEeCYNNyffmuRHg">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_k-dfwQYrEeGYDsUJWg2Svg" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_k-dfwgYrEeGYDsUJWg2Svg" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_k-dfwwYrEeGYDsUJWg2Svg" points="[-37, -10, -199, 64]$[-37, -25, -199, 49]$[137, -25, -25, 49]$[137, -62, -25, 12]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_k-gjEAYrEeGYDsUJWg2Svg" id="(0.8975265017667845,0.275)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_k-gjEQYrEeGYDsUJWg2Svg" id="(0.1724137931034483,0.7)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_wxvgkAYrEeGYDsUJWg2Svg" type="3003" source="_rkjqAAYrEeGYDsUJWg2Svg" target="_GBmNIOOIEeCYNNyffmuRHg">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_wxvgkQYrEeGYDsUJWg2Svg" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_wxvgkgYrEeGYDsUJWg2Svg" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_wxvgkwYrEeGYDsUJWg2Svg" points="[7, -11, 314, 64]$[7, -31, 314, 44]$[-288, -31, 19, 44]$[-288, -63, 19, 12]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wxx80AYrEeGYDsUJWg2Svg" id="(0.2,0.3)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wxx80QYrEeGYDsUJWg2Svg" id="(0.7931034482758621,0.7)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_1ETh8AYrEeGYDsUJWg2Svg" type="3002" source="_cXQZYQYrEeGYDsUJWg2Svg" target="_wNcLAeOMEeCYNNyffmuRHg">
+ <children xmi:type="notation:Node" xmi:id="_1EUJAAYrEeGYDsUJWg2Svg" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1EUwEAYrEeGYDsUJWg2Svg" x="-61" y="26"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_1EVXIAYrEeGYDsUJWg2Svg" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_1EVXIQYrEeGYDsUJWg2Svg" x="-25" y="29"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_1ETh8QYrEeGYDsUJWg2Svg" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_1ETh8gYrEeGYDsUJWg2Svg" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//serialization/SingleValuedContainmentReferenceInstance/ownedElement"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_1ETh8wYrEeGYDsUJWg2Svg" points="[48, 19, -239, -95]$[288, 96, 1, -18]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1EXzYAYrEeGYDsUJWg2Svg" id="(0.0784313725490196,0.475)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_4FQKcAYrEeGYDsUJWg2Svg" type="3002" source="_rkjqAAYrEeGYDsUJWg2Svg" target="_wNcLAeOMEeCYNNyffmuRHg">
+ <children xmi:type="notation:Node" xmi:id="_4FQxgAYrEeGYDsUJWg2Svg" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_4FQxgQYrEeGYDsUJWg2Svg" x="-2" y="-28"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_4FQxggYrEeGYDsUJWg2Svg" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_4FQxgwYrEeGYDsUJWg2Svg" x="33" y="-12"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_4FQKcQYrEeGYDsUJWg2Svg" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_4FQKcgYrEeGYDsUJWg2Svg" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//serialization/SingleValuedReferenceInstance/referencedElement"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_4FQKcwYrEeGYDsUJWg2Svg" points="[-20, 19, 362, -105]$[-116, 111, 266, -13]$[-366, 123, 16, -1]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_4FT00AYrEeGYDsUJWg2Svg" id="(0.9705882352941176,0.475)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_cZc8UAYsEeGYDsUJWg2Svg" type="3002" source="_nIhHEAYsEeGYDsUJWg2Svg" target="_6rbCQOOLEeCYNNyffmuRHg">
+ <children xmi:type="notation:Node" xmi:id="_cZdjYAYsEeGYDsUJWg2Svg" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_cZdjYQYsEeGYDsUJWg2Svg" x="-23" y="-12"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_cZdjYgYsEeGYDsUJWg2Svg" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_cZdjYwYsEeGYDsUJWg2Svg" x="1" y="13"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_cZc8UQYsEeGYDsUJWg2Svg" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_cZc8UgYsEeGYDsUJWg2Svg" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet-0.2.0.ecore#//serialization/AbstractAttributeInstance/eAttribute"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cZc8UwYsEeGYDsUJWg2Svg" points="[-24, -2, 135, 10]$[-109, -8, 50, 4]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cZf_oAYsEeGYDsUJWg2Svg" id="(0.15060240963855423,0.3953488372093023)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cZf_oQYsEeGYDsUJWg2Svg" id="(0.9829059829059829,0.3)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_xL9h8AYsEeGYDsUJWg2Svg" type="3003" source="_UzFn4AYsEeGYDsUJWg2Svg" target="_nIhHEAYsEeGYDsUJWg2Svg">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_xL9h8QYsEeGYDsUJWg2Svg" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_xL9h8gYsEeGYDsUJWg2Svg" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xL9h8wYsEeGYDsUJWg2Svg" points="[13, -24, -132, 60]$[13, -39, -132, 45]$[113, -39, -32, 45]$[113, -63, -32, 21]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_xkTJcAYsEeGYDsUJWg2Svg" type="3003" source="_GBkX8-OIEeCYNNyffmuRHg" target="_nIhHEAYsEeGYDsUJWg2Svg">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_xkTJcQYsEeGYDsUJWg2Svg" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_xkTJcgYsEeGYDsUJWg2Svg" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xkTJcwYsEeGYDsUJWg2Svg" points="[49, -8, 63, 60]$[49, -23, 63, 45]$[-10, -23, 4, 45]$[-10, -47, 4, 21]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xkVlsAYsEeGYDsUJWg2Svg" id="(0.2694300518134715,0.17647058823529413)"/>
+ </edges>
+</notation:Diagram>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2.ecorediag b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2.ecorediag
new file mode 100644
index 00000000000..bac70df09dc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2.ecorediag
@@ -0,0 +1,891 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmi:id="_CmfYMeOIEeCYNNyffmuRHg" type="EcoreTools" name="efacet2.ecorediag" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="_Cm5n4OOIEeCYNNyffmuRHg" type="1002">
+ <children xmi:type="notation:Node" xmi:id="_Cm5n5OOIEeCYNNyffmuRHg" type="4006"/>
+ <children xmi:type="notation:Node" xmi:id="_Cm5n5eOIEeCYNNyffmuRHg" type="5003">
+ <children xmi:type="notation:Node" xmi:id="_GBhUoOOIEeCYNNyffmuRHg" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_GBh7sOOIEeCYNNyffmuRHg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_GBh7seOIEeCYNNyffmuRHg" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_GBh7suOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBh7s-OIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBh7tOOIEeCYNNyffmuRHg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GBiiwOOIEeCYNNyffmuRHg" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_GBiiweOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBiiwuOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBiiw-OIEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_GBhUoeOIEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet2.ecore#//serialization/ExtendedEObjectReference"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBhUouOIEeCYNNyffmuRHg" x="285" y="12" width="183"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GBkX8-OIEeCYNNyffmuRHg" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_GBk_AOOIEeCYNNyffmuRHg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_GBlmEOOIEeCYNNyffmuRHg" type="5004">
+ <children xmi:type="notation:Node" xmi:id="_GBvXEOOIEeCYNNyffmuRHg" type="2001">
+ <element xmi:type="ecore:EAttribute" href="efacet2.ecore#//serialization/AttributeInstance/value"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GBvXEeOIEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_GBlmEeOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBlmEuOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBlmE-OIEeCYNNyffmuRHg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GBlmFOOIEeCYNNyffmuRHg" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_GBlmFeOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBlmFuOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBlmF-OIEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_GBkX9OOIEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet2.ecore#//serialization/AttributeInstance"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBkX9eOIEeCYNNyffmuRHg" x="160" y="142"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GBmNIOOIEeCYNNyffmuRHg" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_GBm0MOOIEeCYNNyffmuRHg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_GBm0MeOIEeCYNNyffmuRHg" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_GBm0MuOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBm0M-OIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBm0NOOIEeCYNNyffmuRHg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GBnbQOOIEeCYNNyffmuRHg" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_GBnbQeOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBnbQuOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBnbQ-OIEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_GBmNIeOIEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet2.ecore#//serialization/AbstractReferenceInstance"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBmNIuOIEeCYNNyffmuRHg" x="415" y="137"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GBnbROOIEeCYNNyffmuRHg" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_GBoCUOOIEeCYNNyffmuRHg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_GBopYOOIEeCYNNyffmuRHg" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_GBopYeOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBopYuOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBopY-OIEeCYNNyffmuRHg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GBopZOOIEeCYNNyffmuRHg" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_GBopZeOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_GBopZuOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_GBopZ-OIEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_GBnbReOIEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet2.ecore#//serialization/ReferenceInstance"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GBnbRuOIEeCYNNyffmuRHg" x="545" y="227"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_6rbCQOOLEeCYNNyffmuRHg" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_6rt9MOOLEeCYNNyffmuRHg" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_6rt9MeOLEeCYNNyffmuRHg" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_6rbpUOOLEeCYNNyffmuRHg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_6rbpUeOLEeCYNNyffmuRHg" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_6rbpUuOLEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_6rbpU-OLEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_6rbpVOOLEeCYNNyffmuRHg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_6rcQYOOLEeCYNNyffmuRHg" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_6rcQYeOLEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_6rcQYuOLEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_6rcQY-OLEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_6rbCQeOLEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EAttribute"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6rbCQuOLEeCYNNyffmuRHg" x="10" y="147"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_G4rCQOOMEeCYNNyffmuRHg" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_G5KKcOOMEeCYNNyffmuRHg" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_G5KKceOMEeCYNNyffmuRHg" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_G4rpUOOMEeCYNNyffmuRHg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_G4rpUeOMEeCYNNyffmuRHg" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_G4rpUuOMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_G4rpU-OMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_G4rpVOOMEeCYNNyffmuRHg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_G4rpVeOMEeCYNNyffmuRHg" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_G4rpVuOMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_G4rpV-OMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_G4rpWOOMEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_G4rCQeOMEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EReference"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_G4rCQuOMEeCYNNyffmuRHg" x="685" y="147"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_mxDwIOOMEeCYNNyffmuRHg" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_mxi4UOOMEeCYNNyffmuRHg" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_mxi4UeOMEeCYNNyffmuRHg" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_mxGzcOOMEeCYNNyffmuRHg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_mxGzceOMEeCYNNyffmuRHg" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_mxGzcuOMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_mxGzc-OMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_mxGzdOOMEeCYNNyffmuRHg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_mxHagOOMEeCYNNyffmuRHg" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_mxHageOMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_mxHaguOMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_mxHag-OMEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_mxDwIeOMEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mxDwIuOMEeCYNNyffmuRHg" x="620" y="17"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_wNcLAeOMEeCYNNyffmuRHg" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_wNcLAuOMEeCYNNyffmuRHg" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_wNcLA-OMEeCYNNyffmuRHg" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_wNcLBOOMEeCYNNyffmuRHg" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_wNcLBeOMEeCYNNyffmuRHg" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_wNcLBuOMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_wNcLB-OMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_wNcLCOOMEeCYNNyffmuRHg"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_wNcLCeOMEeCYNNyffmuRHg" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_wNcLCuOMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_wNcLC-OMEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_wNcLDOOMEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_wNcLDeOMEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wNcLDuOMEeCYNNyffmuRHg" x="450" y="342"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_w3w2IORXEeC5WpT-Wrn0aw" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_w3zSYORXEeC5WpT-Wrn0aw" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_w3z5cORXEeC5WpT-Wrn0aw" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_w3z5ceRXEeC5WpT-Wrn0aw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w3z5cuRXEeC5WpT-Wrn0aw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w3z5c-RXEeC5WpT-Wrn0aw"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_w3z5dORXEeC5WpT-Wrn0aw" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_w3z5deRXEeC5WpT-Wrn0aw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_w3z5duRXEeC5WpT-Wrn0aw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_w3z5d-RXEeC5WpT-Wrn0aw"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_w3w2IeRXEeC5WpT-Wrn0aw" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet2.ecore#//serialization/ContainmentReferenceInstance"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w3w2IuRXEeC5WpT-Wrn0aw" x="320" y="227"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Cm5n5uOIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Cm5n5-OIEeCYNNyffmuRHg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Cm5n6OOIEeCYNNyffmuRHg"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Cm5n4eOIEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13150135" lineColor="4210752"/>
+ <styles xmi:type="notation:MultiDiagramLinkStyle" xmi:id="_Cm5n4uOIEeCYNNyffmuRHg"/>
+ <element xmi:type="ecore:EPackage" href="efacet2.ecore#//serialization"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cm5n4-OIEeCYNNyffmuRHg" x="115" y="730" width="833" height="453"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH-5vv5TEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_XH-5v_5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XH-5wP5TEeCqzpi5PItoVA" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XH-5wf5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XH-5wv5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XH-5w_5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH-5xP5TEeCqzpi5PItoVA" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XH-5xf5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XH-5xv5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XH-5x_5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XH-5yP5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet2.ecore#//TypedElementRef"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XH-5yf5TEeCqzpi5PItoVA" x="695" y="467"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH-5yv5TEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_XH-5y_5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XH-5zP5TEeCqzpi5PItoVA" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XH-5zf5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XH-5zv5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XH-5z_5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH-50P5TEeCqzpi5PItoVA" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XH-50f5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XH-50v5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XH-50_5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XH-51P5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet2.ecore#//ParameterValue"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XH-51f5TEeCqzpi5PItoVA" x="1240" y="312"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH_goP5TEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_XH_gof5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XH_gov5TEeCqzpi5PItoVA" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XH_go_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XH_gpP5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XH_gpf5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH_gpv5TEeCqzpi5PItoVA" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XH_gp_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XH_gqP5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XH_gqf5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XH_gqv5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet2.ecore#//Facet"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XH_gq_5TEeCqzpi5PItoVA" x="665" y="257"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH_grP5TEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_XH_grf5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XH_grv5TEeCqzpi5PItoVA" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XH_gr_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XH_gsP5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XH_gsf5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH_gsv5TEeCqzpi5PItoVA" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XH_gs_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XH_gtP5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XH_gtf5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XH_gtv5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet2.ecore#//DerivedTypedElementResult"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XH_gt_5TEeCqzpi5PItoVA" x="960" y="307"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH_guP5TEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_XH_guf5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XH_guv5TEeCqzpi5PItoVA" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XH_gu_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XH_gvP5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XH_gvf5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH_gvv5TEeCqzpi5PItoVA" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XH_gv_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XH_gwP5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XH_gwf5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XH_gwv5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet2.ecore#//Category"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XH_gw_5TEeCqzpi5PItoVA" x="445" y="107"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH_gxP5TEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_XH_gxf5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XH_gxv5TEeCqzpi5PItoVA" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XH_gx_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XH_gyP5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XH_gyf5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH_gyv5TEeCqzpi5PItoVA" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XH_gy_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XH_gzP5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XH_gzf5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XH_gzv5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet2.ecore#//FacetElement"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XH_gz_5TEeCqzpi5PItoVA" x="215" y="122"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH_g0P5TEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_XH_g0f5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XH_g0v5TEeCqzpi5PItoVA" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XH_g0_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XH_g1P5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XH_g1f5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH_g1v5TEeCqzpi5PItoVA" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XH_g1_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XH_g2P5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XH_g2f5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XH_g2v5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet2.ecore#//FacetSet"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XH_g2_5TEeCqzpi5PItoVA" x="655" y="102" width="128"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAHsP5TEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_XIAHsf5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XIAHsv5TEeCqzpi5PItoVA" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAHs_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAHtP5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAHtf5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAHtv5TEeCqzpi5PItoVA" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAHt_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAHuP5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAHuf5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XIAHuv5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet2.ecore#//FacetReference"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XIAHu_5TEeCqzpi5PItoVA" x="120" y="507"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAHvP5TEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_XIAHvf5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XIAHvv5TEeCqzpi5PItoVA" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAHv_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAHwP5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAHwf5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAHwv5TEeCqzpi5PItoVA" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAHw_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAHxP5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAHxf5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XIAHxv5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet2.ecore#//FacetAttribute"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XIAHx_5TEeCqzpi5PItoVA" x="285" y="507"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAHyP5TEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_XIAHyf5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XIAHyv5TEeCqzpi5PItoVA" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAHy_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAHzP5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAHzf5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAHzv5TEeCqzpi5PItoVA" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAHz_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAH0P5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAH0f5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XIAH0v5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet2.ecore#//FacetOperation"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XIAH0_5TEeCqzpi5PItoVA" x="450" y="507"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAH1P5TEeCqzpi5PItoVA" type="2003">
+ <children xmi:type="notation:Node" xmi:id="_XIAH1f5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XIAH1v5TEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAH1_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAH2P5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAH2f5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAH2v5TEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAH2_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAH3P5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAH3f5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XIAH3v5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet2.ecore#//extensible/Query"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XIAH3_5TEeCqzpi5PItoVA" x="715" y="342" width="193" height="83"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAH4P5TEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XIAH4f5TEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XIAH4v5TEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_XIAH4_5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XIAH5P5TEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAH5f5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAH5v5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAH5_5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAH6P5TEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAH6f5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAH6v5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAH6_5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XIAH7P5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EReference"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XIAH7f5TEeCqzpi5PItoVA" x="125" y="412"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAH7v5TEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XIAH7_5TEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XIAH8P5TEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_XIAH8f5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XIAH8v5TEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAH8_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAH9P5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAH9f5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAH9v5TEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAH9_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAH-P5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAH-f5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XIAH-v5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EAttribute"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XIAH-_5TEeCqzpi5PItoVA" x="355" y="427"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAuwP5TEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XIAuwf5TEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XIAuwv5TEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_XIAuw_5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XIAuxP5TEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAuxf5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAuxv5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAux_5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAuyP5TEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAuyf5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAuyv5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAuy_5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XIAuzP5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EOperation"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XIAuzf5TEeCqzpi5PItoVA" x="520" y="422" width="117"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAuzv5TEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XIAuz_5TEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XIAu0P5TEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_XIAu0f5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XIAu0v5TEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAu0_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAu1P5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAu1f5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAu1v5TEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAu1_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAu2P5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAu2f5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XIAu2v5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EClass"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XIAu2_5TEeCqzpi5PItoVA" x="820" y="152"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAu3P5TEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XIAu3f5TEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XIAu3v5TEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_XIAu3_5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XIAu4P5TEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAu4f5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAu4v5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAu4_5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAu5P5TEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAu5f5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAu5v5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAu5_5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XIAu6P5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XIAu6f5TEeCqzpi5PItoVA" x="250" y="297"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAu6v5TEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XIAu6_5TEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XIAu7P5TEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_XIAu7f5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XIAu7v5TEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAu7_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAu8P5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAu8f5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAu8v5TEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAu8_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAu9P5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAu9f5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XIAu9v5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EPackage"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XIAu9_5TEeCqzpi5PItoVA" x="665" y="22"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAu-P5TEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XIAu-f5TEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XIAu-v5TEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_XIAu-_5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XIAu_P5TEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAu_f5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAu_v5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAu__5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAvAP5TEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAvAf5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAvAv5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAvA_5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XIAvBP5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XIAvBf5TEeCqzpi5PItoVA" x="1040" y="192"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAvBv5TEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XIAvB_5TEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XIAvCP5TEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_XIAvCf5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XIAvCv5TEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAvC_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAvDP5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAvDf5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAvDv5TEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAvD_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAvEP5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAvEf5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XIAvEv5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XIAvE_5TEeCqzpi5PItoVA" x="215" y="37"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAvFP5TEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XIAvFf5TEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XIAvFv5TEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_XIAvF_5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XIAvGP5TEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAvGf5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAvGv5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAvG_5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIAvHP5TEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIAvHf5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIAvHv5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIAvH_5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XIAvIP5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EClassifier"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XIAvIf5TEeCqzpi5PItoVA" x="585" y="167"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIBV0P5TEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XIBV0f5TEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XIBV0v5TEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_XIBV0_5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XIBV1P5TEeCqzpi5PItoVA" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIBV1f5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIBV1v5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIBV1_5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIBV2P5TEeCqzpi5PItoVA" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIBV2f5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIBV2v5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIBV2_5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XIBV3P5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//ENamedElement"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XIBV3f5TEeCqzpi5PItoVA" x="445" y="12"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIBV3v5TEeCqzpi5PItoVA" type="2003">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XIBV3_5TEeCqzpi5PItoVA" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XIBV4P5TEeCqzpi5PItoVA" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_XIBV4f5TEeCqzpi5PItoVA" type="4002"/>
+ <children xmi:type="notation:Node" xmi:id="_XIBV4v5TEeCqzpi5PItoVA" visible="false" type="5004">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIBV4_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIBV5P5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIBV5f5TEeCqzpi5PItoVA"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XIBV5v5TEeCqzpi5PItoVA" visible="false" type="5005">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_XIBV5_5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_XIBV6P5TEeCqzpi5PItoVA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_XIBV6f5TEeCqzpi5PItoVA"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_XIBV6v5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XIBV6_5TEeCqzpi5PItoVA" x="280" y="217" width="137"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_CmfYMuOIEeCYNNyffmuRHg"/>
+ <element xmi:type="ecore:EPackage" href="efacet2.ecore#/"/>
+ <edges xmi:type="notation:Edge" xmi:id="_GB3S4OOIEeCYNNyffmuRHg" type="3002" source="_GBhUoOOIEeCYNNyffmuRHg" target="_GBkX8-OIEeCYNNyffmuRHg">
+ <children xmi:type="notation:Node" xmi:id="_GB3S5OOIEeCYNNyffmuRHg" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GB3S5eOIEeCYNNyffmuRHg" x="29" y="56"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GB3S5uOIEeCYNNyffmuRHg" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GB3S5-OIEeCYNNyffmuRHg" x="15" y="18"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_GB3S4eOIEeCYNNyffmuRHg" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_GB3S4uOIEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//serialization/ExtendedEObjectReference/attributeInstances"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GB3S4-OIEeCYNNyffmuRHg" points="[0, 0, 0, 60]$[0, -60, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GCIYouOIEeCYNNyffmuRHg" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GCIYo-OIEeCYNNyffmuRHg" id="(0.4965034965034965,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_GB358OOIEeCYNNyffmuRHg" type="3002" source="_GBhUoOOIEeCYNNyffmuRHg" target="_GBmNIOOIEeCYNNyffmuRHg">
+ <children xmi:type="notation:Node" xmi:id="_GB4hAOOIEeCYNNyffmuRHg" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GB4hAeOIEeCYNNyffmuRHg" x="3" y="-64"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_GB4hAuOIEeCYNNyffmuRHg" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_GB4hA-OIEeCYNNyffmuRHg" x="3" y="-25"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_GB358eOIEeCYNNyffmuRHg" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_GB358uOIEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//serialization/ExtendedEObjectReference/referenceInstances"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GB358-OIEeCYNNyffmuRHg" points="[0, 0, -164, 68]$[164, -68, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GCI_sOOIEeCYNNyffmuRHg" id="(0.7134831460674157,0.9767441860465116)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GCI_seOIEeCYNNyffmuRHg" id="(0.2471264367816092,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_GB8LYOOIEeCYNNyffmuRHg" type="3003" source="_GBnbROOIEeCYNNyffmuRHg" target="_GBmNIOOIEeCYNNyffmuRHg">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_GB8LYeOIEeCYNNyffmuRHg" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_GB8LYuOIEeCYNNyffmuRHg" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GB8LY-OIEeCYNNyffmuRHg" points="[-42, 0, 22, 69]$[-42, -69, 22, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GCIYoOOIEeCYNNyffmuRHg" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GCIYoeOIEeCYNNyffmuRHg" id="(0.7471264367816092,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_6rkMMOOLEeCYNNyffmuRHg" type="3002" source="_GBkX8-OIEeCYNNyffmuRHg" target="_6rbCQOOLEeCYNNyffmuRHg">
+ <children xmi:type="notation:Node" xmi:id="_6rkMNOOLEeCYNNyffmuRHg" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_6rkMNeOLEeCYNNyffmuRHg" x="-16" y="-34"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_6rkzQOOLEeCYNNyffmuRHg" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_6rkzQeOLEeCYNNyffmuRHg" x="-4" y="-15"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_6rkMMeOLEeCYNNyffmuRHg" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_6rkMMuOLEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//serialization/AttributeInstance/eAttribute"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_6rkMM-OLEeCYNNyffmuRHg" points="[-13, -24, 133, 258]$[-146, -281, 0, 1]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_G4654OOMEeCYNNyffmuRHg" type="3002" source="_GBmNIOOIEeCYNNyffmuRHg" target="_G4rCQOOMEeCYNNyffmuRHg">
+ <children xmi:type="notation:Node" xmi:id="_G47g8OOMEeCYNNyffmuRHg" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_G47g8eOMEeCYNNyffmuRHg" x="-18" y="-11"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_G47g8uOMEeCYNNyffmuRHg" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_G47g8-OMEeCYNNyffmuRHg" y="9"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_G4654eOMEeCYNNyffmuRHg" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_G4654uOMEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//serialization/AbstractReferenceInstance/eReference"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_G4654-OMEeCYNNyffmuRHg" points="[-86, -8, 311, 30]$[-396, -38, 1, 0]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_mxaVcOOMEeCYNNyffmuRHg" type="3002" source="_GBhUoOOIEeCYNNyffmuRHg" target="_mxDwIOOMEeCYNNyffmuRHg">
+ <children xmi:type="notation:Node" xmi:id="_mxaVdOOMEeCYNNyffmuRHg" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_mxaVdeOMEeCYNNyffmuRHg" x="-36" y="-11"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_mxaVduOMEeCYNNyffmuRHg" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_mxaVd-OMEeCYNNyffmuRHg" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_mxaVceOMEeCYNNyffmuRHg" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_mxaVcuOMEeCYNNyffmuRHg" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//serialization/ExtendedEObjectReference/extendedEObject"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_mxaVc-OMEeCYNNyffmuRHg" points="[-88, -8, 286, 25]$[-373, -33, 1, 0]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_pXKB4ORLEeC5WpT-Wrn0aw" type="3002" source="_GBnbROOIEeCYNNyffmuRHg" target="_wNcLAeOMEeCYNNyffmuRHg">
+ <children xmi:type="notation:Node" xmi:id="_pXKo8uRLEeC5WpT-Wrn0aw" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_pXKo8-RLEeC5WpT-Wrn0aw" x="-59" y="-47"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_pXLQAORLEeC5WpT-Wrn0aw" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_pXLQAeRLEeC5WpT-Wrn0aw" x="-19" y="-22"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_pXKB4eRLEeC5WpT-Wrn0aw" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_pXKo8ORLEeC5WpT-Wrn0aw" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//serialization/ReferenceInstance/referencedElements"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_pXKo8eRLEeC5WpT-Wrn0aw" points="[9, -20, -354, 746]$[354, -747, -9, 19]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_NbL6sORVEeC5WpT-Wrn0aw" id="(0.7647058823529411,0.15)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_w37OMORXEeC5WpT-Wrn0aw" type="3002" source="_w3w2IORXEeC5WpT-Wrn0aw" target="_wNcLAeOMEeCYNNyffmuRHg">
+ <children xmi:type="notation:Node" xmi:id="_w371QORXEeC5WpT-Wrn0aw" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w371QeRXEeC5WpT-Wrn0aw" x="-42" y="40"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_w371QuRXEeC5WpT-Wrn0aw" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_w371Q-RXEeC5WpT-Wrn0aw" x="-8" y="11"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_w37OMeRXEeC5WpT-Wrn0aw" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w37OMuRXEeC5WpT-Wrn0aw" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//serialization/ContainmentReferenceInstance/ownedElements"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w37OM-RXEeC5WpT-Wrn0aw" points="[11, 21, -26, -51]$[33, 65, -4, -7]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y2QjIORXEeC5WpT-Wrn0aw" id="(0.2549019607843137,0.2)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_w38cUORXEeC5WpT-Wrn0aw" type="3003" source="_w3w2IORXEeC5WpT-Wrn0aw" target="_GBmNIOOIEeCYNNyffmuRHg">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_w38cUeRXEeC5WpT-Wrn0aw" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_w38cUuRXEeC5WpT-Wrn0aw" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_w38cU-RXEeC5WpT-Wrn0aw" points="[1, 0, -501, -158]$[437, 138, -65, -20]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH9EYf5TEeCqzpi5PItoVA" type="3003" source="_XH-5vv5TEeCqzpi5PItoVA" target="_XIAH1P5TEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH9EYv5TEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH9EY_5TEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH9EZP5TEeCqzpi5PItoVA" points="[-1, 0, -60, 49]$[-1, -49, -60, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH9EZf5TEeCqzpi5PItoVA" id="(0.4634146341463415,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH9EZv5TEeCqzpi5PItoVA" id="(0.5,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH9EZ_5TEeCqzpi5PItoVA" type="3002" source="_XH_grP5TEeCqzpi5PItoVA" target="_XH-5yv5TEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_XH9EaP5TEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH9Eaf5TEeCqzpi5PItoVA" x="-36" y="12"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH9Eav5TEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH9Ea_5TEeCqzpi5PItoVA" x="4" y="27"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH9EbP5TEeCqzpi5PItoVA" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH9Ebf5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//DerivedTypedElementResult/parameterValues"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH9Ebv5TEeCqzpi5PItoVA" points="[0, 0, 0, 60]$[0, -60, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH9Eb_5TEeCqzpi5PItoVA" id="(0.8921568627450981,0.5813953488372093)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH9rcP5TEeCqzpi5PItoVA" id="(0.02654867256637168,0.5348837209302325)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH9rcf5TEeCqzpi5PItoVA" type="3002" source="_XH_goP5TEeCqzpi5PItoVA" target="_XH_g0P5TEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_XH9rcv5TEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH9rc_5TEeCqzpi5PItoVA" y="28"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH9rdP5TEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH9rdf5TEeCqzpi5PItoVA" x="-15" y="20"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH9rdv5TEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH9rd_5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//Facet/facetSet"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH9reP5TEeCqzpi5PItoVA" points="[-10, -20, 0, 114]$[-10, -134, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH9ref5TEeCqzpi5PItoVA" id="(0.35294117647058826,0.09302325581395349)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH9rev5TEeCqzpi5PItoVA" id="(0.3515625,0.9534883720930233)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH9re_5TEeCqzpi5PItoVA" type="3002" source="_XH_g0P5TEeCqzpi5PItoVA" target="_XH_goP5TEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_XH9rfP5TEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH9rff5TEeCqzpi5PItoVA" x="-14" y="-22"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH9rfv5TEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH9rf_5TEeCqzpi5PItoVA" x="1" y="-14"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH9rgP5TEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH9rgf5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//FacetSet/facets"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH9rgv5TEeCqzpi5PItoVA" points="[0, 0, -10, -134]$[0, 114, -10, -20]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH9rg_5TEeCqzpi5PItoVA" id="(0.3515625,0.9534883720930233)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH9rhP5TEeCqzpi5PItoVA" id="(0.35294117647058826,0.09302325581395349)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH9rj_5TEeCqzpi5PItoVA" type="3002" source="_XH_g0P5TEeCqzpi5PItoVA" target="_XH_guP5TEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_XH9rkP5TEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH9rkf5TEeCqzpi5PItoVA" x="-20" y="-13"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH9rkv5TEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH9rk_5TEeCqzpi5PItoVA" x="-1" y="-30"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH9rlP5TEeCqzpi5PItoVA" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH9rlf5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//FacetSet/categories"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH9rlv5TEeCqzpi5PItoVA" points="[0, 0, -72, 60]$[72, -60, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH9rl_5TEeCqzpi5PItoVA" id="(0.058823529411764705,0.4883720930232558)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH9rmP5TEeCqzpi5PItoVA" id="(0.9803921568627451,0.5813953488372093)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH9rmf5TEeCqzpi5PItoVA" type="3002" source="_XH_gxP5TEeCqzpi5PItoVA" target="_XH_guP5TEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_XH9rmv5TEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH9rm_5TEeCqzpi5PItoVA" x="-13" y="14"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH9rnP5TEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH9rnf5TEeCqzpi5PItoVA" x="2" y="32"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH9rnv5TEeCqzpi5PItoVA" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH9rn_5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//FacetElement/categories"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH9roP5TEeCqzpi5PItoVA" points="[0, 0, 71, 60]$[-71, -60, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH9rof5TEeCqzpi5PItoVA" id="(0.9803921568627451,0.5116279069767442)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH9rov5TEeCqzpi5PItoVA" id="(0.0196078431372549,0.5348837209302325)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH-SgP5TEeCqzpi5PItoVA" type="3003" source="_XIAHsP5TEeCqzpi5PItoVA" target="_XIAH4P5TEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH-Sgf5TEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH-Sgv5TEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH-Sg_5TEeCqzpi5PItoVA" points="[-7, -20, 157, 433]$[-164, -452, 0, 1]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH-ShP5TEeCqzpi5PItoVA" type="3003" source="_XIAHvP5TEeCqzpi5PItoVA" target="_XIAH7v5TEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH-Shf5TEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH-Shv5TEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH-Sh_5TEeCqzpi5PItoVA" points="[-15, -20, 311, 433]$[-325, -452, 1, 1]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH-SiP5TEeCqzpi5PItoVA" type="3002" source="_XH_goP5TEeCqzpi5PItoVA" target="_XIAuwP5TEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_XH-Sif5TEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH-Siv5TEeCqzpi5PItoVA" x="-1" y="-2"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH-Si_5TEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH-SjP5TEeCqzpi5PItoVA" x="1" y="-15"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH-Sjf5TEeCqzpi5PItoVA" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH-Sjv5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//Facet/facetOperations"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH-Sj_5TEeCqzpi5PItoVA" points="[-50, -15, 416, 123]$[-465, -138, 1, 0]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH-SkP5TEeCqzpi5PItoVA" type="3003" source="_XIAHyP5TEeCqzpi5PItoVA" target="_XIAuwP5TEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH-Skf5TEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH-Skv5TEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH-Sk_5TEeCqzpi5PItoVA" points="[41, -20, -32, 71]$[41, -72, -32, 19]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH-SlP5TEeCqzpi5PItoVA" type="3002" source="_XH_goP5TEeCqzpi5PItoVA" target="_XIAuzv5TEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_XH-Slf5TEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH-Slv5TEeCqzpi5PItoVA" x="40" y="46"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH-Sl_5TEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH-SmP5TEeCqzpi5PItoVA" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH-Smf5TEeCqzpi5PItoVA" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH-Smv5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//Facet/extendedMetaclass"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH-Sm_5TEeCqzpi5PItoVA" points="[50, -15, -165, 51]$[165, -51, -50, 15]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH-SnP5TEeCqzpi5PItoVA" type="3002" source="_XH_goP5TEeCqzpi5PItoVA" target="_XIAu3P5TEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_XH-Snf5TEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH-Snv5TEeCqzpi5PItoVA" x="-42" y="-12"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH-Sn_5TEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH-SoP5TEeCqzpi5PItoVA" x="-9" y="-23"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH-Sof5TEeCqzpi5PItoVA" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH-Sov5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//Facet/facetElements"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH-So_5TEeCqzpi5PItoVA" points="[-50, -12, 661, 161]$[-710, -173, 1, 0]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH-SpP5TEeCqzpi5PItoVA" id="(0.888,0.625)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH-Spf5TEeCqzpi5PItoVA" type="3003" source="_XIAH7v5TEeCqzpi5PItoVA" target="_XIAu3P5TEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH-Spv5TEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH-Sp_5TEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH-SqP5TEeCqzpi5PItoVA" points="[13, -19, -38, 56]$[38, -56, -13, 19]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH-Sqf5TEeCqzpi5PItoVA" type="3003" source="_XIAH4P5TEeCqzpi5PItoVA" target="_XIAu3P5TEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH-Sqv5TEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH-Sq_5TEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH-SrP5TEeCqzpi5PItoVA" points="[35, -19, -101, 96]$[35, -69, -101, 46]$[111, -69, -25, 46]$[111, -96, -25, 19]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH-Srf5TEeCqzpi5PItoVA" type="3002" source="_XH_g0P5TEeCqzpi5PItoVA" target="_XIAu6v5TEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_XH-Srv5TEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH-Sr_5TEeCqzpi5PItoVA" x="-4" y="59"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH-SsP5TEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH-Ssf5TEeCqzpi5PItoVA" x="-19" y="14"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH-Ssv5TEeCqzpi5PItoVA" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH-Ss_5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//FacetSet/extendedEPackage"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH-StP5TEeCqzpi5PItoVA" points="[2, -20, -8, 61]$[2, -62, -8, 19]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH-Stf5TEeCqzpi5PItoVA" id="(0.625,0.023255813953488372)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH-Stv5TEeCqzpi5PItoVA" id="(0.6078431372549019,0.95)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH-5kP5TEeCqzpi5PItoVA" type="3003" source="_XH_g0P5TEeCqzpi5PItoVA" target="_XIAu6v5TEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH-5kf5TEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH-5kv5TEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH-5k_5TEeCqzpi5PItoVA" points="[-50, -8, 646, 105]$[-695, -113, 1, 0]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH-5lP5TEeCqzpi5PItoVA" type="3002" source="_XH_grP5TEeCqzpi5PItoVA" target="_XIAu-P5TEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_XH-5lf5TEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH-5lv5TEeCqzpi5PItoVA" x="2" y="25"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH-5l_5TEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH-5mP5TEeCqzpi5PItoVA" x="-13" y="20"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH-5mf5TEeCqzpi5PItoVA" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH-5mv5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//DerivedTypedElementResult/source"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH-5m_5TEeCqzpi5PItoVA" points="[-47, -20, 949, 423]$[-995, -443, 1, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH-5nP5TEeCqzpi5PItoVA" id="(0.65,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH-5nf5TEeCqzpi5PItoVA" id="(0.4411764705882353,0.85)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH-5nv5TEeCqzpi5PItoVA" type="3002" source="_XH-5vv5TEeCqzpi5PItoVA" target="_XIAvBv5TEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_XH-5n_5TEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH-5oP5TEeCqzpi5PItoVA" x="82" y="110"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH-5of5TEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH-5ov5TEeCqzpi5PItoVA" x="67" y="139"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH-5o_5TEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH-5pP5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//TypedElementRef/typedElement"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH-5pf5TEeCqzpi5PItoVA" points="[-20, 41, 500, 452]$[-20, 115, 500, 526]$[-692, 115, -172, 526]$[-692, -410, -172, 1]$[-532, -410, -12, 1]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH-5pv5TEeCqzpi5PItoVA" id="(0.43089430894308944,0.023255813953488372)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH-5p_5TEeCqzpi5PItoVA" id="(0.12149532710280374,0.5)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH-5qP5TEeCqzpi5PItoVA" type="3003" source="_XH_gxP5TEeCqzpi5PItoVA" target="_XIAvBv5TEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH-5qf5TEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH-5qv5TEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH-5q_5TEeCqzpi5PItoVA" points="[-30, -20, -32, 66]$[-30, -67, -32, 19]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH-5rP5TEeCqzpi5PItoVA" type="3003" source="_XH_goP5TEeCqzpi5PItoVA" target="_XIAvFP5TEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH-5rf5TEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH-5rv5TEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH-5r_5TEeCqzpi5PItoVA" points="[-40, -20, 40, 71]$[-40, -72, 40, 19]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH-5sP5TEeCqzpi5PItoVA" type="3003" source="_XH_guP5TEeCqzpi5PItoVA" target="_XIBV0P5TEeCqzpi5PItoVA">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH-5sf5TEeCqzpi5PItoVA" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH-5sv5TEeCqzpi5PItoVA" fontName="Segoe UI"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH-5s_5TEeCqzpi5PItoVA" points="[-50, -11, 436, 92]$[-485, -103, 1, 0]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_XH-5tP5TEeCqzpi5PItoVA" type="3002" source="_XH_goP5TEeCqzpi5PItoVA" target="_XIBV3v5TEeCqzpi5PItoVA">
+ <children xmi:type="notation:Node" xmi:id="_XH-5tf5TEeCqzpi5PItoVA" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH-5tv5TEeCqzpi5PItoVA" x="-51" y="32"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_XH-5t_5TEeCqzpi5PItoVA" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_XH-5uP5TEeCqzpi5PItoVA" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_XH-5uf5TEeCqzpi5PItoVA" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_XH-5uv5TEeCqzpi5PItoVA" fontColor="4210752" fontName="Segoe UI" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet2.ecore#//Facet/conformanceTypedElement"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XH-5u_5TEeCqzpi5PItoVA" points="[-22, 13, 260, -149]$[-280, 143, 2, -19]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH-5vP5TEeCqzpi5PItoVA" id="(0.049019607843137254,0.27906976744186046)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XH-5vf5TEeCqzpi5PItoVA" id="(0.9439252336448598,0.5)"/>
+ </edges>
+</notation:Diagram>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2.png b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2.png
new file mode 100644
index 00000000000..a5b9d01e6c6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet2.png
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacetcatalog-0.2.0.ecore b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacetcatalog-0.2.0.ecore
new file mode 100644
index 00000000000..bc524f9b9f2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacetcatalog-0.2.0.ecore
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="efacetcatalog"
+ nsURI="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacetcatalog" nsPrefix="efacetcatalog">
+ <eClassifiers xsi:type="ecore:EClass" name="FacetSetCatalog" eSuperTypes="platform:/plugin/org.eclipse.papyrus.emf.facet.util.emf.catalog/model/catalog.ecore#//Catalog">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A FacetSetCatalog aims at referencing EMF Facet FacetSet."/>
+ </eAnnotations>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacetcatalog-0.2.0.genmodel b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacetcatalog-0.2.0.genmodel
new file mode 100644
index 00000000000..2c2cb677f62
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacetcatalog-0.2.0.genmodel
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText=" Copyright (c) 2011,2012 Mia-Software.&#xD;&#xA; &#xD;&#xA; All rights reserved. This program and the accompanying materials&#xD;&#xA; are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA; which accompanies this distribution, and is available at&#xD;&#xA; http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA; &#xD;&#xA; Contributors:&#xD;&#xA; Gregoire Dupe (Mia-Software) - Design&#xD;&#xA; Nicolas Guyomar (Mia-Software) - Implementation&#xD;&#xA; Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non-derived facet structural features and save their values.&#xD;&#xA; Nicolas Bros (Mia-Software) - Bug 370110 - Rename efacetcatalog2.ecore&#xD;&#xA; Grégoire Dupé (Mia-Software) - Bug 361817 - [Restructuring] Dynamic load to the facet catalog&#xD;&#xA; Grégoire Dupé (Mia-Software) - Bug 373078 - API Cleaning"
+ modelDirectory="/org.eclipse.papyrus.emf.facet.efacet.metamodel/src" modelPluginID="org.eclipse.papyrus.emf.facet.efacet.metamodel"
+ modelName="Efacetcatalog" nonNLSMarkers="true" importerID="org.eclipse.emf.importer.ecore"
+ complianceLevel="5.0" copyrightFields="false" runtimeVersion="2.6" language=""
+ usedGenPackages="platform:/plugin/org.eclipse.papyrus.emf.facet.util.emf.catalog/model/catalog.genmodel#//catalog platform:/plugin/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.genmodel#//efacet">
+ <foreignModel>efacetcatalog-0.2.0.ecore</foreignModel>
+ <genPackages prefix="Efacetcatalog" basePackage="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0"
+ disposableProviderFactory="true" ecorePackage="efacetcatalog-0.2.0.ecore#/">
+ <genClasses ecoreClass="efacetcatalog-0.2.0.ecore#//FacetSetCatalog">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacetcatalog-0.2.0.ecore#//FacetSetCatalog/installedFacetSets"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/plugin.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/plugin.properties
new file mode 100644
index 00000000000..a1e76334733
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/plugin.properties
@@ -0,0 +1,17 @@
+# Copyright (c) 2011,2012 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Design
+# Nicolas Guyomar (Mia-Software) - Implementation
+# Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non-derived facet structural features and save their values.
+# Nicolas Bros (Mia-Software) - Bug 370110 - Rename efacetcatalog2.ecore
+# Grégoire Dupé (Mia-Software) - Bug 361817 - [Restructuring] Dynamic load to the facet catalog
+#
+
+pluginName = Efacetcatalog Model
+providerName = www.example.org
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/plugin.xml
new file mode 100644
index 00000000000..bf33e375ec7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/plugin.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ Nicolas Bros (Mia-Software) - Bug 362191 - [Restructuring] Query mechanism for eFacet2
+
+-->
+
+<plugin>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet"
+ class="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage"
+ genModel="model/efacet-0.2.0.genmodel"/>
+ <package
+ class="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage"
+ uri="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/serialization"
+ genModel="model/efacet-0.2.0.genmodel"/>
+ <package
+ class="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage"
+ uri="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/extensible"
+ genModel="model/efacet-0.2.0.genmodel"/>
+ <package
+ uri="http://www.eclipse.org/papyrus/emf/facet/eFacetCatalog/0.2.incubation"
+ class="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.EfacetcatalogPackage"
+ genModel="model/efacetcatalog-0.2.0.genmodel"/>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/Category.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/Category.java
new file mode 100644
index 00000000000..13c7fe3d8a0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/Category.java
@@ -0,0 +1,34 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet;
+
+import org.eclipse.emf.ecore.ENamedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Category</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A Category is used to group related elements.
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getCategory()
+ * @model
+ * @generated
+ */
+public interface Category extends ENamedElement, DocumentedElement {
+} // Category
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/DerivedTypedElement.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/DerivedTypedElement.java
new file mode 100644
index 00000000000..122a93362f7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/DerivedTypedElement.java
@@ -0,0 +1,92 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Derived Typed Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A derived typed element is a virtual structural feature the value of which is computed using a query.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement#getQuery <em>Query</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement#getOverride <em>Override</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getDerivedTypedElement()
+ * @model abstract="true"
+ * @generated
+ */
+public interface DerivedTypedElement extends FacetElement {
+ /**
+ * Returns the value of the '<em><b>Query</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Query</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Query</em>' containment reference.
+ * @see #setQuery(Query)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getDerivedTypedElement_Query()
+ * @model containment="true" required="true"
+ * @generated
+ */
+ Query getQuery();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement#getQuery <em>Query</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Query</em>' containment reference.
+ * @see #getQuery()
+ * @generated
+ */
+ void setQuery(Query value);
+
+ /**
+ * Returns the value of the '<em><b>Override</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * If it exists a facet A which extends a facet B then a derived typed element of A can override a typed element of B; if the both typed elements have the same name, same multiplicity, and same type.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Override</em>' reference.
+ * @see #setOverride(DerivedTypedElement)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getDerivedTypedElement_Override()
+ * @model
+ * @generated
+ */
+ DerivedTypedElement getOverride();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement#getOverride <em>Override</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Override</em>' reference.
+ * @see #getOverride()
+ * @generated
+ */
+ void setOverride(DerivedTypedElement value);
+
+} // DerivedTypedElement
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/DocumentedElement.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/DocumentedElement.java
new file mode 100644
index 00000000000..f3ded2689a6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/DocumentedElement.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Documented Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement#getDocumentation <em>Documentation</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getDocumentedElement()
+ * @model
+ * @generated
+ */
+public interface DocumentedElement extends EObject {
+ /**
+ * Returns the value of the '<em><b>Documentation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Documentation</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Documentation</em>' attribute.
+ * @see #setDocumentation(String)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getDocumentedElement_Documentation()
+ * @model
+ * @generated
+ */
+ String getDocumentation();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement#getDocumentation <em>Documentation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Documentation</em>' attribute.
+ * @see #getDocumentation()
+ * @generated
+ */
+ void setDocumentation(String value);
+
+} // DocumentedElement
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/EFacetFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/EFacetFactory.java
new file mode 100644
index 00000000000..de4fefb90a5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/EFacetFactory.java
@@ -0,0 +1,119 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage
+ * @generated
+ */
+public interface EFacetFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EFacetFactory eINSTANCE = org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Facet Attribute</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Facet Attribute</em>'.
+ * @generated
+ */
+ FacetAttribute createFacetAttribute();
+
+ /**
+ * Returns a new object of class '<em>Facet Reference</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Facet Reference</em>'.
+ * @generated
+ */
+ FacetReference createFacetReference();
+
+ /**
+ * Returns a new object of class '<em>Facet Operation</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Facet Operation</em>'.
+ * @generated
+ */
+ FacetOperation createFacetOperation();
+
+ /**
+ * Returns a new object of class '<em>Facet Set</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Facet Set</em>'.
+ * @generated
+ */
+ FacetSet createFacetSet();
+
+ /**
+ * Returns a new object of class '<em>Facet</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Facet</em>'.
+ * @generated
+ */
+ Facet createFacet();
+
+ /**
+ * Returns a new object of class '<em>Category</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Category</em>'.
+ * @generated
+ */
+ Category createCategory();
+
+ /**
+ * Returns a new object of class '<em>Parameter Value</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Parameter Value</em>'.
+ * @generated
+ */
+ ParameterValue createParameterValue();
+
+ /**
+ * Returns a new object of class '<em>Documented Element</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Documented Element</em>'.
+ * @generated
+ */
+ DocumentedElement createDocumentedElement();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ EFacetPackage getEFacetPackage();
+
+} //EFacetFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/EFacetPackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/EFacetPackage.java
new file mode 100644
index 00000000000..64b4c05a24d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/EFacetPackage.java
@@ -0,0 +1,1896 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 376576 - [EFacet] Change the multiplicity of Facet::extendedFacet
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetFactory
+ * @model kind="package"
+ * annotation="http://www.eclipse.org/emf/2002/Ecore validationDelegates='org.eclipse.ocl.ecore.OCL'"
+ * @generated
+ */
+public interface EFacetPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "efacet"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "efacet"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EFacetPackage eINSTANCE = org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetAttributeImpl <em>Facet Attribute</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetAttributeImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getFacetAttribute()
+ * @generated
+ */
+ int FACET_ATTRIBUTE = 0;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__EANNOTATIONS = EcorePackage.EATTRIBUTE__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__NAME = EcorePackage.EATTRIBUTE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ordered</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__ORDERED = EcorePackage.EATTRIBUTE__ORDERED;
+
+ /**
+ * The feature id for the '<em><b>Unique</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__UNIQUE = EcorePackage.EATTRIBUTE__UNIQUE;
+
+ /**
+ * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__LOWER_BOUND = EcorePackage.EATTRIBUTE__LOWER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__UPPER_BOUND = EcorePackage.EATTRIBUTE__UPPER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Many</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__MANY = EcorePackage.EATTRIBUTE__MANY;
+
+ /**
+ * The feature id for the '<em><b>Required</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__REQUIRED = EcorePackage.EATTRIBUTE__REQUIRED;
+
+ /**
+ * The feature id for the '<em><b>EType</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__ETYPE = EcorePackage.EATTRIBUTE__ETYPE;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Type</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__EGENERIC_TYPE = EcorePackage.EATTRIBUTE__EGENERIC_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Changeable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__CHANGEABLE = EcorePackage.EATTRIBUTE__CHANGEABLE;
+
+ /**
+ * The feature id for the '<em><b>Volatile</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__VOLATILE = EcorePackage.EATTRIBUTE__VOLATILE;
+
+ /**
+ * The feature id for the '<em><b>Transient</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__TRANSIENT = EcorePackage.EATTRIBUTE__TRANSIENT;
+
+ /**
+ * The feature id for the '<em><b>Default Value Literal</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__DEFAULT_VALUE_LITERAL = EcorePackage.EATTRIBUTE__DEFAULT_VALUE_LITERAL;
+
+ /**
+ * The feature id for the '<em><b>Default Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__DEFAULT_VALUE = EcorePackage.EATTRIBUTE__DEFAULT_VALUE;
+
+ /**
+ * The feature id for the '<em><b>Unsettable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__UNSETTABLE = EcorePackage.EATTRIBUTE__UNSETTABLE;
+
+ /**
+ * The feature id for the '<em><b>Derived</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__DERIVED = EcorePackage.EATTRIBUTE__DERIVED;
+
+ /**
+ * The feature id for the '<em><b>EContaining Class</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__ECONTAINING_CLASS = EcorePackage.EATTRIBUTE__ECONTAINING_CLASS;
+
+ /**
+ * The feature id for the '<em><b>ID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__ID = EcorePackage.EATTRIBUTE__ID;
+
+ /**
+ * The feature id for the '<em><b>EAttribute Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__EATTRIBUTE_TYPE = EcorePackage.EATTRIBUTE__EATTRIBUTE_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Documentation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__DOCUMENTATION = EcorePackage.EATTRIBUTE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Categories</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__CATEGORIES = EcorePackage.EATTRIBUTE_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Query</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__QUERY = EcorePackage.EATTRIBUTE_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Override</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE__OVERRIDE = EcorePackage.EATTRIBUTE_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>Facet Attribute</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ATTRIBUTE_FEATURE_COUNT = EcorePackage.EATTRIBUTE_FEATURE_COUNT + 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetReferenceImpl <em>Facet Reference</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetReferenceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getFacetReference()
+ * @generated
+ */
+ int FACET_REFERENCE = 1;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__EANNOTATIONS = EcorePackage.EREFERENCE__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__NAME = EcorePackage.EREFERENCE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ordered</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__ORDERED = EcorePackage.EREFERENCE__ORDERED;
+
+ /**
+ * The feature id for the '<em><b>Unique</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__UNIQUE = EcorePackage.EREFERENCE__UNIQUE;
+
+ /**
+ * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__LOWER_BOUND = EcorePackage.EREFERENCE__LOWER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__UPPER_BOUND = EcorePackage.EREFERENCE__UPPER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Many</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__MANY = EcorePackage.EREFERENCE__MANY;
+
+ /**
+ * The feature id for the '<em><b>Required</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__REQUIRED = EcorePackage.EREFERENCE__REQUIRED;
+
+ /**
+ * The feature id for the '<em><b>EType</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__ETYPE = EcorePackage.EREFERENCE__ETYPE;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Type</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__EGENERIC_TYPE = EcorePackage.EREFERENCE__EGENERIC_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Changeable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__CHANGEABLE = EcorePackage.EREFERENCE__CHANGEABLE;
+
+ /**
+ * The feature id for the '<em><b>Volatile</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__VOLATILE = EcorePackage.EREFERENCE__VOLATILE;
+
+ /**
+ * The feature id for the '<em><b>Transient</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__TRANSIENT = EcorePackage.EREFERENCE__TRANSIENT;
+
+ /**
+ * The feature id for the '<em><b>Default Value Literal</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__DEFAULT_VALUE_LITERAL = EcorePackage.EREFERENCE__DEFAULT_VALUE_LITERAL;
+
+ /**
+ * The feature id for the '<em><b>Default Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__DEFAULT_VALUE = EcorePackage.EREFERENCE__DEFAULT_VALUE;
+
+ /**
+ * The feature id for the '<em><b>Unsettable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__UNSETTABLE = EcorePackage.EREFERENCE__UNSETTABLE;
+
+ /**
+ * The feature id for the '<em><b>Derived</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__DERIVED = EcorePackage.EREFERENCE__DERIVED;
+
+ /**
+ * The feature id for the '<em><b>EContaining Class</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__ECONTAINING_CLASS = EcorePackage.EREFERENCE__ECONTAINING_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Containment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__CONTAINMENT = EcorePackage.EREFERENCE__CONTAINMENT;
+
+ /**
+ * The feature id for the '<em><b>Container</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__CONTAINER = EcorePackage.EREFERENCE__CONTAINER;
+
+ /**
+ * The feature id for the '<em><b>Resolve Proxies</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__RESOLVE_PROXIES = EcorePackage.EREFERENCE__RESOLVE_PROXIES;
+
+ /**
+ * The feature id for the '<em><b>EOpposite</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__EOPPOSITE = EcorePackage.EREFERENCE__EOPPOSITE;
+
+ /**
+ * The feature id for the '<em><b>EReference Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__EREFERENCE_TYPE = EcorePackage.EREFERENCE__EREFERENCE_TYPE;
+
+ /**
+ * The feature id for the '<em><b>EKeys</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__EKEYS = EcorePackage.EREFERENCE__EKEYS;
+
+ /**
+ * The feature id for the '<em><b>Documentation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__DOCUMENTATION = EcorePackage.EREFERENCE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Categories</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__CATEGORIES = EcorePackage.EREFERENCE_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Query</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__QUERY = EcorePackage.EREFERENCE_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Override</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE__OVERRIDE = EcorePackage.EREFERENCE_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>Facet Reference</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_REFERENCE_FEATURE_COUNT = EcorePackage.EREFERENCE_FEATURE_COUNT + 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetOperationImpl <em>Facet Operation</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetOperationImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getFacetOperation()
+ * @generated
+ */
+ int FACET_OPERATION = 2;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__EANNOTATIONS = EcorePackage.EOPERATION__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__NAME = EcorePackage.EOPERATION__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ordered</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__ORDERED = EcorePackage.EOPERATION__ORDERED;
+
+ /**
+ * The feature id for the '<em><b>Unique</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__UNIQUE = EcorePackage.EOPERATION__UNIQUE;
+
+ /**
+ * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__LOWER_BOUND = EcorePackage.EOPERATION__LOWER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__UPPER_BOUND = EcorePackage.EOPERATION__UPPER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Many</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__MANY = EcorePackage.EOPERATION__MANY;
+
+ /**
+ * The feature id for the '<em><b>Required</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__REQUIRED = EcorePackage.EOPERATION__REQUIRED;
+
+ /**
+ * The feature id for the '<em><b>EType</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__ETYPE = EcorePackage.EOPERATION__ETYPE;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Type</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__EGENERIC_TYPE = EcorePackage.EOPERATION__EGENERIC_TYPE;
+
+ /**
+ * The feature id for the '<em><b>EContaining Class</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__ECONTAINING_CLASS = EcorePackage.EOPERATION__ECONTAINING_CLASS;
+
+ /**
+ * The feature id for the '<em><b>EType Parameters</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__ETYPE_PARAMETERS = EcorePackage.EOPERATION__ETYPE_PARAMETERS;
+
+ /**
+ * The feature id for the '<em><b>EParameters</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__EPARAMETERS = EcorePackage.EOPERATION__EPARAMETERS;
+
+ /**
+ * The feature id for the '<em><b>EExceptions</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__EEXCEPTIONS = EcorePackage.EOPERATION__EEXCEPTIONS;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Exceptions</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__EGENERIC_EXCEPTIONS = EcorePackage.EOPERATION__EGENERIC_EXCEPTIONS;
+
+ /**
+ * The feature id for the '<em><b>Documentation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__DOCUMENTATION = EcorePackage.EOPERATION_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Categories</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__CATEGORIES = EcorePackage.EOPERATION_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Query</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__QUERY = EcorePackage.EOPERATION_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Override</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION__OVERRIDE = EcorePackage.EOPERATION_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>Facet Operation</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_OPERATION_FEATURE_COUNT = EcorePackage.EOPERATION_FEATURE_COUNT + 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetSetImpl <em>Facet Set</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetSetImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getFacetSet()
+ * @generated
+ */
+ int FACET_SET = 3;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET__EANNOTATIONS = EcorePackage.EPACKAGE__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET__NAME = EcorePackage.EPACKAGE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ns URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET__NS_URI = EcorePackage.EPACKAGE__NS_URI;
+
+ /**
+ * The feature id for the '<em><b>Ns Prefix</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET__NS_PREFIX = EcorePackage.EPACKAGE__NS_PREFIX;
+
+ /**
+ * The feature id for the '<em><b>EFactory Instance</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET__EFACTORY_INSTANCE = EcorePackage.EPACKAGE__EFACTORY_INSTANCE;
+
+ /**
+ * The feature id for the '<em><b>EClassifiers</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET__ECLASSIFIERS = EcorePackage.EPACKAGE__ECLASSIFIERS;
+
+ /**
+ * The feature id for the '<em><b>ESubpackages</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET__ESUBPACKAGES = EcorePackage.EPACKAGE__ESUBPACKAGES;
+
+ /**
+ * The feature id for the '<em><b>ESuper Package</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET__ESUPER_PACKAGE = EcorePackage.EPACKAGE__ESUPER_PACKAGE;
+
+ /**
+ * The feature id for the '<em><b>Documentation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET__DOCUMENTATION = EcorePackage.EPACKAGE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Categories</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET__CATEGORIES = EcorePackage.EPACKAGE_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Facet Set</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET_FEATURE_COUNT = EcorePackage.EPACKAGE_FEATURE_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetImpl <em>Facet</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getFacet()
+ * @generated
+ */
+ int FACET = 4;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET__EANNOTATIONS = EcorePackage.ECLASSIFIER__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET__NAME = EcorePackage.ECLASSIFIER__NAME;
+
+ /**
+ * The feature id for the '<em><b>Instance Class Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET__INSTANCE_CLASS_NAME = EcorePackage.ECLASSIFIER__INSTANCE_CLASS_NAME;
+
+ /**
+ * The feature id for the '<em><b>Instance Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET__INSTANCE_CLASS = EcorePackage.ECLASSIFIER__INSTANCE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Default Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET__DEFAULT_VALUE = EcorePackage.ECLASSIFIER__DEFAULT_VALUE;
+
+ /**
+ * The feature id for the '<em><b>Instance Type Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET__INSTANCE_TYPE_NAME = EcorePackage.ECLASSIFIER__INSTANCE_TYPE_NAME;
+
+ /**
+ * The feature id for the '<em><b>EPackage</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET__EPACKAGE = EcorePackage.ECLASSIFIER__EPACKAGE;
+
+ /**
+ * The feature id for the '<em><b>EType Parameters</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET__ETYPE_PARAMETERS = EcorePackage.ECLASSIFIER__ETYPE_PARAMETERS;
+
+ /**
+ * The feature id for the '<em><b>Documentation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET__DOCUMENTATION = EcorePackage.ECLASSIFIER_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Extended Metaclass</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET__EXTENDED_METACLASS = EcorePackage.ECLASSIFIER_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Facet Elements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET__FACET_ELEMENTS = EcorePackage.ECLASSIFIER_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Facet Operations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET__FACET_OPERATIONS = EcorePackage.ECLASSIFIER_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Conformance Typed Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET__CONFORMANCE_TYPED_ELEMENT = EcorePackage.ECLASSIFIER_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Extended Facets</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int FACET__EXTENDED_FACETS = EcorePackage.ECLASSIFIER_FEATURE_COUNT + 5;
+
+ /**
+ * The number of structural features of the '<em>Facet</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_FEATURE_COUNT = EcorePackage.ECLASSIFIER_FEATURE_COUNT + 6;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.CategoryImpl <em>Category</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.CategoryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getCategory()
+ * @generated
+ */
+ int CATEGORY = 5;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CATEGORY__EANNOTATIONS = EcorePackage.ENAMED_ELEMENT__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CATEGORY__NAME = EcorePackage.ENAMED_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Documentation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CATEGORY__DOCUMENTATION = EcorePackage.ENAMED_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Category</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CATEGORY_FEATURE_COUNT = EcorePackage.ENAMED_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetElementImpl <em>Facet Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetElementImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getFacetElement()
+ * @generated
+ */
+ int FACET_ELEMENT = 6;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ELEMENT__EANNOTATIONS = EcorePackage.ETYPED_ELEMENT__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ELEMENT__NAME = EcorePackage.ETYPED_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ordered</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ELEMENT__ORDERED = EcorePackage.ETYPED_ELEMENT__ORDERED;
+
+ /**
+ * The feature id for the '<em><b>Unique</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ELEMENT__UNIQUE = EcorePackage.ETYPED_ELEMENT__UNIQUE;
+
+ /**
+ * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ELEMENT__LOWER_BOUND = EcorePackage.ETYPED_ELEMENT__LOWER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ELEMENT__UPPER_BOUND = EcorePackage.ETYPED_ELEMENT__UPPER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Many</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ELEMENT__MANY = EcorePackage.ETYPED_ELEMENT__MANY;
+
+ /**
+ * The feature id for the '<em><b>Required</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ELEMENT__REQUIRED = EcorePackage.ETYPED_ELEMENT__REQUIRED;
+
+ /**
+ * The feature id for the '<em><b>EType</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ELEMENT__ETYPE = EcorePackage.ETYPED_ELEMENT__ETYPE;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Type</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ELEMENT__EGENERIC_TYPE = EcorePackage.ETYPED_ELEMENT__EGENERIC_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Documentation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ELEMENT__DOCUMENTATION = EcorePackage.ETYPED_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Categories</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ELEMENT__CATEGORIES = EcorePackage.ETYPED_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Facet Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_ELEMENT_FEATURE_COUNT = EcorePackage.ETYPED_ELEMENT_FEATURE_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.DerivedTypedElementImpl <em>Derived Typed Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.DerivedTypedElementImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getDerivedTypedElement()
+ * @generated
+ */
+ int DERIVED_TYPED_ELEMENT = 7;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVED_TYPED_ELEMENT__EANNOTATIONS = FACET_ELEMENT__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVED_TYPED_ELEMENT__NAME = FACET_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ordered</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVED_TYPED_ELEMENT__ORDERED = FACET_ELEMENT__ORDERED;
+
+ /**
+ * The feature id for the '<em><b>Unique</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVED_TYPED_ELEMENT__UNIQUE = FACET_ELEMENT__UNIQUE;
+
+ /**
+ * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVED_TYPED_ELEMENT__LOWER_BOUND = FACET_ELEMENT__LOWER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVED_TYPED_ELEMENT__UPPER_BOUND = FACET_ELEMENT__UPPER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Many</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVED_TYPED_ELEMENT__MANY = FACET_ELEMENT__MANY;
+
+ /**
+ * The feature id for the '<em><b>Required</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVED_TYPED_ELEMENT__REQUIRED = FACET_ELEMENT__REQUIRED;
+
+ /**
+ * The feature id for the '<em><b>EType</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVED_TYPED_ELEMENT__ETYPE = FACET_ELEMENT__ETYPE;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Type</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVED_TYPED_ELEMENT__EGENERIC_TYPE = FACET_ELEMENT__EGENERIC_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Documentation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVED_TYPED_ELEMENT__DOCUMENTATION = FACET_ELEMENT__DOCUMENTATION;
+
+ /**
+ * The feature id for the '<em><b>Categories</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVED_TYPED_ELEMENT__CATEGORIES = FACET_ELEMENT__CATEGORIES;
+
+ /**
+ * The feature id for the '<em><b>Query</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVED_TYPED_ELEMENT__QUERY = FACET_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Override</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVED_TYPED_ELEMENT__OVERRIDE = FACET_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Derived Typed Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DERIVED_TYPED_ELEMENT_FEATURE_COUNT = FACET_ELEMENT_FEATURE_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.ParameterValueImpl <em>Parameter Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.ParameterValueImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getParameterValue()
+ * @generated
+ */
+ int PARAMETER_VALUE = 8;
+
+ /**
+ * The feature id for the '<em><b>Parameter</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PARAMETER_VALUE__PARAMETER = 0;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PARAMETER_VALUE__VALUE = 1;
+
+ /**
+ * The number of structural features of the '<em>Parameter Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int PARAMETER_VALUE_FEATURE_COUNT = 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.DocumentedElementImpl <em>Documented Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.DocumentedElementImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getDocumentedElement()
+ * @generated
+ */
+ int DOCUMENTED_ELEMENT = 9;
+
+ /**
+ * The feature id for the '<em><b>Documentation</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENTED_ELEMENT__DOCUMENTATION = 0;
+
+ /**
+ * The number of structural features of the '<em>Documented Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DOCUMENTED_ELEMENT_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '<em>Resource</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.resource.Resource
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getResource()
+ * @generated
+ */
+ int RESOURCE = 10;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute <em>Facet Attribute</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Facet Attribute</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute
+ * @generated
+ */
+ EClass getFacetAttribute();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference <em>Facet Reference</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Facet Reference</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference
+ * @generated
+ */
+ EClass getFacetReference();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation <em>Facet Operation</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Facet Operation</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation
+ * @generated
+ */
+ EClass getFacetOperation();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet <em>Facet Set</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Facet Set</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet
+ * @generated
+ */
+ EClass getFacetSet();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet#getCategories <em>Categories</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Categories</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet#getCategories()
+ * @see #getFacetSet()
+ * @generated
+ */
+ EReference getFacetSet_Categories();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet <em>Facet</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Facet</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet
+ * @generated
+ */
+ EClass getFacet();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet#getExtendedMetaclass <em>Extended Metaclass</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Extended Metaclass</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet#getExtendedMetaclass()
+ * @see #getFacet()
+ * @generated
+ */
+ EReference getFacet_ExtendedMetaclass();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet#getFacetElements <em>Facet Elements</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Facet Elements</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet#getFacetElements()
+ * @see #getFacet()
+ * @generated
+ */
+ EReference getFacet_FacetElements();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet#getFacetOperations <em>Facet Operations</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Facet Operations</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet#getFacetOperations()
+ * @see #getFacet()
+ * @generated
+ */
+ EReference getFacet_FacetOperations();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet#getConformanceTypedElement <em>Conformance Typed Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Conformance Typed Element</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet#getConformanceTypedElement()
+ * @see #getFacet()
+ * @generated
+ */
+ EReference getFacet_ConformanceTypedElement();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet#getExtendedFacets <em>Extended Facets</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Extended Facets</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet#getExtendedFacets()
+ * @see #getFacet()
+ * @generated
+ * @since 0.2
+ */
+ EReference getFacet_ExtendedFacets();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category <em>Category</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Category</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category
+ * @generated
+ */
+ EClass getCategory();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement <em>Facet Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Facet Element</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement
+ * @generated
+ */
+ EClass getFacetElement();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement#getCategories <em>Categories</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Categories</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement#getCategories()
+ * @see #getFacetElement()
+ * @generated
+ */
+ EReference getFacetElement_Categories();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement <em>Derived Typed Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Derived Typed Element</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement
+ * @generated
+ */
+ EClass getDerivedTypedElement();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement#getQuery <em>Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement#getQuery()
+ * @see #getDerivedTypedElement()
+ * @generated
+ */
+ EReference getDerivedTypedElement_Query();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement#getOverride <em>Override</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Override</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement#getOverride()
+ * @see #getDerivedTypedElement()
+ * @generated
+ */
+ EReference getDerivedTypedElement_Override();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue <em>Parameter Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Parameter Value</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue
+ * @generated
+ */
+ EClass getParameterValue();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue#getParameter <em>Parameter</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Parameter</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue#getParameter()
+ * @see #getParameterValue()
+ * @generated
+ */
+ EReference getParameterValue_Parameter();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue#getValue()
+ * @see #getParameterValue()
+ * @generated
+ */
+ EAttribute getParameterValue_Value();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement <em>Documented Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Documented Element</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement
+ * @generated
+ */
+ EClass getDocumentedElement();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement#getDocumentation <em>Documentation</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Documentation</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement#getDocumentation()
+ * @see #getDocumentedElement()
+ * @generated
+ */
+ EAttribute getDocumentedElement_Documentation();
+
+ /**
+ * Returns the meta object for data type '{@link org.eclipse.emf.ecore.resource.Resource <em>Resource</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for data type '<em>Resource</em>'.
+ * @see org.eclipse.emf.ecore.resource.Resource
+ * @model instanceClass="org.eclipse.emf.ecore.resource.Resource"
+ * @generated
+ */
+ EDataType getResource();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ EFacetFactory getEFacetFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetAttributeImpl <em>Facet Attribute</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetAttributeImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getFacetAttribute()
+ * @generated
+ */
+ EClass FACET_ATTRIBUTE = eINSTANCE.getFacetAttribute();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetReferenceImpl <em>Facet Reference</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetReferenceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getFacetReference()
+ * @generated
+ */
+ EClass FACET_REFERENCE = eINSTANCE.getFacetReference();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetOperationImpl <em>Facet Operation</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetOperationImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getFacetOperation()
+ * @generated
+ */
+ EClass FACET_OPERATION = eINSTANCE.getFacetOperation();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetSetImpl <em>Facet Set</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetSetImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getFacetSet()
+ * @generated
+ */
+ EClass FACET_SET = eINSTANCE.getFacetSet();
+
+ /**
+ * The meta object literal for the '<em><b>Categories</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference FACET_SET__CATEGORIES = eINSTANCE.getFacetSet_Categories();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetImpl <em>Facet</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getFacet()
+ * @generated
+ */
+ EClass FACET = eINSTANCE.getFacet();
+
+ /**
+ * The meta object literal for the '<em><b>Extended Metaclass</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference FACET__EXTENDED_METACLASS = eINSTANCE.getFacet_ExtendedMetaclass();
+
+ /**
+ * The meta object literal for the '<em><b>Facet Elements</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference FACET__FACET_ELEMENTS = eINSTANCE.getFacet_FacetElements();
+
+ /**
+ * The meta object literal for the '<em><b>Facet Operations</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference FACET__FACET_OPERATIONS = eINSTANCE.getFacet_FacetOperations();
+
+ /**
+ * The meta object literal for the '<em><b>Conformance Typed Element</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference FACET__CONFORMANCE_TYPED_ELEMENT = eINSTANCE.getFacet_ConformanceTypedElement();
+
+ /**
+ * The meta object literal for the '<em><b>Extended Facets</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @since 0.2
+ */
+ EReference FACET__EXTENDED_FACETS = eINSTANCE.getFacet_ExtendedFacets();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.CategoryImpl <em>Category</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.CategoryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getCategory()
+ * @generated
+ */
+ EClass CATEGORY = eINSTANCE.getCategory();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetElementImpl <em>Facet Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetElementImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getFacetElement()
+ * @generated
+ */
+ EClass FACET_ELEMENT = eINSTANCE.getFacetElement();
+
+ /**
+ * The meta object literal for the '<em><b>Categories</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference FACET_ELEMENT__CATEGORIES = eINSTANCE.getFacetElement_Categories();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.DerivedTypedElementImpl <em>Derived Typed Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.DerivedTypedElementImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getDerivedTypedElement()
+ * @generated
+ */
+ EClass DERIVED_TYPED_ELEMENT = eINSTANCE.getDerivedTypedElement();
+
+ /**
+ * The meta object literal for the '<em><b>Query</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DERIVED_TYPED_ELEMENT__QUERY = eINSTANCE.getDerivedTypedElement_Query();
+
+ /**
+ * The meta object literal for the '<em><b>Override</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DERIVED_TYPED_ELEMENT__OVERRIDE = eINSTANCE.getDerivedTypedElement_Override();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.ParameterValueImpl <em>Parameter Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.ParameterValueImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getParameterValue()
+ * @generated
+ */
+ EClass PARAMETER_VALUE = eINSTANCE.getParameterValue();
+
+ /**
+ * The meta object literal for the '<em><b>Parameter</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference PARAMETER_VALUE__PARAMETER = eINSTANCE.getParameterValue_Parameter();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute PARAMETER_VALUE__VALUE = eINSTANCE.getParameterValue_Value();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.DocumentedElementImpl <em>Documented Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.DocumentedElementImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getDocumentedElement()
+ * @generated
+ */
+ EClass DOCUMENTED_ELEMENT = eINSTANCE.getDocumentedElement();
+
+ /**
+ * The meta object literal for the '<em><b>Documentation</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute DOCUMENTED_ELEMENT__DOCUMENTATION = eINSTANCE.getDocumentedElement_Documentation();
+
+ /**
+ * The meta object literal for the '<em>Resource</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.resource.Resource
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl#getResource()
+ * @generated
+ */
+ EDataType RESOURCE = eINSTANCE.getResource();
+
+ }
+
+} //EFacetPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/Facet.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/Facet.java
new file mode 100644
index 00000000000..46c84aa3763
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/Facet.java
@@ -0,0 +1,153 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 376576 - [EFacet] Change the multiplicity of Facet::extendedFacet
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.ETypedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Facet</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A Facet is a virtual sub-type of an existing EClass. A Facet cannot be instantiated.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet#getExtendedMetaclass <em>Extended Metaclass</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet#getFacetElements <em>Facet Elements</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet#getFacetOperations <em>Facet Operations</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet#getConformanceTypedElement <em>Conformance Typed Element</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet#getExtendedFacets <em>Extended Facets</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getFacet()
+ * @model annotation="http://www.eclipse.org/emf/2002/Ecore validationDelegates='( self.query.scope = self.facet.extendedMetaClass ) and ( self.query.name = self.name )'"
+ * annotation="http://www.eclipse.org/emf/2002/Ecore validationDelegates='self.conformanceQuery.scope = self.extendedMetaClass'"
+ * annotation="org.eclipse.ocl.ecore.OCL body='not(self.container().oclCastAs(FacetSet).facets->exists(f|f.extendedMetaClass.container() <> self.extendedMetaClass.container() ))'"
+ * @generated
+ */
+public interface Facet extends EClassifier, DocumentedElement {
+ /**
+ * Returns the value of the '<em><b>Extended Metaclass</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Extended Metaclass</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Extended Metaclass</em>' reference.
+ * @see #setExtendedMetaclass(EClass)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getFacet_ExtendedMetaclass()
+ * @model annotation="GenModel documentation='The \"extendedMetaclass\" reference references the virtually subtyped EClass.'"
+ * @generated
+ */
+ EClass getExtendedMetaclass();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet#getExtendedMetaclass <em>Extended Metaclass</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Extended Metaclass</em>' reference.
+ * @see #getExtendedMetaclass()
+ * @generated
+ */
+ void setExtendedMetaclass(EClass value);
+
+ /**
+ * Returns the value of the '<em><b>Facet Elements</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.emf.ecore.EStructuralFeature}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * This composite reference contains virtual attributes, references and operations.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Facet Elements</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getFacet_FacetElements()
+ * @model containment="true"
+ * @generated
+ */
+ EList<EStructuralFeature> getFacetElements();
+
+ /**
+ * Returns the value of the '<em><b>Facet Operations</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Facet Operations</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Facet Operations</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getFacet_FacetOperations()
+ * @model containment="true"
+ * @generated
+ */
+ EList<FacetOperation> getFacetOperations();
+
+ /**
+ * Returns the value of the '<em><b>Conformance Typed Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Conformance Typed Element</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Conformance Typed Element</em>' reference.
+ * @see #setConformanceTypedElement(ETypedElement)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getFacet_ConformanceTypedElement()
+ * @model
+ * @generated
+ */
+ ETypedElement getConformanceTypedElement();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet#getConformanceTypedElement <em>Conformance Typed Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Conformance Typed Element</em>' reference.
+ * @see #getConformanceTypedElement()
+ * @generated
+ */
+ void setConformanceTypedElement(ETypedElement value);
+
+ /**
+ * Returns the value of the '<em><b>Extended Facets</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Extended Facets</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Extended Facets</em>' reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getFacet_ExtendedFacets()
+ * @model annotation="GenModel documentation='A facet can extend other facets. If A facet A can extend a facet B. In this case an eObject conforms to the facet A if it matches conformance evaluation of A and B. '"
+ * @generated
+ * @since 0.2
+ */
+ EList<Facet> getExtendedFacets();
+
+} // Facet
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetAttribute.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetAttribute.java
new file mode 100644
index 00000000000..c9436f82df9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetAttribute.java
@@ -0,0 +1,34 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet;
+
+import org.eclipse.emf.ecore.EAttribute;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Facet Attribute</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A FacetAttribute is a virtual attribute added to all the eObjects which conform to the Facet owning the FacetAttribute.
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getFacetAttribute()
+ * @model
+ * @generated
+ */
+public interface FacetAttribute extends EAttribute, DerivedTypedElement {
+} // FacetAttribute
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetElement.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetElement.java
new file mode 100644
index 00000000000..74e77357690
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetElement.java
@@ -0,0 +1,57 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.ETypedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Facet Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A facet element is owned by a facet. It can be a facet reference, a facet attribute or a facet operation.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement#getCategories <em>Categories</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getFacetElement()
+ * @model abstract="true"
+ * @generated
+ */
+public interface FacetElement extends ETypedElement, DocumentedElement {
+ /**
+ * Returns the value of the '<em><b>Categories</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Categories</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Categories</em>' reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getFacetElement_Categories()
+ * @model
+ * @generated
+ */
+ EList<Category> getCategories();
+
+} // FacetElement
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetOperation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetOperation.java
new file mode 100644
index 00000000000..1416e149d82
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetOperation.java
@@ -0,0 +1,34 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet;
+
+import org.eclipse.emf.ecore.EOperation;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Facet Operation</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A FacetOperation is a virtual operation added to all the eObjects which conform to the Facet owning the FacetOperation.
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getFacetOperation()
+ * @model
+ * @generated
+ */
+public interface FacetOperation extends EOperation, DerivedTypedElement {
+} // FacetOperation
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetReference.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetReference.java
new file mode 100644
index 00000000000..b7598c9524c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetReference.java
@@ -0,0 +1,34 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet;
+
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Facet Reference</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A FacetReference is a virtual reference added to all the eObjects which conform to the Facet owning the FacetReference.
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getFacetReference()
+ * @model
+ * @generated
+ */
+public interface FacetReference extends EReference, DerivedTypedElement {
+} // FacetReference
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetSet.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetSet.java
new file mode 100644
index 00000000000..69beebf2a68
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/FacetSet.java
@@ -0,0 +1,63 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Facet Set</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet#getCategories <em>Categories</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getFacetSet()
+ * @model annotation="GenModel documentation='A \"FacetSet\" is the root element of a facet model. It contains a list of \"Facet\".'"
+ * @generated
+ */
+public interface FacetSet extends EPackage, DocumentedElement {
+ /**
+ * Returns the value of the '<em><b>Categories</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Categories</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Categories</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getFacetSet_Categories()
+ * @model containment="true"
+ * @generated
+ */
+ EList<Category> getCategories();
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model kind="operation"
+ * annotation="GenModel documentation='The FacetSets aggregated by this FacetSet (this operation is overridden in Aggregate in the aggregate metamodel).'"
+ * @generated
+ */
+ EList<FacetSet> getFacetSets();
+
+} // FacetSet
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/ParameterValue.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/ParameterValue.java
new file mode 100644
index 00000000000..a793293be28
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/ParameterValue.java
@@ -0,0 +1,94 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EParameter;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Parameter Value</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This is the value given as a parameter to execute a query for an operation.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue#getParameter <em>Parameter</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getParameterValue()
+ * @model
+ * @generated
+ */
+public interface ParameterValue extends EObject {
+ /**
+ * Returns the value of the '<em><b>Parameter</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Parameter</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Parameter</em>' reference.
+ * @see #setParameter(EParameter)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getParameterValue_Parameter()
+ * @model required="true"
+ * @generated
+ */
+ EParameter getParameter();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue#getParameter <em>Parameter</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Parameter</em>' reference.
+ * @see #getParameter()
+ * @generated
+ */
+ void setParameter(EParameter value);
+
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see #setValue(Object)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#getParameterValue_Value()
+ * @model
+ * @generated
+ */
+ Object getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue#getValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' attribute.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(Object value);
+
+} // ParameterValue
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/ExtensibleFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/ExtensibleFactory.java
new file mode 100644
index 00000000000..fa96c0fce99
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/ExtensibleFactory.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage
+ * @generated
+ */
+public interface ExtensibleFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ ExtensibleFactory eINSTANCE = org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.ExtensibleFactoryImpl.init();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ ExtensiblePackage getExtensiblePackage();
+
+} //ExtensibleFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/ExtensiblePackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/ExtensiblePackage.java
new file mode 100644
index 00000000000..c7a16a91265
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/ExtensiblePackage.java
@@ -0,0 +1,191 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensibleFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface ExtensiblePackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "extensible"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/extensible"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "extensible"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ ExtensiblePackage eINSTANCE = org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.ExtensiblePackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl <em>Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.ExtensiblePackageImpl#getQuery()
+ * @generated
+ */
+ int QUERY = 0;
+
+ /**
+ * The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int QUERY__CAN_HAVE_SIDE_EFFECTS = 0;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int QUERY__CAN_BE_CACHED = 1;
+
+ /**
+ * The number of structural features of the '<em>Query</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int QUERY_FEATURE_COUNT = 2;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query <em>Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query
+ * @generated
+ */
+ EClass getQuery();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query#isCanHaveSideEffects <em>Can Have Side Effects</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Can Have Side Effects</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query#isCanHaveSideEffects()
+ * @see #getQuery()
+ * @generated
+ */
+ EAttribute getQuery_CanHaveSideEffects();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query#isCanBeCached <em>Can Be Cached</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Can Be Cached</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query#isCanBeCached()
+ * @see #getQuery()
+ * @generated
+ */
+ EAttribute getQuery_CanBeCached();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ ExtensibleFactory getExtensibleFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl <em>Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.ExtensiblePackageImpl#getQuery()
+ * @generated
+ */
+ EClass QUERY = eINSTANCE.getQuery();
+
+ /**
+ * The meta object literal for the '<em><b>Can Have Side Effects</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute QUERY__CAN_HAVE_SIDE_EFFECTS = eINSTANCE.getQuery_CanHaveSideEffects();
+
+ /**
+ * The meta object literal for the '<em><b>Can Be Cached</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute QUERY__CAN_BE_CACHED = eINSTANCE.getQuery_CanBeCached();
+
+ }
+
+} //ExtensiblePackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/Query.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/Query.java
new file mode 100644
index 00000000000..c67e3662e3d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/Query.java
@@ -0,0 +1,98 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Query</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * Query is the abstract representation of the concept of query. This class has to be sub-classed for each existing query language (Java, OCL, etc.)
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query#isCanHaveSideEffects <em>Can Have Side Effects</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query#isCanBeCached <em>Can Be Cached</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage#getQuery()
+ * @model abstract="true"
+ * @generated
+ */
+public interface Query extends EObject {
+ /**
+ * Returns the value of the '<em><b>Can Have Side Effects</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Can Have Side Effects</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Can Have Side Effects</em>' attribute.
+ * @see #setCanHaveSideEffects(boolean)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage#getQuery_CanHaveSideEffects()
+ * @model
+ * @generated
+ */
+ boolean isCanHaveSideEffects();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query#isCanHaveSideEffects <em>Can Have Side Effects</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Can Have Side Effects</em>' attribute.
+ * @see #isCanHaveSideEffects()
+ * @generated
+ */
+ void setCanHaveSideEffects(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Can Be Cached</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Can Be Cached</em>' attribute.
+ * @see #setCanBeCached(boolean)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage#getQuery_CanBeCached()
+ * @model
+ * @generated
+ */
+ boolean isCanBeCached();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query#isCanBeCached <em>Can Be Cached</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Can Be Cached</em>' attribute.
+ * @see #isCanBeCached()
+ * @generated
+ */
+ void setCanBeCached(boolean value);
+
+} // Query
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/impl/ExtensibleFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/impl/ExtensibleFactoryImpl.java
new file mode 100644
index 00000000000..2dcfb6463e7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/impl/ExtensibleFactoryImpl.java
@@ -0,0 +1,95 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.*;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensibleFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ExtensibleFactoryImpl extends EFactoryImpl implements ExtensibleFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static ExtensibleFactory init() {
+ try {
+ ExtensibleFactory theExtensibleFactory = (ExtensibleFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/extensible"); //$NON-NLS-1$
+ if (theExtensibleFactory != null) {
+ return theExtensibleFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new ExtensibleFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ExtensibleFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ExtensiblePackage getExtensiblePackage() {
+ return (ExtensiblePackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static ExtensiblePackage getPackage() {
+ return ExtensiblePackage.eINSTANCE;
+ }
+
+} //ExtensibleFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/impl/ExtensiblePackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/impl/ExtensiblePackageImpl.java
new file mode 100644
index 00000000000..807985eba68
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/impl/ExtensiblePackageImpl.java
@@ -0,0 +1,225 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensibleFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimePackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class ExtensiblePackageImpl extends EPackageImpl implements ExtensiblePackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass queryEClass = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private ExtensiblePackageImpl() {
+ super(eNS_URI, ExtensibleFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 ExtensiblePackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static ExtensiblePackage init() {
+ if (isInited) return (ExtensiblePackage)EPackage.Registry.INSTANCE.getEPackage(ExtensiblePackage.eNS_URI);
+
+ // Obtain or create and register package
+ ExtensiblePackageImpl theExtensiblePackage = (ExtensiblePackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ExtensiblePackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ExtensiblePackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ EFacetPackageImpl theEFacetPackage = (EFacetPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(EFacetPackage.eNS_URI) instanceof EFacetPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(EFacetPackage.eNS_URI) : EFacetPackage.eINSTANCE);
+ SerializationPackageImpl theSerializationPackage = (SerializationPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SerializationPackage.eNS_URI) instanceof SerializationPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SerializationPackage.eNS_URI) : SerializationPackage.eINSTANCE);
+ QueryPackageImpl theQueryPackage = (QueryPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(QueryPackage.eNS_URI) instanceof QueryPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(QueryPackage.eNS_URI) : QueryPackage.eINSTANCE);
+ RuntimePackageImpl theRuntimePackage = (RuntimePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(RuntimePackage.eNS_URI) instanceof RuntimePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(RuntimePackage.eNS_URI) : RuntimePackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theExtensiblePackage.createPackageContents();
+ theEFacetPackage.createPackageContents();
+ theSerializationPackage.createPackageContents();
+ theQueryPackage.createPackageContents();
+ theRuntimePackage.createPackageContents();
+
+ // Initialize created meta-data
+ theExtensiblePackage.initializePackageContents();
+ theEFacetPackage.initializePackageContents();
+ theSerializationPackage.initializePackageContents();
+ theQueryPackage.initializePackageContents();
+ theRuntimePackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theExtensiblePackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(ExtensiblePackage.eNS_URI, theExtensiblePackage);
+ return theExtensiblePackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getQuery() {
+ return queryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getQuery_CanHaveSideEffects() {
+ return (EAttribute)queryEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getQuery_CanBeCached() {
+ return (EAttribute)queryEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ExtensibleFactory getExtensibleFactory() {
+ return (ExtensibleFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ queryEClass = createEClass(QUERY);
+ createEAttribute(queryEClass, QUERY__CAN_HAVE_SIDE_EFFECTS);
+ createEAttribute(queryEClass, QUERY__CAN_BE_CACHED);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(queryEClass, Query.class, "Query", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getQuery_CanHaveSideEffects(), ecorePackage.getEBoolean(), "canHaveSideEffects", null, 0, 1, Query.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getQuery_CanBeCached(), ecorePackage.getEBoolean(), "canBeCached", null, 0, 1, Query.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ }
+
+} //ExtensiblePackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/impl/QueryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/impl/QueryImpl.java
new file mode 100644
index 00000000000..f634a9de818
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/impl/QueryImpl.java
@@ -0,0 +1,249 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Query</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl#isCanHaveSideEffects <em>Can Have Side Effects</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl#isCanBeCached <em>Can Be Cached</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class QueryImpl extends EObjectImpl implements Query {
+ /**
+ * The default value of the '{@link #isCanHaveSideEffects() <em>Can Have Side Effects</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isCanHaveSideEffects()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean CAN_HAVE_SIDE_EFFECTS_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isCanHaveSideEffects() <em>Can Have Side Effects</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isCanHaveSideEffects()
+ * @generated
+ * @ordered
+ */
+ protected boolean canHaveSideEffects = CAN_HAVE_SIDE_EFFECTS_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isCanBeCached() <em>Can Be Cached</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isCanBeCached()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean CAN_BE_CACHED_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isCanBeCached() <em>Can Be Cached</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isCanBeCached()
+ * @generated
+ * @ordered
+ */
+ protected boolean canBeCached = CAN_BE_CACHED_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected QueryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ExtensiblePackage.Literals.QUERY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public DerivedTypedElement basicGetOwningDerivedTypedElement() {
+ EObject container = eContainer();
+ if (container instanceof DerivedTypedElement) {
+ return (DerivedTypedElement) container;
+ }
+ throw new IllegalStateException("Query must always be contained by a DerivedTypedElement");
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isCanHaveSideEffects() {
+ return canHaveSideEffects;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setCanHaveSideEffects(boolean newCanHaveSideEffects) {
+ boolean oldCanHaveSideEffects = canHaveSideEffects;
+ canHaveSideEffects = newCanHaveSideEffects;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS, oldCanHaveSideEffects, canHaveSideEffects));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isCanBeCached() {
+ return canBeCached;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setCanBeCached(boolean newCanBeCached) {
+ boolean oldCanBeCached = canBeCached;
+ canBeCached = newCanBeCached;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, ExtensiblePackage.QUERY__CAN_BE_CACHED, oldCanBeCached, canBeCached));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS:
+ return isCanHaveSideEffects();
+ case ExtensiblePackage.QUERY__CAN_BE_CACHED:
+ return isCanBeCached();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS:
+ setCanHaveSideEffects((Boolean)newValue);
+ return;
+ case ExtensiblePackage.QUERY__CAN_BE_CACHED:
+ setCanBeCached((Boolean)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS:
+ setCanHaveSideEffects(CAN_HAVE_SIDE_EFFECTS_EDEFAULT);
+ return;
+ case ExtensiblePackage.QUERY__CAN_BE_CACHED:
+ setCanBeCached(CAN_BE_CACHED_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS:
+ return canHaveSideEffects != CAN_HAVE_SIDE_EFFECTS_EDEFAULT;
+ case ExtensiblePackage.QUERY__CAN_BE_CACHED:
+ return canBeCached != CAN_BE_CACHED_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (canHaveSideEffects: "); //$NON-NLS-1$
+ result.append(canHaveSideEffects);
+ result.append(", canBeCached: "); //$NON-NLS-1$
+ result.append(canBeCached);
+ result.append(')');
+ return result.toString();
+ }
+
+} //QueryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/util/ExtensibleAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/util/ExtensibleAdapterFactory.java
new file mode 100644
index 00000000000..513b257f7dd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/util/ExtensibleAdapterFactory.java
@@ -0,0 +1,131 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.*;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage
+ * @generated
+ */
+public class ExtensibleAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static ExtensiblePackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ExtensibleAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = ExtensiblePackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ExtensibleSwitch<Adapter> modelSwitch =
+ new ExtensibleSwitch<Adapter>() {
+ @Override
+ public Adapter caseQuery(Query object) {
+ return createQueryAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query <em>Query</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.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query
+ * @generated
+ */
+ public Adapter createQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //ExtensibleAdapterFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/util/ExtensibleSwitch.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/util/ExtensibleSwitch.java
new file mode 100644
index 00000000000..657d5e7d76e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/extensible/util/ExtensibleSwitch.java
@@ -0,0 +1,143 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.*;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage
+ * @generated
+ */
+public class ExtensibleSwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static ExtensiblePackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ExtensibleSwitch() {
+ if (modelPackage == null) {
+ modelPackage = ExtensiblePackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case ExtensiblePackage.QUERY: {
+ Query query = (Query)theEObject;
+ T result = caseQuery(query);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Query</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>Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseQuery(Query object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //ExtensibleSwitch
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/CategoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/CategoryImpl.java
new file mode 100644
index 00000000000..acbcf985491
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/CategoryImpl.java
@@ -0,0 +1,205 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENamedElementImpl;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Category</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.CategoryImpl#getDocumentation <em>Documentation</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class CategoryImpl extends ENamedElementImpl implements Category {
+ /**
+ * The default value of the '{@link #getDocumentation() <em>Documentation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocumentation()
+ * @generated
+ * @ordered
+ */
+ protected static final String DOCUMENTATION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDocumentation() <em>Documentation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocumentation()
+ * @generated
+ * @ordered
+ */
+ protected String documentation = DOCUMENTATION_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CategoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.CATEGORY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getDocumentation() {
+ return documentation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDocumentation(String newDocumentation) {
+ String oldDocumentation = documentation;
+ documentation = newDocumentation;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.CATEGORY__DOCUMENTATION, oldDocumentation, documentation));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.CATEGORY__DOCUMENTATION:
+ return getDocumentation();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.CATEGORY__DOCUMENTATION:
+ setDocumentation((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.CATEGORY__DOCUMENTATION:
+ setDocumentation(DOCUMENTATION_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.CATEGORY__DOCUMENTATION:
+ return DOCUMENTATION_EDEFAULT == null ? documentation != null : !DOCUMENTATION_EDEFAULT.equals(documentation);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == DocumentedElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.CATEGORY__DOCUMENTATION: return EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+ if (baseClass == DocumentedElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION: return EFacetPackage.CATEGORY__DOCUMENTATION;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (documentation: "); //$NON-NLS-1$
+ result.append(documentation);
+ result.append(')');
+ return result.toString();
+ }
+
+} //CategoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/DerivedTypedElementImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/DerivedTypedElementImpl.java
new file mode 100644
index 00000000000..822720edd9a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/DerivedTypedElementImpl.java
@@ -0,0 +1,244 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Derived Typed Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.DerivedTypedElementImpl#getQuery <em>Query</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.DerivedTypedElementImpl#getOverride <em>Override</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class DerivedTypedElementImpl extends FacetElementImpl implements DerivedTypedElement {
+ /**
+ * The cached value of the '{@link #getQuery() <em>Query</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getQuery()
+ * @generated
+ * @ordered
+ */
+ protected Query query;
+
+ /**
+ * The cached value of the '{@link #getOverride() <em>Override</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOverride()
+ * @generated
+ * @ordered
+ */
+ protected DerivedTypedElement override;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DerivedTypedElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.DERIVED_TYPED_ELEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Query getQuery() {
+ return query;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetQuery(Query newQuery, NotificationChain msgs) {
+ Query oldQuery = query;
+ query = newQuery;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EFacetPackage.DERIVED_TYPED_ELEMENT__QUERY, oldQuery, newQuery);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setQuery(Query newQuery) {
+ if (newQuery != query) {
+ NotificationChain msgs = null;
+ if (query != null)
+ msgs = ((InternalEObject)query).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EFacetPackage.DERIVED_TYPED_ELEMENT__QUERY, null, msgs);
+ if (newQuery != null)
+ msgs = ((InternalEObject)newQuery).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EFacetPackage.DERIVED_TYPED_ELEMENT__QUERY, null, msgs);
+ msgs = basicSetQuery(newQuery, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.DERIVED_TYPED_ELEMENT__QUERY, newQuery, newQuery));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DerivedTypedElement getOverride() {
+ if (override != null && override.eIsProxy()) {
+ InternalEObject oldOverride = (InternalEObject)override;
+ override = (DerivedTypedElement)eResolveProxy(oldOverride);
+ if (override != oldOverride) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.DERIVED_TYPED_ELEMENT__OVERRIDE, oldOverride, override));
+ }
+ }
+ return override;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DerivedTypedElement basicGetOverride() {
+ return override;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setOverride(DerivedTypedElement newOverride) {
+ DerivedTypedElement oldOverride = override;
+ override = newOverride;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.DERIVED_TYPED_ELEMENT__OVERRIDE, oldOverride, override));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.DERIVED_TYPED_ELEMENT__QUERY:
+ return basicSetQuery(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.DERIVED_TYPED_ELEMENT__QUERY:
+ return getQuery();
+ case EFacetPackage.DERIVED_TYPED_ELEMENT__OVERRIDE:
+ if (resolve) return getOverride();
+ return basicGetOverride();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.DERIVED_TYPED_ELEMENT__QUERY:
+ setQuery((Query)newValue);
+ return;
+ case EFacetPackage.DERIVED_TYPED_ELEMENT__OVERRIDE:
+ setOverride((DerivedTypedElement)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.DERIVED_TYPED_ELEMENT__QUERY:
+ setQuery((Query)null);
+ return;
+ case EFacetPackage.DERIVED_TYPED_ELEMENT__OVERRIDE:
+ setOverride((DerivedTypedElement)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.DERIVED_TYPED_ELEMENT__QUERY:
+ return query != null;
+ case EFacetPackage.DERIVED_TYPED_ELEMENT__OVERRIDE:
+ return override != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //DerivedTypedElementImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/DocumentedElementImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/DocumentedElementImpl.java
new file mode 100644
index 00000000000..e130351d50e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/DocumentedElementImpl.java
@@ -0,0 +1,172 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Documented Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.DocumentedElementImpl#getDocumentation <em>Documentation</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DocumentedElementImpl extends EObjectImpl implements DocumentedElement {
+ /**
+ * The default value of the '{@link #getDocumentation() <em>Documentation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocumentation()
+ * @generated
+ * @ordered
+ */
+ protected static final String DOCUMENTATION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDocumentation() <em>Documentation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocumentation()
+ * @generated
+ * @ordered
+ */
+ protected String documentation = DOCUMENTATION_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DocumentedElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.DOCUMENTED_ELEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getDocumentation() {
+ return documentation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDocumentation(String newDocumentation) {
+ String oldDocumentation = documentation;
+ documentation = newDocumentation;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION, oldDocumentation, documentation));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION:
+ return getDocumentation();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION:
+ setDocumentation((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION:
+ setDocumentation(DOCUMENTATION_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION:
+ return DOCUMENTATION_EDEFAULT == null ? documentation != null : !DOCUMENTATION_EDEFAULT.equals(documentation);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (documentation: "); //$NON-NLS-1$
+ result.append(documentation);
+ result.append(')');
+ return result.toString();
+ }
+
+} //DocumentedElementImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/EFacetFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/EFacetFactoryImpl.java
new file mode 100644
index 00000000000..72a417ae101
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/EFacetFactoryImpl.java
@@ -0,0 +1,242 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.*;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class EFacetFactoryImpl extends EFactoryImpl implements EFacetFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static EFacetFactory init() {
+ try {
+ EFacetFactory theEFacetFactory = (EFacetFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet"); //$NON-NLS-1$
+ if (theEFacetFactory != null) {
+ return theEFacetFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new EFacetFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EFacetFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case EFacetPackage.FACET_ATTRIBUTE: return createFacetAttribute();
+ case EFacetPackage.FACET_REFERENCE: return createFacetReference();
+ case EFacetPackage.FACET_OPERATION: return createFacetOperation();
+ case EFacetPackage.FACET_SET: return createFacetSet();
+ case EFacetPackage.FACET: return createFacet();
+ case EFacetPackage.CATEGORY: return createCategory();
+ case EFacetPackage.PARAMETER_VALUE: return createParameterValue();
+ case EFacetPackage.DOCUMENTED_ELEMENT: return createDocumentedElement();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object createFromString(EDataType eDataType, String initialValue) {
+ switch (eDataType.getClassifierID()) {
+ case EFacetPackage.RESOURCE:
+ return createResourceFromString(eDataType, initialValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String convertToString(EDataType eDataType, Object instanceValue) {
+ switch (eDataType.getClassifierID()) {
+ case EFacetPackage.RESOURCE:
+ return convertResourceToString(eDataType, instanceValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FacetAttribute createFacetAttribute() {
+ FacetAttributeImpl facetAttribute = new FacetAttributeImpl();
+ return facetAttribute;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FacetReference createFacetReference() {
+ FacetReferenceImpl facetReference = new FacetReferenceImpl();
+ return facetReference;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FacetOperation createFacetOperation() {
+ FacetOperationImpl facetOperation = new FacetOperationImpl();
+ return facetOperation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FacetSet createFacetSet() {
+ FacetSetImpl facetSet = new FacetSetImpl();
+ return facetSet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Facet createFacet() {
+ FacetImpl facet = new FacetImpl();
+ return facet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Category createCategory() {
+ CategoryImpl category = new CategoryImpl();
+ return category;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ParameterValue createParameterValue() {
+ ParameterValueImpl parameterValue = new ParameterValueImpl();
+ return parameterValue;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DocumentedElement createDocumentedElement() {
+ DocumentedElementImpl documentedElement = new DocumentedElementImpl();
+ return documentedElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Resource createResourceFromString(EDataType eDataType, String initialValue) {
+ return (Resource)super.createFromString(eDataType, initialValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertResourceToString(EDataType eDataType, Object instanceValue) {
+ return super.convertToString(eDataType, instanceValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EFacetPackage getEFacetPackage() {
+ return (EFacetPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static EFacetPackage getPackage() {
+ return EFacetPackage.eINSTANCE;
+ }
+
+} //EFacetFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/EFacetPackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/EFacetPackageImpl.java
new file mode 100644
index 00000000000..2606c64ce05
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/EFacetPackageImpl.java
@@ -0,0 +1,669 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 376576 - [EFacet] Change the multiplicity of Facet::extendedFacet
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl;
+
+import static org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage.RESOURCE;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.ExtensiblePackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimePackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class EFacetPackageImpl extends EPackageImpl implements EFacetPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass facetAttributeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass facetReferenceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass facetOperationEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass facetSetEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass facetEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass categoryEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass facetElementEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass derivedTypedElementEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass parameterValueEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass documentedElementEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EDataType resourceEDataType = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private EFacetPackageImpl() {
+ super(eNS_URI, EFacetFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 EFacetPackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static EFacetPackage init() {
+ if (isInited) return (EFacetPackage)EPackage.Registry.INSTANCE.getEPackage(EFacetPackage.eNS_URI);
+
+ // Obtain or create and register package
+ EFacetPackageImpl theEFacetPackage = (EFacetPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof EFacetPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new EFacetPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ SerializationPackageImpl theSerializationPackage = (SerializationPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SerializationPackage.eNS_URI) instanceof SerializationPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SerializationPackage.eNS_URI) : SerializationPackage.eINSTANCE);
+ ExtensiblePackageImpl theExtensiblePackage = (ExtensiblePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ExtensiblePackage.eNS_URI) instanceof ExtensiblePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ExtensiblePackage.eNS_URI) : ExtensiblePackage.eINSTANCE);
+ QueryPackageImpl theQueryPackage = (QueryPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(QueryPackage.eNS_URI) instanceof QueryPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(QueryPackage.eNS_URI) : QueryPackage.eINSTANCE);
+ RuntimePackageImpl theRuntimePackage = (RuntimePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(RuntimePackage.eNS_URI) instanceof RuntimePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(RuntimePackage.eNS_URI) : RuntimePackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theEFacetPackage.createPackageContents();
+ theSerializationPackage.createPackageContents();
+ theExtensiblePackage.createPackageContents();
+ theQueryPackage.createPackageContents();
+ theRuntimePackage.createPackageContents();
+
+ // Initialize created meta-data
+ theEFacetPackage.initializePackageContents();
+ theSerializationPackage.initializePackageContents();
+ theExtensiblePackage.initializePackageContents();
+ theQueryPackage.initializePackageContents();
+ theRuntimePackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theEFacetPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(EFacetPackage.eNS_URI, theEFacetPackage);
+ return theEFacetPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFacetAttribute() {
+ return facetAttributeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFacetReference() {
+ return facetReferenceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFacetOperation() {
+ return facetOperationEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFacetSet() {
+ return facetSetEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getFacetSet_Categories() {
+ return (EReference)facetSetEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFacet() {
+ return facetEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getFacet_ExtendedMetaclass() {
+ return (EReference)facetEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getFacet_FacetElements() {
+ return (EReference)facetEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getFacet_FacetOperations() {
+ return (EReference)facetEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getFacet_ConformanceTypedElement() {
+ return (EReference)facetEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getFacet_ExtendedFacets() {
+ return (EReference)facetEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getCategory() {
+ return categoryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFacetElement() {
+ return facetElementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getFacetElement_Categories() {
+ return (EReference)facetElementEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDerivedTypedElement() {
+ return derivedTypedElementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDerivedTypedElement_Query() {
+ return (EReference)derivedTypedElementEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDerivedTypedElement_Override() {
+ return (EReference)derivedTypedElementEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getParameterValue() {
+ return parameterValueEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getParameterValue_Parameter() {
+ return (EReference)parameterValueEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getParameterValue_Value() {
+ return (EAttribute)parameterValueEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDocumentedElement() {
+ return documentedElementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getDocumentedElement_Documentation() {
+ return (EAttribute)documentedElementEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EDataType getResource() {
+ return resourceEDataType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EFacetFactory getEFacetFactory() {
+ return (EFacetFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ facetAttributeEClass = createEClass(FACET_ATTRIBUTE);
+
+ facetReferenceEClass = createEClass(FACET_REFERENCE);
+
+ facetOperationEClass = createEClass(FACET_OPERATION);
+
+ facetSetEClass = createEClass(FACET_SET);
+ createEReference(facetSetEClass, FACET_SET__CATEGORIES);
+
+ facetEClass = createEClass(FACET);
+ createEReference(facetEClass, FACET__EXTENDED_METACLASS);
+ createEReference(facetEClass, FACET__FACET_ELEMENTS);
+ createEReference(facetEClass, FACET__FACET_OPERATIONS);
+ createEReference(facetEClass, FACET__CONFORMANCE_TYPED_ELEMENT);
+ createEReference(facetEClass, FACET__EXTENDED_FACETS);
+
+ categoryEClass = createEClass(CATEGORY);
+
+ facetElementEClass = createEClass(FACET_ELEMENT);
+ createEReference(facetElementEClass, FACET_ELEMENT__CATEGORIES);
+
+ derivedTypedElementEClass = createEClass(DERIVED_TYPED_ELEMENT);
+ createEReference(derivedTypedElementEClass, DERIVED_TYPED_ELEMENT__QUERY);
+ createEReference(derivedTypedElementEClass, DERIVED_TYPED_ELEMENT__OVERRIDE);
+
+ parameterValueEClass = createEClass(PARAMETER_VALUE);
+ createEReference(parameterValueEClass, PARAMETER_VALUE__PARAMETER);
+ createEAttribute(parameterValueEClass, PARAMETER_VALUE__VALUE);
+
+ documentedElementEClass = createEClass(DOCUMENTED_ELEMENT);
+ createEAttribute(documentedElementEClass, DOCUMENTED_ELEMENT__DOCUMENTATION);
+
+ // Create data types
+ resourceEDataType = createEDataType(RESOURCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ SerializationPackage theSerializationPackage = (SerializationPackage)EPackage.Registry.INSTANCE.getEPackage(SerializationPackage.eNS_URI);
+ ExtensiblePackage theExtensiblePackage = (ExtensiblePackage)EPackage.Registry.INSTANCE.getEPackage(ExtensiblePackage.eNS_URI);
+ QueryPackage theQueryPackage = (QueryPackage)EPackage.Registry.INSTANCE.getEPackage(QueryPackage.eNS_URI);
+ RuntimePackage theRuntimePackage = (RuntimePackage)EPackage.Registry.INSTANCE.getEPackage(RuntimePackage.eNS_URI);
+
+ // Add subpackages
+ getESubpackages().add(theSerializationPackage);
+ getESubpackages().add(theExtensiblePackage);
+ getESubpackages().add(theQueryPackage);
+ getESubpackages().add(theRuntimePackage);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ facetAttributeEClass.getESuperTypes().add(ecorePackage.getEAttribute());
+ facetAttributeEClass.getESuperTypes().add(this.getDerivedTypedElement());
+ facetReferenceEClass.getESuperTypes().add(ecorePackage.getEReference());
+ facetReferenceEClass.getESuperTypes().add(this.getDerivedTypedElement());
+ facetOperationEClass.getESuperTypes().add(ecorePackage.getEOperation());
+ facetOperationEClass.getESuperTypes().add(this.getDerivedTypedElement());
+ facetSetEClass.getESuperTypes().add(ecorePackage.getEPackage());
+ facetSetEClass.getESuperTypes().add(this.getDocumentedElement());
+ facetEClass.getESuperTypes().add(ecorePackage.getEClassifier());
+ facetEClass.getESuperTypes().add(this.getDocumentedElement());
+ categoryEClass.getESuperTypes().add(ecorePackage.getENamedElement());
+ categoryEClass.getESuperTypes().add(this.getDocumentedElement());
+ facetElementEClass.getESuperTypes().add(ecorePackage.getETypedElement());
+ facetElementEClass.getESuperTypes().add(this.getDocumentedElement());
+ derivedTypedElementEClass.getESuperTypes().add(this.getFacetElement());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(facetAttributeEClass, FacetAttribute.class, "FacetAttribute", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(facetReferenceEClass, FacetReference.class, "FacetReference", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(facetOperationEClass, FacetOperation.class, "FacetOperation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(facetSetEClass, FacetSet.class, "FacetSet", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getFacetSet_Categories(), this.getCategory(), null, "categories", null, 0, -1, FacetSet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ addEOperation(facetSetEClass, this.getFacetSet(), "getFacetSets", 0, -1, IS_UNIQUE, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(facetEClass, Facet.class, "Facet", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getFacet_ExtendedMetaclass(), ecorePackage.getEClass(), null, "extendedMetaclass", null, 0, 1, Facet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEReference(getFacet_FacetElements(), ecorePackage.getEStructuralFeature(), null, "facetElements", null, 0, -1, Facet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEReference(getFacet_FacetOperations(), this.getFacetOperation(), null, "facetOperations", null, 0, -1, Facet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEReference(getFacet_ConformanceTypedElement(), ecorePackage.getETypedElement(), null, "conformanceTypedElement", null, 0, 1, Facet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEReference(getFacet_ExtendedFacets(), this.getFacet(), null, "extendedFacets", null, 0, -1, Facet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(categoryEClass, Category.class, "Category", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(facetElementEClass, FacetElement.class, "FacetElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getFacetElement_Categories(), this.getCategory(), null, "categories", null, 0, -1, FacetElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(derivedTypedElementEClass, DerivedTypedElement.class, "DerivedTypedElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getDerivedTypedElement_Query(), theExtensiblePackage.getQuery(), null, "query", null, 1, 1, DerivedTypedElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEReference(getDerivedTypedElement_Override(), this.getDerivedTypedElement(), null, "override", null, 0, 1, DerivedTypedElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(parameterValueEClass, ParameterValue.class, "ParameterValue", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getParameterValue_Parameter(), ecorePackage.getEParameter(), null, "parameter", null, 1, 1, ParameterValue.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getParameterValue_Value(), ecorePackage.getEJavaObject(), "value", null, 0, 1, ParameterValue.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(documentedElementEClass, DocumentedElement.class, "DocumentedElement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getDocumentedElement_Documentation(), ecorePackage.getEString(), "documentation", null, 0, 1, DocumentedElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ // Initialize data types
+ initEDataType(resourceEDataType, Resource.class, "Resource", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http://www.eclipse.org/emf/2002/Ecore
+ createEcoreAnnotations();
+ // GenModel
+ createGenModel_1Annotations();
+ // org.eclipse.ocl.ecore.OCL
+ createOrgAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>http://www.eclipse.org/emf/2002/Ecore</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createEcoreAnnotations() {
+ String source = "http://www.eclipse.org/emf/2002/Ecore"; //$NON-NLS-1$
+ addAnnotation
+ (this,
+ source,
+ new String[] {
+ "validationDelegates", "org.eclipse.ocl.ecore.OCL" //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ addAnnotation
+ (facetEClass,
+ source,
+ new String[] {
+ "validationDelegates", "( self.query.scope = self.facet.extendedMetaClass ) and ( self.query.name = self.name )" //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ addAnnotation
+ (facetEClass,
+ source,
+ new String[] {
+ "validationDelegates", "self.conformanceQuery.scope = self.extendedMetaClass" //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ }
+
+ /**
+ * Initializes the annotations for <b>GenModel</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createGenModel_1Annotations() {
+ String source = "GenModel"; //$NON-NLS-1$
+ addAnnotation
+ (facetSetEClass,
+ source,
+ new String[] {
+ "documentation", "A \"FacetSet\" is the root element of a facet model. It contains a list of \"Facet\"." //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
+ });
+ addAnnotation
+ (facetSetEClass.getEOperations().get(0),
+ source,
+ new String[] {
+ "documentation", "The FacetSets aggregated by this FacetSet (this operation is overridden in Aggregate in the aggregate metamodel)." //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ addAnnotation
+ (getFacet_ExtendedMetaclass(),
+ source,
+ new String[] {
+ "documentation", "The \"extendedMetaclass\" reference references the virtually subtyped EClass." //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ });
+ addAnnotation
+ (getFacet_ExtendedFacets(),
+ source,
+ new String[] {
+ "documentation", "A facet can extend other facets. If A facet A can extend a facet B. In this case an eObject conforms to the facet A if it matches conformance evaluation of A and B. " //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ }
+
+ /**
+ * Initializes the annotations for <b>org.eclipse.ocl.ecore.OCL</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createOrgAnnotations() {
+ String source = "org.eclipse.ocl.ecore.OCL"; //$NON-NLS-1$
+ addAnnotation
+ (facetEClass,
+ source,
+ new String[] {
+ "body", "not(self.container().oclCastAs(FacetSet).facets->exists(f|f.extendedMetaClass.container() <> self.extendedMetaClass.container() ))" //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ }
+
+} //EFacetPackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetAttributeImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetAttributeImpl.java
new file mode 100644
index 00000000000..c2f21567e2e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetAttributeImpl.java
@@ -0,0 +1,414 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.EAttributeImpl;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Facet Attribute</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetAttributeImpl#getDocumentation <em>Documentation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetAttributeImpl#getCategories <em>Categories</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetAttributeImpl#getQuery <em>Query</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetAttributeImpl#getOverride <em>Override</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class FacetAttributeImpl extends EAttributeImpl implements FacetAttribute {
+ /**
+ * The default value of the '{@link #getDocumentation() <em>Documentation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocumentation()
+ * @generated
+ * @ordered
+ */
+ protected static final String DOCUMENTATION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDocumentation() <em>Documentation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocumentation()
+ * @generated
+ * @ordered
+ */
+ protected String documentation = DOCUMENTATION_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getCategories() <em>Categories</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCategories()
+ * @generated
+ * @ordered
+ */
+ protected EList<Category> categories;
+
+ /**
+ * The cached value of the '{@link #getQuery() <em>Query</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getQuery()
+ * @generated
+ * @ordered
+ */
+ protected Query query;
+
+ /**
+ * The cached value of the '{@link #getOverride() <em>Override</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOverride()
+ * @generated
+ * @ordered
+ */
+ protected DerivedTypedElement override;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetAttributeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.FACET_ATTRIBUTE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getDocumentation() {
+ return documentation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDocumentation(String newDocumentation) {
+ String oldDocumentation = documentation;
+ documentation = newDocumentation;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_ATTRIBUTE__DOCUMENTATION, oldDocumentation, documentation));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Category> getCategories() {
+ if (categories == null) {
+ categories = new EObjectResolvingEList<Category>(Category.class, this, EFacetPackage.FACET_ATTRIBUTE__CATEGORIES);
+ }
+ return categories;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Query getQuery() {
+ return query;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetQuery(Query newQuery, NotificationChain msgs) {
+ Query oldQuery = query;
+ query = newQuery;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_ATTRIBUTE__QUERY, oldQuery, newQuery);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setQuery(Query newQuery) {
+ if (newQuery != query) {
+ NotificationChain msgs = null;
+ if (query != null)
+ msgs = ((InternalEObject)query).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EFacetPackage.FACET_ATTRIBUTE__QUERY, null, msgs);
+ if (newQuery != null)
+ msgs = ((InternalEObject)newQuery).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EFacetPackage.FACET_ATTRIBUTE__QUERY, null, msgs);
+ msgs = basicSetQuery(newQuery, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_ATTRIBUTE__QUERY, newQuery, newQuery));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DerivedTypedElement getOverride() {
+ if (override != null && override.eIsProxy()) {
+ InternalEObject oldOverride = (InternalEObject)override;
+ override = (DerivedTypedElement)eResolveProxy(oldOverride);
+ if (override != oldOverride) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.FACET_ATTRIBUTE__OVERRIDE, oldOverride, override));
+ }
+ }
+ return override;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DerivedTypedElement basicGetOverride() {
+ return override;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setOverride(DerivedTypedElement newOverride) {
+ DerivedTypedElement oldOverride = override;
+ override = newOverride;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_ATTRIBUTE__OVERRIDE, oldOverride, override));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ATTRIBUTE__QUERY:
+ return basicSetQuery(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ATTRIBUTE__DOCUMENTATION:
+ return getDocumentation();
+ case EFacetPackage.FACET_ATTRIBUTE__CATEGORIES:
+ return getCategories();
+ case EFacetPackage.FACET_ATTRIBUTE__QUERY:
+ return getQuery();
+ case EFacetPackage.FACET_ATTRIBUTE__OVERRIDE:
+ if (resolve) return getOverride();
+ return basicGetOverride();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ATTRIBUTE__DOCUMENTATION:
+ setDocumentation((String)newValue);
+ return;
+ case EFacetPackage.FACET_ATTRIBUTE__CATEGORIES:
+ getCategories().clear();
+ getCategories().addAll((Collection<? extends Category>)newValue);
+ return;
+ case EFacetPackage.FACET_ATTRIBUTE__QUERY:
+ setQuery((Query)newValue);
+ return;
+ case EFacetPackage.FACET_ATTRIBUTE__OVERRIDE:
+ setOverride((DerivedTypedElement)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ATTRIBUTE__DOCUMENTATION:
+ setDocumentation(DOCUMENTATION_EDEFAULT);
+ return;
+ case EFacetPackage.FACET_ATTRIBUTE__CATEGORIES:
+ getCategories().clear();
+ return;
+ case EFacetPackage.FACET_ATTRIBUTE__QUERY:
+ setQuery((Query)null);
+ return;
+ case EFacetPackage.FACET_ATTRIBUTE__OVERRIDE:
+ setOverride((DerivedTypedElement)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ATTRIBUTE__DOCUMENTATION:
+ return DOCUMENTATION_EDEFAULT == null ? documentation != null : !DOCUMENTATION_EDEFAULT.equals(documentation);
+ case EFacetPackage.FACET_ATTRIBUTE__CATEGORIES:
+ return categories != null && !categories.isEmpty();
+ case EFacetPackage.FACET_ATTRIBUTE__QUERY:
+ return query != null;
+ case EFacetPackage.FACET_ATTRIBUTE__OVERRIDE:
+ return override != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == DocumentedElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET_ATTRIBUTE__DOCUMENTATION: return EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION;
+ default: return -1;
+ }
+ }
+ if (baseClass == FacetElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET_ATTRIBUTE__CATEGORIES: return EFacetPackage.FACET_ELEMENT__CATEGORIES;
+ default: return -1;
+ }
+ }
+ if (baseClass == DerivedTypedElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET_ATTRIBUTE__QUERY: return EFacetPackage.DERIVED_TYPED_ELEMENT__QUERY;
+ case EFacetPackage.FACET_ATTRIBUTE__OVERRIDE: return EFacetPackage.DERIVED_TYPED_ELEMENT__OVERRIDE;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+ if (baseClass == DocumentedElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION: return EFacetPackage.FACET_ATTRIBUTE__DOCUMENTATION;
+ default: return -1;
+ }
+ }
+ if (baseClass == FacetElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.FACET_ELEMENT__CATEGORIES: return EFacetPackage.FACET_ATTRIBUTE__CATEGORIES;
+ default: return -1;
+ }
+ }
+ if (baseClass == DerivedTypedElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.DERIVED_TYPED_ELEMENT__QUERY: return EFacetPackage.FACET_ATTRIBUTE__QUERY;
+ case EFacetPackage.DERIVED_TYPED_ELEMENT__OVERRIDE: return EFacetPackage.FACET_ATTRIBUTE__OVERRIDE;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (documentation: "); //$NON-NLS-1$
+ result.append(documentation);
+ result.append(')');
+ return result.toString();
+ }
+
+} //FacetAttributeImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetElementImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetElementImpl.java
new file mode 100644
index 00000000000..5a25422f73e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetElementImpl.java
@@ -0,0 +1,245 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.ETypedElementImpl;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Facet Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetElementImpl#getDocumentation <em>Documentation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetElementImpl#getCategories <em>Categories</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class FacetElementImpl extends ETypedElementImpl implements FacetElement {
+ /**
+ * The default value of the '{@link #getDocumentation() <em>Documentation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocumentation()
+ * @generated
+ * @ordered
+ */
+ protected static final String DOCUMENTATION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDocumentation() <em>Documentation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocumentation()
+ * @generated
+ * @ordered
+ */
+ protected String documentation = DOCUMENTATION_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getCategories() <em>Categories</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCategories()
+ * @generated
+ * @ordered
+ */
+ protected EList<Category> categories;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.FACET_ELEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getDocumentation() {
+ return documentation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDocumentation(String newDocumentation) {
+ String oldDocumentation = documentation;
+ documentation = newDocumentation;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_ELEMENT__DOCUMENTATION, oldDocumentation, documentation));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Category> getCategories() {
+ if (categories == null) {
+ categories = new EObjectResolvingEList<Category>(Category.class, this, EFacetPackage.FACET_ELEMENT__CATEGORIES);
+ }
+ return categories;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ELEMENT__DOCUMENTATION:
+ return getDocumentation();
+ case EFacetPackage.FACET_ELEMENT__CATEGORIES:
+ return getCategories();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ELEMENT__DOCUMENTATION:
+ setDocumentation((String)newValue);
+ return;
+ case EFacetPackage.FACET_ELEMENT__CATEGORIES:
+ getCategories().clear();
+ getCategories().addAll((Collection<? extends Category>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ELEMENT__DOCUMENTATION:
+ setDocumentation(DOCUMENTATION_EDEFAULT);
+ return;
+ case EFacetPackage.FACET_ELEMENT__CATEGORIES:
+ getCategories().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ELEMENT__DOCUMENTATION:
+ return DOCUMENTATION_EDEFAULT == null ? documentation != null : !DOCUMENTATION_EDEFAULT.equals(documentation);
+ case EFacetPackage.FACET_ELEMENT__CATEGORIES:
+ return categories != null && !categories.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == DocumentedElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET_ELEMENT__DOCUMENTATION: return EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+ if (baseClass == DocumentedElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION: return EFacetPackage.FACET_ELEMENT__DOCUMENTATION;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (documentation: "); //$NON-NLS-1$
+ result.append(documentation);
+ result.append(')');
+ return result.toString();
+ }
+
+} //FacetElementImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetImpl.java
new file mode 100644
index 00000000000..a59b2874a5b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetImpl.java
@@ -0,0 +1,490 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 376576 - [EFacet] Change the multiplicity of Facet::extendedFacet
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.EClassifierImpl;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Facet</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetImpl#getDocumentation <em>Documentation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetImpl#getExtendedMetaclass <em>Extended Metaclass</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetImpl#getFacetElements <em>Facet Elements</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetImpl#getFacetOperations <em>Facet Operations</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetImpl#getConformanceTypedElement <em>Conformance Typed Element</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetImpl#getExtendedFacets <em>Extended Facets</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class FacetImpl extends EClassifierImpl implements Facet {
+ /**
+ * The default value of the '{@link #getDocumentation() <em>Documentation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocumentation()
+ * @generated
+ * @ordered
+ */
+ protected static final String DOCUMENTATION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDocumentation() <em>Documentation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocumentation()
+ * @generated
+ * @ordered
+ */
+ protected String documentation = DOCUMENTATION_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getExtendedMetaclass() <em>Extended Metaclass</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getExtendedMetaclass()
+ * @generated
+ * @ordered
+ */
+ protected EClass extendedMetaclass;
+
+ /**
+ * The cached value of the '{@link #getFacetElements() <em>Facet Elements</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFacetElements()
+ * @generated
+ * @ordered
+ */
+ protected EList<EStructuralFeature> facetElements;
+
+ /**
+ * The cached value of the '{@link #getFacetOperations() <em>Facet Operations</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFacetOperations()
+ * @generated
+ * @ordered
+ */
+ protected EList<FacetOperation> facetOperations;
+
+ /**
+ * The cached value of the '{@link #getConformanceTypedElement() <em>Conformance Typed Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getConformanceTypedElement()
+ * @generated
+ * @ordered
+ */
+ protected ETypedElement conformanceTypedElement;
+
+ /**
+ * The cached value of the '{@link #getExtendedFacets() <em>Extended Facets</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getExtendedFacets()
+ * @generated
+ * @ordered
+ */
+ protected EList<Facet> extendedFacets;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.FACET;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getDocumentation() {
+ return documentation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDocumentation(String newDocumentation) {
+ String oldDocumentation = documentation;
+ documentation = newDocumentation;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET__DOCUMENTATION, oldDocumentation, documentation));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public FacetSet basicGetFacetSet() {
+ if (getEPackage() instanceof FacetSet) {
+ FacetSet facetSet = (FacetSet) getEPackage();
+ return facetSet;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public void setFacetSet(final FacetSet newFacetSet) {
+ newFacetSet.getEClassifiers().add(this);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getExtendedMetaclass() {
+ if (extendedMetaclass != null && extendedMetaclass.eIsProxy()) {
+ InternalEObject oldExtendedMetaclass = (InternalEObject)extendedMetaclass;
+ extendedMetaclass = (EClass)eResolveProxy(oldExtendedMetaclass);
+ if (extendedMetaclass != oldExtendedMetaclass) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.FACET__EXTENDED_METACLASS, oldExtendedMetaclass, extendedMetaclass));
+ }
+ }
+ return extendedMetaclass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public EClass basicGetExtendedMetaclass() {
+ if (this.extendedMetaclass != null && this.extendedMetaclass.eIsProxy()) {
+ InternalEObject oldExtendedMetaclass = (InternalEObject)this.extendedMetaclass;
+ this.extendedMetaclass = (EClass)eResolveProxy(oldExtendedMetaclass);
+ if (this.extendedMetaclass != oldExtendedMetaclass) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.FACET__EXTENDED_METACLASS, oldExtendedMetaclass, this.extendedMetaclass));
+ }
+ }
+ }
+ return this.extendedMetaclass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setExtendedMetaclass(EClass newExtendedMetaclass) {
+ EClass oldExtendedMetaclass = extendedMetaclass;
+ extendedMetaclass = newExtendedMetaclass;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET__EXTENDED_METACLASS, oldExtendedMetaclass, extendedMetaclass));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<EStructuralFeature> getFacetElements() {
+ if (facetElements == null) {
+ facetElements = new EObjectContainmentEList<EStructuralFeature>(EStructuralFeature.class, this, EFacetPackage.FACET__FACET_ELEMENTS);
+ }
+ return facetElements;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<FacetOperation> getFacetOperations() {
+ if (facetOperations == null) {
+ facetOperations = new EObjectContainmentEList<FacetOperation>(FacetOperation.class, this, EFacetPackage.FACET__FACET_OPERATIONS);
+ }
+ return facetOperations;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ETypedElement getConformanceTypedElement() {
+ if (conformanceTypedElement != null && conformanceTypedElement.eIsProxy()) {
+ InternalEObject oldConformanceTypedElement = (InternalEObject)conformanceTypedElement;
+ conformanceTypedElement = (ETypedElement)eResolveProxy(oldConformanceTypedElement);
+ if (conformanceTypedElement != oldConformanceTypedElement) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.FACET__CONFORMANCE_TYPED_ELEMENT, oldConformanceTypedElement, conformanceTypedElement));
+ }
+ }
+ return conformanceTypedElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ETypedElement basicGetConformanceTypedElement() {
+ return conformanceTypedElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setConformanceTypedElement(ETypedElement newConformanceTypedElement) {
+ ETypedElement oldConformanceTypedElement = conformanceTypedElement;
+ conformanceTypedElement = newConformanceTypedElement;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET__CONFORMANCE_TYPED_ELEMENT, oldConformanceTypedElement, conformanceTypedElement));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Facet> getExtendedFacets() {
+ if (extendedFacets == null) {
+ extendedFacets = new EObjectResolvingEList<Facet>(Facet.class, this, EFacetPackage.FACET__EXTENDED_FACETS);
+ }
+ return extendedFacets;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.FACET__FACET_ELEMENTS:
+ return ((InternalEList<?>)getFacetElements()).basicRemove(otherEnd, msgs);
+ case EFacetPackage.FACET__FACET_OPERATIONS:
+ return ((InternalEList<?>)getFacetOperations()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.FACET__DOCUMENTATION:
+ return getDocumentation();
+ case EFacetPackage.FACET__EXTENDED_METACLASS:
+ if (resolve) return getExtendedMetaclass();
+ return basicGetExtendedMetaclass();
+ case EFacetPackage.FACET__FACET_ELEMENTS:
+ return getFacetElements();
+ case EFacetPackage.FACET__FACET_OPERATIONS:
+ return getFacetOperations();
+ case EFacetPackage.FACET__CONFORMANCE_TYPED_ELEMENT:
+ if (resolve) return getConformanceTypedElement();
+ return basicGetConformanceTypedElement();
+ case EFacetPackage.FACET__EXTENDED_FACETS:
+ return getExtendedFacets();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.FACET__DOCUMENTATION:
+ setDocumentation((String)newValue);
+ return;
+ case EFacetPackage.FACET__EXTENDED_METACLASS:
+ setExtendedMetaclass((EClass)newValue);
+ return;
+ case EFacetPackage.FACET__FACET_ELEMENTS:
+ getFacetElements().clear();
+ getFacetElements().addAll((Collection<? extends EStructuralFeature>)newValue);
+ return;
+ case EFacetPackage.FACET__FACET_OPERATIONS:
+ getFacetOperations().clear();
+ getFacetOperations().addAll((Collection<? extends FacetOperation>)newValue);
+ return;
+ case EFacetPackage.FACET__CONFORMANCE_TYPED_ELEMENT:
+ setConformanceTypedElement((ETypedElement)newValue);
+ return;
+ case EFacetPackage.FACET__EXTENDED_FACETS:
+ getExtendedFacets().clear();
+ getExtendedFacets().addAll((Collection<? extends Facet>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET__DOCUMENTATION:
+ setDocumentation(DOCUMENTATION_EDEFAULT);
+ return;
+ case EFacetPackage.FACET__EXTENDED_METACLASS:
+ setExtendedMetaclass((EClass)null);
+ return;
+ case EFacetPackage.FACET__FACET_ELEMENTS:
+ getFacetElements().clear();
+ return;
+ case EFacetPackage.FACET__FACET_OPERATIONS:
+ getFacetOperations().clear();
+ return;
+ case EFacetPackage.FACET__CONFORMANCE_TYPED_ELEMENT:
+ setConformanceTypedElement((ETypedElement)null);
+ return;
+ case EFacetPackage.FACET__EXTENDED_FACETS:
+ getExtendedFacets().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET__DOCUMENTATION:
+ return DOCUMENTATION_EDEFAULT == null ? documentation != null : !DOCUMENTATION_EDEFAULT.equals(documentation);
+ case EFacetPackage.FACET__EXTENDED_METACLASS:
+ return extendedMetaclass != null;
+ case EFacetPackage.FACET__FACET_ELEMENTS:
+ return facetElements != null && !facetElements.isEmpty();
+ case EFacetPackage.FACET__FACET_OPERATIONS:
+ return facetOperations != null && !facetOperations.isEmpty();
+ case EFacetPackage.FACET__CONFORMANCE_TYPED_ELEMENT:
+ return conformanceTypedElement != null;
+ case EFacetPackage.FACET__EXTENDED_FACETS:
+ return extendedFacets != null && !extendedFacets.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == DocumentedElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET__DOCUMENTATION: return EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+ if (baseClass == DocumentedElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION: return EFacetPackage.FACET__DOCUMENTATION;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (documentation: "); //$NON-NLS-1$
+ result.append(documentation);
+ result.append(')');
+ return result.toString();
+ }
+
+} //FacetImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetOperationImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetOperationImpl.java
new file mode 100644
index 00000000000..0dfbbb32182
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetOperationImpl.java
@@ -0,0 +1,414 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EOperationImpl;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Facet Operation</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetOperationImpl#getDocumentation <em>Documentation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetOperationImpl#getCategories <em>Categories</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetOperationImpl#getQuery <em>Query</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetOperationImpl#getOverride <em>Override</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class FacetOperationImpl extends EOperationImpl implements FacetOperation {
+ /**
+ * The default value of the '{@link #getDocumentation() <em>Documentation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocumentation()
+ * @generated
+ * @ordered
+ */
+ protected static final String DOCUMENTATION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDocumentation() <em>Documentation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocumentation()
+ * @generated
+ * @ordered
+ */
+ protected String documentation = DOCUMENTATION_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getCategories() <em>Categories</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCategories()
+ * @generated
+ * @ordered
+ */
+ protected EList<Category> categories;
+
+ /**
+ * The cached value of the '{@link #getQuery() <em>Query</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getQuery()
+ * @generated
+ * @ordered
+ */
+ protected Query query;
+
+ /**
+ * The cached value of the '{@link #getOverride() <em>Override</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOverride()
+ * @generated
+ * @ordered
+ */
+ protected DerivedTypedElement override;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetOperationImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.FACET_OPERATION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getDocumentation() {
+ return documentation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDocumentation(String newDocumentation) {
+ String oldDocumentation = documentation;
+ documentation = newDocumentation;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_OPERATION__DOCUMENTATION, oldDocumentation, documentation));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Category> getCategories() {
+ if (categories == null) {
+ categories = new EObjectResolvingEList<Category>(Category.class, this, EFacetPackage.FACET_OPERATION__CATEGORIES);
+ }
+ return categories;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Query getQuery() {
+ return query;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetQuery(Query newQuery, NotificationChain msgs) {
+ Query oldQuery = query;
+ query = newQuery;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_OPERATION__QUERY, oldQuery, newQuery);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setQuery(Query newQuery) {
+ if (newQuery != query) {
+ NotificationChain msgs = null;
+ if (query != null)
+ msgs = ((InternalEObject)query).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EFacetPackage.FACET_OPERATION__QUERY, null, msgs);
+ if (newQuery != null)
+ msgs = ((InternalEObject)newQuery).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EFacetPackage.FACET_OPERATION__QUERY, null, msgs);
+ msgs = basicSetQuery(newQuery, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_OPERATION__QUERY, newQuery, newQuery));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DerivedTypedElement getOverride() {
+ if (override != null && override.eIsProxy()) {
+ InternalEObject oldOverride = (InternalEObject)override;
+ override = (DerivedTypedElement)eResolveProxy(oldOverride);
+ if (override != oldOverride) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.FACET_OPERATION__OVERRIDE, oldOverride, override));
+ }
+ }
+ return override;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DerivedTypedElement basicGetOverride() {
+ return override;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setOverride(DerivedTypedElement newOverride) {
+ DerivedTypedElement oldOverride = override;
+ override = newOverride;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_OPERATION__OVERRIDE, oldOverride, override));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.FACET_OPERATION__QUERY:
+ return basicSetQuery(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.FACET_OPERATION__DOCUMENTATION:
+ return getDocumentation();
+ case EFacetPackage.FACET_OPERATION__CATEGORIES:
+ return getCategories();
+ case EFacetPackage.FACET_OPERATION__QUERY:
+ return getQuery();
+ case EFacetPackage.FACET_OPERATION__OVERRIDE:
+ if (resolve) return getOverride();
+ return basicGetOverride();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.FACET_OPERATION__DOCUMENTATION:
+ setDocumentation((String)newValue);
+ return;
+ case EFacetPackage.FACET_OPERATION__CATEGORIES:
+ getCategories().clear();
+ getCategories().addAll((Collection<? extends Category>)newValue);
+ return;
+ case EFacetPackage.FACET_OPERATION__QUERY:
+ setQuery((Query)newValue);
+ return;
+ case EFacetPackage.FACET_OPERATION__OVERRIDE:
+ setOverride((DerivedTypedElement)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_OPERATION__DOCUMENTATION:
+ setDocumentation(DOCUMENTATION_EDEFAULT);
+ return;
+ case EFacetPackage.FACET_OPERATION__CATEGORIES:
+ getCategories().clear();
+ return;
+ case EFacetPackage.FACET_OPERATION__QUERY:
+ setQuery((Query)null);
+ return;
+ case EFacetPackage.FACET_OPERATION__OVERRIDE:
+ setOverride((DerivedTypedElement)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_OPERATION__DOCUMENTATION:
+ return DOCUMENTATION_EDEFAULT == null ? documentation != null : !DOCUMENTATION_EDEFAULT.equals(documentation);
+ case EFacetPackage.FACET_OPERATION__CATEGORIES:
+ return categories != null && !categories.isEmpty();
+ case EFacetPackage.FACET_OPERATION__QUERY:
+ return query != null;
+ case EFacetPackage.FACET_OPERATION__OVERRIDE:
+ return override != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == DocumentedElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET_OPERATION__DOCUMENTATION: return EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION;
+ default: return -1;
+ }
+ }
+ if (baseClass == FacetElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET_OPERATION__CATEGORIES: return EFacetPackage.FACET_ELEMENT__CATEGORIES;
+ default: return -1;
+ }
+ }
+ if (baseClass == DerivedTypedElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET_OPERATION__QUERY: return EFacetPackage.DERIVED_TYPED_ELEMENT__QUERY;
+ case EFacetPackage.FACET_OPERATION__OVERRIDE: return EFacetPackage.DERIVED_TYPED_ELEMENT__OVERRIDE;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+ if (baseClass == DocumentedElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION: return EFacetPackage.FACET_OPERATION__DOCUMENTATION;
+ default: return -1;
+ }
+ }
+ if (baseClass == FacetElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.FACET_ELEMENT__CATEGORIES: return EFacetPackage.FACET_OPERATION__CATEGORIES;
+ default: return -1;
+ }
+ }
+ if (baseClass == DerivedTypedElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.DERIVED_TYPED_ELEMENT__QUERY: return EFacetPackage.FACET_OPERATION__QUERY;
+ case EFacetPackage.DERIVED_TYPED_ELEMENT__OVERRIDE: return EFacetPackage.FACET_OPERATION__OVERRIDE;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (documentation: "); //$NON-NLS-1$
+ result.append(documentation);
+ result.append(')');
+ return result.toString();
+ }
+
+} //FacetOperationImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetReferenceImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetReferenceImpl.java
new file mode 100644
index 00000000000..6d8a36c6195
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetReferenceImpl.java
@@ -0,0 +1,414 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EReferenceImpl;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Facet Reference</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetReferenceImpl#getDocumentation <em>Documentation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetReferenceImpl#getCategories <em>Categories</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetReferenceImpl#getQuery <em>Query</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetReferenceImpl#getOverride <em>Override</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class FacetReferenceImpl extends EReferenceImpl implements FacetReference {
+ /**
+ * The default value of the '{@link #getDocumentation() <em>Documentation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocumentation()
+ * @generated
+ * @ordered
+ */
+ protected static final String DOCUMENTATION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDocumentation() <em>Documentation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocumentation()
+ * @generated
+ * @ordered
+ */
+ protected String documentation = DOCUMENTATION_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getCategories() <em>Categories</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCategories()
+ * @generated
+ * @ordered
+ */
+ protected EList<Category> categories;
+
+ /**
+ * The cached value of the '{@link #getQuery() <em>Query</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getQuery()
+ * @generated
+ * @ordered
+ */
+ protected Query query;
+
+ /**
+ * The cached value of the '{@link #getOverride() <em>Override</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOverride()
+ * @generated
+ * @ordered
+ */
+ protected DerivedTypedElement override;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetReferenceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.FACET_REFERENCE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getDocumentation() {
+ return documentation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDocumentation(String newDocumentation) {
+ String oldDocumentation = documentation;
+ documentation = newDocumentation;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_REFERENCE__DOCUMENTATION, oldDocumentation, documentation));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Category> getCategories() {
+ if (categories == null) {
+ categories = new EObjectResolvingEList<Category>(Category.class, this, EFacetPackage.FACET_REFERENCE__CATEGORIES);
+ }
+ return categories;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Query getQuery() {
+ return query;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetQuery(Query newQuery, NotificationChain msgs) {
+ Query oldQuery = query;
+ query = newQuery;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_REFERENCE__QUERY, oldQuery, newQuery);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setQuery(Query newQuery) {
+ if (newQuery != query) {
+ NotificationChain msgs = null;
+ if (query != null)
+ msgs = ((InternalEObject)query).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - EFacetPackage.FACET_REFERENCE__QUERY, null, msgs);
+ if (newQuery != null)
+ msgs = ((InternalEObject)newQuery).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - EFacetPackage.FACET_REFERENCE__QUERY, null, msgs);
+ msgs = basicSetQuery(newQuery, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_REFERENCE__QUERY, newQuery, newQuery));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DerivedTypedElement getOverride() {
+ if (override != null && override.eIsProxy()) {
+ InternalEObject oldOverride = (InternalEObject)override;
+ override = (DerivedTypedElement)eResolveProxy(oldOverride);
+ if (override != oldOverride) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.FACET_REFERENCE__OVERRIDE, oldOverride, override));
+ }
+ }
+ return override;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DerivedTypedElement basicGetOverride() {
+ return override;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setOverride(DerivedTypedElement newOverride) {
+ DerivedTypedElement oldOverride = override;
+ override = newOverride;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_REFERENCE__OVERRIDE, oldOverride, override));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.FACET_REFERENCE__QUERY:
+ return basicSetQuery(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.FACET_REFERENCE__DOCUMENTATION:
+ return getDocumentation();
+ case EFacetPackage.FACET_REFERENCE__CATEGORIES:
+ return getCategories();
+ case EFacetPackage.FACET_REFERENCE__QUERY:
+ return getQuery();
+ case EFacetPackage.FACET_REFERENCE__OVERRIDE:
+ if (resolve) return getOverride();
+ return basicGetOverride();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.FACET_REFERENCE__DOCUMENTATION:
+ setDocumentation((String)newValue);
+ return;
+ case EFacetPackage.FACET_REFERENCE__CATEGORIES:
+ getCategories().clear();
+ getCategories().addAll((Collection<? extends Category>)newValue);
+ return;
+ case EFacetPackage.FACET_REFERENCE__QUERY:
+ setQuery((Query)newValue);
+ return;
+ case EFacetPackage.FACET_REFERENCE__OVERRIDE:
+ setOverride((DerivedTypedElement)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_REFERENCE__DOCUMENTATION:
+ setDocumentation(DOCUMENTATION_EDEFAULT);
+ return;
+ case EFacetPackage.FACET_REFERENCE__CATEGORIES:
+ getCategories().clear();
+ return;
+ case EFacetPackage.FACET_REFERENCE__QUERY:
+ setQuery((Query)null);
+ return;
+ case EFacetPackage.FACET_REFERENCE__OVERRIDE:
+ setOverride((DerivedTypedElement)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_REFERENCE__DOCUMENTATION:
+ return DOCUMENTATION_EDEFAULT == null ? documentation != null : !DOCUMENTATION_EDEFAULT.equals(documentation);
+ case EFacetPackage.FACET_REFERENCE__CATEGORIES:
+ return categories != null && !categories.isEmpty();
+ case EFacetPackage.FACET_REFERENCE__QUERY:
+ return query != null;
+ case EFacetPackage.FACET_REFERENCE__OVERRIDE:
+ return override != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == DocumentedElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET_REFERENCE__DOCUMENTATION: return EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION;
+ default: return -1;
+ }
+ }
+ if (baseClass == FacetElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET_REFERENCE__CATEGORIES: return EFacetPackage.FACET_ELEMENT__CATEGORIES;
+ default: return -1;
+ }
+ }
+ if (baseClass == DerivedTypedElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET_REFERENCE__QUERY: return EFacetPackage.DERIVED_TYPED_ELEMENT__QUERY;
+ case EFacetPackage.FACET_REFERENCE__OVERRIDE: return EFacetPackage.DERIVED_TYPED_ELEMENT__OVERRIDE;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+ if (baseClass == DocumentedElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION: return EFacetPackage.FACET_REFERENCE__DOCUMENTATION;
+ default: return -1;
+ }
+ }
+ if (baseClass == FacetElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.FACET_ELEMENT__CATEGORIES: return EFacetPackage.FACET_REFERENCE__CATEGORIES;
+ default: return -1;
+ }
+ }
+ if (baseClass == DerivedTypedElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.DERIVED_TYPED_ELEMENT__QUERY: return EFacetPackage.FACET_REFERENCE__QUERY;
+ case EFacetPackage.DERIVED_TYPED_ELEMENT__OVERRIDE: return EFacetPackage.FACET_REFERENCE__OVERRIDE;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (documentation: "); //$NON-NLS-1$
+ result.append(documentation);
+ result.append(')');
+ return result.toString();
+ }
+
+} //FacetReferenceImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetSetImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetSetImpl.java
new file mode 100644
index 00000000000..bda9e5c8f16
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/FacetSetImpl.java
@@ -0,0 +1,318 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl;
+
+import java.util.Collection;
+import java.util.Collections;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.BasicEList;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Facet Set</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetSetImpl#getDocumentation <em>Documentation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.FacetSetImpl#getCategories <em>Categories</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class FacetSetImpl extends EPackageImpl implements FacetSet {
+ /**
+ * The default value of the '{@link #getDocumentation() <em>Documentation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocumentation()
+ * @generated
+ * @ordered
+ */
+ protected static final String DOCUMENTATION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDocumentation() <em>Documentation</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDocumentation()
+ * @generated
+ * @ordered
+ */
+ protected String documentation = DOCUMENTATION_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getCategories() <em>Categories</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCategories()
+ * @generated
+ * @ordered
+ */
+ protected EList<Category> categories;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetSetImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.FACET_SET;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getDocumentation() {
+ return documentation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDocumentation(String newDocumentation) {
+ String oldDocumentation = documentation;
+ documentation = newDocumentation;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_SET__DOCUMENTATION, oldDocumentation, documentation));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public EList<Facet> getFacets() {
+ EList<Facet> facets = new BasicEList<Facet>();
+ for(EClassifier eClassifier : this.getEClassifiers()){
+ if (eClassifier instanceof Facet) {
+ Facet facet = (Facet) eClassifier;
+ facets.add(facet);
+ }
+ }
+ return facets;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Category> getCategories() {
+ if (categories == null) {
+ categories = new EObjectContainmentEList<Category>(Category.class, this, EFacetPackage.FACET_SET__CATEGORIES);
+ }
+ return categories;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated NOT
+ */
+ public EPackage basicGetExtendedEPackage() {
+ EList<Facet> facets = getFacets();
+ EPackage result = null;
+ for (Facet facet : facets) {
+ EClass extendedMetaclass = facet.getExtendedMetaclass();
+ if (extendedMetaclass != null) {
+ EPackage ePackage = extendedMetaclass.getEPackage();
+ if (ePackage != null) {
+ if (result != null && ePackage != result) {
+ throw new IllegalStateException("The Facets in a FacetSet must all extend EClasses from the same EPackage");
+ }
+ result = ePackage;
+ }
+ }
+ }
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public EList<FacetSet> getFacetSets() {
+ return new BasicEList<FacetSet>();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.FACET_SET__CATEGORIES:
+ return ((InternalEList<?>)getCategories()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.FACET_SET__DOCUMENTATION:
+ return getDocumentation();
+ case EFacetPackage.FACET_SET__CATEGORIES:
+ return getCategories();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.FACET_SET__DOCUMENTATION:
+ setDocumentation((String)newValue);
+ return;
+ case EFacetPackage.FACET_SET__CATEGORIES:
+ getCategories().clear();
+ getCategories().addAll((Collection<? extends Category>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_SET__DOCUMENTATION:
+ setDocumentation(DOCUMENTATION_EDEFAULT);
+ return;
+ case EFacetPackage.FACET_SET__CATEGORIES:
+ getCategories().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_SET__DOCUMENTATION:
+ return DOCUMENTATION_EDEFAULT == null ? documentation != null : !DOCUMENTATION_EDEFAULT.equals(documentation);
+ case EFacetPackage.FACET_SET__CATEGORIES:
+ return categories != null && !categories.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == DocumentedElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET_SET__DOCUMENTATION: return EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+ if (baseClass == DocumentedElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.DOCUMENTED_ELEMENT__DOCUMENTATION: return EFacetPackage.FACET_SET__DOCUMENTATION;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (documentation: "); //$NON-NLS-1$
+ result.append(documentation);
+ result.append(')');
+ return result.toString();
+ }
+
+} //FacetSetImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/ParameterValueImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/ParameterValueImpl.java
new file mode 100644
index 00000000000..17c83611cd0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/impl/ParameterValueImpl.java
@@ -0,0 +1,234 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Parameter Value</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.ParameterValueImpl#getParameter <em>Parameter</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.ParameterValueImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ParameterValueImpl extends EObjectImpl implements ParameterValue {
+ /**
+ * The cached value of the '{@link #getParameter() <em>Parameter</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getParameter()
+ * @generated
+ * @ordered
+ */
+ protected EParameter parameter;
+
+ /**
+ * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected static final Object VALUE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected Object value = VALUE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ParameterValueImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.PARAMETER_VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EParameter getParameter() {
+ if (parameter != null && parameter.eIsProxy()) {
+ InternalEObject oldParameter = (InternalEObject)parameter;
+ parameter = (EParameter)eResolveProxy(oldParameter);
+ if (parameter != oldParameter) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.PARAMETER_VALUE__PARAMETER, oldParameter, parameter));
+ }
+ }
+ return parameter;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EParameter basicGetParameter() {
+ return parameter;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setParameter(EParameter newParameter) {
+ EParameter oldParameter = parameter;
+ parameter = newParameter;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.PARAMETER_VALUE__PARAMETER, oldParameter, parameter));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Object getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValue(Object newValue) {
+ Object oldValue = value;
+ value = newValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.PARAMETER_VALUE__VALUE, oldValue, value));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.PARAMETER_VALUE__PARAMETER:
+ if (resolve) return getParameter();
+ return basicGetParameter();
+ case EFacetPackage.PARAMETER_VALUE__VALUE:
+ return getValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.PARAMETER_VALUE__PARAMETER:
+ setParameter((EParameter)newValue);
+ return;
+ case EFacetPackage.PARAMETER_VALUE__VALUE:
+ setValue(newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.PARAMETER_VALUE__PARAMETER:
+ setParameter((EParameter)null);
+ return;
+ case EFacetPackage.PARAMETER_VALUE__VALUE:
+ setValue(VALUE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case EFacetPackage.PARAMETER_VALUE__PARAMETER:
+ return parameter != null;
+ case EFacetPackage.PARAMETER_VALUE__VALUE:
+ return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (value: "); //$NON-NLS-1$
+ result.append(value);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ParameterValueImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/EObjectLiteralQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/EObjectLiteralQuery.java
new file mode 100644
index 00000000000..fe745e383b9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/EObjectLiteralQuery.java
@@ -0,0 +1,73 @@
+/**
+ * Copyright (c) 2011-2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 372626 - [Facet] Aggregates
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>EObject Literal Query</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.EObjectLiteralQuery#getElement <em>Element</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getEObjectLiteralQuery()
+ * @model
+ * @generated
+ * @since 0.2
+ */
+public interface EObjectLiteralQuery extends Query {
+ /**
+ * Returns the value of the '<em><b>Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Element</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Element</em>' reference.
+ * @see #setElement(EObject)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getEObjectLiteralQuery_Element()
+ * @model
+ * @generated
+ */
+ EObject getElement();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.EObjectLiteralQuery#getElement <em>Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Element</em>' reference.
+ * @see #getElement()
+ * @generated
+ */
+ void setElement(EObject value);
+
+} // EObjectLiteralQuery
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/FalseLiteralQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/FalseLiteralQuery.java
new file mode 100644
index 00000000000..77e976232a6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/FalseLiteralQuery.java
@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>False Literal Query</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This query retrun false.
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getFalseLiteralQuery()
+ * @model
+ * @generated
+ */
+public interface FalseLiteralQuery extends Query {
+} // FalseLiteralQuery
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/FloatLiteralQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/FloatLiteralQuery.java
new file mode 100644
index 00000000000..3383b1a24f5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/FloatLiteralQuery.java
@@ -0,0 +1,71 @@
+/**
+ * Copyright (c) 2011-2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 372626 - [Facet] Aggregates
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Float Literal Query</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FloatLiteralQuery#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getFloatLiteralQuery()
+ * @model
+ * @generated
+ * @since 0.2
+ */
+public interface FloatLiteralQuery extends Query {
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see #setValue(float)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getFloatLiteralQuery_Value()
+ * @model
+ * @generated
+ */
+ float getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FloatLiteralQuery#getValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' attribute.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(float value);
+
+} // FloatLiteralQuery
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/IntegerLiteralQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/IntegerLiteralQuery.java
new file mode 100644
index 00000000000..f99a3e02d4e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/IntegerLiteralQuery.java
@@ -0,0 +1,71 @@
+/**
+ * Copyright (c) 2011-2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 372626 - [Facet] Aggregates
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Integer Literal Query</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IntegerLiteralQuery#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getIntegerLiteralQuery()
+ * @model
+ * @generated
+ * @since 0.2
+ */
+public interface IntegerLiteralQuery extends Query {
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see #setValue(int)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getIntegerLiteralQuery_Value()
+ * @model
+ * @generated
+ */
+ int getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IntegerLiteralQuery#getValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' attribute.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(int value);
+
+} // IntegerLiteralQuery
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/IsOneOfQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/IsOneOfQuery.java
new file mode 100644
index 00000000000..0ba5c6771a4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/IsOneOfQuery.java
@@ -0,0 +1,61 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Is One Of Query</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This query returns true if the source of the query is contained in a list of eObject handled by the referennce 'expectedEObjects'.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery#getExpectedEObjects <em>Expected EObjects</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getIsOneOfQuery()
+ * @model
+ * @generated
+ */
+public interface IsOneOfQuery extends Query {
+ /**
+ * Returns the value of the '<em><b>Expected EObjects</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.emf.ecore.EObject}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Expected EObjects</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Expected EObjects</em>' reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getIsOneOfQuery_ExpectedEObjects()
+ * @model
+ * @generated
+ */
+ EList<EObject> getExpectedEObjects();
+
+} // IsOneOfQuery
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/NavigationQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/NavigationQuery.java
new file mode 100644
index 00000000000..fb6e606359d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/NavigationQuery.java
@@ -0,0 +1,87 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Navigation Query</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This query points to a typed element (another attribute, reference or operation for example) that lends it value to the query.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery#getPath <em>Path</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery#isFailOnError <em>Fail On Error</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getNavigationQuery()
+ * @model
+ * @generated
+ */
+public interface NavigationQuery extends Query {
+ /**
+ * Returns the value of the '<em><b>Path</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.emf.ecore.ETypedElement}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Path</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Path</em>' reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getNavigationQuery_Path()
+ * @model required="true"
+ * @generated
+ */
+ EList<ETypedElement> getPath();
+
+ /**
+ * Returns the value of the '<em><b>Fail On Error</b></em>' attribute.
+ * The default value is <code>"true"</code>.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Fail On Error</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Fail On Error</em>' attribute.
+ * @see #setFailOnError(boolean)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getNavigationQuery_FailOnError()
+ * @model default="true"
+ * @generated
+ */
+ boolean isFailOnError();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery#isFailOnError <em>Fail On Error</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Fail On Error</em>' attribute.
+ * @see #isFailOnError()
+ * @generated
+ */
+ void setFailOnError(boolean value);
+
+} // NavigationQuery
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/NullLiteralQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/NullLiteralQuery.java
new file mode 100644
index 00000000000..9563d09dbb4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/NullLiteralQuery.java
@@ -0,0 +1,39 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Null Literal Query</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This query retrun null.
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getNullLiteralQuery()
+ * @model
+ * @generated
+ */
+public interface NullLiteralQuery extends Query {
+} // NullLiteralQuery
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/OperationCallQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/OperationCallQuery.java
new file mode 100644
index 00000000000..4b6ac92a52f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/OperationCallQuery.java
@@ -0,0 +1,93 @@
+/**
+ * Copyright (c) 2011-2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 372626 - [Facet] Aggregates
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EOperation;
+
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Operation Call Query</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery#getOperation <em>Operation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery#getArguments <em>Arguments</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getOperationCallQuery()
+ * @model
+ * @generated
+ * @since 0.2
+ */
+public interface OperationCallQuery extends Query {
+ /**
+ * Returns the value of the '<em><b>Operation</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Operation</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Operation</em>' reference.
+ * @see #setOperation(EOperation)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getOperationCallQuery_Operation()
+ * @model
+ * @generated
+ */
+ EOperation getOperation();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery#getOperation <em>Operation</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Operation</em>' reference.
+ * @see #getOperation()
+ * @generated
+ */
+ void setOperation(EOperation value);
+
+ /**
+ * Returns the value of the '<em><b>Arguments</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Arguments</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Arguments</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getOperationCallQuery_Arguments()
+ * @model containment="true"
+ * @generated
+ */
+ EList<Query> getArguments();
+
+} // OperationCallQuery
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/QueryFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/QueryFactory.java
new file mode 100644
index 00000000000..a0b74ec6e41
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/QueryFactory.java
@@ -0,0 +1,146 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage
+ * @generated
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface QueryFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ QueryFactory eINSTANCE = org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Navigation Query</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Navigation Query</em>'.
+ * @generated
+ */
+ NavigationQuery createNavigationQuery();
+
+ /**
+ * Returns a new object of class '<em>Is One Of Query</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Is One Of Query</em>'.
+ * @generated
+ */
+ IsOneOfQuery createIsOneOfQuery();
+
+ /**
+ * Returns a new object of class '<em>String Literal Query</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>String Literal Query</em>'.
+ * @generated
+ */
+ StringLiteralQuery createStringLiteralQuery();
+
+ /**
+ * Returns a new object of class '<em>True Literal Query</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>True Literal Query</em>'.
+ * @generated
+ */
+ TrueLiteralQuery createTrueLiteralQuery();
+
+ /**
+ * Returns a new object of class '<em>False Literal Query</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>False Literal Query</em>'.
+ * @generated
+ */
+ FalseLiteralQuery createFalseLiteralQuery();
+
+ /**
+ * Returns a new object of class '<em>Null Literal Query</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Null Literal Query</em>'.
+ * @generated
+ */
+ NullLiteralQuery createNullLiteralQuery();
+
+ /**
+ * Returns a new object of class '<em>Integer Literal Query</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Integer Literal Query</em>'.
+ * @generated
+ * @since 0.2
+ */
+ IntegerLiteralQuery createIntegerLiteralQuery();
+
+ /**
+ * Returns a new object of class '<em>Float Literal Query</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Float Literal Query</em>'.
+ * @generated
+ * @since 0.2
+ */
+ FloatLiteralQuery createFloatLiteralQuery();
+
+ /**
+ * Returns a new object of class '<em>EObject Literal Query</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>EObject Literal Query</em>'.
+ * @generated
+ * @since 0.2
+ */
+ EObjectLiteralQuery createEObjectLiteralQuery();
+
+ /**
+ * Returns a new object of class '<em>Operation Call Query</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Operation Call Query</em>'.
+ * @generated
+ * @since 0.2
+ */
+ OperationCallQuery createOperationCallQuery();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ QueryPackage getQueryPackage();
+
+} //QueryFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/QueryPackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/QueryPackage.java
new file mode 100644
index 00000000000..8bcb6697cbc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/QueryPackage.java
@@ -0,0 +1,967 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryFactory
+ * @model kind="package"
+ * @generated
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface QueryPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "query"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/query"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "query"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ QueryPackage eINSTANCE = org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.NavigationQueryImpl <em>Navigation Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.NavigationQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getNavigationQuery()
+ * @generated
+ */
+ int NAVIGATION_QUERY = 0;
+
+ /**
+ * The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAVIGATION_QUERY__CAN_HAVE_SIDE_EFFECTS = ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAVIGATION_QUERY__CAN_BE_CACHED = ExtensiblePackage.QUERY__CAN_BE_CACHED;
+
+ /**
+ * The feature id for the '<em><b>Path</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAVIGATION_QUERY__PATH = ExtensiblePackage.QUERY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Fail On Error</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAVIGATION_QUERY__FAIL_ON_ERROR = ExtensiblePackage.QUERY_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Navigation Query</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NAVIGATION_QUERY_FEATURE_COUNT = ExtensiblePackage.QUERY_FEATURE_COUNT + 2;
+
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.IsOneOfQueryImpl <em>Is One Of Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.IsOneOfQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getIsOneOfQuery()
+ * @generated
+ */
+ int IS_ONE_OF_QUERY = 1;
+
+ /**
+ * The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ONE_OF_QUERY__CAN_HAVE_SIDE_EFFECTS = ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ONE_OF_QUERY__CAN_BE_CACHED = ExtensiblePackage.QUERY__CAN_BE_CACHED;
+
+ /**
+ * The feature id for the '<em><b>Expected EObjects</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ONE_OF_QUERY__EXPECTED_EOBJECTS = ExtensiblePackage.QUERY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Is One Of Query</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int IS_ONE_OF_QUERY_FEATURE_COUNT = ExtensiblePackage.QUERY_FEATURE_COUNT + 1;
+
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.StringLiteralQueryImpl <em>String Literal Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.StringLiteralQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getStringLiteralQuery()
+ * @generated
+ */
+ int STRING_LITERAL_QUERY = 2;
+
+ /**
+ * The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STRING_LITERAL_QUERY__CAN_HAVE_SIDE_EFFECTS = ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STRING_LITERAL_QUERY__CAN_BE_CACHED = ExtensiblePackage.QUERY__CAN_BE_CACHED;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STRING_LITERAL_QUERY__VALUE = ExtensiblePackage.QUERY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>String Literal Query</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STRING_LITERAL_QUERY_FEATURE_COUNT = ExtensiblePackage.QUERY_FEATURE_COUNT + 1;
+
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.TrueLiteralQueryImpl <em>True Literal Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.TrueLiteralQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getTrueLiteralQuery()
+ * @generated
+ */
+ int TRUE_LITERAL_QUERY = 3;
+
+ /**
+ * The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRUE_LITERAL_QUERY__CAN_HAVE_SIDE_EFFECTS = ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRUE_LITERAL_QUERY__CAN_BE_CACHED = ExtensiblePackage.QUERY__CAN_BE_CACHED;
+
+ /**
+ * The number of structural features of the '<em>True Literal Query</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int TRUE_LITERAL_QUERY_FEATURE_COUNT = ExtensiblePackage.QUERY_FEATURE_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.FalseLiteralQueryImpl <em>False Literal Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.FalseLiteralQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getFalseLiteralQuery()
+ * @generated
+ */
+ int FALSE_LITERAL_QUERY = 4;
+
+ /**
+ * The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FALSE_LITERAL_QUERY__CAN_HAVE_SIDE_EFFECTS = ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FALSE_LITERAL_QUERY__CAN_BE_CACHED = ExtensiblePackage.QUERY__CAN_BE_CACHED;
+
+ /**
+ * The number of structural features of the '<em>False Literal Query</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FALSE_LITERAL_QUERY_FEATURE_COUNT = ExtensiblePackage.QUERY_FEATURE_COUNT + 0;
+
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.NullLiteralQueryImpl <em>Null Literal Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.NullLiteralQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getNullLiteralQuery()
+ * @generated
+ */
+ int NULL_LITERAL_QUERY = 5;
+
+ /**
+ * The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NULL_LITERAL_QUERY__CAN_HAVE_SIDE_EFFECTS = ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NULL_LITERAL_QUERY__CAN_BE_CACHED = ExtensiblePackage.QUERY__CAN_BE_CACHED;
+
+ /**
+ * The number of structural features of the '<em>Null Literal Query</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int NULL_LITERAL_QUERY_FEATURE_COUNT = ExtensiblePackage.QUERY_FEATURE_COUNT + 0;
+
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.IntegerLiteralQueryImpl <em>Integer Literal Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.IntegerLiteralQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getIntegerLiteralQuery()
+ * @generated
+ * @since 0.2
+ */
+ int INTEGER_LITERAL_QUERY = 6;
+
+ /**
+ * The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int INTEGER_LITERAL_QUERY__CAN_HAVE_SIDE_EFFECTS = ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int INTEGER_LITERAL_QUERY__CAN_BE_CACHED = ExtensiblePackage.QUERY__CAN_BE_CACHED;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int INTEGER_LITERAL_QUERY__VALUE = ExtensiblePackage.QUERY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Integer Literal Query</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int INTEGER_LITERAL_QUERY_FEATURE_COUNT = ExtensiblePackage.QUERY_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.FloatLiteralQueryImpl <em>Float Literal Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.FloatLiteralQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getFloatLiteralQuery()
+ * @generated
+ * @since 0.2
+ */
+ int FLOAT_LITERAL_QUERY = 7;
+
+ /**
+ * The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int FLOAT_LITERAL_QUERY__CAN_HAVE_SIDE_EFFECTS = ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int FLOAT_LITERAL_QUERY__CAN_BE_CACHED = ExtensiblePackage.QUERY__CAN_BE_CACHED;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int FLOAT_LITERAL_QUERY__VALUE = ExtensiblePackage.QUERY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Float Literal Query</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int FLOAT_LITERAL_QUERY_FEATURE_COUNT = ExtensiblePackage.QUERY_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.EObjectLiteralQueryImpl <em>EObject Literal Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.EObjectLiteralQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getEObjectLiteralQuery()
+ * @generated
+ * @since 0.2
+ */
+ int EOBJECT_LITERAL_QUERY = 8;
+
+ /**
+ * The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int EOBJECT_LITERAL_QUERY__CAN_HAVE_SIDE_EFFECTS = ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int EOBJECT_LITERAL_QUERY__CAN_BE_CACHED = ExtensiblePackage.QUERY__CAN_BE_CACHED;
+
+ /**
+ * The feature id for the '<em><b>Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int EOBJECT_LITERAL_QUERY__ELEMENT = ExtensiblePackage.QUERY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>EObject Literal Query</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int EOBJECT_LITERAL_QUERY_FEATURE_COUNT = ExtensiblePackage.QUERY_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.OperationCallQueryImpl <em>Operation Call Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.OperationCallQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getOperationCallQuery()
+ * @generated
+ * @since 0.2
+ */
+ int OPERATION_CALL_QUERY = 9;
+
+ /**
+ * The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int OPERATION_CALL_QUERY__CAN_HAVE_SIDE_EFFECTS = ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int OPERATION_CALL_QUERY__CAN_BE_CACHED = ExtensiblePackage.QUERY__CAN_BE_CACHED;
+
+ /**
+ * The feature id for the '<em><b>Operation</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int OPERATION_CALL_QUERY__OPERATION = ExtensiblePackage.QUERY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Arguments</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int OPERATION_CALL_QUERY__ARGUMENTS = ExtensiblePackage.QUERY_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Operation Call Query</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ * @since 0.2
+ */
+ int OPERATION_CALL_QUERY_FEATURE_COUNT = ExtensiblePackage.QUERY_FEATURE_COUNT + 2;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery <em>Navigation Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Navigation Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery
+ * @generated
+ */
+ EClass getNavigationQuery();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery#getPath <em>Path</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Path</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery#getPath()
+ * @see #getNavigationQuery()
+ * @generated
+ */
+ EReference getNavigationQuery_Path();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery#isFailOnError <em>Fail On Error</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Fail On Error</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery#isFailOnError()
+ * @see #getNavigationQuery()
+ * @generated
+ */
+ EAttribute getNavigationQuery_FailOnError();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery <em>Is One Of Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Is One Of Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery
+ * @generated
+ */
+ EClass getIsOneOfQuery();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery#getExpectedEObjects <em>Expected EObjects</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Expected EObjects</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery#getExpectedEObjects()
+ * @see #getIsOneOfQuery()
+ * @generated
+ */
+ EReference getIsOneOfQuery_ExpectedEObjects();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery <em>String Literal Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>String Literal Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery
+ * @generated
+ */
+ EClass getStringLiteralQuery();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery#getValue()
+ * @see #getStringLiteralQuery()
+ * @generated
+ */
+ EAttribute getStringLiteralQuery_Value();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.TrueLiteralQuery <em>True Literal Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>True Literal Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.TrueLiteralQuery
+ * @generated
+ */
+ EClass getTrueLiteralQuery();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FalseLiteralQuery <em>False Literal Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>False Literal Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FalseLiteralQuery
+ * @generated
+ */
+ EClass getFalseLiteralQuery();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NullLiteralQuery <em>Null Literal Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Null Literal Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NullLiteralQuery
+ * @generated
+ */
+ EClass getNullLiteralQuery();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IntegerLiteralQuery <em>Integer Literal Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Integer Literal Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IntegerLiteralQuery
+ * @generated
+ * @since 0.2
+ */
+ EClass getIntegerLiteralQuery();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IntegerLiteralQuery#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IntegerLiteralQuery#getValue()
+ * @see #getIntegerLiteralQuery()
+ * @generated
+ * @since 0.2
+ */
+ EAttribute getIntegerLiteralQuery_Value();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FloatLiteralQuery <em>Float Literal Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Float Literal Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FloatLiteralQuery
+ * @generated
+ * @since 0.2
+ */
+ EClass getFloatLiteralQuery();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FloatLiteralQuery#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FloatLiteralQuery#getValue()
+ * @see #getFloatLiteralQuery()
+ * @generated
+ * @since 0.2
+ */
+ EAttribute getFloatLiteralQuery_Value();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.EObjectLiteralQuery <em>EObject Literal Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>EObject Literal Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.EObjectLiteralQuery
+ * @generated
+ * @since 0.2
+ */
+ EClass getEObjectLiteralQuery();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.EObjectLiteralQuery#getElement <em>Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Element</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.EObjectLiteralQuery#getElement()
+ * @see #getEObjectLiteralQuery()
+ * @generated
+ * @since 0.2
+ */
+ EReference getEObjectLiteralQuery_Element();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery <em>Operation Call Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Operation Call Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery
+ * @generated
+ * @since 0.2
+ */
+ EClass getOperationCallQuery();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery#getOperation <em>Operation</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Operation</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery#getOperation()
+ * @see #getOperationCallQuery()
+ * @generated
+ * @since 0.2
+ */
+ EReference getOperationCallQuery_Operation();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery#getArguments <em>Arguments</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Arguments</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery#getArguments()
+ * @see #getOperationCallQuery()
+ * @generated
+ * @since 0.2
+ */
+ EReference getOperationCallQuery_Arguments();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ QueryFactory getQueryFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.NavigationQueryImpl <em>Navigation Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.NavigationQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getNavigationQuery()
+ * @generated
+ */
+ EClass NAVIGATION_QUERY = eINSTANCE.getNavigationQuery();
+
+ /**
+ * The meta object literal for the '<em><b>Path</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference NAVIGATION_QUERY__PATH = eINSTANCE.getNavigationQuery_Path();
+
+ /**
+ * The meta object literal for the '<em><b>Fail On Error</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute NAVIGATION_QUERY__FAIL_ON_ERROR = eINSTANCE.getNavigationQuery_FailOnError();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.IsOneOfQueryImpl <em>Is One Of Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.IsOneOfQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getIsOneOfQuery()
+ * @generated
+ */
+ EClass IS_ONE_OF_QUERY = eINSTANCE.getIsOneOfQuery();
+
+ /**
+ * The meta object literal for the '<em><b>Expected EObjects</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference IS_ONE_OF_QUERY__EXPECTED_EOBJECTS = eINSTANCE.getIsOneOfQuery_ExpectedEObjects();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.StringLiteralQueryImpl <em>String Literal Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.StringLiteralQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getStringLiteralQuery()
+ * @generated
+ */
+ EClass STRING_LITERAL_QUERY = eINSTANCE.getStringLiteralQuery();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute STRING_LITERAL_QUERY__VALUE = eINSTANCE.getStringLiteralQuery_Value();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.TrueLiteralQueryImpl <em>True Literal Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.TrueLiteralQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getTrueLiteralQuery()
+ * @generated
+ */
+ EClass TRUE_LITERAL_QUERY = eINSTANCE.getTrueLiteralQuery();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.FalseLiteralQueryImpl <em>False Literal Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.FalseLiteralQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getFalseLiteralQuery()
+ * @generated
+ */
+ EClass FALSE_LITERAL_QUERY = eINSTANCE.getFalseLiteralQuery();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.NullLiteralQueryImpl <em>Null Literal Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.NullLiteralQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getNullLiteralQuery()
+ * @generated
+ */
+ EClass NULL_LITERAL_QUERY = eINSTANCE.getNullLiteralQuery();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.IntegerLiteralQueryImpl <em>Integer Literal Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.IntegerLiteralQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getIntegerLiteralQuery()
+ * @generated
+ * @since 0.2
+ */
+ EClass INTEGER_LITERAL_QUERY = eINSTANCE.getIntegerLiteralQuery();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @since 0.2
+ */
+ EAttribute INTEGER_LITERAL_QUERY__VALUE = eINSTANCE.getIntegerLiteralQuery_Value();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.FloatLiteralQueryImpl <em>Float Literal Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.FloatLiteralQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getFloatLiteralQuery()
+ * @generated
+ * @since 0.2
+ */
+ EClass FLOAT_LITERAL_QUERY = eINSTANCE.getFloatLiteralQuery();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @since 0.2
+ */
+ EAttribute FLOAT_LITERAL_QUERY__VALUE = eINSTANCE.getFloatLiteralQuery_Value();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.EObjectLiteralQueryImpl <em>EObject Literal Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.EObjectLiteralQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getEObjectLiteralQuery()
+ * @generated
+ * @since 0.2
+ */
+ EClass EOBJECT_LITERAL_QUERY = eINSTANCE.getEObjectLiteralQuery();
+
+ /**
+ * The meta object literal for the '<em><b>Element</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @since 0.2
+ */
+ EReference EOBJECT_LITERAL_QUERY__ELEMENT = eINSTANCE.getEObjectLiteralQuery_Element();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.OperationCallQueryImpl <em>Operation Call Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.OperationCallQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl#getOperationCallQuery()
+ * @generated
+ * @since 0.2
+ */
+ EClass OPERATION_CALL_QUERY = eINSTANCE.getOperationCallQuery();
+
+ /**
+ * The meta object literal for the '<em><b>Operation</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @since 0.2
+ */
+ EReference OPERATION_CALL_QUERY__OPERATION = eINSTANCE.getOperationCallQuery_Operation();
+
+ /**
+ * The meta object literal for the '<em><b>Arguments</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @since 0.2
+ */
+ EReference OPERATION_CALL_QUERY__ARGUMENTS = eINSTANCE.getOperationCallQuery_Arguments();
+
+ }
+
+} //QueryPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/StringLiteralQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/StringLiteralQuery.java
new file mode 100644
index 00000000000..9249e06eb94
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/StringLiteralQuery.java
@@ -0,0 +1,65 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>String Literal Query</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getStringLiteralQuery()
+ * @model
+ * @generated
+ */
+public interface StringLiteralQuery extends Query {
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see #setValue(String)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getStringLiteralQuery_Value()
+ * @model
+ * @generated
+ */
+ String getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery#getValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' attribute.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(String value);
+
+} // StringLiteralQuery
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/TrueLiteralQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/TrueLiteralQuery.java
new file mode 100644
index 00000000000..10e59e9c440
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/TrueLiteralQuery.java
@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>True Literal Query</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This query retrun true.
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#getTrueLiteralQuery()
+ * @model
+ * @generated
+ */
+public interface TrueLiteralQuery extends Query {
+} // TrueLiteralQuery
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/EObjectLiteralQueryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/EObjectLiteralQueryImpl.java
new file mode 100644
index 00000000000..018e48efbb5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/EObjectLiteralQueryImpl.java
@@ -0,0 +1,178 @@
+/**
+ * Copyright (c) 2011-2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 372626 - [Facet] Aggregates
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+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.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.EObjectLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>EObject Literal Query</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.EObjectLiteralQueryImpl#getElement <em>Element</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class EObjectLiteralQueryImpl extends QueryImpl implements EObjectLiteralQuery {
+ /**
+ * The cached value of the '{@link #getElement() <em>Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getElement()
+ * @generated
+ * @ordered
+ */
+ protected EObject element;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EObjectLiteralQueryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return QueryPackage.Literals.EOBJECT_LITERAL_QUERY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EObject getElement() {
+ if (element != null && element.eIsProxy()) {
+ InternalEObject oldElement = (InternalEObject)element;
+ element = eResolveProxy(oldElement);
+ if (element != oldElement) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, QueryPackage.EOBJECT_LITERAL_QUERY__ELEMENT, oldElement, element));
+ }
+ }
+ return element;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EObject basicGetElement() {
+ return element;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setElement(EObject newElement) {
+ EObject oldElement = element;
+ element = newElement;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, QueryPackage.EOBJECT_LITERAL_QUERY__ELEMENT, oldElement, element));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case QueryPackage.EOBJECT_LITERAL_QUERY__ELEMENT:
+ if (resolve) return getElement();
+ return basicGetElement();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case QueryPackage.EOBJECT_LITERAL_QUERY__ELEMENT:
+ setElement((EObject)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case QueryPackage.EOBJECT_LITERAL_QUERY__ELEMENT:
+ setElement((EObject)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case QueryPackage.EOBJECT_LITERAL_QUERY__ELEMENT:
+ return element != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //EObjectLiteralQueryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/FalseLiteralQueryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/FalseLiteralQueryImpl.java
new file mode 100644
index 00000000000..9b02c7918f8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/FalseLiteralQueryImpl.java
@@ -0,0 +1,55 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FalseLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>False Literal Query</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class FalseLiteralQueryImpl extends QueryImpl implements FalseLiteralQuery {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FalseLiteralQueryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return QueryPackage.Literals.FALSE_LITERAL_QUERY;
+ }
+
+} //FalseLiteralQueryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/FloatLiteralQueryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/FloatLiteralQueryImpl.java
new file mode 100644
index 00000000000..d69a6f0dccb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/FloatLiteralQueryImpl.java
@@ -0,0 +1,184 @@
+/**
+ * Copyright (c) 2011-2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 372626 - [Facet] Aggregates
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FloatLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Float Literal Query</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.FloatLiteralQueryImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class FloatLiteralQueryImpl extends QueryImpl implements FloatLiteralQuery {
+ /**
+ * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected static final float VALUE_EDEFAULT = 0.0F;
+
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected float value = VALUE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FloatLiteralQueryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return QueryPackage.Literals.FLOAT_LITERAL_QUERY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public float getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValue(float newValue) {
+ float oldValue = value;
+ value = newValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, QueryPackage.FLOAT_LITERAL_QUERY__VALUE, oldValue, value));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case QueryPackage.FLOAT_LITERAL_QUERY__VALUE:
+ return getValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case QueryPackage.FLOAT_LITERAL_QUERY__VALUE:
+ setValue((Float)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case QueryPackage.FLOAT_LITERAL_QUERY__VALUE:
+ setValue(VALUE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case QueryPackage.FLOAT_LITERAL_QUERY__VALUE:
+ return value != VALUE_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (value: "); //$NON-NLS-1$
+ result.append(value);
+ result.append(')');
+ return result.toString();
+ }
+
+} //FloatLiteralQueryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/IntegerLiteralQueryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/IntegerLiteralQueryImpl.java
new file mode 100644
index 00000000000..d3cfb1abd68
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/IntegerLiteralQueryImpl.java
@@ -0,0 +1,184 @@
+/**
+ * Copyright (c) 2011-2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 372626 - [Facet] Aggregates
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IntegerLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Integer Literal Query</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.IntegerLiteralQueryImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class IntegerLiteralQueryImpl extends QueryImpl implements IntegerLiteralQuery {
+ /**
+ * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected static final int VALUE_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected int value = VALUE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IntegerLiteralQueryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return QueryPackage.Literals.INTEGER_LITERAL_QUERY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValue(int newValue) {
+ int oldValue = value;
+ value = newValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, QueryPackage.INTEGER_LITERAL_QUERY__VALUE, oldValue, value));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case QueryPackage.INTEGER_LITERAL_QUERY__VALUE:
+ return getValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case QueryPackage.INTEGER_LITERAL_QUERY__VALUE:
+ setValue((Integer)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case QueryPackage.INTEGER_LITERAL_QUERY__VALUE:
+ setValue(VALUE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case QueryPackage.INTEGER_LITERAL_QUERY__VALUE:
+ return value != VALUE_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (value: "); //$NON-NLS-1$
+ result.append(value);
+ result.append(')');
+ return result.toString();
+ }
+
+} //IntegerLiteralQueryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/IsOneOfQueryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/IsOneOfQueryImpl.java
new file mode 100644
index 00000000000..cb6b217a73d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/IsOneOfQueryImpl.java
@@ -0,0 +1,144 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Is One Of Query</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.IsOneOfQueryImpl#getExpectedEObjects <em>Expected EObjects</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class IsOneOfQueryImpl extends QueryImpl implements IsOneOfQuery {
+ /**
+ * The cached value of the '{@link #getExpectedEObjects() <em>Expected EObjects</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getExpectedEObjects()
+ * @generated
+ * @ordered
+ */
+ protected EList<EObject> expectedEObjects;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsOneOfQueryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return QueryPackage.Literals.IS_ONE_OF_QUERY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<EObject> getExpectedEObjects() {
+ if (expectedEObjects == null) {
+ expectedEObjects = new EObjectResolvingEList<EObject>(EObject.class, this, QueryPackage.IS_ONE_OF_QUERY__EXPECTED_EOBJECTS);
+ }
+ return expectedEObjects;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case QueryPackage.IS_ONE_OF_QUERY__EXPECTED_EOBJECTS:
+ return getExpectedEObjects();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case QueryPackage.IS_ONE_OF_QUERY__EXPECTED_EOBJECTS:
+ getExpectedEObjects().clear();
+ getExpectedEObjects().addAll((Collection<? extends EObject>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case QueryPackage.IS_ONE_OF_QUERY__EXPECTED_EOBJECTS:
+ getExpectedEObjects().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case QueryPackage.IS_ONE_OF_QUERY__EXPECTED_EOBJECTS:
+ return expectedEObjects != null && !expectedEObjects.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //IsOneOfQueryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/NavigationQueryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/NavigationQueryImpl.java
new file mode 100644
index 00000000000..40c128b2a64
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/NavigationQueryImpl.java
@@ -0,0 +1,212 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Navigation Query</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.NavigationQueryImpl#getPath <em>Path</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.NavigationQueryImpl#isFailOnError <em>Fail On Error</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class NavigationQueryImpl extends QueryImpl implements NavigationQuery {
+ /**
+ * The cached value of the '{@link #getPath() <em>Path</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getPath()
+ * @generated
+ * @ordered
+ */
+ protected EList<ETypedElement> path;
+
+ /**
+ * The default value of the '{@link #isFailOnError() <em>Fail On Error</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isFailOnError()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean FAIL_ON_ERROR_EDEFAULT = true;
+ /**
+ * The cached value of the '{@link #isFailOnError() <em>Fail On Error</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isFailOnError()
+ * @generated
+ * @ordered
+ */
+ protected boolean failOnError = FAIL_ON_ERROR_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected NavigationQueryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return QueryPackage.Literals.NAVIGATION_QUERY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<ETypedElement> getPath() {
+ if (path == null) {
+ path = new EObjectResolvingEList<ETypedElement>(ETypedElement.class, this, QueryPackage.NAVIGATION_QUERY__PATH);
+ }
+ return path;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean isFailOnError() {
+ return failOnError;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setFailOnError(boolean newFailOnError) {
+ boolean oldFailOnError = failOnError;
+ failOnError = newFailOnError;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, QueryPackage.NAVIGATION_QUERY__FAIL_ON_ERROR, oldFailOnError, failOnError));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case QueryPackage.NAVIGATION_QUERY__PATH:
+ return getPath();
+ case QueryPackage.NAVIGATION_QUERY__FAIL_ON_ERROR:
+ return isFailOnError();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case QueryPackage.NAVIGATION_QUERY__PATH:
+ getPath().clear();
+ getPath().addAll((Collection<? extends ETypedElement>)newValue);
+ return;
+ case QueryPackage.NAVIGATION_QUERY__FAIL_ON_ERROR:
+ setFailOnError((Boolean)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case QueryPackage.NAVIGATION_QUERY__PATH:
+ getPath().clear();
+ return;
+ case QueryPackage.NAVIGATION_QUERY__FAIL_ON_ERROR:
+ setFailOnError(FAIL_ON_ERROR_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case QueryPackage.NAVIGATION_QUERY__PATH:
+ return path != null && !path.isEmpty();
+ case QueryPackage.NAVIGATION_QUERY__FAIL_ON_ERROR:
+ return failOnError != FAIL_ON_ERROR_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (failOnError: "); //$NON-NLS-1$
+ result.append(failOnError);
+ result.append(')');
+ return result.toString();
+ }
+
+} //NavigationQueryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/NullLiteralQueryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/NullLiteralQueryImpl.java
new file mode 100644
index 00000000000..d7ba347a1b1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/NullLiteralQueryImpl.java
@@ -0,0 +1,55 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NullLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Null Literal Query</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class NullLiteralQueryImpl extends QueryImpl implements NullLiteralQuery {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected NullLiteralQueryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return QueryPackage.Literals.NULL_LITERAL_QUERY;
+ }
+
+} //NullLiteralQueryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/OperationCallQueryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/OperationCallQueryImpl.java
new file mode 100644
index 00000000000..63e7c540726
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/OperationCallQueryImpl.java
@@ -0,0 +1,239 @@
+/**
+ * Copyright (c) 2011-2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 372626 - [Facet] Aggregates
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Operation Call Query</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.OperationCallQueryImpl#getOperation <em>Operation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.OperationCallQueryImpl#getArguments <em>Arguments</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class OperationCallQueryImpl extends QueryImpl implements OperationCallQuery {
+ /**
+ * The cached value of the '{@link #getOperation() <em>Operation</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOperation()
+ * @generated
+ * @ordered
+ */
+ protected EOperation operation;
+
+ /**
+ * The cached value of the '{@link #getArguments() <em>Arguments</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getArguments()
+ * @generated
+ * @ordered
+ */
+ protected EList<Query> arguments;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected OperationCallQueryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return QueryPackage.Literals.OPERATION_CALL_QUERY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getOperation() {
+ if (operation != null && operation.eIsProxy()) {
+ InternalEObject oldOperation = (InternalEObject)operation;
+ operation = (EOperation)eResolveProxy(oldOperation);
+ if (operation != oldOperation) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, QueryPackage.OPERATION_CALL_QUERY__OPERATION, oldOperation, operation));
+ }
+ }
+ return operation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation basicGetOperation() {
+ return operation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setOperation(EOperation newOperation) {
+ EOperation oldOperation = operation;
+ operation = newOperation;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, QueryPackage.OPERATION_CALL_QUERY__OPERATION, oldOperation, operation));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Query> getArguments() {
+ if (arguments == null) {
+ arguments = new EObjectContainmentEList<Query>(Query.class, this, QueryPackage.OPERATION_CALL_QUERY__ARGUMENTS);
+ }
+ return arguments;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case QueryPackage.OPERATION_CALL_QUERY__ARGUMENTS:
+ return ((InternalEList<?>)getArguments()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case QueryPackage.OPERATION_CALL_QUERY__OPERATION:
+ if (resolve) return getOperation();
+ return basicGetOperation();
+ case QueryPackage.OPERATION_CALL_QUERY__ARGUMENTS:
+ return getArguments();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case QueryPackage.OPERATION_CALL_QUERY__OPERATION:
+ setOperation((EOperation)newValue);
+ return;
+ case QueryPackage.OPERATION_CALL_QUERY__ARGUMENTS:
+ getArguments().clear();
+ getArguments().addAll((Collection<? extends Query>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case QueryPackage.OPERATION_CALL_QUERY__OPERATION:
+ setOperation((EOperation)null);
+ return;
+ case QueryPackage.OPERATION_CALL_QUERY__ARGUMENTS:
+ getArguments().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case QueryPackage.OPERATION_CALL_QUERY__OPERATION:
+ return operation != null;
+ case QueryPackage.OPERATION_CALL_QUERY__ARGUMENTS:
+ return arguments != null && !arguments.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //OperationCallQueryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/QueryFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/QueryFactoryImpl.java
new file mode 100644
index 00000000000..f51b295f2d8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/QueryFactoryImpl.java
@@ -0,0 +1,213 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.*;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FalseLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NullLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.TrueLiteralQuery;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class QueryFactoryImpl extends EFactoryImpl implements QueryFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static QueryFactory init() {
+ try {
+ QueryFactory theQueryFactory = (QueryFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/query"); //$NON-NLS-1$
+ if (theQueryFactory != null) {
+ return theQueryFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new QueryFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public QueryFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case QueryPackage.NAVIGATION_QUERY: return createNavigationQuery();
+ case QueryPackage.IS_ONE_OF_QUERY: return createIsOneOfQuery();
+ case QueryPackage.STRING_LITERAL_QUERY: return createStringLiteralQuery();
+ case QueryPackage.TRUE_LITERAL_QUERY: return createTrueLiteralQuery();
+ case QueryPackage.FALSE_LITERAL_QUERY: return createFalseLiteralQuery();
+ case QueryPackage.NULL_LITERAL_QUERY: return createNullLiteralQuery();
+ case QueryPackage.INTEGER_LITERAL_QUERY: return createIntegerLiteralQuery();
+ case QueryPackage.FLOAT_LITERAL_QUERY: return createFloatLiteralQuery();
+ case QueryPackage.EOBJECT_LITERAL_QUERY: return createEObjectLiteralQuery();
+ case QueryPackage.OPERATION_CALL_QUERY: return createOperationCallQuery();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NavigationQuery createNavigationQuery() {
+ NavigationQueryImpl navigationQuery = new NavigationQueryImpl();
+ return navigationQuery;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IsOneOfQuery createIsOneOfQuery() {
+ IsOneOfQueryImpl isOneOfQuery = new IsOneOfQueryImpl();
+ return isOneOfQuery;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public StringLiteralQuery createStringLiteralQuery() {
+ StringLiteralQueryImpl stringLiteralQuery = new StringLiteralQueryImpl();
+ return stringLiteralQuery;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public TrueLiteralQuery createTrueLiteralQuery() {
+ TrueLiteralQueryImpl trueLiteralQuery = new TrueLiteralQueryImpl();
+ return trueLiteralQuery;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FalseLiteralQuery createFalseLiteralQuery() {
+ FalseLiteralQueryImpl falseLiteralQuery = new FalseLiteralQueryImpl();
+ return falseLiteralQuery;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NullLiteralQuery createNullLiteralQuery() {
+ NullLiteralQueryImpl nullLiteralQuery = new NullLiteralQueryImpl();
+ return nullLiteralQuery;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public IntegerLiteralQuery createIntegerLiteralQuery() {
+ IntegerLiteralQueryImpl integerLiteralQuery = new IntegerLiteralQueryImpl();
+ return integerLiteralQuery;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FloatLiteralQuery createFloatLiteralQuery() {
+ FloatLiteralQueryImpl floatLiteralQuery = new FloatLiteralQueryImpl();
+ return floatLiteralQuery;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EObjectLiteralQuery createEObjectLiteralQuery() {
+ EObjectLiteralQueryImpl eObjectLiteralQuery = new EObjectLiteralQueryImpl();
+ return eObjectLiteralQuery;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public OperationCallQuery createOperationCallQuery() {
+ OperationCallQueryImpl operationCallQuery = new OperationCallQueryImpl();
+ return operationCallQuery;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public QueryPackage getQueryPackage() {
+ return (QueryPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static QueryPackage getPackage() {
+ return QueryPackage.eINSTANCE;
+ }
+
+} //QueryFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/QueryPackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/QueryPackageImpl.java
new file mode 100644
index 00000000000..1d7c9037c35
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/QueryPackageImpl.java
@@ -0,0 +1,504 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.ExtensiblePackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.EObjectLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FalseLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FloatLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IntegerLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NullLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.TrueLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimePackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class QueryPackageImpl extends EPackageImpl implements QueryPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass navigationQueryEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isOneOfQueryEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass stringLiteralQueryEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass trueLiteralQueryEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass falseLiteralQueryEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass nullLiteralQueryEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass integerLiteralQueryEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass floatLiteralQueryEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass eObjectLiteralQueryEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass operationCallQueryEClass = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private QueryPackageImpl() {
+ super(eNS_URI, QueryFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 QueryPackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static QueryPackage init() {
+ if (isInited) return (QueryPackage)EPackage.Registry.INSTANCE.getEPackage(QueryPackage.eNS_URI);
+
+ // Obtain or create and register package
+ QueryPackageImpl theQueryPackage = (QueryPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof QueryPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new QueryPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ EFacetPackageImpl theEFacetPackage = (EFacetPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(EFacetPackage.eNS_URI) instanceof EFacetPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(EFacetPackage.eNS_URI) : EFacetPackage.eINSTANCE);
+ SerializationPackageImpl theSerializationPackage = (SerializationPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SerializationPackage.eNS_URI) instanceof SerializationPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SerializationPackage.eNS_URI) : SerializationPackage.eINSTANCE);
+ ExtensiblePackageImpl theExtensiblePackage = (ExtensiblePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ExtensiblePackage.eNS_URI) instanceof ExtensiblePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ExtensiblePackage.eNS_URI) : ExtensiblePackage.eINSTANCE);
+ RuntimePackageImpl theRuntimePackage = (RuntimePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(RuntimePackage.eNS_URI) instanceof RuntimePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(RuntimePackage.eNS_URI) : RuntimePackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theQueryPackage.createPackageContents();
+ theEFacetPackage.createPackageContents();
+ theSerializationPackage.createPackageContents();
+ theExtensiblePackage.createPackageContents();
+ theRuntimePackage.createPackageContents();
+
+ // Initialize created meta-data
+ theQueryPackage.initializePackageContents();
+ theEFacetPackage.initializePackageContents();
+ theSerializationPackage.initializePackageContents();
+ theExtensiblePackage.initializePackageContents();
+ theRuntimePackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theQueryPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(QueryPackage.eNS_URI, theQueryPackage);
+ return theQueryPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getNavigationQuery() {
+ return navigationQueryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getNavigationQuery_Path() {
+ return (EReference)navigationQueryEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getNavigationQuery_FailOnError() {
+ return (EAttribute)navigationQueryEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsOneOfQuery() {
+ return isOneOfQueryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getIsOneOfQuery_ExpectedEObjects() {
+ return (EReference)isOneOfQueryEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getStringLiteralQuery() {
+ return stringLiteralQueryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getStringLiteralQuery_Value() {
+ return (EAttribute)stringLiteralQueryEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getTrueLiteralQuery() {
+ return trueLiteralQueryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFalseLiteralQuery() {
+ return falseLiteralQueryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getNullLiteralQuery() {
+ return nullLiteralQueryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIntegerLiteralQuery() {
+ return integerLiteralQueryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getIntegerLiteralQuery_Value() {
+ return (EAttribute)integerLiteralQueryEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFloatLiteralQuery() {
+ return floatLiteralQueryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getFloatLiteralQuery_Value() {
+ return (EAttribute)floatLiteralQueryEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getEObjectLiteralQuery() {
+ return eObjectLiteralQueryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getEObjectLiteralQuery_Element() {
+ return (EReference)eObjectLiteralQueryEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getOperationCallQuery() {
+ return operationCallQueryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getOperationCallQuery_Operation() {
+ return (EReference)operationCallQueryEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getOperationCallQuery_Arguments() {
+ return (EReference)operationCallQueryEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public QueryFactory getQueryFactory() {
+ return (QueryFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ navigationQueryEClass = createEClass(NAVIGATION_QUERY);
+ createEReference(navigationQueryEClass, NAVIGATION_QUERY__PATH);
+ createEAttribute(navigationQueryEClass, NAVIGATION_QUERY__FAIL_ON_ERROR);
+
+ isOneOfQueryEClass = createEClass(IS_ONE_OF_QUERY);
+ createEReference(isOneOfQueryEClass, IS_ONE_OF_QUERY__EXPECTED_EOBJECTS);
+
+ stringLiteralQueryEClass = createEClass(STRING_LITERAL_QUERY);
+ createEAttribute(stringLiteralQueryEClass, STRING_LITERAL_QUERY__VALUE);
+
+ trueLiteralQueryEClass = createEClass(TRUE_LITERAL_QUERY);
+
+ falseLiteralQueryEClass = createEClass(FALSE_LITERAL_QUERY);
+
+ nullLiteralQueryEClass = createEClass(NULL_LITERAL_QUERY);
+
+ integerLiteralQueryEClass = createEClass(INTEGER_LITERAL_QUERY);
+ createEAttribute(integerLiteralQueryEClass, INTEGER_LITERAL_QUERY__VALUE);
+
+ floatLiteralQueryEClass = createEClass(FLOAT_LITERAL_QUERY);
+ createEAttribute(floatLiteralQueryEClass, FLOAT_LITERAL_QUERY__VALUE);
+
+ eObjectLiteralQueryEClass = createEClass(EOBJECT_LITERAL_QUERY);
+ createEReference(eObjectLiteralQueryEClass, EOBJECT_LITERAL_QUERY__ELEMENT);
+
+ operationCallQueryEClass = createEClass(OPERATION_CALL_QUERY);
+ createEReference(operationCallQueryEClass, OPERATION_CALL_QUERY__OPERATION);
+ createEReference(operationCallQueryEClass, OPERATION_CALL_QUERY__ARGUMENTS);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ ExtensiblePackage theExtensiblePackage = (ExtensiblePackage)EPackage.Registry.INSTANCE.getEPackage(ExtensiblePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ navigationQueryEClass.getESuperTypes().add(theExtensiblePackage.getQuery());
+ isOneOfQueryEClass.getESuperTypes().add(theExtensiblePackage.getQuery());
+ stringLiteralQueryEClass.getESuperTypes().add(theExtensiblePackage.getQuery());
+ trueLiteralQueryEClass.getESuperTypes().add(theExtensiblePackage.getQuery());
+ falseLiteralQueryEClass.getESuperTypes().add(theExtensiblePackage.getQuery());
+ nullLiteralQueryEClass.getESuperTypes().add(theExtensiblePackage.getQuery());
+ integerLiteralQueryEClass.getESuperTypes().add(theExtensiblePackage.getQuery());
+ floatLiteralQueryEClass.getESuperTypes().add(theExtensiblePackage.getQuery());
+ eObjectLiteralQueryEClass.getESuperTypes().add(theExtensiblePackage.getQuery());
+ operationCallQueryEClass.getESuperTypes().add(theExtensiblePackage.getQuery());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(navigationQueryEClass, NavigationQuery.class, "NavigationQuery", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getNavigationQuery_Path(), ecorePackage.getETypedElement(), null, "path", null, 1, -1, NavigationQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getNavigationQuery_FailOnError(), ecorePackage.getEBoolean(), "failOnError", "true", 0, 1, NavigationQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$ //$NON-NLS-2$
+
+ initEClass(isOneOfQueryEClass, IsOneOfQuery.class, "IsOneOfQuery", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getIsOneOfQuery_ExpectedEObjects(), ecorePackage.getEObject(), null, "expectedEObjects", null, 0, -1, IsOneOfQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(stringLiteralQueryEClass, StringLiteralQuery.class, "StringLiteralQuery", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getStringLiteralQuery_Value(), ecorePackage.getEString(), "value", null, 0, 1, StringLiteralQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(trueLiteralQueryEClass, TrueLiteralQuery.class, "TrueLiteralQuery", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(falseLiteralQueryEClass, FalseLiteralQuery.class, "FalseLiteralQuery", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(nullLiteralQueryEClass, NullLiteralQuery.class, "NullLiteralQuery", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(integerLiteralQueryEClass, IntegerLiteralQuery.class, "IntegerLiteralQuery", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getIntegerLiteralQuery_Value(), ecorePackage.getEInt(), "value", null, 0, 1, IntegerLiteralQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(floatLiteralQueryEClass, FloatLiteralQuery.class, "FloatLiteralQuery", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getFloatLiteralQuery_Value(), ecorePackage.getEFloat(), "value", null, 0, 1, FloatLiteralQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(eObjectLiteralQueryEClass, EObjectLiteralQuery.class, "EObjectLiteralQuery", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getEObjectLiteralQuery_Element(), ecorePackage.getEObject(), null, "element", null, 0, 1, EObjectLiteralQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(operationCallQueryEClass, OperationCallQuery.class, "OperationCallQuery", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getOperationCallQuery_Operation(), ecorePackage.getEOperation(), null, "operation", null, 0, 1, OperationCallQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEReference(getOperationCallQuery_Arguments(), theExtensiblePackage.getQuery(), null, "arguments", null, 0, -1, OperationCallQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ }
+
+} //QueryPackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/StringLiteralQueryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/StringLiteralQueryImpl.java
new file mode 100644
index 00000000000..47dd38bfb5e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/StringLiteralQueryImpl.java
@@ -0,0 +1,175 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>String Literal Query</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.StringLiteralQueryImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class StringLiteralQueryImpl extends QueryImpl implements StringLiteralQuery {
+ /**
+ * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected static final String VALUE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected String value = VALUE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected StringLiteralQueryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return QueryPackage.Literals.STRING_LITERAL_QUERY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValue(String newValue) {
+ String oldValue = value;
+ value = newValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, QueryPackage.STRING_LITERAL_QUERY__VALUE, oldValue, value));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case QueryPackage.STRING_LITERAL_QUERY__VALUE:
+ return getValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case QueryPackage.STRING_LITERAL_QUERY__VALUE:
+ setValue((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case QueryPackage.STRING_LITERAL_QUERY__VALUE:
+ setValue(VALUE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case QueryPackage.STRING_LITERAL_QUERY__VALUE:
+ return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (value: "); //$NON-NLS-1$
+ result.append(value);
+ result.append(')');
+ return result.toString();
+ }
+
+} //StringLiteralQueryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/TrueLiteralQueryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/TrueLiteralQueryImpl.java
new file mode 100644
index 00000000000..7bf71b9adce
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/impl/TrueLiteralQueryImpl.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.TrueLiteralQuery;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>True Literal Query</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class TrueLiteralQueryImpl extends QueryImpl implements TrueLiteralQuery {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected TrueLiteralQueryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return QueryPackage.Literals.TRUE_LITERAL_QUERY;
+ }
+
+} //TrueLiteralQueryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/util/QueryAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/util/QueryAdapterFactory.java
new file mode 100644
index 00000000000..b994acd17ef
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/util/QueryAdapterFactory.java
@@ -0,0 +1,319 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.*;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FalseLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NullLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.TrueLiteralQuery;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage
+ * @generated
+ */
+public class QueryAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static QueryPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public QueryAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = QueryPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected QuerySwitch<Adapter> modelSwitch =
+ new QuerySwitch<Adapter>() {
+ @Override
+ public Adapter caseNavigationQuery(NavigationQuery object) {
+ return createNavigationQueryAdapter();
+ }
+ @Override
+ public Adapter caseIsOneOfQuery(IsOneOfQuery object) {
+ return createIsOneOfQueryAdapter();
+ }
+ @Override
+ public Adapter caseStringLiteralQuery(StringLiteralQuery object) {
+ return createStringLiteralQueryAdapter();
+ }
+ @Override
+ public Adapter caseTrueLiteralQuery(TrueLiteralQuery object) {
+ return createTrueLiteralQueryAdapter();
+ }
+ @Override
+ public Adapter caseFalseLiteralQuery(FalseLiteralQuery object) {
+ return createFalseLiteralQueryAdapter();
+ }
+ @Override
+ public Adapter caseNullLiteralQuery(NullLiteralQuery object) {
+ return createNullLiteralQueryAdapter();
+ }
+ @Override
+ public Adapter caseIntegerLiteralQuery(IntegerLiteralQuery object) {
+ return createIntegerLiteralQueryAdapter();
+ }
+ @Override
+ public Adapter caseFloatLiteralQuery(FloatLiteralQuery object) {
+ return createFloatLiteralQueryAdapter();
+ }
+ @Override
+ public Adapter caseEObjectLiteralQuery(EObjectLiteralQuery object) {
+ return createEObjectLiteralQueryAdapter();
+ }
+ @Override
+ public Adapter caseOperationCallQuery(OperationCallQuery object) {
+ return createOperationCallQueryAdapter();
+ }
+ @Override
+ public Adapter caseQuery(Query object) {
+ return createQueryAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery <em>Navigation Query</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.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery
+ * @generated
+ */
+ public Adapter createNavigationQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery <em>Is One Of Query</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.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery
+ * @generated
+ */
+ public Adapter createIsOneOfQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery <em>String Literal Query</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.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery
+ * @generated
+ */
+ public Adapter createStringLiteralQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.TrueLiteralQuery <em>True Literal Query</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.emf.facet.efacet.metamodel.v0_2_0.efacet.query.TrueLiteralQuery
+ * @generated
+ */
+ public Adapter createTrueLiteralQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FalseLiteralQuery <em>False Literal Query</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.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FalseLiteralQuery
+ * @generated
+ */
+ public Adapter createFalseLiteralQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NullLiteralQuery <em>Null Literal Query</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.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NullLiteralQuery
+ * @generated
+ */
+ public Adapter createNullLiteralQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IntegerLiteralQuery <em>Integer Literal Query</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.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IntegerLiteralQuery
+ * @generated
+ */
+ public Adapter createIntegerLiteralQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FloatLiteralQuery <em>Float Literal Query</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.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FloatLiteralQuery
+ * @generated
+ */
+ public Adapter createFloatLiteralQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.EObjectLiteralQuery <em>EObject Literal Query</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.emf.facet.efacet.metamodel.v0_2_0.efacet.query.EObjectLiteralQuery
+ * @generated
+ */
+ public Adapter createEObjectLiteralQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery <em>Operation Call Query</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.emf.facet.efacet.metamodel.v0_2_0.efacet.query.OperationCallQuery
+ * @generated
+ */
+ public Adapter createOperationCallQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query <em>Query</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.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query
+ * @generated
+ */
+ public Adapter createQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //QueryAdapterFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/util/QuerySwitch.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/util/QuerySwitch.java
new file mode 100644
index 00000000000..3133f4861dc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/query/util/QuerySwitch.java
@@ -0,0 +1,363 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.*;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.FalseLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.IsOneOfQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NavigationQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.NullLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.StringLiteralQuery;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.TrueLiteralQuery;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage
+ * @generated
+ */
+public class QuerySwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static QueryPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public QuerySwitch() {
+ if (modelPackage == null) {
+ modelPackage = QueryPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case QueryPackage.NAVIGATION_QUERY: {
+ NavigationQuery navigationQuery = (NavigationQuery)theEObject;
+ T result = caseNavigationQuery(navigationQuery);
+ if (result == null) result = caseQuery(navigationQuery);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case QueryPackage.IS_ONE_OF_QUERY: {
+ IsOneOfQuery isOneOfQuery = (IsOneOfQuery)theEObject;
+ T result = caseIsOneOfQuery(isOneOfQuery);
+ if (result == null) result = caseQuery(isOneOfQuery);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case QueryPackage.STRING_LITERAL_QUERY: {
+ StringLiteralQuery stringLiteralQuery = (StringLiteralQuery)theEObject;
+ T result = caseStringLiteralQuery(stringLiteralQuery);
+ if (result == null) result = caseQuery(stringLiteralQuery);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case QueryPackage.TRUE_LITERAL_QUERY: {
+ TrueLiteralQuery trueLiteralQuery = (TrueLiteralQuery)theEObject;
+ T result = caseTrueLiteralQuery(trueLiteralQuery);
+ if (result == null) result = caseQuery(trueLiteralQuery);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case QueryPackage.FALSE_LITERAL_QUERY: {
+ FalseLiteralQuery falseLiteralQuery = (FalseLiteralQuery)theEObject;
+ T result = caseFalseLiteralQuery(falseLiteralQuery);
+ if (result == null) result = caseQuery(falseLiteralQuery);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case QueryPackage.NULL_LITERAL_QUERY: {
+ NullLiteralQuery nullLiteralQuery = (NullLiteralQuery)theEObject;
+ T result = caseNullLiteralQuery(nullLiteralQuery);
+ if (result == null) result = caseQuery(nullLiteralQuery);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case QueryPackage.INTEGER_LITERAL_QUERY: {
+ IntegerLiteralQuery integerLiteralQuery = (IntegerLiteralQuery)theEObject;
+ T result = caseIntegerLiteralQuery(integerLiteralQuery);
+ if (result == null) result = caseQuery(integerLiteralQuery);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case QueryPackage.FLOAT_LITERAL_QUERY: {
+ FloatLiteralQuery floatLiteralQuery = (FloatLiteralQuery)theEObject;
+ T result = caseFloatLiteralQuery(floatLiteralQuery);
+ if (result == null) result = caseQuery(floatLiteralQuery);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case QueryPackage.EOBJECT_LITERAL_QUERY: {
+ EObjectLiteralQuery eObjectLiteralQuery = (EObjectLiteralQuery)theEObject;
+ T result = caseEObjectLiteralQuery(eObjectLiteralQuery);
+ if (result == null) result = caseQuery(eObjectLiteralQuery);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case QueryPackage.OPERATION_CALL_QUERY: {
+ OperationCallQuery operationCallQuery = (OperationCallQuery)theEObject;
+ T result = caseOperationCallQuery(operationCallQuery);
+ if (result == null) result = caseQuery(operationCallQuery);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Navigation Query</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>Navigation Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNavigationQuery(NavigationQuery object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Is One Of Query</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>Is One Of Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIsOneOfQuery(IsOneOfQuery object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>String Literal Query</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>String Literal Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseStringLiteralQuery(StringLiteralQuery object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>True Literal Query</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>True Literal Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseTrueLiteralQuery(TrueLiteralQuery object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>False Literal Query</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>False Literal Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFalseLiteralQuery(FalseLiteralQuery object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Null Literal Query</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>Null Literal Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNullLiteralQuery(NullLiteralQuery object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Integer Literal Query</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>Integer Literal Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseIntegerLiteralQuery(IntegerLiteralQuery object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Float Literal Query</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>Float Literal Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFloatLiteralQuery(FloatLiteralQuery object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject Literal Query</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>EObject Literal Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEObjectLiteralQuery(EObjectLiteralQuery object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Operation Call Query</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>Operation Call Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseOperationCallQuery(OperationCallQuery object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Query</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>Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseQuery(Query object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //QuerySwitch
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementEObjectListResult.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementEObjectListResult.java
new file mode 100644
index 00000000000..e6ab86e69a0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementEObjectListResult.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ETyped Element EObject List Result</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This class represents the result of evaluating the value of a multiplicity-many DerivedTypedElement by means of a multi-valued query .
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult#getResultList <em>Result List</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage#getETypedElementEObjectListResult()
+ * @model
+ * @generated
+ */
+public interface ETypedElementEObjectListResult<T extends EObject> extends ETypedElementResult {
+ /**
+ * Returns the value of the '<em><b>Result List</b></em>' reference list.
+ * The list contents are of type {@link T}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Result List</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Result List</em>' reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage#getETypedElementEObjectListResult_ResultList()
+ * @model
+ * @generated
+ */
+ EList<T> getResultList();
+
+} // ETypedElementEObjectListResult
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementEObjectResult.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementEObjectResult.java
new file mode 100644
index 00000000000..5890c944dcd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementEObjectResult.java
@@ -0,0 +1,71 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ETyped Element EObject Result</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This class represents the result of evaluating the value of a multiplicity-one DerivedTypedElement by means of a single-valued query .
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult#getResult <em>Result</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage#getETypedElementEObjectResult()
+ * @model
+ * @generated
+ */
+public interface ETypedElementEObjectResult<T extends EObject> extends ETypedElementResult {
+ /**
+ * Returns the value of the '<em><b>Result</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Result</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Result</em>' reference.
+ * @see #setResult(EObject)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage#getETypedElementEObjectResult_Result()
+ * @model
+ * @generated
+ */
+ T getResult();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult#getResult <em>Result</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Result</em>' reference.
+ * @see #getResult()
+ * @generated
+ */
+ void setResult(T value);
+
+} // ETypedElementEObjectResult
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementPrimitiveTypeListResult.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementPrimitiveTypeListResult.java
new file mode 100644
index 00000000000..5a4072852c6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementPrimitiveTypeListResult.java
@@ -0,0 +1,61 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ETyped Element Primitive Type List Result</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This class represents the result of evaluating the value of a multiplicity-many DerivedTypedElement by means of a multi-valued query .
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult#getResultList <em>Result List</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage#getETypedElementPrimitiveTypeListResult()
+ * @model
+ * @generated
+ */
+public interface ETypedElementPrimitiveTypeListResult<T> extends ETypedElementResult {
+ /**
+ * Returns the value of the '<em><b>Result List</b></em>' attribute list.
+ * The list contents are of type {@link T}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Result List</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Result List</em>' attribute list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage#getETypedElementPrimitiveTypeListResult_ResultList()
+ * @model
+ * @generated
+ */
+ EList<T> getResultList();
+
+} // ETypedElementPrimitiveTypeListResult
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementPrimitiveTypeResult.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementPrimitiveTypeResult.java
new file mode 100644
index 00000000000..4c6baf60d1e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementPrimitiveTypeResult.java
@@ -0,0 +1,70 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ETyped Element Primitive Type Result</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This class represents the result of evaluating the value of a multiplicity-one DerivedTypedElement by means of a single-valued query .
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult#getResult <em>Result</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage#getETypedElementPrimitiveTypeResult()
+ * @model
+ * @generated
+ */
+public interface ETypedElementPrimitiveTypeResult<T> extends ETypedElementResult {
+ /**
+ * Returns the value of the '<em><b>Result</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Result</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Result</em>' attribute.
+ * @see #setResult(Object)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage#getETypedElementPrimitiveTypeResult_Result()
+ * @model
+ * @generated
+ */
+ T getResult();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult#getResult <em>Result</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Result</em>' attribute.
+ * @see #getResult()
+ * @generated
+ */
+ void setResult(T value);
+
+} // ETypedElementPrimitiveTypeResult
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementResult.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementResult.java
new file mode 100644
index 00000000000..eeaf9a93807
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/ETypedElementResult.java
@@ -0,0 +1,143 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>ETyped Element Result</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This class represents the result of evaluating the value of a DerivedTypedElement by means of a query .
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult#getDerivedTypedElement <em>Derived Typed Element</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult#getParameterValues <em>Parameter Values</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult#getSource <em>Source</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult#getException <em>Exception</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage#getETypedElementResult()
+ * @model abstract="true"
+ * @generated
+ */
+public interface ETypedElementResult extends EObject {
+ /**
+ * Returns the value of the '<em><b>Derived Typed Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The reference "query" references the executed query.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Derived Typed Element</em>' reference.
+ * @see #setDerivedTypedElement(ETypedElement)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage#getETypedElementResult_DerivedTypedElement()
+ * @model required="true"
+ * @generated
+ */
+ ETypedElement getDerivedTypedElement();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult#getDerivedTypedElement <em>Derived Typed Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Derived Typed Element</em>' reference.
+ * @see #getDerivedTypedElement()
+ * @generated
+ */
+ void setDerivedTypedElement(ETypedElement value);
+
+ /**
+ * Returns the value of the '<em><b>Parameter Values</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * This is the list of the values given as parameters for the query execution.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Parameter Values</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage#getETypedElementResult_ParameterValues()
+ * @model containment="true"
+ * @generated
+ */
+ EList<ParameterValue> getParameterValues();
+
+ /**
+ * Returns the value of the '<em><b>Source</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Source</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Source</em>' reference.
+ * @see #setSource(EObject)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage#getETypedElementResult_Source()
+ * @model required="true"
+ * @generated
+ */
+ EObject getSource();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult#getSource <em>Source</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Source</em>' reference.
+ * @see #getSource()
+ * @generated
+ */
+ void setSource(EObject value);
+
+ /**
+ * Returns the value of the '<em><b>Exception</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Exception</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Exception</em>' attribute.
+ * @see #setException(Throwable)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage#getETypedElementResult_Exception()
+ * @model dataType="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.JavaException" transient="true"
+ * @generated
+ */
+ Throwable getException();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult#getException <em>Exception</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Exception</em>' attribute.
+ * @see #getException()
+ * @generated
+ */
+ void setException(Throwable value);
+
+} // ETypedElementResult
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/RuntimeFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/RuntimeFactory.java
new file mode 100644
index 00000000000..cc2a0321f7b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/RuntimeFactory.java
@@ -0,0 +1,88 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime;
+
+import org.eclipse.emf.ecore.EFactory;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage
+ * @generated
+ */
+public interface RuntimeFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ RuntimeFactory eINSTANCE = org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimeFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>ETyped Element Primitive Type Result</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>ETyped Element Primitive Type Result</em>'.
+ * @generated
+ */
+ <T> ETypedElementPrimitiveTypeResult<T> createETypedElementPrimitiveTypeResult();
+
+ /**
+ * Returns a new object of class '<em>ETyped Element EObject Result</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>ETyped Element EObject Result</em>'.
+ * @generated
+ */
+ <T extends EObject> ETypedElementEObjectResult<T> createETypedElementEObjectResult();
+
+ /**
+ * Returns a new object of class '<em>ETyped Element Primitive Type List Result</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>ETyped Element Primitive Type List Result</em>'.
+ * @generated
+ */
+ <T> ETypedElementPrimitiveTypeListResult<T> createETypedElementPrimitiveTypeListResult();
+
+ /**
+ * Returns a new object of class '<em>ETyped Element EObject List Result</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>ETyped Element EObject List Result</em>'.
+ * @generated
+ */
+ <T extends EObject> ETypedElementEObjectListResult<T> createETypedElementEObjectListResult();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ RuntimePackage getRuntimePackage();
+
+} //RuntimeFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/RuntimePackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/RuntimePackage.java
new file mode 100644
index 00000000000..5388033bae2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/RuntimePackage.java
@@ -0,0 +1,696 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimeFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface RuntimePackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "runtime"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/runtime"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "runtime"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ RuntimePackage eINSTANCE = org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimePackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementResultImpl <em>ETyped Element Result</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementResultImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimePackageImpl#getETypedElementResult()
+ * @generated
+ */
+ int ETYPED_ELEMENT_RESULT = 4;
+
+ /**
+ * The feature id for the '<em><b>Derived Typed Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_RESULT__DERIVED_TYPED_ELEMENT = 0;
+
+ /**
+ * The feature id for the '<em><b>Parameter Values</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_RESULT__PARAMETER_VALUES = 1;
+
+ /**
+ * The feature id for the '<em><b>Source</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_RESULT__SOURCE = 2;
+
+ /**
+ * The feature id for the '<em><b>Exception</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_RESULT__EXCEPTION = 3;
+
+ /**
+ * The number of structural features of the '<em>ETyped Element Result</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_RESULT_FEATURE_COUNT = 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementPrimitiveTypeResultImpl <em>ETyped Element Primitive Type Result</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementPrimitiveTypeResultImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimePackageImpl#getETypedElementPrimitiveTypeResult()
+ * @generated
+ */
+ int ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT = 0;
+
+ /**
+ * The feature id for the '<em><b>Derived Typed Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT__DERIVED_TYPED_ELEMENT = ETYPED_ELEMENT_RESULT__DERIVED_TYPED_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Parameter Values</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT__PARAMETER_VALUES = ETYPED_ELEMENT_RESULT__PARAMETER_VALUES;
+
+ /**
+ * The feature id for the '<em><b>Source</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT__SOURCE = ETYPED_ELEMENT_RESULT__SOURCE;
+
+ /**
+ * The feature id for the '<em><b>Exception</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT__EXCEPTION = ETYPED_ELEMENT_RESULT__EXCEPTION;
+
+ /**
+ * The feature id for the '<em><b>Result</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT__RESULT = ETYPED_ELEMENT_RESULT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>ETyped Element Primitive Type Result</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT_FEATURE_COUNT = ETYPED_ELEMENT_RESULT_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementEObjectResultImpl <em>ETyped Element EObject Result</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementEObjectResultImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimePackageImpl#getETypedElementEObjectResult()
+ * @generated
+ */
+ int ETYPED_ELEMENT_EOBJECT_RESULT = 1;
+
+ /**
+ * The feature id for the '<em><b>Derived Typed Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_EOBJECT_RESULT__DERIVED_TYPED_ELEMENT = ETYPED_ELEMENT_RESULT__DERIVED_TYPED_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Parameter Values</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_EOBJECT_RESULT__PARAMETER_VALUES = ETYPED_ELEMENT_RESULT__PARAMETER_VALUES;
+
+ /**
+ * The feature id for the '<em><b>Source</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_EOBJECT_RESULT__SOURCE = ETYPED_ELEMENT_RESULT__SOURCE;
+
+ /**
+ * The feature id for the '<em><b>Exception</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_EOBJECT_RESULT__EXCEPTION = ETYPED_ELEMENT_RESULT__EXCEPTION;
+
+ /**
+ * The feature id for the '<em><b>Result</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_EOBJECT_RESULT__RESULT = ETYPED_ELEMENT_RESULT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>ETyped Element EObject Result</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_EOBJECT_RESULT_FEATURE_COUNT = ETYPED_ELEMENT_RESULT_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementPrimitiveTypeListResultImpl <em>ETyped Element Primitive Type List Result</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementPrimitiveTypeListResultImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimePackageImpl#getETypedElementPrimitiveTypeListResult()
+ * @generated
+ */
+ int ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT = 2;
+
+ /**
+ * The feature id for the '<em><b>Derived Typed Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT__DERIVED_TYPED_ELEMENT = ETYPED_ELEMENT_RESULT__DERIVED_TYPED_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Parameter Values</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT__PARAMETER_VALUES = ETYPED_ELEMENT_RESULT__PARAMETER_VALUES;
+
+ /**
+ * The feature id for the '<em><b>Source</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT__SOURCE = ETYPED_ELEMENT_RESULT__SOURCE;
+
+ /**
+ * The feature id for the '<em><b>Exception</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT__EXCEPTION = ETYPED_ELEMENT_RESULT__EXCEPTION;
+
+ /**
+ * The feature id for the '<em><b>Result List</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT__RESULT_LIST = ETYPED_ELEMENT_RESULT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>ETyped Element Primitive Type List Result</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT_FEATURE_COUNT = ETYPED_ELEMENT_RESULT_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementEObjectListResultImpl <em>ETyped Element EObject List Result</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementEObjectListResultImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimePackageImpl#getETypedElementEObjectListResult()
+ * @generated
+ */
+ int ETYPED_ELEMENT_EOBJECT_LIST_RESULT = 3;
+
+ /**
+ * The feature id for the '<em><b>Derived Typed Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_EOBJECT_LIST_RESULT__DERIVED_TYPED_ELEMENT = ETYPED_ELEMENT_RESULT__DERIVED_TYPED_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Parameter Values</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_EOBJECT_LIST_RESULT__PARAMETER_VALUES = ETYPED_ELEMENT_RESULT__PARAMETER_VALUES;
+
+ /**
+ * The feature id for the '<em><b>Source</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_EOBJECT_LIST_RESULT__SOURCE = ETYPED_ELEMENT_RESULT__SOURCE;
+
+ /**
+ * The feature id for the '<em><b>Exception</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_EOBJECT_LIST_RESULT__EXCEPTION = ETYPED_ELEMENT_RESULT__EXCEPTION;
+
+ /**
+ * The feature id for the '<em><b>Result List</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_EOBJECT_LIST_RESULT__RESULT_LIST = ETYPED_ELEMENT_RESULT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>ETyped Element EObject List Result</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ETYPED_ELEMENT_EOBJECT_LIST_RESULT_FEATURE_COUNT = ETYPED_ELEMENT_RESULT_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '<em>Java Exception</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see java.lang.Throwable
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimePackageImpl#getJavaException()
+ * @generated
+ */
+ int JAVA_EXCEPTION = 5;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult <em>ETyped Element Primitive Type Result</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>ETyped Element Primitive Type Result</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult
+ * @generated
+ */
+ EClass getETypedElementPrimitiveTypeResult();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult#getResult <em>Result</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Result</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult#getResult()
+ * @see #getETypedElementPrimitiveTypeResult()
+ * @generated
+ */
+ EAttribute getETypedElementPrimitiveTypeResult_Result();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult <em>ETyped Element EObject Result</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>ETyped Element EObject Result</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult
+ * @generated
+ */
+ EClass getETypedElementEObjectResult();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult#getResult <em>Result</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Result</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult#getResult()
+ * @see #getETypedElementEObjectResult()
+ * @generated
+ */
+ EReference getETypedElementEObjectResult_Result();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult <em>ETyped Element Primitive Type List Result</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>ETyped Element Primitive Type List Result</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult
+ * @generated
+ */
+ EClass getETypedElementPrimitiveTypeListResult();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult#getResultList <em>Result List</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Result List</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult#getResultList()
+ * @see #getETypedElementPrimitiveTypeListResult()
+ * @generated
+ */
+ EAttribute getETypedElementPrimitiveTypeListResult_ResultList();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult <em>ETyped Element EObject List Result</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>ETyped Element EObject List Result</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult
+ * @generated
+ */
+ EClass getETypedElementEObjectListResult();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult#getResultList <em>Result List</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Result List</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult#getResultList()
+ * @see #getETypedElementEObjectListResult()
+ * @generated
+ */
+ EReference getETypedElementEObjectListResult_ResultList();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult <em>ETyped Element Result</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>ETyped Element Result</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult
+ * @generated
+ */
+ EClass getETypedElementResult();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult#getDerivedTypedElement <em>Derived Typed Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Derived Typed Element</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult#getDerivedTypedElement()
+ * @see #getETypedElementResult()
+ * @generated
+ */
+ EReference getETypedElementResult_DerivedTypedElement();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult#getParameterValues <em>Parameter Values</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Parameter Values</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult#getParameterValues()
+ * @see #getETypedElementResult()
+ * @generated
+ */
+ EReference getETypedElementResult_ParameterValues();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult#getSource <em>Source</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Source</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult#getSource()
+ * @see #getETypedElementResult()
+ * @generated
+ */
+ EReference getETypedElementResult_Source();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult#getException <em>Exception</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Exception</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult#getException()
+ * @see #getETypedElementResult()
+ * @generated
+ */
+ EAttribute getETypedElementResult_Exception();
+
+ /**
+ * Returns the meta object for data type '{@link java.lang.Throwable <em>Java Exception</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for data type '<em>Java Exception</em>'.
+ * @see java.lang.Throwable
+ * @model instanceClass="java.lang.Throwable"
+ * @generated
+ */
+ EDataType getJavaException();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ RuntimeFactory getRuntimeFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementPrimitiveTypeResultImpl <em>ETyped Element Primitive Type Result</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementPrimitiveTypeResultImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimePackageImpl#getETypedElementPrimitiveTypeResult()
+ * @generated
+ */
+ EClass ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT = eINSTANCE.getETypedElementPrimitiveTypeResult();
+
+ /**
+ * The meta object literal for the '<em><b>Result</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT__RESULT = eINSTANCE.getETypedElementPrimitiveTypeResult_Result();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementEObjectResultImpl <em>ETyped Element EObject Result</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementEObjectResultImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimePackageImpl#getETypedElementEObjectResult()
+ * @generated
+ */
+ EClass ETYPED_ELEMENT_EOBJECT_RESULT = eINSTANCE.getETypedElementEObjectResult();
+
+ /**
+ * The meta object literal for the '<em><b>Result</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ETYPED_ELEMENT_EOBJECT_RESULT__RESULT = eINSTANCE.getETypedElementEObjectResult_Result();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementPrimitiveTypeListResultImpl <em>ETyped Element Primitive Type List Result</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementPrimitiveTypeListResultImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimePackageImpl#getETypedElementPrimitiveTypeListResult()
+ * @generated
+ */
+ EClass ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT = eINSTANCE.getETypedElementPrimitiveTypeListResult();
+
+ /**
+ * The meta object literal for the '<em><b>Result List</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT__RESULT_LIST = eINSTANCE.getETypedElementPrimitiveTypeListResult_ResultList();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementEObjectListResultImpl <em>ETyped Element EObject List Result</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementEObjectListResultImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimePackageImpl#getETypedElementEObjectListResult()
+ * @generated
+ */
+ EClass ETYPED_ELEMENT_EOBJECT_LIST_RESULT = eINSTANCE.getETypedElementEObjectListResult();
+
+ /**
+ * The meta object literal for the '<em><b>Result List</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ETYPED_ELEMENT_EOBJECT_LIST_RESULT__RESULT_LIST = eINSTANCE.getETypedElementEObjectListResult_ResultList();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementResultImpl <em>ETyped Element Result</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementResultImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimePackageImpl#getETypedElementResult()
+ * @generated
+ */
+ EClass ETYPED_ELEMENT_RESULT = eINSTANCE.getETypedElementResult();
+
+ /**
+ * The meta object literal for the '<em><b>Derived Typed Element</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ETYPED_ELEMENT_RESULT__DERIVED_TYPED_ELEMENT = eINSTANCE.getETypedElementResult_DerivedTypedElement();
+
+ /**
+ * The meta object literal for the '<em><b>Parameter Values</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ETYPED_ELEMENT_RESULT__PARAMETER_VALUES = eINSTANCE.getETypedElementResult_ParameterValues();
+
+ /**
+ * The meta object literal for the '<em><b>Source</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ETYPED_ELEMENT_RESULT__SOURCE = eINSTANCE.getETypedElementResult_Source();
+
+ /**
+ * The meta object literal for the '<em><b>Exception</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute ETYPED_ELEMENT_RESULT__EXCEPTION = eINSTANCE.getETypedElementResult_Exception();
+
+ /**
+ * The meta object literal for the '<em>Java Exception</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see java.lang.Throwable
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimePackageImpl#getJavaException()
+ * @generated
+ */
+ EDataType JAVA_EXCEPTION = eINSTANCE.getJavaException();
+
+ }
+
+} //RuntimePackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementEObjectListResultImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementEObjectListResultImpl.java
new file mode 100644
index 00000000000..549d7769d8b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementEObjectListResultImpl.java
@@ -0,0 +1,146 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ETyped Element EObject List Result</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementEObjectListResultImpl#getResultList <em>Result List</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ETypedElementEObjectListResultImpl<T extends EObject> extends ETypedElementResultImpl implements ETypedElementEObjectListResult<T> {
+ /**
+ * The cached value of the '{@link #getResultList() <em>Result List</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getResultList()
+ * @generated
+ * @ordered
+ */
+ protected EList<T> resultList;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ETypedElementEObjectListResultImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RuntimePackage.Literals.ETYPED_ELEMENT_EOBJECT_LIST_RESULT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<T> getResultList() {
+ if (resultList == null) {
+ resultList = new EObjectResolvingEList<T>(EObject.class, this, RuntimePackage.ETYPED_ELEMENT_EOBJECT_LIST_RESULT__RESULT_LIST);
+ }
+ return resultList;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_EOBJECT_LIST_RESULT__RESULT_LIST:
+ return getResultList();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_EOBJECT_LIST_RESULT__RESULT_LIST:
+ getResultList().clear();
+ getResultList().addAll((Collection<? extends T>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_EOBJECT_LIST_RESULT__RESULT_LIST:
+ getResultList().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_EOBJECT_LIST_RESULT__RESULT_LIST:
+ return resultList != null && !resultList.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ETypedElementEObjectListResultImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementEObjectResultImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementEObjectResultImpl.java
new file mode 100644
index 00000000000..1d9c6cf03a5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementEObjectResultImpl.java
@@ -0,0 +1,172 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+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.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ETyped Element EObject Result</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementEObjectResultImpl#getResult <em>Result</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ETypedElementEObjectResultImpl<T extends EObject> extends ETypedElementResultImpl implements ETypedElementEObjectResult<T> {
+ /**
+ * The cached value of the '{@link #getResult() <em>Result</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getResult()
+ * @generated
+ * @ordered
+ */
+ protected T result;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ETypedElementEObjectResultImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RuntimePackage.Literals.ETYPED_ELEMENT_EOBJECT_RESULT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ public T getResult() {
+ if (result != null && result.eIsProxy()) {
+ InternalEObject oldResult = (InternalEObject)result;
+ result = (T)eResolveProxy(oldResult);
+ if (result != oldResult) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, RuntimePackage.ETYPED_ELEMENT_EOBJECT_RESULT__RESULT, oldResult, result));
+ }
+ }
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public T basicGetResult() {
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setResult(T newResult) {
+ T oldResult = result;
+ result = newResult;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RuntimePackage.ETYPED_ELEMENT_EOBJECT_RESULT__RESULT, oldResult, result));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_EOBJECT_RESULT__RESULT:
+ if (resolve) return getResult();
+ return basicGetResult();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_EOBJECT_RESULT__RESULT:
+ setResult((T)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_EOBJECT_RESULT__RESULT:
+ setResult((T)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_EOBJECT_RESULT__RESULT:
+ return result != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ETypedElementEObjectResultImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementPrimitiveTypeListResultImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementPrimitiveTypeListResultImpl.java
new file mode 100644
index 00000000000..cf4d1d380f0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementPrimitiveTypeListResultImpl.java
@@ -0,0 +1,161 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ETyped Element Primitive Type List Result</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementPrimitiveTypeListResultImpl#getResultList <em>Result List</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ETypedElementPrimitiveTypeListResultImpl<T> extends ETypedElementResultImpl implements ETypedElementPrimitiveTypeListResult<T> {
+ /**
+ * The cached value of the '{@link #getResultList() <em>Result List</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getResultList()
+ * @generated
+ * @ordered
+ */
+ protected EList<T> resultList;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ETypedElementPrimitiveTypeListResultImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RuntimePackage.Literals.ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<T> getResultList() {
+ if (resultList == null) {
+ resultList = new EDataTypeUniqueEList<T>(Object.class, this, RuntimePackage.ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT__RESULT_LIST);
+ }
+ return resultList;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT__RESULT_LIST:
+ return getResultList();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT__RESULT_LIST:
+ getResultList().clear();
+ getResultList().addAll((Collection<? extends T>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT__RESULT_LIST:
+ getResultList().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT__RESULT_LIST:
+ return resultList != null && !resultList.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (resultList: "); //$NON-NLS-1$
+ result.append(resultList);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ETypedElementPrimitiveTypeListResultImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementPrimitiveTypeResultImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementPrimitiveTypeResultImpl.java
new file mode 100644
index 00000000000..5e56018b12c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementPrimitiveTypeResultImpl.java
@@ -0,0 +1,167 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ETyped Element Primitive Type Result</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementPrimitiveTypeResultImpl#getResult <em>Result</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ETypedElementPrimitiveTypeResultImpl<T> extends ETypedElementResultImpl implements ETypedElementPrimitiveTypeResult<T> {
+ /**
+ * The cached value of the '{@link #getResult() <em>Result</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getResult()
+ * @generated
+ * @ordered
+ */
+ protected T result;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ETypedElementPrimitiveTypeResultImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RuntimePackage.Literals.ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public T getResult() {
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setResult(T newResult) {
+ T oldResult = result;
+ result = newResult;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RuntimePackage.ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT__RESULT, oldResult, result));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT__RESULT:
+ return getResult();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT__RESULT:
+ setResult((T)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT__RESULT:
+ setResult((T)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT__RESULT:
+ return result != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (result: "); //$NON-NLS-1$
+ result.append(result);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ETypedElementPrimitiveTypeResultImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementResultImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementResultImpl.java
new file mode 100644
index 00000000000..69c8fca138e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/ETypedElementResultImpl.java
@@ -0,0 +1,356 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>ETyped Element Result</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementResultImpl#getDerivedTypedElement <em>Derived Typed Element</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementResultImpl#getParameterValues <em>Parameter Values</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementResultImpl#getSource <em>Source</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.ETypedElementResultImpl#getException <em>Exception</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class ETypedElementResultImpl extends EObjectImpl implements ETypedElementResult {
+ /**
+ * The cached value of the '{@link #getDerivedTypedElement() <em>Derived Typed Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDerivedTypedElement()
+ * @generated
+ * @ordered
+ */
+ protected ETypedElement derivedTypedElement;
+
+ /**
+ * The cached value of the '{@link #getParameterValues() <em>Parameter Values</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getParameterValues()
+ * @generated
+ * @ordered
+ */
+ protected EList<ParameterValue> parameterValues;
+
+ /**
+ * The cached value of the '{@link #getSource() <em>Source</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSource()
+ * @generated
+ * @ordered
+ */
+ protected EObject source;
+
+ /**
+ * The default value of the '{@link #getException() <em>Exception</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getException()
+ * @generated
+ * @ordered
+ */
+ protected static final Throwable EXCEPTION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getException() <em>Exception</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getException()
+ * @generated
+ * @ordered
+ */
+ protected Throwable exception = EXCEPTION_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ETypedElementResultImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RuntimePackage.Literals.ETYPED_ELEMENT_RESULT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ETypedElement getDerivedTypedElement() {
+ if (derivedTypedElement != null && derivedTypedElement.eIsProxy()) {
+ InternalEObject oldDerivedTypedElement = (InternalEObject)derivedTypedElement;
+ derivedTypedElement = (ETypedElement)eResolveProxy(oldDerivedTypedElement);
+ if (derivedTypedElement != oldDerivedTypedElement) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, RuntimePackage.ETYPED_ELEMENT_RESULT__DERIVED_TYPED_ELEMENT, oldDerivedTypedElement, derivedTypedElement));
+ }
+ }
+ return derivedTypedElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ETypedElement basicGetDerivedTypedElement() {
+ return derivedTypedElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setDerivedTypedElement(ETypedElement newDerivedTypedElement) {
+ ETypedElement oldDerivedTypedElement = derivedTypedElement;
+ derivedTypedElement = newDerivedTypedElement;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RuntimePackage.ETYPED_ELEMENT_RESULT__DERIVED_TYPED_ELEMENT, oldDerivedTypedElement, derivedTypedElement));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<ParameterValue> getParameterValues() {
+ if (parameterValues == null) {
+ parameterValues = new EObjectContainmentEList<ParameterValue>(ParameterValue.class, this, RuntimePackage.ETYPED_ELEMENT_RESULT__PARAMETER_VALUES);
+ }
+ return parameterValues;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EObject getSource() {
+ if (source != null && source.eIsProxy()) {
+ InternalEObject oldSource = (InternalEObject)source;
+ source = eResolveProxy(oldSource);
+ if (source != oldSource) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, RuntimePackage.ETYPED_ELEMENT_RESULT__SOURCE, oldSource, source));
+ }
+ }
+ return source;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EObject basicGetSource() {
+ return source;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSource(EObject newSource) {
+ EObject oldSource = source;
+ source = newSource;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RuntimePackage.ETYPED_ELEMENT_RESULT__SOURCE, oldSource, source));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Throwable getException() {
+ return exception;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setException(Throwable newException) {
+ Throwable oldException = exception;
+ exception = newException;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RuntimePackage.ETYPED_ELEMENT_RESULT__EXCEPTION, oldException, exception));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__PARAMETER_VALUES:
+ return ((InternalEList<?>)getParameterValues()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__DERIVED_TYPED_ELEMENT:
+ if (resolve) return getDerivedTypedElement();
+ return basicGetDerivedTypedElement();
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__PARAMETER_VALUES:
+ return getParameterValues();
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__SOURCE:
+ if (resolve) return getSource();
+ return basicGetSource();
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__EXCEPTION:
+ return getException();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__DERIVED_TYPED_ELEMENT:
+ setDerivedTypedElement((ETypedElement)newValue);
+ return;
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__PARAMETER_VALUES:
+ getParameterValues().clear();
+ getParameterValues().addAll((Collection<? extends ParameterValue>)newValue);
+ return;
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__SOURCE:
+ setSource((EObject)newValue);
+ return;
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__EXCEPTION:
+ setException((Throwable)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__DERIVED_TYPED_ELEMENT:
+ setDerivedTypedElement((ETypedElement)null);
+ return;
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__PARAMETER_VALUES:
+ getParameterValues().clear();
+ return;
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__SOURCE:
+ setSource((EObject)null);
+ return;
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__EXCEPTION:
+ setException(EXCEPTION_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__DERIVED_TYPED_ELEMENT:
+ return derivedTypedElement != null;
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__PARAMETER_VALUES:
+ return parameterValues != null && !parameterValues.isEmpty();
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__SOURCE:
+ return source != null;
+ case RuntimePackage.ETYPED_ELEMENT_RESULT__EXCEPTION:
+ return EXCEPTION_EDEFAULT == null ? exception != null : !EXCEPTION_EDEFAULT.equals(exception);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (exception: "); //$NON-NLS-1$
+ result.append(exception);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ETypedElementResultImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/RuntimeFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/RuntimeFactoryImpl.java
new file mode 100644
index 00000000000..c670d043636
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/RuntimeFactoryImpl.java
@@ -0,0 +1,197 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.*;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimeFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class RuntimeFactoryImpl extends EFactoryImpl implements RuntimeFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static RuntimeFactory init() {
+ try {
+ RuntimeFactory theRuntimeFactory = (RuntimeFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/runtime"); //$NON-NLS-1$
+ if (theRuntimeFactory != null) {
+ return theRuntimeFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new RuntimeFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public RuntimeFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case RuntimePackage.ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT: return createETypedElementPrimitiveTypeResult();
+ case RuntimePackage.ETYPED_ELEMENT_EOBJECT_RESULT: return createETypedElementEObjectResult();
+ case RuntimePackage.ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT: return createETypedElementPrimitiveTypeListResult();
+ case RuntimePackage.ETYPED_ELEMENT_EOBJECT_LIST_RESULT: return createETypedElementEObjectListResult();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object createFromString(EDataType eDataType, String initialValue) {
+ switch (eDataType.getClassifierID()) {
+ case RuntimePackage.JAVA_EXCEPTION:
+ return createJavaExceptionFromString(eDataType, initialValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String convertToString(EDataType eDataType, Object instanceValue) {
+ switch (eDataType.getClassifierID()) {
+ case RuntimePackage.JAVA_EXCEPTION:
+ return convertJavaExceptionToString(eDataType, instanceValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public <T> ETypedElementPrimitiveTypeResult<T> createETypedElementPrimitiveTypeResult() {
+ ETypedElementPrimitiveTypeResultImpl<T> eTypedElementPrimitiveTypeResult = new ETypedElementPrimitiveTypeResultImpl<T>();
+ return eTypedElementPrimitiveTypeResult;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public <T extends EObject> ETypedElementEObjectResult<T> createETypedElementEObjectResult() {
+ ETypedElementEObjectResultImpl<T> eTypedElementEObjectResult = new ETypedElementEObjectResultImpl<T>();
+ return eTypedElementEObjectResult;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public <T> ETypedElementPrimitiveTypeListResult<T> createETypedElementPrimitiveTypeListResult() {
+ ETypedElementPrimitiveTypeListResultImpl<T> eTypedElementPrimitiveTypeListResult = new ETypedElementPrimitiveTypeListResultImpl<T>();
+ return eTypedElementPrimitiveTypeListResult;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public <T extends EObject> ETypedElementEObjectListResult<T> createETypedElementEObjectListResult() {
+ ETypedElementEObjectListResultImpl<T> eTypedElementEObjectListResult = new ETypedElementEObjectListResultImpl<T>();
+ return eTypedElementEObjectListResult;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Throwable createJavaExceptionFromString(EDataType eDataType, String initialValue) {
+ return (Throwable)super.createFromString(eDataType, initialValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertJavaExceptionToString(EDataType eDataType, Object instanceValue) {
+ return super.convertToString(eDataType, instanceValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public RuntimePackage getRuntimePackage() {
+ return (RuntimePackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static RuntimePackage getPackage() {
+ return RuntimePackage.eINSTANCE;
+ }
+
+} //RuntimeFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/RuntimePackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/RuntimePackageImpl.java
new file mode 100644
index 00000000000..6c20db18170
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/impl/RuntimePackageImpl.java
@@ -0,0 +1,421 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+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.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.ExtensiblePackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimeFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class RuntimePackageImpl extends EPackageImpl implements RuntimePackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass eTypedElementPrimitiveTypeResultEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass eTypedElementEObjectResultEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass eTypedElementPrimitiveTypeListResultEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass eTypedElementEObjectListResultEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass eTypedElementResultEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EDataType javaExceptionEDataType = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private RuntimePackageImpl() {
+ super(eNS_URI, RuntimeFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 RuntimePackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static RuntimePackage init() {
+ if (isInited) return (RuntimePackage)EPackage.Registry.INSTANCE.getEPackage(RuntimePackage.eNS_URI);
+
+ // Obtain or create and register package
+ RuntimePackageImpl theRuntimePackage = (RuntimePackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof RuntimePackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new RuntimePackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ EFacetPackageImpl theEFacetPackage = (EFacetPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(EFacetPackage.eNS_URI) instanceof EFacetPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(EFacetPackage.eNS_URI) : EFacetPackage.eINSTANCE);
+ SerializationPackageImpl theSerializationPackage = (SerializationPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SerializationPackage.eNS_URI) instanceof SerializationPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SerializationPackage.eNS_URI) : SerializationPackage.eINSTANCE);
+ ExtensiblePackageImpl theExtensiblePackage = (ExtensiblePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ExtensiblePackage.eNS_URI) instanceof ExtensiblePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ExtensiblePackage.eNS_URI) : ExtensiblePackage.eINSTANCE);
+ QueryPackageImpl theQueryPackage = (QueryPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(QueryPackage.eNS_URI) instanceof QueryPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(QueryPackage.eNS_URI) : QueryPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theRuntimePackage.createPackageContents();
+ theEFacetPackage.createPackageContents();
+ theSerializationPackage.createPackageContents();
+ theExtensiblePackage.createPackageContents();
+ theQueryPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theRuntimePackage.initializePackageContents();
+ theEFacetPackage.initializePackageContents();
+ theSerializationPackage.initializePackageContents();
+ theExtensiblePackage.initializePackageContents();
+ theQueryPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theRuntimePackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(RuntimePackage.eNS_URI, theRuntimePackage);
+ return theRuntimePackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getETypedElementPrimitiveTypeResult() {
+ return eTypedElementPrimitiveTypeResultEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getETypedElementPrimitiveTypeResult_Result() {
+ return (EAttribute)eTypedElementPrimitiveTypeResultEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getETypedElementEObjectResult() {
+ return eTypedElementEObjectResultEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getETypedElementEObjectResult_Result() {
+ return (EReference)eTypedElementEObjectResultEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getETypedElementPrimitiveTypeListResult() {
+ return eTypedElementPrimitiveTypeListResultEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getETypedElementPrimitiveTypeListResult_ResultList() {
+ return (EAttribute)eTypedElementPrimitiveTypeListResultEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getETypedElementEObjectListResult() {
+ return eTypedElementEObjectListResultEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getETypedElementEObjectListResult_ResultList() {
+ return (EReference)eTypedElementEObjectListResultEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getETypedElementResult() {
+ return eTypedElementResultEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getETypedElementResult_DerivedTypedElement() {
+ return (EReference)eTypedElementResultEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getETypedElementResult_ParameterValues() {
+ return (EReference)eTypedElementResultEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getETypedElementResult_Source() {
+ return (EReference)eTypedElementResultEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getETypedElementResult_Exception() {
+ return (EAttribute)eTypedElementResultEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EDataType getJavaException() {
+ return javaExceptionEDataType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public RuntimeFactory getRuntimeFactory() {
+ return (RuntimeFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ eTypedElementPrimitiveTypeResultEClass = createEClass(ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT);
+ createEAttribute(eTypedElementPrimitiveTypeResultEClass, ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT__RESULT);
+
+ eTypedElementEObjectResultEClass = createEClass(ETYPED_ELEMENT_EOBJECT_RESULT);
+ createEReference(eTypedElementEObjectResultEClass, ETYPED_ELEMENT_EOBJECT_RESULT__RESULT);
+
+ eTypedElementPrimitiveTypeListResultEClass = createEClass(ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT);
+ createEAttribute(eTypedElementPrimitiveTypeListResultEClass, ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT__RESULT_LIST);
+
+ eTypedElementEObjectListResultEClass = createEClass(ETYPED_ELEMENT_EOBJECT_LIST_RESULT);
+ createEReference(eTypedElementEObjectListResultEClass, ETYPED_ELEMENT_EOBJECT_LIST_RESULT__RESULT_LIST);
+
+ eTypedElementResultEClass = createEClass(ETYPED_ELEMENT_RESULT);
+ createEReference(eTypedElementResultEClass, ETYPED_ELEMENT_RESULT__DERIVED_TYPED_ELEMENT);
+ createEReference(eTypedElementResultEClass, ETYPED_ELEMENT_RESULT__PARAMETER_VALUES);
+ createEReference(eTypedElementResultEClass, ETYPED_ELEMENT_RESULT__SOURCE);
+ createEAttribute(eTypedElementResultEClass, ETYPED_ELEMENT_RESULT__EXCEPTION);
+
+ // Create data types
+ javaExceptionEDataType = createEDataType(JAVA_EXCEPTION);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ EFacetPackage theEFacetPackage = (EFacetPackage)EPackage.Registry.INSTANCE.getEPackage(EFacetPackage.eNS_URI);
+
+ // Create type parameters
+ ETypeParameter eTypedElementPrimitiveTypeResultEClass_T = addETypeParameter(eTypedElementPrimitiveTypeResultEClass, "T"); //$NON-NLS-1$
+ ETypeParameter eTypedElementEObjectResultEClass_T = addETypeParameter(eTypedElementEObjectResultEClass, "T"); //$NON-NLS-1$
+ ETypeParameter eTypedElementPrimitiveTypeListResultEClass_T = addETypeParameter(eTypedElementPrimitiveTypeListResultEClass, "T"); //$NON-NLS-1$
+ ETypeParameter eTypedElementEObjectListResultEClass_T = addETypeParameter(eTypedElementEObjectListResultEClass, "T"); //$NON-NLS-1$
+
+ // Set bounds for type parameters
+ EGenericType g1 = createEGenericType(ecorePackage.getEObject());
+ eTypedElementEObjectResultEClass_T.getEBounds().add(g1);
+ g1 = createEGenericType(ecorePackage.getEObject());
+ eTypedElementEObjectListResultEClass_T.getEBounds().add(g1);
+
+ // Add supertypes to classes
+ eTypedElementPrimitiveTypeResultEClass.getESuperTypes().add(this.getETypedElementResult());
+ eTypedElementEObjectResultEClass.getESuperTypes().add(this.getETypedElementResult());
+ eTypedElementPrimitiveTypeListResultEClass.getESuperTypes().add(this.getETypedElementResult());
+ eTypedElementEObjectListResultEClass.getESuperTypes().add(this.getETypedElementResult());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(eTypedElementPrimitiveTypeResultEClass, ETypedElementPrimitiveTypeResult.class, "ETypedElementPrimitiveTypeResult", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ g1 = createEGenericType(eTypedElementPrimitiveTypeResultEClass_T);
+ initEAttribute(getETypedElementPrimitiveTypeResult_Result(), g1, "result", null, 0, 1, ETypedElementPrimitiveTypeResult.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(eTypedElementEObjectResultEClass, ETypedElementEObjectResult.class, "ETypedElementEObjectResult", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ g1 = createEGenericType(eTypedElementEObjectResultEClass_T);
+ initEReference(getETypedElementEObjectResult_Result(), g1, null, "result", null, 0, 1, ETypedElementEObjectResult.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(eTypedElementPrimitiveTypeListResultEClass, ETypedElementPrimitiveTypeListResult.class, "ETypedElementPrimitiveTypeListResult", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ g1 = createEGenericType(eTypedElementPrimitiveTypeListResultEClass_T);
+ initEAttribute(getETypedElementPrimitiveTypeListResult_ResultList(), g1, "resultList", null, 0, -1, ETypedElementPrimitiveTypeListResult.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(eTypedElementEObjectListResultEClass, ETypedElementEObjectListResult.class, "ETypedElementEObjectListResult", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ g1 = createEGenericType(eTypedElementEObjectListResultEClass_T);
+ initEReference(getETypedElementEObjectListResult_ResultList(), g1, null, "resultList", null, 0, -1, ETypedElementEObjectListResult.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(eTypedElementResultEClass, ETypedElementResult.class, "ETypedElementResult", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getETypedElementResult_DerivedTypedElement(), ecorePackage.getETypedElement(), null, "derivedTypedElement", null, 1, 1, ETypedElementResult.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEReference(getETypedElementResult_ParameterValues(), theEFacetPackage.getParameterValue(), null, "parameterValues", null, 0, -1, ETypedElementResult.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEReference(getETypedElementResult_Source(), ecorePackage.getEObject(), null, "source", null, 1, 1, ETypedElementResult.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getETypedElementResult_Exception(), this.getJavaException(), "exception", null, 0, 1, ETypedElementResult.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ // Initialize data types
+ initEDataType(javaExceptionEDataType, Throwable.class, "JavaException", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ }
+
+} //RuntimePackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/util/RuntimeAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/util/RuntimeAdapterFactory.java
new file mode 100644
index 00000000000..17c905e47a6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/util/RuntimeAdapterFactory.java
@@ -0,0 +1,212 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.*;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage
+ * @generated
+ */
+public class RuntimeAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static RuntimePackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public RuntimeAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = RuntimePackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected RuntimeSwitch<Adapter> modelSwitch =
+ new RuntimeSwitch<Adapter>() {
+ @Override
+ public <T> Adapter caseETypedElementPrimitiveTypeResult(ETypedElementPrimitiveTypeResult<T> object) {
+ return createETypedElementPrimitiveTypeResultAdapter();
+ }
+ @Override
+ public <T extends EObject> Adapter caseETypedElementEObjectResult(ETypedElementEObjectResult<T> object) {
+ return createETypedElementEObjectResultAdapter();
+ }
+ @Override
+ public <T> Adapter caseETypedElementPrimitiveTypeListResult(ETypedElementPrimitiveTypeListResult<T> object) {
+ return createETypedElementPrimitiveTypeListResultAdapter();
+ }
+ @Override
+ public <T extends EObject> Adapter caseETypedElementEObjectListResult(ETypedElementEObjectListResult<T> object) {
+ return createETypedElementEObjectListResultAdapter();
+ }
+ @Override
+ public Adapter caseETypedElementResult(ETypedElementResult object) {
+ return createETypedElementResultAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult <em>ETyped Element Primitive Type Result</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.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult
+ * @generated
+ */
+ public Adapter createETypedElementPrimitiveTypeResultAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult <em>ETyped Element EObject Result</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.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult
+ * @generated
+ */
+ public Adapter createETypedElementEObjectResultAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult <em>ETyped Element Primitive Type List Result</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.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult
+ * @generated
+ */
+ public Adapter createETypedElementPrimitiveTypeListResultAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult <em>ETyped Element EObject List Result</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.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult
+ * @generated
+ */
+ public Adapter createETypedElementEObjectListResultAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult <em>ETyped Element Result</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.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult
+ * @generated
+ */
+ public Adapter createETypedElementResultAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //RuntimeAdapterFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/util/RuntimeSwitch.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/util/RuntimeSwitch.java
new file mode 100644
index 00000000000..0a6d8f2ba2d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/runtime/util/RuntimeSwitch.java
@@ -0,0 +1,236 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.*;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementEObjectResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeListResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementPrimitiveTypeResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage
+ * @generated
+ */
+public class RuntimeSwitch<T1> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static RuntimePackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public RuntimeSwitch() {
+ if (modelPackage == null) {
+ modelPackage = RuntimePackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T1 doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T1 doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T1 doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case RuntimePackage.ETYPED_ELEMENT_PRIMITIVE_TYPE_RESULT: {
+ ETypedElementPrimitiveTypeResult<?> eTypedElementPrimitiveTypeResult = (ETypedElementPrimitiveTypeResult<?>)theEObject;
+ T1 result = caseETypedElementPrimitiveTypeResult(eTypedElementPrimitiveTypeResult);
+ if (result == null) result = caseETypedElementResult(eTypedElementPrimitiveTypeResult);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case RuntimePackage.ETYPED_ELEMENT_EOBJECT_RESULT: {
+ ETypedElementEObjectResult<?> eTypedElementEObjectResult = (ETypedElementEObjectResult<?>)theEObject;
+ T1 result = caseETypedElementEObjectResult(eTypedElementEObjectResult);
+ if (result == null) result = caseETypedElementResult(eTypedElementEObjectResult);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case RuntimePackage.ETYPED_ELEMENT_PRIMITIVE_TYPE_LIST_RESULT: {
+ ETypedElementPrimitiveTypeListResult<?> eTypedElementPrimitiveTypeListResult = (ETypedElementPrimitiveTypeListResult<?>)theEObject;
+ T1 result = caseETypedElementPrimitiveTypeListResult(eTypedElementPrimitiveTypeListResult);
+ if (result == null) result = caseETypedElementResult(eTypedElementPrimitiveTypeListResult);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case RuntimePackage.ETYPED_ELEMENT_EOBJECT_LIST_RESULT: {
+ ETypedElementEObjectListResult<?> eTypedElementEObjectListResult = (ETypedElementEObjectListResult<?>)theEObject;
+ T1 result = caseETypedElementEObjectListResult(eTypedElementEObjectListResult);
+ if (result == null) result = caseETypedElementResult(eTypedElementEObjectListResult);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case RuntimePackage.ETYPED_ELEMENT_RESULT: {
+ ETypedElementResult eTypedElementResult = (ETypedElementResult)theEObject;
+ T1 result = caseETypedElementResult(eTypedElementResult);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>ETyped Element Primitive Type Result</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>ETyped Element Primitive Type Result</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public <T> T1 caseETypedElementPrimitiveTypeResult(ETypedElementPrimitiveTypeResult<T> object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>ETyped Element EObject Result</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>ETyped Element EObject Result</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public <T extends EObject> T1 caseETypedElementEObjectResult(ETypedElementEObjectResult<T> object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>ETyped Element Primitive Type List Result</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>ETyped Element Primitive Type List Result</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public <T> T1 caseETypedElementPrimitiveTypeListResult(ETypedElementPrimitiveTypeListResult<T> object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>ETyped Element EObject List Result</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>ETyped Element EObject List Result</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public <T extends EObject> T1 caseETypedElementEObjectListResult(ETypedElementEObjectListResult<T> object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>ETyped Element Result</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>ETyped Element Result</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T1 caseETypedElementResult(ETypedElementResult object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T1 defaultCase(EObject object) {
+ return null;
+ }
+
+} //RuntimeSwitch
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/AbstractAttributeInstance.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/AbstractAttributeInstance.java
new file mode 100644
index 00000000000..37cfcb1a845
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/AbstractAttributeInstance.java
@@ -0,0 +1,63 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Abstract Attribute Instance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance#getEAttribute <em>EAttribute</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getAbstractAttributeInstance()
+ * @model
+ * @generated
+ */
+public interface AbstractAttributeInstance extends EObject {
+ /**
+ * Returns the value of the '<em><b>EAttribute</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>EAttribute</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>EAttribute</em>' reference.
+ * @see #setEAttribute(EAttribute)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getAbstractAttributeInstance_EAttribute()
+ * @model required="true"
+ * @generated
+ */
+ EAttribute getEAttribute();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance#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);
+
+} // AbstractAttributeInstance
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/AbstractReferenceInstance.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/AbstractReferenceInstance.java
new file mode 100644
index 00000000000..3699916cf6d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/AbstractReferenceInstance.java
@@ -0,0 +1,63 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Abstract Reference Instance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance#getEReference <em>EReference</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getAbstractReferenceInstance()
+ * @model
+ * @generated
+ */
+public interface AbstractReferenceInstance extends EObject {
+ /**
+ * Returns the value of the '<em><b>EReference</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>EReference</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>EReference</em>' reference.
+ * @see #setEReference(EReference)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getAbstractReferenceInstance_EReference()
+ * @model required="true"
+ * @generated
+ */
+ EReference getEReference();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance#getEReference <em>EReference</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>EReference</em>' reference.
+ * @see #getEReference()
+ * @generated
+ */
+ void setEReference(EReference value);
+
+} // AbstractReferenceInstance
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/ExtendedEObjectReference.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/ExtendedEObjectReference.java
new file mode 100644
index 00000000000..d95db448be4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/ExtendedEObjectReference.java
@@ -0,0 +1,97 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Extended EObject Reference</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference#getExtendedEObject <em>Extended EObject</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference#getAttributeInstances <em>Attribute Instances</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference#getReferenceInstances <em>Reference Instances</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getExtendedEObjectReference()
+ * @model
+ * @generated
+ */
+public interface ExtendedEObjectReference extends EObject {
+ /**
+ * Returns the value of the '<em><b>Extended EObject</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Extended EObject</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Extended EObject</em>' reference.
+ * @see #setExtendedEObject(EObject)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getExtendedEObjectReference_ExtendedEObject()
+ * @model required="true"
+ * @generated
+ */
+ EObject getExtendedEObject();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference#getExtendedEObject <em>Extended EObject</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Extended EObject</em>' reference.
+ * @see #getExtendedEObject()
+ * @generated
+ */
+ void setExtendedEObject(EObject value);
+
+ /**
+ * Returns the value of the '<em><b>Attribute Instances</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Attribute Instances</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Attribute Instances</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getExtendedEObjectReference_AttributeInstances()
+ * @model containment="true"
+ * @generated
+ */
+ EList<AbstractAttributeInstance> getAttributeInstances();
+
+ /**
+ * Returns the value of the '<em><b>Reference Instances</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Reference Instances</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Reference Instances</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getExtendedEObjectReference_ReferenceInstances()
+ * @model containment="true"
+ * @generated
+ */
+ EList<AbstractReferenceInstance> getReferenceInstances();
+
+} // ExtendedEObjectReference
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/MultiValuedAttributeInstance.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/MultiValuedAttributeInstance.java
new file mode 100644
index 00000000000..8473a5f30fc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/MultiValuedAttributeInstance.java
@@ -0,0 +1,52 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Multi Valued Attribute Instance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedAttributeInstance#getValues <em>Values</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getMultiValuedAttributeInstance()
+ * @model
+ * @generated
+ */
+public interface MultiValuedAttributeInstance extends AbstractAttributeInstance {
+ /**
+ * Returns the value of the '<em><b>Values</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.Object}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Values</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Values</em>' attribute list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getMultiValuedAttributeInstance_Values()
+ * @model
+ * @generated
+ */
+ EList<Object> getValues();
+
+} // MultiValuedAttributeInstance
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/MultiValuedContainmentReferenceInstance.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/MultiValuedContainmentReferenceInstance.java
new file mode 100644
index 00000000000..afd348895c0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/MultiValuedContainmentReferenceInstance.java
@@ -0,0 +1,53 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Multi Valued Containment Reference Instance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedContainmentReferenceInstance#getOwnedElements <em>Owned Elements</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getMultiValuedContainmentReferenceInstance()
+ * @model
+ * @generated
+ */
+public interface MultiValuedContainmentReferenceInstance extends AbstractReferenceInstance {
+ /**
+ * Returns the value of the '<em><b>Owned Elements</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.emf.ecore.EObject}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Owned Elements</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Owned Elements</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getMultiValuedContainmentReferenceInstance_OwnedElements()
+ * @model containment="true"
+ * @generated
+ */
+ EList<EObject> getOwnedElements();
+
+} // MultiValuedContainmentReferenceInstance
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/MultiValuedReferenceInstance.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/MultiValuedReferenceInstance.java
new file mode 100644
index 00000000000..65dc40c957f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/MultiValuedReferenceInstance.java
@@ -0,0 +1,53 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Multi Valued Reference Instance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedReferenceInstance#getReferencedElements <em>Referenced Elements</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getMultiValuedReferenceInstance()
+ * @model
+ * @generated
+ */
+public interface MultiValuedReferenceInstance extends AbstractReferenceInstance {
+ /**
+ * Returns the value of the '<em><b>Referenced Elements</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.emf.ecore.EObject}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Referenced Elements</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Referenced Elements</em>' reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getMultiValuedReferenceInstance_ReferencedElements()
+ * @model
+ * @generated
+ */
+ EList<EObject> getReferencedElements();
+
+} // MultiValuedReferenceInstance
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SerializationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SerializationFactory.java
new file mode 100644
index 00000000000..22db1beee0c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SerializationFactory.java
@@ -0,0 +1,127 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage
+ * @generated
+ */
+public interface SerializationFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ SerializationFactory eINSTANCE = org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Abstract Reference Instance</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Abstract Reference Instance</em>'.
+ * @generated
+ */
+ AbstractReferenceInstance createAbstractReferenceInstance();
+
+ /**
+ * Returns a new object of class '<em>Multi Valued Containment Reference Instance</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Multi Valued Containment Reference Instance</em>'.
+ * @generated
+ */
+ MultiValuedContainmentReferenceInstance createMultiValuedContainmentReferenceInstance();
+
+ /**
+ * Returns a new object of class '<em>Multi Valued Reference Instance</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Multi Valued Reference Instance</em>'.
+ * @generated
+ */
+ MultiValuedReferenceInstance createMultiValuedReferenceInstance();
+
+ /**
+ * Returns a new object of class '<em>Single Valued Attribute Instance</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Single Valued Attribute Instance</em>'.
+ * @generated
+ */
+ SingleValuedAttributeInstance createSingleValuedAttributeInstance();
+
+ /**
+ * Returns a new object of class '<em>Extended EObject Reference</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Extended EObject Reference</em>'.
+ * @generated
+ */
+ ExtendedEObjectReference createExtendedEObjectReference();
+
+ /**
+ * Returns a new object of class '<em>Single Valued Containment Reference Instance</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Single Valued Containment Reference Instance</em>'.
+ * @generated
+ */
+ SingleValuedContainmentReferenceInstance createSingleValuedContainmentReferenceInstance();
+
+ /**
+ * Returns a new object of class '<em>Single Valued Reference Instance</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Single Valued Reference Instance</em>'.
+ * @generated
+ */
+ SingleValuedReferenceInstance createSingleValuedReferenceInstance();
+
+ /**
+ * Returns a new object of class '<em>Multi Valued Attribute Instance</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Multi Valued Attribute Instance</em>'.
+ * @generated
+ */
+ MultiValuedAttributeInstance createMultiValuedAttributeInstance();
+
+ /**
+ * Returns a new object of class '<em>Abstract Attribute Instance</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Abstract Attribute Instance</em>'.
+ * @generated
+ */
+ AbstractAttributeInstance createAbstractAttributeInstance();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ SerializationPackage getSerializationPackage();
+
+} //SerializationFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SerializationPackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SerializationPackage.java
new file mode 100644
index 00000000000..3751c6ba497
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SerializationPackage.java
@@ -0,0 +1,809 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface SerializationPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "serialization"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/serialization"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "serialization"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ SerializationPackage eINSTANCE = org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.AbstractReferenceInstanceImpl <em>Abstract Reference Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.AbstractReferenceInstanceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getAbstractReferenceInstance()
+ * @generated
+ */
+ int ABSTRACT_REFERENCE_INSTANCE = 0;
+
+ /**
+ * The feature id for the '<em><b>EReference</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_REFERENCE_INSTANCE__EREFERENCE = 0;
+
+ /**
+ * The number of structural features of the '<em>Abstract Reference Instance</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_REFERENCE_INSTANCE_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.MultiValuedContainmentReferenceInstanceImpl <em>Multi Valued Containment Reference Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.MultiValuedContainmentReferenceInstanceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getMultiValuedContainmentReferenceInstance()
+ * @generated
+ */
+ int MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE = 1;
+
+ /**
+ * The feature id for the '<em><b>EReference</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__EREFERENCE = ABSTRACT_REFERENCE_INSTANCE__EREFERENCE;
+
+ /**
+ * The feature id for the '<em><b>Owned Elements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS = ABSTRACT_REFERENCE_INSTANCE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Multi Valued Containment Reference Instance</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE_FEATURE_COUNT = ABSTRACT_REFERENCE_INSTANCE_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.MultiValuedReferenceInstanceImpl <em>Multi Valued Reference Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.MultiValuedReferenceInstanceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getMultiValuedReferenceInstance()
+ * @generated
+ */
+ int MULTI_VALUED_REFERENCE_INSTANCE = 2;
+
+ /**
+ * The feature id for the '<em><b>EReference</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_VALUED_REFERENCE_INSTANCE__EREFERENCE = ABSTRACT_REFERENCE_INSTANCE__EREFERENCE;
+
+ /**
+ * The feature id for the '<em><b>Referenced Elements</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENTS = ABSTRACT_REFERENCE_INSTANCE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Multi Valued Reference Instance</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_VALUED_REFERENCE_INSTANCE_FEATURE_COUNT = ABSTRACT_REFERENCE_INSTANCE_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.AbstractAttributeInstanceImpl <em>Abstract Attribute Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.AbstractAttributeInstanceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getAbstractAttributeInstance()
+ * @generated
+ */
+ int ABSTRACT_ATTRIBUTE_INSTANCE = 8;
+
+ /**
+ * The feature id for the '<em><b>EAttribute</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_ATTRIBUTE_INSTANCE__EATTRIBUTE = 0;
+
+ /**
+ * The number of structural features of the '<em>Abstract Attribute Instance</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_ATTRIBUTE_INSTANCE_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SingleValuedAttributeInstanceImpl <em>Single Valued Attribute Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SingleValuedAttributeInstanceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getSingleValuedAttributeInstance()
+ * @generated
+ */
+ int SINGLE_VALUED_ATTRIBUTE_INSTANCE = 3;
+
+ /**
+ * The feature id for the '<em><b>EAttribute</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SINGLE_VALUED_ATTRIBUTE_INSTANCE__EATTRIBUTE = ABSTRACT_ATTRIBUTE_INSTANCE__EATTRIBUTE;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SINGLE_VALUED_ATTRIBUTE_INSTANCE__VALUE = ABSTRACT_ATTRIBUTE_INSTANCE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Single Valued Attribute Instance</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SINGLE_VALUED_ATTRIBUTE_INSTANCE_FEATURE_COUNT = ABSTRACT_ATTRIBUTE_INSTANCE_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.ExtendedEObjectReferenceImpl <em>Extended EObject Reference</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.ExtendedEObjectReferenceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getExtendedEObjectReference()
+ * @generated
+ */
+ int EXTENDED_EOBJECT_REFERENCE = 4;
+
+ /**
+ * The feature id for the '<em><b>Extended EObject</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXTENDED_EOBJECT_REFERENCE__EXTENDED_EOBJECT = 0;
+
+ /**
+ * The feature id for the '<em><b>Attribute Instances</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXTENDED_EOBJECT_REFERENCE__ATTRIBUTE_INSTANCES = 1;
+
+ /**
+ * The feature id for the '<em><b>Reference Instances</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXTENDED_EOBJECT_REFERENCE__REFERENCE_INSTANCES = 2;
+
+ /**
+ * The number of structural features of the '<em>Extended EObject Reference</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int EXTENDED_EOBJECT_REFERENCE_FEATURE_COUNT = 3;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SingleValuedContainmentReferenceInstanceImpl <em>Single Valued Containment Reference Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SingleValuedContainmentReferenceInstanceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getSingleValuedContainmentReferenceInstance()
+ * @generated
+ */
+ int SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE = 5;
+
+ /**
+ * The feature id for the '<em><b>EReference</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__EREFERENCE = ABSTRACT_REFERENCE_INSTANCE__EREFERENCE;
+
+ /**
+ * The feature id for the '<em><b>Owned Element</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT = ABSTRACT_REFERENCE_INSTANCE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Single Valued Containment Reference Instance</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE_FEATURE_COUNT = ABSTRACT_REFERENCE_INSTANCE_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SingleValuedReferenceInstanceImpl <em>Single Valued Reference Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SingleValuedReferenceInstanceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getSingleValuedReferenceInstance()
+ * @generated
+ */
+ int SINGLE_VALUED_REFERENCE_INSTANCE = 6;
+
+ /**
+ * The feature id for the '<em><b>EReference</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SINGLE_VALUED_REFERENCE_INSTANCE__EREFERENCE = ABSTRACT_REFERENCE_INSTANCE__EREFERENCE;
+
+ /**
+ * The feature id for the '<em><b>Referenced Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SINGLE_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENT = ABSTRACT_REFERENCE_INSTANCE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Single Valued Reference Instance</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SINGLE_VALUED_REFERENCE_INSTANCE_FEATURE_COUNT = ABSTRACT_REFERENCE_INSTANCE_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.MultiValuedAttributeInstanceImpl <em>Multi Valued Attribute Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.MultiValuedAttributeInstanceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getMultiValuedAttributeInstance()
+ * @generated
+ */
+ int MULTI_VALUED_ATTRIBUTE_INSTANCE = 7;
+
+ /**
+ * The feature id for the '<em><b>EAttribute</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_VALUED_ATTRIBUTE_INSTANCE__EATTRIBUTE = ABSTRACT_ATTRIBUTE_INSTANCE__EATTRIBUTE;
+
+ /**
+ * The feature id for the '<em><b>Values</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_VALUED_ATTRIBUTE_INSTANCE__VALUES = ABSTRACT_ATTRIBUTE_INSTANCE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Multi Valued Attribute Instance</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int MULTI_VALUED_ATTRIBUTE_INSTANCE_FEATURE_COUNT = ABSTRACT_ATTRIBUTE_INSTANCE_FEATURE_COUNT + 1;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance <em>Abstract Reference Instance</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Abstract Reference Instance</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance
+ * @generated
+ */
+ EClass getAbstractReferenceInstance();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance#getEReference <em>EReference</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>EReference</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance#getEReference()
+ * @see #getAbstractReferenceInstance()
+ * @generated
+ */
+ EReference getAbstractReferenceInstance_EReference();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedContainmentReferenceInstance <em>Multi Valued Containment Reference Instance</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Multi Valued Containment Reference Instance</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedContainmentReferenceInstance
+ * @generated
+ */
+ EClass getMultiValuedContainmentReferenceInstance();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedContainmentReferenceInstance#getOwnedElements <em>Owned Elements</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Owned Elements</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedContainmentReferenceInstance#getOwnedElements()
+ * @see #getMultiValuedContainmentReferenceInstance()
+ * @generated
+ */
+ EReference getMultiValuedContainmentReferenceInstance_OwnedElements();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedReferenceInstance <em>Multi Valued Reference Instance</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Multi Valued Reference Instance</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedReferenceInstance
+ * @generated
+ */
+ EClass getMultiValuedReferenceInstance();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedReferenceInstance#getReferencedElements <em>Referenced Elements</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Referenced Elements</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedReferenceInstance#getReferencedElements()
+ * @see #getMultiValuedReferenceInstance()
+ * @generated
+ */
+ EReference getMultiValuedReferenceInstance_ReferencedElements();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance <em>Single Valued Attribute Instance</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Single Valued Attribute Instance</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance
+ * @generated
+ */
+ EClass getSingleValuedAttributeInstance();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance#getValue()
+ * @see #getSingleValuedAttributeInstance()
+ * @generated
+ */
+ EAttribute getSingleValuedAttributeInstance_Value();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference <em>Extended EObject Reference</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Extended EObject Reference</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference
+ * @generated
+ */
+ EClass getExtendedEObjectReference();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference#getExtendedEObject <em>Extended EObject</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Extended EObject</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference#getExtendedEObject()
+ * @see #getExtendedEObjectReference()
+ * @generated
+ */
+ EReference getExtendedEObjectReference_ExtendedEObject();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference#getAttributeInstances <em>Attribute Instances</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Attribute Instances</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference#getAttributeInstances()
+ * @see #getExtendedEObjectReference()
+ * @generated
+ */
+ EReference getExtendedEObjectReference_AttributeInstances();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference#getReferenceInstances <em>Reference Instances</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Reference Instances</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference#getReferenceInstances()
+ * @see #getExtendedEObjectReference()
+ * @generated
+ */
+ EReference getExtendedEObjectReference_ReferenceInstances();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance <em>Single Valued Containment Reference Instance</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Single Valued Containment Reference Instance</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance
+ * @generated
+ */
+ EClass getSingleValuedContainmentReferenceInstance();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance#getOwnedElement <em>Owned Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Owned Element</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance#getOwnedElement()
+ * @see #getSingleValuedContainmentReferenceInstance()
+ * @generated
+ */
+ EReference getSingleValuedContainmentReferenceInstance_OwnedElement();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedReferenceInstance <em>Single Valued Reference Instance</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Single Valued Reference Instance</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedReferenceInstance
+ * @generated
+ */
+ EClass getSingleValuedReferenceInstance();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedReferenceInstance#getReferencedElement <em>Referenced Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Referenced Element</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedReferenceInstance#getReferencedElement()
+ * @see #getSingleValuedReferenceInstance()
+ * @generated
+ */
+ EReference getSingleValuedReferenceInstance_ReferencedElement();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedAttributeInstance <em>Multi Valued Attribute Instance</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Multi Valued Attribute Instance</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedAttributeInstance
+ * @generated
+ */
+ EClass getMultiValuedAttributeInstance();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedAttributeInstance#getValues <em>Values</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Values</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedAttributeInstance#getValues()
+ * @see #getMultiValuedAttributeInstance()
+ * @generated
+ */
+ EAttribute getMultiValuedAttributeInstance_Values();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance <em>Abstract Attribute Instance</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Abstract Attribute Instance</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance
+ * @generated
+ */
+ EClass getAbstractAttributeInstance();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance#getEAttribute <em>EAttribute</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>EAttribute</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance#getEAttribute()
+ * @see #getAbstractAttributeInstance()
+ * @generated
+ */
+ EReference getAbstractAttributeInstance_EAttribute();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ SerializationFactory getSerializationFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.AbstractReferenceInstanceImpl <em>Abstract Reference Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.AbstractReferenceInstanceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getAbstractReferenceInstance()
+ * @generated
+ */
+ EClass ABSTRACT_REFERENCE_INSTANCE = eINSTANCE.getAbstractReferenceInstance();
+
+ /**
+ * The meta object literal for the '<em><b>EReference</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ABSTRACT_REFERENCE_INSTANCE__EREFERENCE = eINSTANCE.getAbstractReferenceInstance_EReference();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.MultiValuedContainmentReferenceInstanceImpl <em>Multi Valued Containment Reference Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.MultiValuedContainmentReferenceInstanceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getMultiValuedContainmentReferenceInstance()
+ * @generated
+ */
+ EClass MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE = eINSTANCE.getMultiValuedContainmentReferenceInstance();
+
+ /**
+ * The meta object literal for the '<em><b>Owned Elements</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS = eINSTANCE.getMultiValuedContainmentReferenceInstance_OwnedElements();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.MultiValuedReferenceInstanceImpl <em>Multi Valued Reference Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.MultiValuedReferenceInstanceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getMultiValuedReferenceInstance()
+ * @generated
+ */
+ EClass MULTI_VALUED_REFERENCE_INSTANCE = eINSTANCE.getMultiValuedReferenceInstance();
+
+ /**
+ * The meta object literal for the '<em><b>Referenced Elements</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference MULTI_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENTS = eINSTANCE.getMultiValuedReferenceInstance_ReferencedElements();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SingleValuedAttributeInstanceImpl <em>Single Valued Attribute Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SingleValuedAttributeInstanceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getSingleValuedAttributeInstance()
+ * @generated
+ */
+ EClass SINGLE_VALUED_ATTRIBUTE_INSTANCE = eINSTANCE.getSingleValuedAttributeInstance();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SINGLE_VALUED_ATTRIBUTE_INSTANCE__VALUE = eINSTANCE.getSingleValuedAttributeInstance_Value();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.ExtendedEObjectReferenceImpl <em>Extended EObject Reference</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.ExtendedEObjectReferenceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getExtendedEObjectReference()
+ * @generated
+ */
+ EClass EXTENDED_EOBJECT_REFERENCE = eINSTANCE.getExtendedEObjectReference();
+
+ /**
+ * The meta object literal for the '<em><b>Extended EObject</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference EXTENDED_EOBJECT_REFERENCE__EXTENDED_EOBJECT = eINSTANCE.getExtendedEObjectReference_ExtendedEObject();
+
+ /**
+ * The meta object literal for the '<em><b>Attribute Instances</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference EXTENDED_EOBJECT_REFERENCE__ATTRIBUTE_INSTANCES = eINSTANCE.getExtendedEObjectReference_AttributeInstances();
+
+ /**
+ * The meta object literal for the '<em><b>Reference Instances</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference EXTENDED_EOBJECT_REFERENCE__REFERENCE_INSTANCES = eINSTANCE.getExtendedEObjectReference_ReferenceInstances();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SingleValuedContainmentReferenceInstanceImpl <em>Single Valued Containment Reference Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SingleValuedContainmentReferenceInstanceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getSingleValuedContainmentReferenceInstance()
+ * @generated
+ */
+ EClass SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE = eINSTANCE.getSingleValuedContainmentReferenceInstance();
+
+ /**
+ * The meta object literal for the '<em><b>Owned Element</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT = eINSTANCE.getSingleValuedContainmentReferenceInstance_OwnedElement();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SingleValuedReferenceInstanceImpl <em>Single Valued Reference Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SingleValuedReferenceInstanceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getSingleValuedReferenceInstance()
+ * @generated
+ */
+ EClass SINGLE_VALUED_REFERENCE_INSTANCE = eINSTANCE.getSingleValuedReferenceInstance();
+
+ /**
+ * The meta object literal for the '<em><b>Referenced Element</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference SINGLE_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENT = eINSTANCE.getSingleValuedReferenceInstance_ReferencedElement();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.MultiValuedAttributeInstanceImpl <em>Multi Valued Attribute Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.MultiValuedAttributeInstanceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getMultiValuedAttributeInstance()
+ * @generated
+ */
+ EClass MULTI_VALUED_ATTRIBUTE_INSTANCE = eINSTANCE.getMultiValuedAttributeInstance();
+
+ /**
+ * The meta object literal for the '<em><b>Values</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute MULTI_VALUED_ATTRIBUTE_INSTANCE__VALUES = eINSTANCE.getMultiValuedAttributeInstance_Values();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.AbstractAttributeInstanceImpl <em>Abstract Attribute Instance</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.AbstractAttributeInstanceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SerializationPackageImpl#getAbstractAttributeInstance()
+ * @generated
+ */
+ EClass ABSTRACT_ATTRIBUTE_INSTANCE = eINSTANCE.getAbstractAttributeInstance();
+
+ /**
+ * The meta object literal for the '<em><b>EAttribute</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference ABSTRACT_ATTRIBUTE_INSTANCE__EATTRIBUTE = eINSTANCE.getAbstractAttributeInstance_EAttribute();
+
+ }
+
+} //SerializationPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SingleValuedAttributeInstance.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SingleValuedAttributeInstance.java
new file mode 100644
index 00000000000..cef1e9800d5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SingleValuedAttributeInstance.java
@@ -0,0 +1,61 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Single Valued Attribute Instance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getSingleValuedAttributeInstance()
+ * @model
+ * @generated
+ */
+public interface SingleValuedAttributeInstance extends AbstractAttributeInstance {
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see #setValue(Object)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getSingleValuedAttributeInstance_Value()
+ * @model
+ * @generated
+ */
+ Object getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance#getValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' attribute.
+ * @see #getValue()
+ * @generated
+ */
+ void setValue(Object value);
+
+} // SingleValuedAttributeInstance
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SingleValuedContainmentReferenceInstance.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SingleValuedContainmentReferenceInstance.java
new file mode 100644
index 00000000000..ff0f822b1a3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SingleValuedContainmentReferenceInstance.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Single Valued Containment Reference Instance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance#getOwnedElement <em>Owned Element</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getSingleValuedContainmentReferenceInstance()
+ * @model
+ * @generated
+ */
+public interface SingleValuedContainmentReferenceInstance extends AbstractReferenceInstance {
+ /**
+ * Returns the value of the '<em><b>Owned Element</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Owned Element</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Owned Element</em>' containment reference.
+ * @see #setOwnedElement(EObject)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getSingleValuedContainmentReferenceInstance_OwnedElement()
+ * @model containment="true"
+ * @generated
+ */
+ EObject getOwnedElement();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance#getOwnedElement <em>Owned Element</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Owned Element</em>' containment reference.
+ * @see #getOwnedElement()
+ * @generated
+ */
+ void setOwnedElement(EObject value);
+
+} // SingleValuedContainmentReferenceInstance
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SingleValuedReferenceInstance.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SingleValuedReferenceInstance.java
new file mode 100644
index 00000000000..265239e8d0c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/SingleValuedReferenceInstance.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Single Valued Reference Instance</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedReferenceInstance#getReferencedElement <em>Referenced Element</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getSingleValuedReferenceInstance()
+ * @model
+ * @generated
+ */
+public interface SingleValuedReferenceInstance extends AbstractReferenceInstance {
+ /**
+ * Returns the value of the '<em><b>Referenced Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Referenced Element</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Referenced Element</em>' reference.
+ * @see #setReferencedElement(EObject)
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#getSingleValuedReferenceInstance_ReferencedElement()
+ * @model
+ * @generated
+ */
+ EObject getReferencedElement();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedReferenceInstance#getReferencedElement <em>Referenced Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Referenced Element</em>' reference.
+ * @see #getReferencedElement()
+ * @generated
+ */
+ void setReferencedElement(EObject value);
+
+} // SingleValuedReferenceInstance
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/AbstractAttributeInstanceImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/AbstractAttributeInstanceImpl.java
new file mode 100644
index 00000000000..3bdefc62cc1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/AbstractAttributeInstanceImpl.java
@@ -0,0 +1,166 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Abstract Attribute Instance</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.AbstractAttributeInstanceImpl#getEAttribute <em>EAttribute</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class AbstractAttributeInstanceImpl extends EObjectImpl implements AbstractAttributeInstance {
+ /**
+ * The cached value of the '{@link #getEAttribute() <em>EAttribute</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEAttribute()
+ * @generated
+ * @ordered
+ */
+ protected EAttribute eAttribute;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected AbstractAttributeInstanceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SerializationPackage.Literals.ABSTRACT_ATTRIBUTE_INSTANCE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ 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, SerializationPackage.ABSTRACT_ATTRIBUTE_INSTANCE__EATTRIBUTE, oldEAttribute, eAttribute));
+ }
+ }
+ return eAttribute;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute basicGetEAttribute() {
+ return eAttribute;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setEAttribute(EAttribute newEAttribute) {
+ EAttribute oldEAttribute = eAttribute;
+ eAttribute = newEAttribute;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SerializationPackage.ABSTRACT_ATTRIBUTE_INSTANCE__EATTRIBUTE, oldEAttribute, eAttribute));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SerializationPackage.ABSTRACT_ATTRIBUTE_INSTANCE__EATTRIBUTE:
+ if (resolve) return getEAttribute();
+ return basicGetEAttribute();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SerializationPackage.ABSTRACT_ATTRIBUTE_INSTANCE__EATTRIBUTE:
+ setEAttribute((EAttribute)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.ABSTRACT_ATTRIBUTE_INSTANCE__EATTRIBUTE:
+ setEAttribute((EAttribute)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.ABSTRACT_ATTRIBUTE_INSTANCE__EATTRIBUTE:
+ return eAttribute != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //AbstractAttributeInstanceImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/AbstractReferenceInstanceImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/AbstractReferenceInstanceImpl.java
new file mode 100644
index 00000000000..dbf78af165b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/AbstractReferenceInstanceImpl.java
@@ -0,0 +1,166 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Abstract Reference Instance</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.AbstractReferenceInstanceImpl#getEReference <em>EReference</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class AbstractReferenceInstanceImpl extends EObjectImpl implements AbstractReferenceInstance {
+ /**
+ * The cached value of the '{@link #getEReference() <em>EReference</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEReference()
+ * @generated
+ * @ordered
+ */
+ protected EReference eReference;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected AbstractReferenceInstanceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SerializationPackage.Literals.ABSTRACT_REFERENCE_INSTANCE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getEReference() {
+ if (eReference != null && eReference.eIsProxy()) {
+ InternalEObject oldEReference = (InternalEObject)eReference;
+ eReference = (EReference)eResolveProxy(oldEReference);
+ if (eReference != oldEReference) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, SerializationPackage.ABSTRACT_REFERENCE_INSTANCE__EREFERENCE, oldEReference, eReference));
+ }
+ }
+ return eReference;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference basicGetEReference() {
+ return eReference;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setEReference(EReference newEReference) {
+ EReference oldEReference = eReference;
+ eReference = newEReference;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SerializationPackage.ABSTRACT_REFERENCE_INSTANCE__EREFERENCE, oldEReference, eReference));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SerializationPackage.ABSTRACT_REFERENCE_INSTANCE__EREFERENCE:
+ if (resolve) return getEReference();
+ return basicGetEReference();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SerializationPackage.ABSTRACT_REFERENCE_INSTANCE__EREFERENCE:
+ setEReference((EReference)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.ABSTRACT_REFERENCE_INSTANCE__EREFERENCE:
+ setEReference((EReference)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.ABSTRACT_REFERENCE_INSTANCE__EREFERENCE:
+ return eReference != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //AbstractReferenceInstanceImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/ExtendedEObjectReferenceImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/ExtendedEObjectReferenceImpl.java
new file mode 100644
index 00000000000..ee2986fd83a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/ExtendedEObjectReferenceImpl.java
@@ -0,0 +1,259 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+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.EObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Extended EObject Reference</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.ExtendedEObjectReferenceImpl#getExtendedEObject <em>Extended EObject</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.ExtendedEObjectReferenceImpl#getAttributeInstances <em>Attribute Instances</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.ExtendedEObjectReferenceImpl#getReferenceInstances <em>Reference Instances</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ExtendedEObjectReferenceImpl extends EObjectImpl implements ExtendedEObjectReference {
+ /**
+ * The cached value of the '{@link #getExtendedEObject() <em>Extended EObject</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getExtendedEObject()
+ * @generated
+ * @ordered
+ */
+ protected EObject extendedEObject;
+
+ /**
+ * The cached value of the '{@link #getAttributeInstances() <em>Attribute Instances</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAttributeInstances()
+ * @generated
+ * @ordered
+ */
+ protected EList<AbstractAttributeInstance> attributeInstances;
+
+ /**
+ * The cached value of the '{@link #getReferenceInstances() <em>Reference Instances</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getReferenceInstances()
+ * @generated
+ * @ordered
+ */
+ protected EList<AbstractReferenceInstance> referenceInstances;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected ExtendedEObjectReferenceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SerializationPackage.Literals.EXTENDED_EOBJECT_REFERENCE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EObject getExtendedEObject() {
+ if (extendedEObject != null && extendedEObject.eIsProxy()) {
+ InternalEObject oldExtendedEObject = (InternalEObject)extendedEObject;
+ extendedEObject = eResolveProxy(oldExtendedEObject);
+ if (extendedEObject != oldExtendedEObject) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, SerializationPackage.EXTENDED_EOBJECT_REFERENCE__EXTENDED_EOBJECT, oldExtendedEObject, extendedEObject));
+ }
+ }
+ return extendedEObject;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EObject basicGetExtendedEObject() {
+ return extendedEObject;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setExtendedEObject(EObject newExtendedEObject) {
+ EObject oldExtendedEObject = extendedEObject;
+ extendedEObject = newExtendedEObject;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SerializationPackage.EXTENDED_EOBJECT_REFERENCE__EXTENDED_EOBJECT, oldExtendedEObject, extendedEObject));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<AbstractAttributeInstance> getAttributeInstances() {
+ if (attributeInstances == null) {
+ attributeInstances = new EObjectContainmentEList<AbstractAttributeInstance>(AbstractAttributeInstance.class, this, SerializationPackage.EXTENDED_EOBJECT_REFERENCE__ATTRIBUTE_INSTANCES);
+ }
+ return attributeInstances;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<AbstractReferenceInstance> getReferenceInstances() {
+ if (referenceInstances == null) {
+ referenceInstances = new EObjectContainmentEList<AbstractReferenceInstance>(AbstractReferenceInstance.class, this, SerializationPackage.EXTENDED_EOBJECT_REFERENCE__REFERENCE_INSTANCES);
+ }
+ return referenceInstances;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE__ATTRIBUTE_INSTANCES:
+ return ((InternalEList<?>)getAttributeInstances()).basicRemove(otherEnd, msgs);
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE__REFERENCE_INSTANCES:
+ return ((InternalEList<?>)getReferenceInstances()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE__EXTENDED_EOBJECT:
+ if (resolve) return getExtendedEObject();
+ return basicGetExtendedEObject();
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE__ATTRIBUTE_INSTANCES:
+ return getAttributeInstances();
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE__REFERENCE_INSTANCES:
+ return getReferenceInstances();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE__EXTENDED_EOBJECT:
+ setExtendedEObject((EObject)newValue);
+ return;
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE__ATTRIBUTE_INSTANCES:
+ getAttributeInstances().clear();
+ getAttributeInstances().addAll((Collection<? extends AbstractAttributeInstance>)newValue);
+ return;
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE__REFERENCE_INSTANCES:
+ getReferenceInstances().clear();
+ getReferenceInstances().addAll((Collection<? extends AbstractReferenceInstance>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE__EXTENDED_EOBJECT:
+ setExtendedEObject((EObject)null);
+ return;
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE__ATTRIBUTE_INSTANCES:
+ getAttributeInstances().clear();
+ return;
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE__REFERENCE_INSTANCES:
+ getReferenceInstances().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE__EXTENDED_EOBJECT:
+ return extendedEObject != null;
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE__ATTRIBUTE_INSTANCES:
+ return attributeInstances != null && !attributeInstances.isEmpty();
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE__REFERENCE_INSTANCES:
+ return referenceInstances != null && !referenceInstances.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ExtendedEObjectReferenceImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/MultiValuedAttributeInstanceImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/MultiValuedAttributeInstanceImpl.java
new file mode 100644
index 00000000000..9f4e8360ba7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/MultiValuedAttributeInstanceImpl.java
@@ -0,0 +1,156 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Multi Valued Attribute Instance</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.MultiValuedAttributeInstanceImpl#getValues <em>Values</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class MultiValuedAttributeInstanceImpl extends AbstractAttributeInstanceImpl implements MultiValuedAttributeInstance {
+ /**
+ * The cached value of the '{@link #getValues() <em>Values</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValues()
+ * @generated
+ * @ordered
+ */
+ protected EList<Object> values;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected MultiValuedAttributeInstanceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SerializationPackage.Literals.MULTI_VALUED_ATTRIBUTE_INSTANCE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Object> getValues() {
+ if (values == null) {
+ values = new EDataTypeUniqueEList<Object>(Object.class, this, SerializationPackage.MULTI_VALUED_ATTRIBUTE_INSTANCE__VALUES);
+ }
+ return values;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SerializationPackage.MULTI_VALUED_ATTRIBUTE_INSTANCE__VALUES:
+ return getValues();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SerializationPackage.MULTI_VALUED_ATTRIBUTE_INSTANCE__VALUES:
+ getValues().clear();
+ getValues().addAll((Collection<? extends Object>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.MULTI_VALUED_ATTRIBUTE_INSTANCE__VALUES:
+ getValues().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.MULTI_VALUED_ATTRIBUTE_INSTANCE__VALUES:
+ return values != null && !values.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (values: "); //$NON-NLS-1$
+ result.append(values);
+ result.append(')');
+ return result.toString();
+ }
+
+} //MultiValuedAttributeInstanceImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/MultiValuedContainmentReferenceInstanceImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/MultiValuedContainmentReferenceInstanceImpl.java
new file mode 100644
index 00000000000..5c4cc83b1fb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/MultiValuedContainmentReferenceInstanceImpl.java
@@ -0,0 +1,158 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedContainmentReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Multi Valued Containment Reference Instance</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.MultiValuedContainmentReferenceInstanceImpl#getOwnedElements <em>Owned Elements</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class MultiValuedContainmentReferenceInstanceImpl extends AbstractReferenceInstanceImpl implements MultiValuedContainmentReferenceInstance {
+ /**
+ * The cached value of the '{@link #getOwnedElements() <em>Owned Elements</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOwnedElements()
+ * @generated
+ * @ordered
+ */
+ protected EList<EObject> ownedElements;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected MultiValuedContainmentReferenceInstanceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SerializationPackage.Literals.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<EObject> getOwnedElements() {
+ if (ownedElements == null) {
+ ownedElements = new EObjectContainmentEList<EObject>(EObject.class, this, SerializationPackage.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS);
+ }
+ return ownedElements;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case SerializationPackage.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS:
+ return ((InternalEList<?>)getOwnedElements()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SerializationPackage.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS:
+ return getOwnedElements();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SerializationPackage.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS:
+ getOwnedElements().clear();
+ getOwnedElements().addAll((Collection<? extends EObject>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS:
+ getOwnedElements().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS:
+ return ownedElements != null && !ownedElements.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //MultiValuedContainmentReferenceInstanceImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/MultiValuedReferenceInstanceImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/MultiValuedReferenceInstanceImpl.java
new file mode 100644
index 00000000000..20c2a084106
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/MultiValuedReferenceInstanceImpl.java
@@ -0,0 +1,141 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Multi Valued Reference Instance</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.MultiValuedReferenceInstanceImpl#getReferencedElements <em>Referenced Elements</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class MultiValuedReferenceInstanceImpl extends AbstractReferenceInstanceImpl implements MultiValuedReferenceInstance {
+ /**
+ * The cached value of the '{@link #getReferencedElements() <em>Referenced Elements</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getReferencedElements()
+ * @generated
+ * @ordered
+ */
+ protected EList<EObject> referencedElements;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected MultiValuedReferenceInstanceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SerializationPackage.Literals.MULTI_VALUED_REFERENCE_INSTANCE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<EObject> getReferencedElements() {
+ if (referencedElements == null) {
+ referencedElements = new EObjectResolvingEList<EObject>(EObject.class, this, SerializationPackage.MULTI_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENTS);
+ }
+ return referencedElements;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SerializationPackage.MULTI_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENTS:
+ return getReferencedElements();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SerializationPackage.MULTI_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENTS:
+ getReferencedElements().clear();
+ getReferencedElements().addAll((Collection<? extends EObject>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.MULTI_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENTS:
+ getReferencedElements().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.MULTI_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENTS:
+ return referencedElements != null && !referencedElements.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //MultiValuedReferenceInstanceImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SerializationFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SerializationFactoryImpl.java
new file mode 100644
index 00000000000..fd35b08be88
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SerializationFactoryImpl.java
@@ -0,0 +1,203 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.*;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedContainmentReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedReferenceInstance;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class SerializationFactoryImpl extends EFactoryImpl implements SerializationFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static SerializationFactory init() {
+ try {
+ SerializationFactory theSerializationFactory = (SerializationFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/serialization"); //$NON-NLS-1$
+ if (theSerializationFactory != null) {
+ return theSerializationFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new SerializationFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SerializationFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case SerializationPackage.ABSTRACT_REFERENCE_INSTANCE: return createAbstractReferenceInstance();
+ case SerializationPackage.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE: return createMultiValuedContainmentReferenceInstance();
+ case SerializationPackage.MULTI_VALUED_REFERENCE_INSTANCE: return createMultiValuedReferenceInstance();
+ case SerializationPackage.SINGLE_VALUED_ATTRIBUTE_INSTANCE: return createSingleValuedAttributeInstance();
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE: return createExtendedEObjectReference();
+ case SerializationPackage.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE: return createSingleValuedContainmentReferenceInstance();
+ case SerializationPackage.SINGLE_VALUED_REFERENCE_INSTANCE: return createSingleValuedReferenceInstance();
+ case SerializationPackage.MULTI_VALUED_ATTRIBUTE_INSTANCE: return createMultiValuedAttributeInstance();
+ case SerializationPackage.ABSTRACT_ATTRIBUTE_INSTANCE: return createAbstractAttributeInstance();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AbstractReferenceInstance createAbstractReferenceInstance() {
+ AbstractReferenceInstanceImpl abstractReferenceInstance = new AbstractReferenceInstanceImpl();
+ return abstractReferenceInstance;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public MultiValuedContainmentReferenceInstance createMultiValuedContainmentReferenceInstance() {
+ MultiValuedContainmentReferenceInstanceImpl multiValuedContainmentReferenceInstance = new MultiValuedContainmentReferenceInstanceImpl();
+ return multiValuedContainmentReferenceInstance;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public MultiValuedReferenceInstance createMultiValuedReferenceInstance() {
+ MultiValuedReferenceInstanceImpl multiValuedReferenceInstance = new MultiValuedReferenceInstanceImpl();
+ return multiValuedReferenceInstance;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SingleValuedAttributeInstance createSingleValuedAttributeInstance() {
+ SingleValuedAttributeInstanceImpl singleValuedAttributeInstance = new SingleValuedAttributeInstanceImpl();
+ return singleValuedAttributeInstance;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ExtendedEObjectReference createExtendedEObjectReference() {
+ ExtendedEObjectReferenceImpl extendedEObjectReference = new ExtendedEObjectReferenceImpl();
+ return extendedEObjectReference;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SingleValuedContainmentReferenceInstance createSingleValuedContainmentReferenceInstance() {
+ SingleValuedContainmentReferenceInstanceImpl singleValuedContainmentReferenceInstance = new SingleValuedContainmentReferenceInstanceImpl();
+ return singleValuedContainmentReferenceInstance;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SingleValuedReferenceInstance createSingleValuedReferenceInstance() {
+ SingleValuedReferenceInstanceImpl singleValuedReferenceInstance = new SingleValuedReferenceInstanceImpl();
+ return singleValuedReferenceInstance;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public MultiValuedAttributeInstance createMultiValuedAttributeInstance() {
+ MultiValuedAttributeInstanceImpl multiValuedAttributeInstance = new MultiValuedAttributeInstanceImpl();
+ return multiValuedAttributeInstance;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public AbstractAttributeInstance createAbstractAttributeInstance() {
+ AbstractAttributeInstanceImpl abstractAttributeInstance = new AbstractAttributeInstanceImpl();
+ return abstractAttributeInstance;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SerializationPackage getSerializationPackage() {
+ return (SerializationPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static SerializationPackage getPackage() {
+ return SerializationPackage.eINSTANCE;
+ }
+
+} //SerializationFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SerializationPackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SerializationPackageImpl.java
new file mode 100644
index 00000000000..8552982d055
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SerializationPackageImpl.java
@@ -0,0 +1,497 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.ExtensiblePackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.impl.EFacetPackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.QueryPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.query.impl.QueryPackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.RuntimePackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.impl.RuntimePackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedContainmentReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedReferenceInstance;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class SerializationPackageImpl extends EPackageImpl implements SerializationPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass abstractReferenceInstanceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass multiValuedContainmentReferenceInstanceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass multiValuedReferenceInstanceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass singleValuedAttributeInstanceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass extendedEObjectReferenceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass singleValuedContainmentReferenceInstanceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass singleValuedReferenceInstanceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass multiValuedAttributeInstanceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass abstractAttributeInstanceEClass = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private SerializationPackageImpl() {
+ super(eNS_URI, SerializationFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 SerializationPackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static SerializationPackage init() {
+ if (isInited) return (SerializationPackage)EPackage.Registry.INSTANCE.getEPackage(SerializationPackage.eNS_URI);
+
+ // Obtain or create and register package
+ SerializationPackageImpl theSerializationPackage = (SerializationPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof SerializationPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new SerializationPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ EFacetPackageImpl theEFacetPackage = (EFacetPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(EFacetPackage.eNS_URI) instanceof EFacetPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(EFacetPackage.eNS_URI) : EFacetPackage.eINSTANCE);
+ ExtensiblePackageImpl theExtensiblePackage = (ExtensiblePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ExtensiblePackage.eNS_URI) instanceof ExtensiblePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ExtensiblePackage.eNS_URI) : ExtensiblePackage.eINSTANCE);
+ QueryPackageImpl theQueryPackage = (QueryPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(QueryPackage.eNS_URI) instanceof QueryPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(QueryPackage.eNS_URI) : QueryPackage.eINSTANCE);
+ RuntimePackageImpl theRuntimePackage = (RuntimePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(RuntimePackage.eNS_URI) instanceof RuntimePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(RuntimePackage.eNS_URI) : RuntimePackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theSerializationPackage.createPackageContents();
+ theEFacetPackage.createPackageContents();
+ theExtensiblePackage.createPackageContents();
+ theQueryPackage.createPackageContents();
+ theRuntimePackage.createPackageContents();
+
+ // Initialize created meta-data
+ theSerializationPackage.initializePackageContents();
+ theEFacetPackage.initializePackageContents();
+ theExtensiblePackage.initializePackageContents();
+ theQueryPackage.initializePackageContents();
+ theRuntimePackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theSerializationPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(SerializationPackage.eNS_URI, theSerializationPackage);
+ return theSerializationPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAbstractReferenceInstance() {
+ return abstractReferenceInstanceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAbstractReferenceInstance_EReference() {
+ return (EReference)abstractReferenceInstanceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getMultiValuedContainmentReferenceInstance() {
+ return multiValuedContainmentReferenceInstanceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getMultiValuedContainmentReferenceInstance_OwnedElements() {
+ return (EReference)multiValuedContainmentReferenceInstanceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getMultiValuedReferenceInstance() {
+ return multiValuedReferenceInstanceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getMultiValuedReferenceInstance_ReferencedElements() {
+ return (EReference)multiValuedReferenceInstanceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSingleValuedAttributeInstance() {
+ return singleValuedAttributeInstanceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getSingleValuedAttributeInstance_Value() {
+ return (EAttribute)singleValuedAttributeInstanceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getExtendedEObjectReference() {
+ return extendedEObjectReferenceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getExtendedEObjectReference_ExtendedEObject() {
+ return (EReference)extendedEObjectReferenceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getExtendedEObjectReference_AttributeInstances() {
+ return (EReference)extendedEObjectReferenceEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getExtendedEObjectReference_ReferenceInstances() {
+ return (EReference)extendedEObjectReferenceEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSingleValuedContainmentReferenceInstance() {
+ return singleValuedContainmentReferenceInstanceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getSingleValuedContainmentReferenceInstance_OwnedElement() {
+ return (EReference)singleValuedContainmentReferenceInstanceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSingleValuedReferenceInstance() {
+ return singleValuedReferenceInstanceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getSingleValuedReferenceInstance_ReferencedElement() {
+ return (EReference)singleValuedReferenceInstanceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getMultiValuedAttributeInstance() {
+ return multiValuedAttributeInstanceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getMultiValuedAttributeInstance_Values() {
+ return (EAttribute)multiValuedAttributeInstanceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAbstractAttributeInstance() {
+ return abstractAttributeInstanceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getAbstractAttributeInstance_EAttribute() {
+ return (EReference)abstractAttributeInstanceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SerializationFactory getSerializationFactory() {
+ return (SerializationFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ abstractReferenceInstanceEClass = createEClass(ABSTRACT_REFERENCE_INSTANCE);
+ createEReference(abstractReferenceInstanceEClass, ABSTRACT_REFERENCE_INSTANCE__EREFERENCE);
+
+ multiValuedContainmentReferenceInstanceEClass = createEClass(MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE);
+ createEReference(multiValuedContainmentReferenceInstanceEClass, MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENTS);
+
+ multiValuedReferenceInstanceEClass = createEClass(MULTI_VALUED_REFERENCE_INSTANCE);
+ createEReference(multiValuedReferenceInstanceEClass, MULTI_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENTS);
+
+ singleValuedAttributeInstanceEClass = createEClass(SINGLE_VALUED_ATTRIBUTE_INSTANCE);
+ createEAttribute(singleValuedAttributeInstanceEClass, SINGLE_VALUED_ATTRIBUTE_INSTANCE__VALUE);
+
+ extendedEObjectReferenceEClass = createEClass(EXTENDED_EOBJECT_REFERENCE);
+ createEReference(extendedEObjectReferenceEClass, EXTENDED_EOBJECT_REFERENCE__EXTENDED_EOBJECT);
+ createEReference(extendedEObjectReferenceEClass, EXTENDED_EOBJECT_REFERENCE__ATTRIBUTE_INSTANCES);
+ createEReference(extendedEObjectReferenceEClass, EXTENDED_EOBJECT_REFERENCE__REFERENCE_INSTANCES);
+
+ singleValuedContainmentReferenceInstanceEClass = createEClass(SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE);
+ createEReference(singleValuedContainmentReferenceInstanceEClass, SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT);
+
+ singleValuedReferenceInstanceEClass = createEClass(SINGLE_VALUED_REFERENCE_INSTANCE);
+ createEReference(singleValuedReferenceInstanceEClass, SINGLE_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENT);
+
+ multiValuedAttributeInstanceEClass = createEClass(MULTI_VALUED_ATTRIBUTE_INSTANCE);
+ createEAttribute(multiValuedAttributeInstanceEClass, MULTI_VALUED_ATTRIBUTE_INSTANCE__VALUES);
+
+ abstractAttributeInstanceEClass = createEClass(ABSTRACT_ATTRIBUTE_INSTANCE);
+ createEReference(abstractAttributeInstanceEClass, ABSTRACT_ATTRIBUTE_INSTANCE__EATTRIBUTE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ multiValuedContainmentReferenceInstanceEClass.getESuperTypes().add(this.getAbstractReferenceInstance());
+ multiValuedReferenceInstanceEClass.getESuperTypes().add(this.getAbstractReferenceInstance());
+ singleValuedAttributeInstanceEClass.getESuperTypes().add(this.getAbstractAttributeInstance());
+ singleValuedContainmentReferenceInstanceEClass.getESuperTypes().add(this.getAbstractReferenceInstance());
+ singleValuedReferenceInstanceEClass.getESuperTypes().add(this.getAbstractReferenceInstance());
+ multiValuedAttributeInstanceEClass.getESuperTypes().add(this.getAbstractAttributeInstance());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(abstractReferenceInstanceEClass, AbstractReferenceInstance.class, "AbstractReferenceInstance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getAbstractReferenceInstance_EReference(), ecorePackage.getEReference(), null, "eReference", null, 1, 1, AbstractReferenceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(multiValuedContainmentReferenceInstanceEClass, MultiValuedContainmentReferenceInstance.class, "MultiValuedContainmentReferenceInstance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getMultiValuedContainmentReferenceInstance_OwnedElements(), ecorePackage.getEObject(), null, "ownedElements", null, 0, -1, MultiValuedContainmentReferenceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(multiValuedReferenceInstanceEClass, MultiValuedReferenceInstance.class, "MultiValuedReferenceInstance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getMultiValuedReferenceInstance_ReferencedElements(), ecorePackage.getEObject(), null, "referencedElements", null, 0, -1, MultiValuedReferenceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(singleValuedAttributeInstanceEClass, SingleValuedAttributeInstance.class, "SingleValuedAttributeInstance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getSingleValuedAttributeInstance_Value(), ecorePackage.getEJavaObject(), "value", null, 0, 1, SingleValuedAttributeInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(extendedEObjectReferenceEClass, ExtendedEObjectReference.class, "ExtendedEObjectReference", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getExtendedEObjectReference_ExtendedEObject(), ecorePackage.getEObject(), null, "extendedEObject", null, 1, 1, ExtendedEObjectReference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEReference(getExtendedEObjectReference_AttributeInstances(), this.getAbstractAttributeInstance(), null, "attributeInstances", null, 0, -1, ExtendedEObjectReference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEReference(getExtendedEObjectReference_ReferenceInstances(), this.getAbstractReferenceInstance(), null, "referenceInstances", null, 0, -1, ExtendedEObjectReference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(singleValuedContainmentReferenceInstanceEClass, SingleValuedContainmentReferenceInstance.class, "SingleValuedContainmentReferenceInstance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getSingleValuedContainmentReferenceInstance_OwnedElement(), ecorePackage.getEObject(), null, "ownedElement", null, 0, 1, SingleValuedContainmentReferenceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(singleValuedReferenceInstanceEClass, SingleValuedReferenceInstance.class, "SingleValuedReferenceInstance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getSingleValuedReferenceInstance_ReferencedElement(), ecorePackage.getEObject(), null, "referencedElement", null, 0, 1, SingleValuedReferenceInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(multiValuedAttributeInstanceEClass, MultiValuedAttributeInstance.class, "MultiValuedAttributeInstance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getMultiValuedAttributeInstance_Values(), ecorePackage.getEJavaObject(), "values", null, 0, -1, MultiValuedAttributeInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(abstractAttributeInstanceEClass, AbstractAttributeInstance.class, "AbstractAttributeInstance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getAbstractAttributeInstance_EAttribute(), ecorePackage.getEAttribute(), null, "eAttribute", null, 1, 1, AbstractAttributeInstance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ }
+
+} //SerializationPackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SingleValuedAttributeInstanceImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SingleValuedAttributeInstanceImpl.java
new file mode 100644
index 00000000000..ad21b48a9fb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SingleValuedAttributeInstanceImpl.java
@@ -0,0 +1,171 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Single Valued Attribute Instance</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SingleValuedAttributeInstanceImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class SingleValuedAttributeInstanceImpl extends AbstractAttributeInstanceImpl implements SingleValuedAttributeInstance {
+ /**
+ * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected static final Object VALUE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @ordered
+ */
+ protected Object value = VALUE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SingleValuedAttributeInstanceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SerializationPackage.Literals.SINGLE_VALUED_ATTRIBUTE_INSTANCE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Object getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setValue(Object newValue) {
+ Object oldValue = value;
+ value = newValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SerializationPackage.SINGLE_VALUED_ATTRIBUTE_INSTANCE__VALUE, oldValue, value));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SerializationPackage.SINGLE_VALUED_ATTRIBUTE_INSTANCE__VALUE:
+ return getValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SerializationPackage.SINGLE_VALUED_ATTRIBUTE_INSTANCE__VALUE:
+ setValue(newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.SINGLE_VALUED_ATTRIBUTE_INSTANCE__VALUE:
+ setValue(VALUE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.SINGLE_VALUED_ATTRIBUTE_INSTANCE__VALUE:
+ return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (value: "); //$NON-NLS-1$
+ result.append(value);
+ result.append(')');
+ return result.toString();
+ }
+
+} //SingleValuedAttributeInstanceImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SingleValuedContainmentReferenceInstanceImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SingleValuedContainmentReferenceInstanceImpl.java
new file mode 100644
index 00000000000..43d9b9c22b2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SingleValuedContainmentReferenceInstanceImpl.java
@@ -0,0 +1,184 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+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.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Single Valued Containment Reference Instance</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SingleValuedContainmentReferenceInstanceImpl#getOwnedElement <em>Owned Element</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class SingleValuedContainmentReferenceInstanceImpl extends AbstractReferenceInstanceImpl implements SingleValuedContainmentReferenceInstance {
+ /**
+ * The cached value of the '{@link #getOwnedElement() <em>Owned Element</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOwnedElement()
+ * @generated
+ * @ordered
+ */
+ protected EObject ownedElement;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SingleValuedContainmentReferenceInstanceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SerializationPackage.Literals.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EObject getOwnedElement() {
+ return ownedElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetOwnedElement(EObject newOwnedElement, NotificationChain msgs) {
+ EObject oldOwnedElement = ownedElement;
+ ownedElement = newOwnedElement;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SerializationPackage.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT, oldOwnedElement, newOwnedElement);
+ if (msgs == null) msgs = notification; else msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setOwnedElement(EObject newOwnedElement) {
+ if (newOwnedElement != ownedElement) {
+ NotificationChain msgs = null;
+ if (ownedElement != null)
+ msgs = ((InternalEObject)ownedElement).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SerializationPackage.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT, null, msgs);
+ if (newOwnedElement != null)
+ msgs = ((InternalEObject)newOwnedElement).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - SerializationPackage.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT, null, msgs);
+ msgs = basicSetOwnedElement(newOwnedElement, msgs);
+ if (msgs != null) msgs.dispatch();
+ }
+ else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SerializationPackage.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT, newOwnedElement, newOwnedElement));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case SerializationPackage.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT:
+ return basicSetOwnedElement(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SerializationPackage.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT:
+ return getOwnedElement();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SerializationPackage.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT:
+ setOwnedElement((EObject)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT:
+ setOwnedElement((EObject)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE__OWNED_ELEMENT:
+ return ownedElement != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //SingleValuedContainmentReferenceInstanceImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SingleValuedReferenceInstanceImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SingleValuedReferenceInstanceImpl.java
new file mode 100644
index 00000000000..13dac145747
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/impl/SingleValuedReferenceInstanceImpl.java
@@ -0,0 +1,165 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+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.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedReferenceInstance;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Single Valued Reference Instance</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.impl.SingleValuedReferenceInstanceImpl#getReferencedElement <em>Referenced Element</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class SingleValuedReferenceInstanceImpl extends AbstractReferenceInstanceImpl implements SingleValuedReferenceInstance {
+ /**
+ * The cached value of the '{@link #getReferencedElement() <em>Referenced Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getReferencedElement()
+ * @generated
+ * @ordered
+ */
+ protected EObject referencedElement;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SingleValuedReferenceInstanceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return SerializationPackage.Literals.SINGLE_VALUED_REFERENCE_INSTANCE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EObject getReferencedElement() {
+ if (referencedElement != null && referencedElement.eIsProxy()) {
+ InternalEObject oldReferencedElement = (InternalEObject)referencedElement;
+ referencedElement = eResolveProxy(oldReferencedElement);
+ if (referencedElement != oldReferencedElement) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, SerializationPackage.SINGLE_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENT, oldReferencedElement, referencedElement));
+ }
+ }
+ return referencedElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EObject basicGetReferencedElement() {
+ return referencedElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setReferencedElement(EObject newReferencedElement) {
+ EObject oldReferencedElement = referencedElement;
+ referencedElement = newReferencedElement;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, SerializationPackage.SINGLE_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENT, oldReferencedElement, referencedElement));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case SerializationPackage.SINGLE_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENT:
+ if (resolve) return getReferencedElement();
+ return basicGetReferencedElement();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case SerializationPackage.SINGLE_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENT:
+ setReferencedElement((EObject)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.SINGLE_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENT:
+ setReferencedElement((EObject)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case SerializationPackage.SINGLE_VALUED_REFERENCE_INSTANCE__REFERENCED_ELEMENT:
+ return referencedElement != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //SingleValuedReferenceInstanceImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/util/SerializationAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/util/SerializationAdapterFactory.java
new file mode 100644
index 00000000000..b68551d32e5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/util/SerializationAdapterFactory.java
@@ -0,0 +1,283 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.*;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedContainmentReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedReferenceInstance;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage
+ * @generated
+ */
+public class SerializationAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static SerializationPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SerializationAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = SerializationPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SerializationSwitch<Adapter> modelSwitch =
+ new SerializationSwitch<Adapter>() {
+ @Override
+ public Adapter caseAbstractReferenceInstance(AbstractReferenceInstance object) {
+ return createAbstractReferenceInstanceAdapter();
+ }
+ @Override
+ public Adapter caseMultiValuedContainmentReferenceInstance(MultiValuedContainmentReferenceInstance object) {
+ return createMultiValuedContainmentReferenceInstanceAdapter();
+ }
+ @Override
+ public Adapter caseMultiValuedReferenceInstance(MultiValuedReferenceInstance object) {
+ return createMultiValuedReferenceInstanceAdapter();
+ }
+ @Override
+ public Adapter caseSingleValuedAttributeInstance(SingleValuedAttributeInstance object) {
+ return createSingleValuedAttributeInstanceAdapter();
+ }
+ @Override
+ public Adapter caseExtendedEObjectReference(ExtendedEObjectReference object) {
+ return createExtendedEObjectReferenceAdapter();
+ }
+ @Override
+ public Adapter caseSingleValuedContainmentReferenceInstance(SingleValuedContainmentReferenceInstance object) {
+ return createSingleValuedContainmentReferenceInstanceAdapter();
+ }
+ @Override
+ public Adapter caseSingleValuedReferenceInstance(SingleValuedReferenceInstance object) {
+ return createSingleValuedReferenceInstanceAdapter();
+ }
+ @Override
+ public Adapter caseMultiValuedAttributeInstance(MultiValuedAttributeInstance object) {
+ return createMultiValuedAttributeInstanceAdapter();
+ }
+ @Override
+ public Adapter caseAbstractAttributeInstance(AbstractAttributeInstance object) {
+ return createAbstractAttributeInstanceAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance <em>Abstract Reference Instance</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.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance
+ * @generated
+ */
+ public Adapter createAbstractReferenceInstanceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedContainmentReferenceInstance <em>Multi Valued Containment Reference Instance</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.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedContainmentReferenceInstance
+ * @generated
+ */
+ public Adapter createMultiValuedContainmentReferenceInstanceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedReferenceInstance <em>Multi Valued Reference Instance</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.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedReferenceInstance
+ * @generated
+ */
+ public Adapter createMultiValuedReferenceInstanceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance <em>Single Valued Attribute Instance</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.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance
+ * @generated
+ */
+ public Adapter createSingleValuedAttributeInstanceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference <em>Extended EObject Reference</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.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference
+ * @generated
+ */
+ public Adapter createExtendedEObjectReferenceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance <em>Single Valued Containment Reference Instance</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.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance
+ * @generated
+ */
+ public Adapter createSingleValuedContainmentReferenceInstanceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedReferenceInstance <em>Single Valued Reference Instance</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.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedReferenceInstance
+ * @generated
+ */
+ public Adapter createSingleValuedReferenceInstanceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedAttributeInstance <em>Multi Valued Attribute Instance</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.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedAttributeInstance
+ * @generated
+ */
+ public Adapter createMultiValuedAttributeInstanceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance <em>Abstract Attribute Instance</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.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance
+ * @generated
+ */
+ public Adapter createAbstractAttributeInstanceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //SerializationAdapterFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/util/SerializationSwitch.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/util/SerializationSwitch.java
new file mode 100644
index 00000000000..5f71624d1ab
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/serialization/util/SerializationSwitch.java
@@ -0,0 +1,325 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.*;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.AbstractReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.ExtendedEObjectReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedContainmentReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.MultiValuedReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedAttributeInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedContainmentReferenceInstance;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SingleValuedReferenceInstance;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.serialization.SerializationPackage
+ * @generated
+ */
+public class SerializationSwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static SerializationPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SerializationSwitch() {
+ if (modelPackage == null) {
+ modelPackage = SerializationPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case SerializationPackage.ABSTRACT_REFERENCE_INSTANCE: {
+ AbstractReferenceInstance abstractReferenceInstance = (AbstractReferenceInstance)theEObject;
+ T result = caseAbstractReferenceInstance(abstractReferenceInstance);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SerializationPackage.MULTI_VALUED_CONTAINMENT_REFERENCE_INSTANCE: {
+ MultiValuedContainmentReferenceInstance multiValuedContainmentReferenceInstance = (MultiValuedContainmentReferenceInstance)theEObject;
+ T result = caseMultiValuedContainmentReferenceInstance(multiValuedContainmentReferenceInstance);
+ if (result == null) result = caseAbstractReferenceInstance(multiValuedContainmentReferenceInstance);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SerializationPackage.MULTI_VALUED_REFERENCE_INSTANCE: {
+ MultiValuedReferenceInstance multiValuedReferenceInstance = (MultiValuedReferenceInstance)theEObject;
+ T result = caseMultiValuedReferenceInstance(multiValuedReferenceInstance);
+ if (result == null) result = caseAbstractReferenceInstance(multiValuedReferenceInstance);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SerializationPackage.SINGLE_VALUED_ATTRIBUTE_INSTANCE: {
+ SingleValuedAttributeInstance singleValuedAttributeInstance = (SingleValuedAttributeInstance)theEObject;
+ T result = caseSingleValuedAttributeInstance(singleValuedAttributeInstance);
+ if (result == null) result = caseAbstractAttributeInstance(singleValuedAttributeInstance);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SerializationPackage.EXTENDED_EOBJECT_REFERENCE: {
+ ExtendedEObjectReference extendedEObjectReference = (ExtendedEObjectReference)theEObject;
+ T result = caseExtendedEObjectReference(extendedEObjectReference);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SerializationPackage.SINGLE_VALUED_CONTAINMENT_REFERENCE_INSTANCE: {
+ SingleValuedContainmentReferenceInstance singleValuedContainmentReferenceInstance = (SingleValuedContainmentReferenceInstance)theEObject;
+ T result = caseSingleValuedContainmentReferenceInstance(singleValuedContainmentReferenceInstance);
+ if (result == null) result = caseAbstractReferenceInstance(singleValuedContainmentReferenceInstance);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SerializationPackage.SINGLE_VALUED_REFERENCE_INSTANCE: {
+ SingleValuedReferenceInstance singleValuedReferenceInstance = (SingleValuedReferenceInstance)theEObject;
+ T result = caseSingleValuedReferenceInstance(singleValuedReferenceInstance);
+ if (result == null) result = caseAbstractReferenceInstance(singleValuedReferenceInstance);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SerializationPackage.MULTI_VALUED_ATTRIBUTE_INSTANCE: {
+ MultiValuedAttributeInstance multiValuedAttributeInstance = (MultiValuedAttributeInstance)theEObject;
+ T result = caseMultiValuedAttributeInstance(multiValuedAttributeInstance);
+ if (result == null) result = caseAbstractAttributeInstance(multiValuedAttributeInstance);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case SerializationPackage.ABSTRACT_ATTRIBUTE_INSTANCE: {
+ AbstractAttributeInstance abstractAttributeInstance = (AbstractAttributeInstance)theEObject;
+ T result = caseAbstractAttributeInstance(abstractAttributeInstance);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Abstract Reference Instance</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>Abstract Reference Instance</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAbstractReferenceInstance(AbstractReferenceInstance object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Multi Valued Containment Reference Instance</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>Multi Valued Containment Reference Instance</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseMultiValuedContainmentReferenceInstance(MultiValuedContainmentReferenceInstance object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Multi Valued Reference Instance</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>Multi Valued Reference Instance</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseMultiValuedReferenceInstance(MultiValuedReferenceInstance object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Single Valued Attribute Instance</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 Valued Attribute Instance</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSingleValuedAttributeInstance(SingleValuedAttributeInstance object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Extended EObject Reference</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>Extended EObject Reference</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseExtendedEObjectReference(ExtendedEObjectReference object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Single Valued Containment Reference Instance</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 Valued Containment Reference Instance</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSingleValuedContainmentReferenceInstance(SingleValuedContainmentReferenceInstance object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Single Valued Reference Instance</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 Valued Reference Instance</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSingleValuedReferenceInstance(SingleValuedReferenceInstance object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Multi Valued Attribute Instance</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>Multi Valued Attribute Instance</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseMultiValuedAttributeInstance(MultiValuedAttributeInstance object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Abstract Attribute Instance</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>Abstract Attribute Instance</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAbstractAttributeInstance(AbstractAttributeInstance object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //SerializationSwitch
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/util/EFacetAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/util/EFacetAdapterFactory.java
new file mode 100644
index 00000000000..41576e76596
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/util/EFacetAdapterFactory.java
@@ -0,0 +1,474 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.*;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage
+ * @generated
+ */
+public class EFacetAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static EFacetPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EFacetAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = EFacetPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EFacetSwitch<Adapter> modelSwitch =
+ new EFacetSwitch<Adapter>() {
+ @Override
+ public Adapter caseFacetAttribute(FacetAttribute object) {
+ return createFacetAttributeAdapter();
+ }
+ @Override
+ public Adapter caseFacetReference(FacetReference object) {
+ return createFacetReferenceAdapter();
+ }
+ @Override
+ public Adapter caseFacetOperation(FacetOperation object) {
+ return createFacetOperationAdapter();
+ }
+ @Override
+ public Adapter caseFacetSet(FacetSet object) {
+ return createFacetSetAdapter();
+ }
+ @Override
+ public Adapter caseFacet(Facet object) {
+ return createFacetAdapter();
+ }
+ @Override
+ public Adapter caseCategory(Category object) {
+ return createCategoryAdapter();
+ }
+ @Override
+ public Adapter caseFacetElement(FacetElement object) {
+ return createFacetElementAdapter();
+ }
+ @Override
+ public Adapter caseDerivedTypedElement(DerivedTypedElement object) {
+ return createDerivedTypedElementAdapter();
+ }
+ @Override
+ public Adapter caseParameterValue(ParameterValue object) {
+ return createParameterValueAdapter();
+ }
+ @Override
+ public Adapter caseDocumentedElement(DocumentedElement object) {
+ return createDocumentedElementAdapter();
+ }
+ @Override
+ public Adapter caseEModelElement(EModelElement object) {
+ return createEModelElementAdapter();
+ }
+ @Override
+ public Adapter caseENamedElement(ENamedElement object) {
+ return createENamedElementAdapter();
+ }
+ @Override
+ public Adapter caseETypedElement(ETypedElement object) {
+ return createETypedElementAdapter();
+ }
+ @Override
+ public Adapter caseEStructuralFeature(EStructuralFeature object) {
+ return createEStructuralFeatureAdapter();
+ }
+ @Override
+ public Adapter caseEAttribute(EAttribute object) {
+ return createEAttributeAdapter();
+ }
+ @Override
+ public Adapter caseEReference(EReference object) {
+ return createEReferenceAdapter();
+ }
+ @Override
+ public Adapter caseEOperation(EOperation object) {
+ return createEOperationAdapter();
+ }
+ @Override
+ public Adapter caseEPackage(EPackage object) {
+ return createEPackageAdapter();
+ }
+ @Override
+ public Adapter caseEClassifier(EClassifier object) {
+ return createEClassifierAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute <em>Facet Attribute</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.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute
+ * @generated
+ */
+ public Adapter createFacetAttributeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference <em>Facet Reference</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.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference
+ * @generated
+ */
+ public Adapter createFacetReferenceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation <em>Facet Operation</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.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation
+ * @generated
+ */
+ public Adapter createFacetOperationAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet <em>Facet Set</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.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet
+ * @generated
+ */
+ public Adapter createFacetSetAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet <em>Facet</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.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet
+ * @generated
+ */
+ public Adapter createFacetAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category <em>Category</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.emf.facet.efacet.metamodel.v0_2_0.efacet.Category
+ * @generated
+ */
+ public Adapter createCategoryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement <em>Facet Element</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.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement
+ * @generated
+ */
+ public Adapter createFacetElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement <em>Derived Typed Element</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.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement
+ * @generated
+ */
+ public Adapter createDerivedTypedElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue <em>Parameter Value</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.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue
+ * @generated
+ */
+ public Adapter createParameterValueAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement <em>Documented Element</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.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement
+ * @generated
+ */
+ public Adapter createDocumentedElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EModelElement <em>EModel Element</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.emf.ecore.EModelElement
+ * @generated
+ */
+ public Adapter createEModelElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.ENamedElement <em>ENamed Element</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.emf.ecore.ENamedElement
+ * @generated
+ */
+ public Adapter createENamedElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.ETypedElement <em>ETyped Element</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.emf.ecore.ETypedElement
+ * @generated
+ */
+ public Adapter createETypedElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EStructuralFeature <em>EStructural Feature</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.emf.ecore.EStructuralFeature
+ * @generated
+ */
+ public Adapter createEStructuralFeatureAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EAttribute <em>EAttribute</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.emf.ecore.EAttribute
+ * @generated
+ */
+ public Adapter createEAttributeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EReference <em>EReference</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.emf.ecore.EReference
+ * @generated
+ */
+ public Adapter createEReferenceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EOperation <em>EOperation</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.emf.ecore.EOperation
+ * @generated
+ */
+ public Adapter createEOperationAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EPackage <em>EPackage</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.emf.ecore.EPackage
+ * @generated
+ */
+ public Adapter createEPackageAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EClassifier <em>EClassifier</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.emf.ecore.EClassifier
+ * @generated
+ */
+ public Adapter createEClassifierAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //EFacetAdapterFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/util/EFacetSwitch.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/util/EFacetSwitch.java
new file mode 100644
index 00000000000..3b1081e10f4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacet/util/EFacetSwitch.java
@@ -0,0 +1,529 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361823 - [Restructuring] eFacet2 meta-model
+ * Gregoire Dupe (Mia-Software) - Bug 366055 - NavigationQuery
+ * Gregoire Dupe (Mia-Software) - Bug 369673 - [Facet] IsOneOfQuery
+ * Olivier Remaud (Soft-Maint) - Bug 369824 - Add a simple way to return string literal constants from a customization query
+ * Gregoire Dupe (Mia-software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.*;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage
+ * @generated
+ */
+public class EFacetSwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static EFacetPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EFacetSwitch() {
+ if (modelPackage == null) {
+ modelPackage = EFacetPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case EFacetPackage.FACET_ATTRIBUTE: {
+ FacetAttribute facetAttribute = (FacetAttribute)theEObject;
+ T result = caseFacetAttribute(facetAttribute);
+ if (result == null) result = caseEAttribute(facetAttribute);
+ if (result == null) result = caseDerivedTypedElement(facetAttribute);
+ if (result == null) result = caseEStructuralFeature(facetAttribute);
+ if (result == null) result = caseFacetElement(facetAttribute);
+ if (result == null) result = caseETypedElement(facetAttribute);
+ if (result == null) result = caseDocumentedElement(facetAttribute);
+ if (result == null) result = caseENamedElement(facetAttribute);
+ if (result == null) result = caseEModelElement(facetAttribute);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.FACET_REFERENCE: {
+ FacetReference facetReference = (FacetReference)theEObject;
+ T result = caseFacetReference(facetReference);
+ if (result == null) result = caseEReference(facetReference);
+ if (result == null) result = caseDerivedTypedElement(facetReference);
+ if (result == null) result = caseEStructuralFeature(facetReference);
+ if (result == null) result = caseFacetElement(facetReference);
+ if (result == null) result = caseETypedElement(facetReference);
+ if (result == null) result = caseDocumentedElement(facetReference);
+ if (result == null) result = caseENamedElement(facetReference);
+ if (result == null) result = caseEModelElement(facetReference);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.FACET_OPERATION: {
+ FacetOperation facetOperation = (FacetOperation)theEObject;
+ T result = caseFacetOperation(facetOperation);
+ if (result == null) result = caseEOperation(facetOperation);
+ if (result == null) result = caseDerivedTypedElement(facetOperation);
+ if (result == null) result = caseFacetElement(facetOperation);
+ if (result == null) result = caseETypedElement(facetOperation);
+ if (result == null) result = caseENamedElement(facetOperation);
+ if (result == null) result = caseDocumentedElement(facetOperation);
+ if (result == null) result = caseEModelElement(facetOperation);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.FACET_SET: {
+ FacetSet facetSet = (FacetSet)theEObject;
+ T result = caseFacetSet(facetSet);
+ if (result == null) result = caseEPackage(facetSet);
+ if (result == null) result = caseDocumentedElement(facetSet);
+ if (result == null) result = caseENamedElement(facetSet);
+ if (result == null) result = caseEModelElement(facetSet);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.FACET: {
+ Facet facet = (Facet)theEObject;
+ T result = caseFacet(facet);
+ if (result == null) result = caseEClassifier(facet);
+ if (result == null) result = caseDocumentedElement(facet);
+ if (result == null) result = caseENamedElement(facet);
+ if (result == null) result = caseEModelElement(facet);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.CATEGORY: {
+ Category category = (Category)theEObject;
+ T result = caseCategory(category);
+ if (result == null) result = caseENamedElement(category);
+ if (result == null) result = caseDocumentedElement(category);
+ if (result == null) result = caseEModelElement(category);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.FACET_ELEMENT: {
+ FacetElement facetElement = (FacetElement)theEObject;
+ T result = caseFacetElement(facetElement);
+ if (result == null) result = caseETypedElement(facetElement);
+ if (result == null) result = caseDocumentedElement(facetElement);
+ if (result == null) result = caseENamedElement(facetElement);
+ if (result == null) result = caseEModelElement(facetElement);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.DERIVED_TYPED_ELEMENT: {
+ DerivedTypedElement derivedTypedElement = (DerivedTypedElement)theEObject;
+ T result = caseDerivedTypedElement(derivedTypedElement);
+ if (result == null) result = caseFacetElement(derivedTypedElement);
+ if (result == null) result = caseETypedElement(derivedTypedElement);
+ if (result == null) result = caseDocumentedElement(derivedTypedElement);
+ if (result == null) result = caseENamedElement(derivedTypedElement);
+ if (result == null) result = caseEModelElement(derivedTypedElement);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.PARAMETER_VALUE: {
+ ParameterValue parameterValue = (ParameterValue)theEObject;
+ T result = caseParameterValue(parameterValue);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.DOCUMENTED_ELEMENT: {
+ DocumentedElement documentedElement = (DocumentedElement)theEObject;
+ T result = caseDocumentedElement(documentedElement);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Facet Attribute</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>Facet Attribute</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFacetAttribute(FacetAttribute object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Facet Reference</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>Facet Reference</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFacetReference(FacetReference object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Facet Operation</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>Facet Operation</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFacetOperation(FacetOperation object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Facet Set</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>Facet Set</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFacetSet(FacetSet object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Facet</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>Facet</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFacet(Facet object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Category</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>Category</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCategory(Category object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Facet Element</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>Facet Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFacetElement(FacetElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Derived Typed Element</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>Derived Typed Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDerivedTypedElement(DerivedTypedElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Parameter Value</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>Parameter Value</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseParameterValue(ParameterValue object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Documented Element</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>Documented Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDocumentedElement(DocumentedElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EModel Element</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>EModel Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEModelElement(EModelElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>ENamed Element</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>ENamed Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseENamedElement(ENamedElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>ETyped Element</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>ETyped Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseETypedElement(ETypedElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EStructural Feature</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>EStructural Feature</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEStructuralFeature(EStructuralFeature object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EAttribute</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>EAttribute</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEAttribute(EAttribute object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EReference</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>EReference</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEReference(EReference object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EOperation</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>EOperation</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEOperation(EOperation object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EPackage</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>EPackage</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEPackage(EPackage object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EClassifier</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>EClassifier</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEClassifier(EClassifier object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //EFacetSwitch
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/EfacetcatalogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/EfacetcatalogFactory.java
new file mode 100644
index 00000000000..73be661f71f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/EfacetcatalogFactory.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) 2011,2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non-derived facet structural features and save their values.
+ * Nicolas Bros (Mia-Software) - Bug 370110 - Rename efacetcatalog2.ecore
+ * Grégoire Dupé (Mia-Software) - Bug 361817 - [Restructuring] Dynamic load to the facet catalog
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.EfacetcatalogPackage
+ * @generated
+ */
+public interface EfacetcatalogFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EfacetcatalogFactory eINSTANCE = org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.impl.EfacetcatalogFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Facet Set Catalog</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Facet Set Catalog</em>'.
+ * @generated
+ */
+ FacetSetCatalog createFacetSetCatalog();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ EfacetcatalogPackage getEfacetcatalogPackage();
+
+} //EfacetcatalogFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/EfacetcatalogPackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/EfacetcatalogPackage.java
new file mode 100644
index 00000000000..65c1cce64c0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/EfacetcatalogPackage.java
@@ -0,0 +1,154 @@
+/**
+ * Copyright (c) 2011,2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non-derived facet structural features and save their values.
+ * Nicolas Bros (Mia-Software) - Bug 370110 - Rename efacetcatalog2.ecore
+ * Grégoire Dupé (Mia-Software) - Bug 361817 - [Restructuring] Dynamic load to the facet catalog
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.EfacetcatalogFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface EfacetcatalogPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "efacetcatalog"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacetcatalog"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "efacetcatalog"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EfacetcatalogPackage eINSTANCE = org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.impl.EfacetcatalogPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.impl.FacetSetCatalogImpl <em>Facet Set Catalog</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.impl.FacetSetCatalogImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.impl.EfacetcatalogPackageImpl#getFacetSetCatalog()
+ * @generated
+ */
+ int FACET_SET_CATALOG = 0;
+
+ /**
+ * The feature id for the '<em><b>Installed Entries</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET_CATALOG__INSTALLED_ENTRIES = CatalogPackage.CATALOG__INSTALLED_ENTRIES;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET_CATALOG__NAME = CatalogPackage.CATALOG__NAME;
+
+ /**
+ * The number of structural features of the '<em>Facet Set Catalog</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int FACET_SET_CATALOG_FEATURE_COUNT = CatalogPackage.CATALOG_FEATURE_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.FacetSetCatalog <em>Facet Set Catalog</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Facet Set Catalog</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.FacetSetCatalog
+ * @generated
+ */
+ EClass getFacetSetCatalog();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ EfacetcatalogFactory getEfacetcatalogFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.impl.FacetSetCatalogImpl <em>Facet Set Catalog</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.impl.FacetSetCatalogImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.impl.EfacetcatalogPackageImpl#getFacetSetCatalog()
+ * @generated
+ */
+ EClass FACET_SET_CATALOG = eINSTANCE.getFacetSetCatalog();
+
+ }
+
+} //EfacetcatalogPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/FacetSetCatalog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/FacetSetCatalog.java
new file mode 100644
index 00000000000..d63345fce34
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/FacetSetCatalog.java
@@ -0,0 +1,39 @@
+/**
+ * Copyright (c) 2011,2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non-derived facet structural features and save their values.
+ * Nicolas Bros (Mia-Software) - Bug 370110 - Rename efacetcatalog2.ecore
+ * Grégoire Dupé (Mia-Software) - Bug 361817 - [Restructuring] Dynamic load to the facet catalog
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Facet Set Catalog</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A FacetSetCatalog aims at referencing EMF Facet FacetSet.
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.EfacetcatalogPackage#getFacetSetCatalog()
+ * @model
+ * @generated
+ */
+public interface FacetSetCatalog extends Catalog {
+
+} // FacetSetCatalog
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/impl/EfacetcatalogFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/impl/EfacetcatalogFactoryImpl.java
new file mode 100644
index 00000000000..f7712005586
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/impl/EfacetcatalogFactoryImpl.java
@@ -0,0 +1,109 @@
+/**
+ * Copyright (c) 2011,2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non-derived facet structural features and save their values.
+ * Nicolas Bros (Mia-Software) - Bug 370110 - Rename efacetcatalog2.ecore
+ * Grégoire Dupé (Mia-Software) - Bug 361817 - [Restructuring] Dynamic load to the facet catalog
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class EfacetcatalogFactoryImpl extends EFactoryImpl implements EfacetcatalogFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static EfacetcatalogFactory init() {
+ try {
+ EfacetcatalogFactory theEfacetcatalogFactory = (EfacetcatalogFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacetcatalog"); //$NON-NLS-1$
+ if (theEfacetcatalogFactory != null) {
+ return theEfacetcatalogFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new EfacetcatalogFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EfacetcatalogFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case EfacetcatalogPackage.FACET_SET_CATALOG: return createFacetSetCatalog();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public FacetSetCatalog createFacetSetCatalog() {
+ FacetSetCatalogImpl facetSetCatalog = new FacetSetCatalogImpl();
+ return facetSetCatalog;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EfacetcatalogPackage getEfacetcatalogPackage() {
+ return (EfacetcatalogPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static EfacetcatalogPackage getPackage() {
+ return EfacetcatalogPackage.eINSTANCE;
+ }
+
+} //EfacetcatalogFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/impl/EfacetcatalogPackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/impl/EfacetcatalogPackageImpl.java
new file mode 100644
index 00000000000..e02094e9f89
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/impl/EfacetcatalogPackageImpl.java
@@ -0,0 +1,188 @@
+/**
+ * Copyright (c) 2011,2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non-derived facet structural features and save their values.
+ * Nicolas Bros (Mia-Software) - Bug 370110 - Rename efacetcatalog2.ecore
+ * Grégoire Dupé (Mia-Software) - Bug 361817 - [Restructuring] Dynamic load to the facet catalog
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.EfacetcatalogFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.EfacetcatalogPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.FacetSetCatalog;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class EfacetcatalogPackageImpl extends EPackageImpl implements EfacetcatalogPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass facetSetCatalogEClass = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.EfacetcatalogPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private EfacetcatalogPackageImpl() {
+ super(eNS_URI, EfacetcatalogFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 EfacetcatalogPackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static EfacetcatalogPackage init() {
+ if (isInited) return (EfacetcatalogPackage)EPackage.Registry.INSTANCE.getEPackage(EfacetcatalogPackage.eNS_URI);
+
+ // Obtain or create and register package
+ EfacetcatalogPackageImpl theEfacetcatalogPackage = (EfacetcatalogPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof EfacetcatalogPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new EfacetcatalogPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ CatalogPackage.eINSTANCE.eClass();
+ EFacetPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theEfacetcatalogPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theEfacetcatalogPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theEfacetcatalogPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(EfacetcatalogPackage.eNS_URI, theEfacetcatalogPackage);
+ return theEfacetcatalogPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getFacetSetCatalog() {
+ return facetSetCatalogEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EfacetcatalogFactory getEfacetcatalogFactory() {
+ return (EfacetcatalogFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ facetSetCatalogEClass = createEClass(FACET_SET_CATALOG);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ CatalogPackage theCatalogPackage = (CatalogPackage)EPackage.Registry.INSTANCE.getEPackage(CatalogPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ facetSetCatalogEClass.getESuperTypes().add(theCatalogPackage.getCatalog());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(facetSetCatalogEClass, FacetSetCatalog.class, "FacetSetCatalog", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //EfacetcatalogPackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/impl/FacetSetCatalogImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/impl/FacetSetCatalogImpl.java
new file mode 100644
index 00000000000..568cda3a222
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/impl/FacetSetCatalogImpl.java
@@ -0,0 +1,214 @@
+/**
+ * Copyright (c) 2011,2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non-derived facet structural features and save their values.
+ * Nicolas Bros (Mia-Software) - Bug 370110 - Rename efacetcatalog2.ecore
+ * Grégoire Dupé (Mia-Software) - Bug 361817 - [Restructuring] Dynamic load to the facet catalog
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.EfacetcatalogPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.FacetSetCatalog;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Facet Set Catalog</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.impl.FacetSetCatalogImpl#getInstalledEntries <em>Installed Entries</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.impl.FacetSetCatalogImpl#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class FacetSetCatalogImpl extends EObjectImpl implements FacetSetCatalog {
+ /**
+ * The cached value of the '{@link #getInstalledEntries() <em>Installed Entries</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getInstalledEntries()
+ * @generated
+ * @ordered
+ */
+ protected EList<EObject> installedEntries;
+
+ /**
+ * 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;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected FacetSetCatalogImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return EfacetcatalogPackage.Literals.FACET_SET_CATALOG;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<EObject> getInstalledEntries() {
+ if (installedEntries == null) {
+ installedEntries = new EObjectResolvingEList<EObject>(EObject.class, this, EfacetcatalogPackage.FACET_SET_CATALOG__INSTALLED_ENTRIES);
+ }
+ return installedEntries;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setName(final String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, EfacetcatalogPackage.FACET_SET_CATALOG__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EfacetcatalogPackage.FACET_SET_CATALOG__INSTALLED_ENTRIES:
+ return getInstalledEntries();
+ case EfacetcatalogPackage.FACET_SET_CATALOG__NAME:
+ return getName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EfacetcatalogPackage.FACET_SET_CATALOG__INSTALLED_ENTRIES:
+ getInstalledEntries().clear();
+ getInstalledEntries().addAll((Collection<? extends EObject>)newValue);
+ return;
+ case EfacetcatalogPackage.FACET_SET_CATALOG__NAME:
+ setName((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EfacetcatalogPackage.FACET_SET_CATALOG__INSTALLED_ENTRIES:
+ getInstalledEntries().clear();
+ return;
+ case EfacetcatalogPackage.FACET_SET_CATALOG__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EfacetcatalogPackage.FACET_SET_CATALOG__INSTALLED_ENTRIES:
+ return installedEntries != null && !installedEntries.isEmpty();
+ case EfacetcatalogPackage.FACET_SET_CATALOG__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: "); //$NON-NLS-1$
+ result.append(name);
+ result.append(')');
+ return result.toString();
+ }
+
+} //FacetSetCatalogImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/util/EfacetcatalogAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/util/EfacetcatalogAdapterFactory.java
new file mode 100644
index 00000000000..74455fbd6b6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/util/EfacetcatalogAdapterFactory.java
@@ -0,0 +1,150 @@
+/**
+ * Copyright (c) 2011,2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non-derived facet structural features and save their values.
+ * Nicolas Bros (Mia-Software) - Bug 370110 - Rename efacetcatalog2.ecore
+ * Grégoire Dupé (Mia-Software) - Bug 361817 - [Restructuring] Dynamic load to the facet catalog
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.*;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.EfacetcatalogPackage
+ * @generated
+ */
+public class EfacetcatalogAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static EfacetcatalogPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EfacetcatalogAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = EfacetcatalogPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected EfacetcatalogSwitch<Adapter> modelSwitch =
+ new EfacetcatalogSwitch<Adapter>() {
+ @Override
+ public Adapter caseFacetSetCatalog(FacetSetCatalog object) {
+ return createFacetSetCatalogAdapter();
+ }
+ @Override
+ public Adapter caseCatalog(Catalog object) {
+ return createCatalogAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.FacetSetCatalog <em>Facet Set Catalog</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.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.FacetSetCatalog
+ * @generated
+ */
+ public Adapter createFacetSetCatalogAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog <em>Catalog</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.emf.facet.util.emf.catalog.Catalog
+ * @generated
+ */
+ public Adapter createCatalogAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //EfacetcatalogAdapterFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/util/EfacetcatalogSwitch.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/util/EfacetcatalogSwitch.java
new file mode 100644
index 00000000000..eafb2c16845
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.metamodel/src/org/eclipse/papyrus/emf/facet/efacet/metamodel/v0_2_0/efacetcatalog/util/EfacetcatalogSwitch.java
@@ -0,0 +1,156 @@
+/**
+ * Copyright (c) 2011,2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non-derived facet structural features and save their values.
+ * Nicolas Bros (Mia-Software) - Bug 370110 - Rename efacetcatalog2.ecore
+ * Grégoire Dupé (Mia-Software) - Bug 361817 - [Restructuring] Dynamic load to the facet catalog
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.*;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacetcatalog.EfacetcatalogPackage
+ * @generated
+ */
+public class EfacetcatalogSwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static EfacetcatalogPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EfacetcatalogSwitch() {
+ if (modelPackage == null) {
+ modelPackage = EfacetcatalogPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case EfacetcatalogPackage.FACET_SET_CATALOG: {
+ FacetSetCatalog facetSetCatalog = (FacetSetCatalog)theEObject;
+ T result = caseFacetSetCatalog(facetSetCatalog);
+ if (result == null) result = caseCatalog(facetSetCatalog);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Facet Set Catalog</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>Facet Set Catalog</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFacetSetCatalog(FacetSetCatalog object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Catalog</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>Catalog</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCatalog(Catalog object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //EfacetcatalogSwitch
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/.classpath
new file mode 100644
index 00000000000..da1049abda9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src/"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/.project
new file mode 100644
index 00000000000..1ed48482396
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.efacet.sdk.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/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..44217f8c068
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..e8aabe4ca70
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,1301 @@
+Manifest-Version: 1.0
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Built-By: hudsonbuild
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.efacet.sdk.ui;singleton:=true
+Bundle-Activator: org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Activat
+ or
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.papyrus.emf.facet.util.emf.core;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.util.ui;bundle-version="0.3.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.2.0",
+ org.eclipse.core.expressions;bundle-version="3.4.200",
+ org.eclipse.emf.edit;bundle-version="2.6.0",
+ org.eclipse.core.resources;bundle-version="3.6.0",
+ org.eclipse.papyrus.emf.facet.util.emf.ui;bundle-version="0.3.0",
+ org.eclipse.ui.ide;bundle-version="3.6.0"
+Export-Package: org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog,
+ org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported,
+ org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query,
+ org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget,
+ org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate,
+ org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass,
+ org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query,
+ org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation,
+ org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard,
+ org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page,
+ org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation,
+ org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query
+Bundle-Version: 1.0.0.qualifier
+Build-Jdk: 1.6.0_27
+Bundle-ActivationPolicy: lazy
+Bundle-Vendor: %Bundle-Vendor
+Bundle-Name: %Bundle-Name
+Archiver-Version: Plexus Archiver
+Created-By: Apache Maven
+Bundle-ManifestVersion: 2
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/Add
+ ReferenceInFacetDialog.class
+SHA1-Digest: MjtTp4qKGv0ezi2lmqyt5X2lztc=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/messages.properties
+SHA1-Digest: lv851W67hr/W+werWhtEa6XEPAs=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedCreateQueryWidget$1.class
+SHA1-Digest: vtcQKgoxKCrtUNHNeBK6DQYcUAU=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedFacetWidget$11.class
+SHA1-Digest: 3e2tgMG0+dGn+kaXfzYpVbRXGKk=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/dialog/que
+ ry/IQueryDialogFactory.class
+SHA1-Digest: 986wx5k/dibkWwxfQKK9R0dzVAs=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/CreateFacetS
+ etWizard.class
+SHA1-Digest: qVf/O2bnsm7T+eOYYdFHilUNIOc=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedCreateQueryWidget$9.class
+SHA1-Digest: qvKlHEURwfb74c7TjxmT/ZHRoPQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$17.class
+SHA1-Digest: NEqjHCcOXxB79x/agkT6fhyrvzQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/Synchronized
+ FacetDialogFactory$11.class
+SHA1-Digest: +wZIvaIEFdSWO5hXQkaxMRTH/5o=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$7.class
+SHA1-Digest: +7ezS7tYiBCtsyQ0VhPNPcSzDUE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/Add
+ ParameterInOperationDialog.class
+SHA1-Digest: fntrQ3q89fDKCZ6zJ5E9HIpFA7k=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/edition/Edi
+ tFacetOperationHandler.class
+SHA1-Digest: s7Pfg3IEaKlXG3ggcLs1jhwXlvw=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$13.class
+SHA1-Digest: T5yGEY5DLr+eLHit+vKiF9JoezA=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/ge
+ torcreate/GetOrCreateFacetWidget.class
+SHA1-Digest: vu61uxzWao/wFIZfKcqcAFFPOm0=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredFacetSetWidget$4.class
+SHA1-Digest: ijUfUuWHnQSIkMC/E7tHzpIGg78=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$11.class
+SHA1-Digest: d1xESeaKBvJsxDXDqku+Yx2cWLE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedFacetWidget$5.class
+SHA1-Digest: R7K0IIu7Fb+Fo0WEDQwUbGLtXio=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.c
+ lass
+SHA1-Digest: 1s3RcxaDbaXeJUGsM433ePMWOpo=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/composite/Ab
+ stractComandExecDialog.class
+SHA1-Digest: Oa+vOL278tSNwSjEyHYnD5ec2ck=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedENamedElementWidget$11.class
+SHA1-Digest: AjT+ChOXELpfB14JgsT4YPry1NA=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$7.class
+SHA1-Digest: CAWg4Z9UbHJVHr6r2tqmzzEzyq8=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$36.class
+SHA1-Digest: HGEoU2j917jABVet4QvOrUAQEBw=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetExtendedMetaclassWidget$6.class
+SHA1-Digest: A56rtNfycxapqN5MZdHyiDxY5+Y=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/pr
+ operties/GetDerivedWidget.class
+SHA1-Digest: TyAqVyJjVBxtuFrsvobDgUwo/28=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredElementCommmandWidget$6.class
+SHA1-Digest: JDAGy0YtxR/iZIrK5q9rzn6skyM=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$19.class
+SHA1-Digest: ue/aKKornwwEtXAEBZXP8vcTWRo=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/edition/Edi
+ tFacetHandler.class
+SHA1-Digest: YDkjKtQqU8H4WRhq7WxJKg2fRcw=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/edition/Edit
+ FacetAttributeWidget.class
+SHA1-Digest: hskDu+48iL5PXgmZEkPe3bKvJHE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$20.class
+SHA1-Digest: H7H1pPQq6Pef+LX6HKLHVJkcl3o=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedENamedElementWidget$5.class
+SHA1-Digest: ZmEsY5y7XqTH6iJ4/VFSSAld1xk=
+
+Name: icons/FacetAttribute.gif
+SHA1-Digest: iJVUkNzDcR93MimauSwnnNlqlzw=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/composite/Ge
+ tOrCreateFacetSetDialog.class
+SHA1-Digest: Oe/+GEvuXLcfcFDSTTheKeEmnk0=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/Synchronized
+ FacetDialogFactory$1.class
+SHA1-Digest: MPnpmJQ4eRHCiJqDLBiVYuQ/1lI=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/cre
+ ation/IGetOrCreateFilteredFacetSetWidget.class
+SHA1-Digest: KLnDAYfqY63v4Z61zpMRm0UjHzY=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/Abs
+ tractETypedElementWidget.class
+SHA1-Digest: muGSBXb/yAU/4i2rhb63QyCrsZQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$8.class
+SHA1-Digest: Esn0UmIpvxOrD+YBEryRTZQfYZc=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/Get
+ OrCreateFiltredOperationWidget.class
+SHA1-Digest: yCeGeIdgWWWwdFIYN2h73LGawIw=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/page/CreateF
+ acetSetWizardPage.class
+SHA1-Digest: 1x5sgjJkA3RXQrS7s9EGI32mqKc=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/page/Synchro
+ nizedCreateFacetSetWizardPage$1.class
+SHA1-Digest: DCMv9bbd30tS5PKmYgXUKTKvqYc=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/me
+ taclass/GetSubTypingTypeWidget.class
+SHA1-Digest: M47lzwHdVlzB2zaYmEcOWFH9Q60=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/Synchronized
+ FacetDialogFactory$9.class
+SHA1-Digest: xI6Y3xME893W1S6d6q+qGGTugk0=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$24.class
+SHA1-Digest: wJJofz1hfVng198PobLhc00yOAc=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialo
+ g.class
+SHA1-Digest: FPggScdQ/cURwgetMc2eadwJ/ws=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/query/AbstractQuery
+ DialogFactory.class
+SHA1-Digest: +n+7TgZGMVCVKSvDZ1ANyfTPfPE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$22.class
+SHA1-Digest: tCpzujIC+a3WB6B8FezCv+K4fKY=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/Cr
+ eateFacetSetInFacetSetHandler.class
+SHA1-Digest: yt56DuViA0rWjobbSdTPaylNbVo=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/Cre
+ ateFacetSetInFacetSetDialog.class
+SHA1-Digest: Oi6qstX5UOjwQBD04bEy/XTUwro=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/qu
+ ery/GetCanHaveSideEffectsWidget.class
+SHA1-Digest: PbtT1Rob50ecB0YdarlYYiGfdwQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/WorkbenchUtils.clas
+ s
+SHA1-Digest: fZD985h2SErny0N6vH3PwzB8xYQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IEN
+ amedElementWidget.class
+SHA1-Digest: Tni1038SKoH4ZgqS3qcRhiHZuyU=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedFacetWidget.class
+SHA1-Digest: 92ZC5Z8uJ6OO5XH1oPhWZAkUFpo=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTy
+ peWidget$2.class
+SHA1-Digest: jrHv+9OHsccrELJnoMQA+SXFj0s=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredElementCommmandWidget.class
+SHA1-Digest: etZQKrv8WISBePQN1H3rXZEBFRQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/page/Synchro
+ nizedFacetSetPropertyWizardPage$4.class
+SHA1-Digest: jB43aUbIGFg6S+wF4a9iFVk/iBE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$14.class
+SHA1-Digest: Tv5Ypx5NQ96WTtUNyjXdxo4Z3JQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedCreateQueryWidget$6.class
+SHA1-Digest: 6NCEI1N7PN7QdaVnCGXwv30iqfI=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$4.class
+SHA1-Digest: Kd72LTQr6wAGk3ZItwQGCyi2iho=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$10.class
+SHA1-Digest: CKkTO8pjSoSiPQqwtYD2CtfsfpY=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredFacetSetWidget$1.class
+SHA1-Digest: +KglPFqPwDY5gq6e4xkkIJAfjr8=
+
+Name: icons/facet.gif
+SHA1-Digest: XEEa0LVNEosBP0izGtitfq02WAI=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedFacetWidget$2.class
+SHA1-Digest: dUIqpX0yXjXmDbsUo4T+Ahm8OpU=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$4.class
+SHA1-Digest: 5oMvZB+k4T1i5nGeBiefIEfbtJA=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/edition/Edit
+ FacetReferenceWidget.class
+SHA1-Digest: mRsduQYdAG7oxk1+w/LXVXOQ3Go=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$33.class
+SHA1-Digest: CJuPAibbL81VwOPE7rFr6c/NQBw=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetExtendedMetaclassWidget$3.class
+SHA1-Digest: lA2WDlnvIJRZ700CubcJkeuEC5E=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$18.class
+SHA1-Digest: kuYJrW9cG4Nun8wdTzXvwonhd4c=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/Abs
+ tractEStructuralFeatureDialog.class
+SHA1-Digest: 4tX6zoHFLFVfn1vlUNhf2AHEcyg=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredElementCommmandWidget$3.class
+SHA1-Digest: 5W9tubrqm7fzpmrD1klxj1dztIA=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredFacetSetWidget$9.class
+SHA1-Digest: ggf/GD2TTHenlW5U93ns1TcZPP4=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$16.class
+SHA1-Digest: QEACZv+VGIU7/NjnHqdGpb8dQlc=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/com
+ ponent/query/ICreateQueryWidget.class
+SHA1-Digest: z3JxvjaEf7uuad2tD8ki6W+ayRw=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/Cre
+ ateFacetInFacetSetDialog.class
+SHA1-Digest: 5Py94f+ljIBRwDaeuL9UwgUrL1c=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/Add
+ OperationInFacetDialog.class
+SHA1-Digest: 8QG2RjVBJupPwB1HrjwJRhoredg=
+
+Name: icons/flatView.gif
+SHA1-Digest: m7CoejyO/BwL1K8nsf+3iF2nYsg=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/Abs
+ tractDerivedTypedElementDialog.class
+SHA1-Digest: RQUTbnu/KM9nIb6dJer7PbexD8w=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedENamedElementWidget$2.class
+SHA1-Digest: 5K8648VDzP3O769S9kyAp7zM7ew=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryCont
+ ext.class
+SHA1-Digest: ZuovEezIJoFDEa28EuVjS6dOThI=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$5.class
+SHA1-Digest: 73C2Qo5/slE0iKa5GJv4NrhKOUc=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IES
+ tructuralFeatureWidget.class
+SHA1-Digest: o49HjVfUjKn/mWzBD/GWgoU5NzM=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/pr
+ operties/GetOrderedWidget.class
+SHA1-Digest: aSagMJbh7p1tqsjeF+hbglDbt40=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/edition/Edit
+ FacetSetWidget.class
+SHA1-Digest: 89TnHGYdDVDHFFkmEiG0GTeeLk0=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/Synchronized
+ FacetDialogFactory$6.class
+SHA1-Digest: z0bPPbJgUIZnHaKWyPaRmxfgG8s=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$21.class
+SHA1-Digest: NflsARahBOKO9wrrJY+wf4OHFSA=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/edition/Edit
+ FacetOperationWidget.class
+SHA1-Digest: 04BqXHNH93dYBsIMoB/r8hRxhlM=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedCreateQueryWidget$10.class
+SHA1-Digest: VXTvbmFMd3t3GYIv5xJVOe5WfvE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/edition/Edi
+ tFacetSetHandler.class
+SHA1-Digest: jQ/5m433Feey6rXfP8SRyVKzYOg=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedCreateQueryWidget.class
+SHA1-Digest: i1sSu9Y6M6NO7jvEJBJ+efS3rPI=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$27.class
+SHA1-Digest: m5/E9KF4eNgLkuR8XsGGD0ET5Tw=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/exception/SdkUiRunt
+ imeException.class
+SHA1-Digest: oVOEdjFMm8E17jXvwjVsgZWt8jI=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/ge
+ torcreate/GetOrCreateFacetSetWidget.class
+SHA1-Digest: MIXNj7JN4M81Mn55VEdRf8VJ6bA=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/page/Synchro
+ nizedFacetSetPropertyWizardPage$1.class
+SHA1-Digest: q5PV6WIc1nwJvAJ2+4HZYOhC3Eg=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/edition/Edit
+ FacetOperationParameterWidget.class
+SHA1-Digest: Ml2izsjjYSXNVSJs+sshsm3D5fA=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$11.class
+SHA1-Digest: o3/WfI1ce4rcmtVcASu9xTpTh5g=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedCreateQueryWidget$3.class
+SHA1-Digest: b0rr/q0XsA72rwLJLThBZDJdi9M=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$1.class
+SHA1-Digest: whiwZmgbr9pWyL6r8DLch4pLnL8=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedFacetWidget$13.class
+SHA1-Digest: C2ko0fvbrpIC6MrVXf5ClkaWc7k=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/Add
+ ParameterInOperationWidget.class
+SHA1-Digest: l42HtQ+Y9Yl3fSF4AdSoERFtpT8=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$19.class
+SHA1-Digest: 12FbB+lPBrcEYd+7y/h4P37azFI=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$9.class
+SHA1-Digest: NtAZ6LBX11VwLSYzqhMOTwrlr6w=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$1.class
+SHA1-Digest: mrXEbbhMuvihivkfJ9Q/mQ1mrQs=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$30.class
+SHA1-Digest: 9FpLOCW7561LJhZxv1GBtv2FiHk=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$15.class
+SHA1-Digest: 9UKL+vbuXmtXUlJp7OJK+jlwE0w=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedENamedElementWidget.class
+SHA1-Digest: CUP9W8RtLOBPRR0v2qWgkWSHnxk=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/Get
+ OrCreateFiltredFacetSetWidget.class
+SHA1-Digest: 2TEiYYa9HKUBTlBlNXhs6GplNRg=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredFacetSetWidget$6.class
+SHA1-Digest: 4Gy6LtyQlxv1p8sf+3WEDmyNcVM=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedFacetWidget$7.class
+SHA1-Digest: ciVbxbyHzmjOM3+hIMxu8MZQhzw=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$13.class
+SHA1-Digest: EeO69rX3iShEWFGHrci/7EVBT2s=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$9.class
+SHA1-Digest: 7movfwLUrjl/PUiTGAdJPv6JpFk=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/CreateFacetS
+ etWizard$1.class
+SHA1-Digest: Jb1XoTXiWsKlJ5FDy25nbGYwYMU=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetExtendedMetaclassWidget$8.class
+SHA1-Digest: sxLiepZd7B4rZ2qEY18D/ciBbg0=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredElementCommmandWidget$8.class
+SHA1-Digest: 15RBvt8glR69OoUNE+Knb+L6Bo4=
+
+Name: META-INF/eclipse.inf
+SHA1-Digest: 09gN05tobgS/MdtqyTNQhOhB73M=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/pr
+ operties/name/GetReferenceNameWidget.class
+SHA1-Digest: WUZRH/WcjW0DvXf/9tmdxGiflrM=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/composite/Ge
+ tOrCreateOperationDialog.class
+SHA1-Digest: Tu+xQBTVa6kMa6sPRax2bZ2uDY0=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/Cr
+ eateFacetInFacetSetHandler.class
+SHA1-Digest: HisVk2o0T7dtdDyXJ0Lkbr5LDqk=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredElementCommmandWidget$10.class
+SHA1-Digest: cP/KLRdS+o8je1nqlX2qRB9pGhs=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/Ad
+ dReferenceInFacetHandler.class
+SHA1-Digest: kE/rYGsC70eBjpELJf10FYCZQiM=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$2.class
+SHA1-Digest: DjlDSyLweAzhSXCnYKW/3fAqvb8=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/edition/Edit
+ FacetAttributeDialog.class
+SHA1-Digest: 6TntfrgqQENvlmvDuvwa6+cNLEo=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedENamedElementWidget$7.class
+SHA1-Digest: n2TfiZjPzeHQFo4JwYIrq7Sb+Zg=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$22.class
+SHA1-Digest: xy3zoPW8SVvGunOMXruFnEFS9Rc=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/Abs
+ tractETypedElementDialog.class
+SHA1-Digest: BjOTi6v2aW4nkAa4y24db5dgMow=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/Synchronized
+ FacetDialogFactory$3.class
+SHA1-Digest: kLGYCHk8HTlIFntIR6o9cKCTQfQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/edition/Edi
+ tFacetReferenceHandler.class
+SHA1-Digest: bdYfEN2qKfxkfQtbFJ2+J2BAEb8=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/page/Synchro
+ nizedCreateFacetSetWizardPage$3.class
+SHA1-Digest: p1S+lb0qs/Q34Tucq2gaHIHCP1s=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$26.class
+SHA1-Digest: BZHtEsb3DgDe9EpnPURIQGQzLgE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/FacetDialogF
+ actoryImpl$1.class
+SHA1-Digest: rzoKfPZbabpvrgexc/cNBOuPcWQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$24.class
+SHA1-Digest: H7++NWOFAXhn8JrSGGk+6/mE2Yo=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/pr
+ operties/name/GetOperationNameWidget.class
+SHA1-Digest: 32eDvt/hmd9ygNj3JuzfUo9ZCg4=
+
+Name: META-INF/maven/org.eclipse.emft/org.eclipse.papyrus.emf.facet.efacet.sdk
+ .ui/pom.properties
+SHA1-Digest: yD+WbzH4BzVMAjz8QRrxAqhS/64=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/Get
+ FilteredSubTypingTypeWidget.class
+SHA1-Digest: 2cIDsJ/y1SaPr8A+wZ2X8cESSyg=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/me
+ taclass/SelectSubTypingTypeWidget$1.class
+SHA1-Digest: nS37A4Ne14XZqEN8lAhjW0RZclQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/Ad
+ dOperationInFacetHandler.class
+SHA1-Digest: fjpi5YLkgGrxnzWAxVlr1oYiXjs=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedFacetWidget$10.class
+SHA1-Digest: yBoBm81eQlu3GzR8i5qYDxa6zmI=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredFacetSetWidget$11.class
+SHA1-Digest: GXophdByiF3a4dXWafuUehYRGmU=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/WizardFactor
+ y.class
+SHA1-Digest: PtX8eESqLsT5aOrMVcThpT8reyE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedCreateQueryWidget$8.class
+SHA1-Digest: ASpStU1DB5qeH8lFFGfHTLZ8PtY=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$16.class
+SHA1-Digest: z3mZIZLMigRfhuDBf8lUJ7TiZoE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/Synchronized
+ FacetDialogFactory$10.class
+SHA1-Digest: jvS4Iryp/w+enssX5D7SywBO8JU=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$6.class
+SHA1-Digest: VKJMn/V8ZyJamgJHiT2HNyIhYsw=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$12.class
+SHA1-Digest: 1VVbinP2UOv5HrX5zAJghAGIG8A=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/Ad
+ dParameterInOperationHandler.class
+SHA1-Digest: ENJWETph5Y/6rciYSEt+Bu6rCU0=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredFacetSetWidget$3.class
+SHA1-Digest: 5ra+Eiaf/D9y7WOdznmONR46qjY=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/me
+ taclass/GetElementTypeWidget.class
+SHA1-Digest: 10lVhY6DbkDTRZk5Un+WlKmEUT0=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedFacetWidget$4.class
+SHA1-Digest: GWQSlB3Fyqnf00GK2z/P3WUXhuY=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$10.class
+SHA1-Digest: ATzyiwNkskVXt0Ocf+RdBKeGx6E=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/edition/Edit
+ FacetReferenceDialog.class
+SHA1-Digest: cFHgShyGks6VrpBTe1RwkUGUP5w=
+
+Name: plugin.xml
+SHA1-Digest: 6phyjUBWsLLw6LKYQjJ+ig4jojA=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedENamedElementWidget$10.class
+SHA1-Digest: DFGkleywdk2rpbdQRxx5sDOfTH8=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$6.class
+SHA1-Digest: FMAzvFE5OqqAGH9c+4qzgoIaPDY=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$35.class
+SHA1-Digest: BDK+99LGr2tptDtjLQKO7iXhx3U=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetExtendedMetaclassWidget$5.class
+SHA1-Digest: Kk5Cn/Odu5MKvGJfEt6sfsbX9HU=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredElementCommmandWidget$5.class
+SHA1-Digest: ltvdlJb2XqnSa0o2UqKgdyCxocQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$18.class
+SHA1-Digest: GObGhBUlPTH0aYaIQ+Vsukx5Des=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/page/Synchro
+ nizedCreateFacetSetWizardPage.class
+SHA1-Digest: 3NTl0NUluSvN7/MLpmQFbCI6bo4=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/Add
+ OperationInFacetWidget.class
+SHA1-Digest: DjHs0kN4ke5jDq6TZliKyC53elQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/Abs
+ tractDerivedTypedElementWidget.class
+SHA1-Digest: N0ow9aqaMRpVsMHW3leesmfMgzw=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/pr
+ operties/GetUniqueWidget.class
+SHA1-Digest: TCL4cVyG6Lb1e/DYKT97soYDybk=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedENamedElementWidget$4.class
+SHA1-Digest: RgtZNzijONXA8/Pj0JBjh5Mnp2M=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/edition/Edit
+ FacetWidget.class
+SHA1-Digest: yfRYPJs4mRHrLidL2Vk6tr8RNtU=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$7.class
+SHA1-Digest: meGKyu/sn4+X4xWJdc+xIr6fqXE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IDe
+ rivedTypedElementWidget.class
+SHA1-Digest: pWrKZM1fRhGG1Y93MIt/e7FTlO4=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/IQueryDial
+ ogFactoryStrategy.class
+SHA1-Digest: ac2O1Ipe4A0YlWjxoxloys6/AG0=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/edition/Edit
+ FacetDialog.class
+SHA1-Digest: gYp1uHu64qNWHb08ZhaWfNJpEQ0=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/edition/Edit
+ FacetOperationDialog.class
+SHA1-Digest: rawiXr7ZE5t+UD5WdrUV4Q/DEeo=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/Synchronized
+ FacetDialogFactory$8.class
+SHA1-Digest: GFvz6zPuSnm9ZjQb0r8xlEfki7c=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$23.class
+SHA1-Digest: nrRQrmmibbahM8mbpAXQ+dbn/Bg=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$21.class
+SHA1-Digest: AR9Z8QlULQXaRxSetb+hRgqpJKk=
+
+Name: schema/queryFactoryDialogRegistration.exsd
+SHA1-Digest: niiNGk2T2FuTsP+DS+kVIQ6K+/c=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/AbstractComm
+ andDialog.class
+SHA1-Digest: cmc8nTfolJA5blLzt6Hb7MqCWlk=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/Abs
+ tractENamedElementWidget.class
+SHA1-Digest: fwExVETddsmg8uvkosVy1sBcP10=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/Get
+ OrCreateFiltredFacetWidget.class
+SHA1-Digest: B9JUK/dSBZDJCpx0O+F6EcV7ow8=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/edition/Edi
+ tFacetAttributeHandler.class
+SHA1-Digest: oan+1H5R5PkORzUM8YJcHYRHEVc=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$29.class
+SHA1-Digest: y9bucM8FJL/PKe7sSmOPr4OhhqM=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/qu
+ ery/CreateQueryWidget.class
+SHA1-Digest: SnoIemJUJgRKnGYT4nA3eIMNA24=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTy
+ peWidget$1.class
+SHA1-Digest: 9wIIiIWE8KGdUAwUTmwSFlKR/sU=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/page/Synchro
+ nizedFacetSetPropertyWizardPage$3.class
+SHA1-Digest: qzi+fktzjNG9XyJuzwOwqX6QfSc=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$13.class
+SHA1-Digest: R9jXbLrMbv5tKAOgR2Y5vpKDC48=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedCreateQueryWidget$5.class
+SHA1-Digest: +63UjkGDottJw3ycpJG2OIzg4TQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$3.class
+SHA1-Digest: 6RMGyR0Hqn3UXtJuoXmTP8Uq6XY=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedFacetWidget$15.class
+SHA1-Digest: SHH+FJsjAQPkcUyafNgYTbbmD+Q=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/pr
+ operties/bounds/GetLowerBoundWidget.class
+SHA1-Digest: 49Mx4fqEmIp59aihquiE11uaEU8=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/Add
+ AttributeInFacetDialog.class
+SHA1-Digest: 1j3HkJH3sbQtojN13DRBrCha7Lw=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedFacetWidget$1.class
+SHA1-Digest: +Uhs2HXj2YINNq5jd6jHOgh18Jo=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$3.class
+SHA1-Digest: ejAOxt8oLbKbc8Pij6L64suXWX0=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryCreatio
+ nResult.class
+SHA1-Digest: BTc5j1d2MB66uBTERAPMq7LDO70=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$32.class
+SHA1-Digest: 2ZW63GCUwAIXoxVucqyRza/dT+Y=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/page/FacetSe
+ tPropertyWizardPage$2.class
+SHA1-Digest: JM6Y8kj4tcGn1zmIZg/eOJY5yLk=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetExtendedMetaclassWidget$2.class
+SHA1-Digest: QCCT0aP9Jec0nkqqXV64QhO24hQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$17.class
+SHA1-Digest: XDAFIgWU6JSXEKbDqQkV3BjRrwE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredElementCommmandWidget$2.class
+SHA1-Digest: 3necdqp5KktDmPUlxs0Dk81GRgg=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredFacetSetWidget$8.class
+SHA1-Digest: YdeQsEHhPxbx0nf3UyKvN6hPLoQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedFacetWidget$9.class
+SHA1-Digest: TSXslMyEE95W1o2LzDZiNxef2ew=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$15.class
+SHA1-Digest: RwGqnFUadMZrX1yJ99iaI/d3SD4=
+
+Name: icons/querySet.gif
+SHA1-Digest: Ypcn7ddJ56HdPpJYqBYET9A8l1Q=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCo
+ mpositeFactoryImpl.class
+SHA1-Digest: 7POOqC/TQ4ofct9og7tF0DJJLOg=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedENamedElementWidget$1.class
+SHA1-Digest: X2f7JWb0mcUskWPkgJyivq15QDA=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$4.class
+SHA1-Digest: Wcplw19dFicINnzF2XowqS2wEUQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/FacetDialogF
+ actoryImpl.class
+SHA1-Digest: yKteMdm9D6JE7QnhBpNGUojQDIA=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedENamedElementWidget$9.class
+SHA1-Digest: G2Ip+aQHUcBsxblEoYCq/+TVfBk=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/Synchronized
+ FacetDialogFactory$5.class
+SHA1-Digest: UxxHanOewnftOQ8YKbWUHcfCYpo=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$20.class
+SHA1-Digest: 1o0dTBghICLcRHxOy8COhACYflw=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/me
+ taclass/SelectSubTypingTypeWidget.class
+SHA1-Digest: Oi8gp7bKuCgO087vyf/de6sfioo=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/edition/Edit
+ FacetWidget$1.class
+SHA1-Digest: mDGZIu/9/lyA21QD76gLcClFXoM=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$28.class
+SHA1-Digest: vhuHrFpkPFTpWZk7Ew3c/4xxEfM=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/AbstractComa
+ ndMainDialog.class
+SHA1-Digest: XZH2H73oum6VR1zhtEZ3KkIOCaU=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/edition/Edit
+ FacetSetWidget$1.class
+SHA1-Digest: zHYBnGNjLUwmrxB65ixZjYLHOTE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$26.class
+SHA1-Digest: aUJeazEe5ayYcugYsYtnSmMbmGk=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/ge
+ torcreate/GetOrCreateOperationWidget.class
+SHA1-Digest: Xm5SBuY6dFWlqTcdXcc1N4eyre4=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedCreateQueryWidget$2.class
+SHA1-Digest: VFw3rIgUt8AXwDtXz6AdXvzLVJs=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$10.class
+SHA1-Digest: ecSqqOV0zOTJ9+tJAiiEiAWEYuk=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedFacetWidget$12.class
+SHA1-Digest: MRq/RW1DUIQHYEyY63lsuUwYxXk=
+
+Name: icons/ParameterValue.gif
+SHA1-Digest: k6QiLCZYrVmMJ6A2ZM7y663F7w0=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$18.class
+SHA1-Digest: 4njJS4r+lB9TglIC2ONlQ2eASiE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/Abs
+ tractDerivedTypedElementWidget$QueryContext.class
+SHA1-Digest: J6nhPG4nf16yIgohY6PErUkS+yY=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/creation/Abs
+ tractEStructuralFeatureWidget.class
+SHA1-Digest: s7O/zcdwexDAfCmWCQ4aufQPrDU=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/WorkbenchUtils$1.cl
+ ass
+SHA1-Digest: qIX9NbfN0GCAer+yFSr/ztoDd0I=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/Synchronized
+ FacetDialogFactory$12.class
+SHA1-Digest: a9JfywEo4F/RdZzQlHS8QsyvwkU=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$8.class
+SHA1-Digest: mBaPs+IRYXcnQZt+Y3FrwL6ZfXg=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$14.class
+SHA1-Digest: bA6nfM20WJT+1LJ+ShisBl2o95k=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetC
+ ompositeFactoryFactory.class
+SHA1-Digest: jc5LQ0xEddGpG0Elkt2YghYLSsc=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredFacetSetWidget$5.class
+SHA1-Digest: 2+CwS5HexKi+HwuUeIjPwd0YM+I=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$12.class
+SHA1-Digest: YvFjXix4kBrnLBXYQbefRrwxu3E=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedFacetWidget$6.class
+SHA1-Digest: SxIhaEDv51GjFqN8+EbndGP9Wac=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget.class
+SHA1-Digest: yjgnA5c/BDvXAVQXdNZP1/u1evc=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/me
+ taclass/GetExtendedMetaclassWidget.class
+SHA1-Digest: 7cgsSxoSn5Yls0F2s96YKf6JtKI=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$8.class
+SHA1-Digest: cC6hL6W2HZ9XRhFUuatD12u0/TE=
+
+Name: icons/FacetReference.gif
+SHA1-Digest: QMWLPiWsn1Q3mCC6dVej6KW6aes=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetExtendedMetaclassWidget$7.class
+SHA1-Digest: fCTD572/wUsi6nilSLyyWGgytIk=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredElementCommmandWidget$7.class
+SHA1-Digest: jboS0TXodRmWngZnXKixNS0kiTY=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$1.class
+SHA1-Digest: RHv6sJdc8HysPJah0odgYf1r6f4=
+
+Name: about.html
+SHA1-Digest: NzkdsipDl2TZ7N0j74YvOk9GTsY=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$21.class
+SHA1-Digest: jggCXZ2+MCd6XWsJjG+l/XHn8rY=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedENamedElementWidget$6.class
+SHA1-Digest: ssP2ovfBBFombiuYlB2fR0kOxZc=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/composite/Ge
+ tSubTypingTypeDialog.class
+SHA1-Digest: jpgtDOYumQacOJQw2hph6VLmcG0=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/Synchronized
+ FacetDialogFactory$2.class
+SHA1-Digest: fevW0Jbr0g2srrPPzxFHjbyGcmM=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$9.class
+SHA1-Digest: B5/XedATFCihAx35H5CH3CWsKE8=
+
+Name: icons/FacetSet.gif
+SHA1-Digest: ZNjHVhFyhjicmeiWt004wpwJdNU=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/page/Synchro
+ nizedCreateFacetSetWizardPage$2.class
+SHA1-Digest: U4phQySiTt+laHmAYrDM0181XTg=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/composite/Ge
+ tOrCreateFacetDialog.class
+SHA1-Digest: 34tNMaa+FiNaO8rb6fZ7mZoYFlw=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IET
+ ypedElementWidget.class
+SHA1-Digest: B3VloYbpErHKX5wBYj8A2vFG78U=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$25.class
+SHA1-Digest: /YsRpnkd8E0FZ7xwUcupNpkEQ2g=
+
+Name: icons/FacetOperation.gif
+SHA1-Digest: geCi1ofnq5obJShghQN1sk0ACoI=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/creation/Ad
+ dAttributeInFacetHandler.class
+SHA1-Digest: tr/tsFhpfA82QNly3ZZcsYnh1eI=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$23.class
+SHA1-Digest: 7Lrd6FxNTuPklcEIZVoCdqDzG+o=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/page/Synchro
+ nizedFacetSetPropertyWizardPage.class
+SHA1-Digest: Uz3FKaN1NIvHtUAldYR8CvgvR1Q=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/creation/Abs
+ tractENamedElementDialog.class
+SHA1-Digest: +U3BuWz7RHJwOqwGyokE/wxk29Q=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialo
+ g$1.class
+SHA1-Digest: Ye9wqsSAUa6RXxLmXH3QwUsDynk=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/pag
+ e/ICreateFacetSetWizardPage.class
+SHA1-Digest: txyemH87DffFn5u6rZUd680nJW4=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredFacetSetWidget.class
+SHA1-Digest: bctz2SsS7NF7iiVtTgUzT3MRkI0=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredFacetSetWidget$10.class
+SHA1-Digest: WuBV5yZLecJ+PzzXD5mpbdfnBVI=
+
+Name: icons/treeView.gif
+SHA1-Digest: J08i2rueFvxIsJ1Z9BgktWZSpEE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/pr
+ operties/GetTransientWidget.class
+SHA1-Digest: 8O6gZKSepOAj1E5ECI2MQNhLxhY=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTy
+ peWidget$3.class
+SHA1-Digest: 6XTrPIxxsj10QqQgjL9tkUTkVc8=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/pr
+ operties/bounds/GetUpperBoundWidget.class
+SHA1-Digest: 7Ys35IzChRQQ4fmIHIj/nN9CGDk=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedCreateQueryWidget$7.class
+SHA1-Digest: CCa4KPZ1bWiSpJww1vkWr93t5oo=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$15.class
+SHA1-Digest: Us+s4sAsvonGC2JbydJyrDNCWkc=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$5.class
+SHA1-Digest: pTim9Cpygxq6WZfs5dh7cfiDIKM=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/edition/Edit
+ FacetOperationParameterDialog.class
+SHA1-Digest: fc5I8hnuiFnp49LjFAw5BTesRQg=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$11.class
+SHA1-Digest: 91gZmO00ZuA2tny9/ETE4yEgDko=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredFacetSetWidget$2.class
+SHA1-Digest: AKp+d3ELZg0Lk0x7dnluVcwVSG8=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedFacetWidget$3.class
+SHA1-Digest: IRpWCfs2DAOyMSeWAZeW+2GkK5M=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$5.class
+SHA1-Digest: sS5GtBixfN5JrvQEMvxcEolqYdc=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$34.class
+SHA1-Digest: lqWB5PEZtdYsC3qPc4rPtJR7Eq8=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetExtendedMetaclassWidget$4.class
+SHA1-Digest: iOlP6ubSS0c9MlRSCiMOryk6jeo=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$19.class
+SHA1-Digest: g0RJ3WXZo0Oj7NVtFAbBAoxxqV8=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/WizardFactor
+ y$1.class
+SHA1-Digest: UOJVYCi0ktZMlmsKmxfzsSGXtIs=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredElementCommmandWidget$4.class
+SHA1-Digest: 6sKw6/qs8m/oyHSCwIlw7qz9uZs=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$17.class
+SHA1-Digest: 9UqZRn3Bh+DnrvxGVceUQs72WaA=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/pr
+ operties/GetChangeableWidget.class
+SHA1-Digest: 7VlTMkgW/11m2Drjh6jkYcAp+JA=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/Messages.class
+SHA1-Digest: 9T9Nac2oIzrVyDb914PiELlo0Jg=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/Synchronized
+ FacetDialogFactory.class
+SHA1-Digest: NTwIbphpRsTCy1e2K/6WuLf5rIM=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/cre
+ ation/ICreateFacetInFacetSetWidget.class
+SHA1-Digest: iip2CSFttaN8sHDEkLNfxnB/DMQ=
+
+Name: META-INF/maven/org.eclipse.emft/org.eclipse.papyrus.emf.facet.efacet.sdk
+ .ui/pom.xml
+SHA1-Digest: PBWN1Z+YTBgmCtjuTVTVGasoAw8=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedENamedElementWidget$3.class
+SHA1-Digest: p1NLmaimtrfRAmc2aiGRZFP2c9U=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/com
+ ponent/getorcreate/IGetOrCreateFacetSetWidget.class
+SHA1-Digest: O2j0TMmiueBjs+uVMjtNIxzQARQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$6.class
+SHA1-Digest: QE90xoWtNtTCrtD1BU0ujfiEu2s=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/Activator.class
+SHA1-Digest: aTmgLIG/BrrXTt/qjUvSIwIk85A=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/pr
+ operties/GetVolatileWidget.class
+SHA1-Digest: +Nkpb19JYoDhABhaaSt+sclL4UQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWi
+ zardFactory.class
+SHA1-Digest: cvH+xtSnztjE5aG6ZyKYhpVdJAI=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$22.class
+SHA1-Digest: 0gMtDjVFRYgdRpd0qpPoTd0WteE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/Synchronized
+ FacetDialogFactory$7.class
+SHA1-Digest: 1L678rwHExBwaygVCr5J+pDcG8c=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$20.class
+SHA1-Digest: 2hG+DC89BjrIxi4IKp6Y5BVBZA4=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTy
+ peWidget.class
+SHA1-Digest: rtMJd2zhJqwS9ND0Op+5jDpGRkg=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$28.class
+SHA1-Digest: 23/4ZoXm0/8/tco+sKlVfaPLM7I=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget.class
+SHA1-Digest: jGSwTaZU4spHVbyWbD+yNFHTOyk=
+
+Name: OSGI-INF/l10n/bundle.properties
+SHA1-Digest: Pg5k6WVgv1eL+p/bUDjPWJe5I/Y=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/handler/edition/Edi
+ tFacetOperationParameterHandler.class
+SHA1-Digest: BRc7Wln/K/8Gn4X7qgVBCSCI6VY=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget.class
+SHA1-Digest: 4TBtqUTYxNa5EKQhOKeqk7MqhKA=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/page/FacetSe
+ tPropertyWizardPage.class
+SHA1-Digest: GMiV12sa7MpLot6OYTkX391djho=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetExtendedMetaclassWidget.class
+SHA1-Digest: MGs2XdEtLAPFsfdGT5TyJCX1qOg=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/page/Synchro
+ nizedFacetSetPropertyWizardPage$2.class
+SHA1-Digest: hxpOWHgrhXfvR+oGGLGE83GRTFE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedCreateQueryWidget$4.class
+SHA1-Digest: /gjzxa8MrksdFpa9eFqMpQiO1/Q=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$12.class
+SHA1-Digest: dsJ1j0dV2uOcN6zgQgpwL84vtro=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$2.class
+SHA1-Digest: tLFatAHhisH72n78GIPEYVnYLYY=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedFacetWidget$14.class
+SHA1-Digest: RwUS5s95YRhqR38Y0GmdoIJ9QAE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/com
+ ponent/metaclass/IGetExtendedMetaclassWidget.class
+SHA1-Digest: bKXJdBj4M8G0psdbYbq8bUJ1jVw=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$2.class
+SHA1-Digest: 4kHW2QWU64APms5ctgunkg7Otoo=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$31.class
+SHA1-Digest: F8pYO2ZuY5vpXXBb5hBWL1ZxHhw=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/wizard/page/FacetSe
+ tPropertyWizardPage$1.class
+SHA1-Digest: ngkBZfm0XmQasC2eIVodL0E0RnE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetExtendedMetaclassWidget$1.class
+SHA1-Digest: ASdpjILrNrlDRPy3oerxAZUF0q0=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/Startup.class
+SHA1-Digest: A9VJPM9oedz1Tt7TlnLBt2FH/PM=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$16.class
+SHA1-Digest: Drd8UX2Aw6P/c5kVpjjN11D1/8A=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredElementCommmandWidget$1.class
+SHA1-Digest: j29zlgHW2weFexV7p5V9QIoLieE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredFacetSetWidget$7.class
+SHA1-Digest: 8N9IuaptePHvc4jbnUU4x07tLec=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedFacetWidget$8.class
+SHA1-Digest: upWA9JJBSSwjGLhl+6ED3lw42xw=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$14.class
+SHA1-Digest: BzWgQe+8mTpJm9Zka+TzG4Hf4fo=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/wizard/pag
+ e/IFacetSetPropertyWizardPage.class
+SHA1-Digest: QNWUW8rxEojccuJV2m8fKjAWB1o=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/qu
+ ery/GetCanBeCachedWidget.class
+SHA1-Digest: +T5SUwGVYqGSkUBiOSTUDRHW4aU=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredElementCommmandWidget$9.class
+SHA1-Digest: dVzoJc4x0uAUks6MqUBHgvfwOSI=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedGetOrCreateFilteredElementCommmandWidget$11.class
+SHA1-Digest: u3ZOWwRhn36hIhJXPFvowL1A1Pk=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$3.class
+SHA1-Digest: DbB/60LXKU+/jbWj78ChCEzDiUQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedETypedElementWidget$23.class
+SHA1-Digest: 7cLTC3AdyglCEIMV6FGhdXo+Xf8=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedENamedElementWidget$8.class
+SHA1-Digest: fQaPMBXdPtbrzBKU2bQ7xYLNufI=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/edition/Edit
+ FacetSetDialog.class
+SHA1-Digest: gVBKHo0lWLFLmT7TWZimgtnKN9M=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/dialog/Synchronized
+ FacetDialogFactory$4.class
+SHA1-Digest: j4SmRp9iEuveEMcxzmqBspadYvE=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/widget/component/pr
+ operties/name/GetAttributeNameWidget.class
+SHA1-Digest: tu+o2qxX2HO6AtByq0y4IvkKU70=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/exported/widget/IFa
+ cetWidget.class
+SHA1-Digest: cOk7H5I3vVvjGh09/7ympECACAg=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedDerivedTypedElementWidget$27.class
+SHA1-Digest: /LAlT/WkZvmUb2dEj9LclE2xqCQ=
+
+Name: org/eclipse/emf/facet/efacet/sdk/ui/internal/sync/generated/Sync
+ hronizedEStructuralFeatureWidget$25.class
+SHA1-Digest: shGjPYwhtbu3pHl6V9/Sdnlv6Uo=
+
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/META-INF/eclipse.inf b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/META-INF/eclipse.inf
new file mode 100644
index 00000000000..92ffed2421c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/META-INF/eclipse.inf
@@ -0,0 +1,2 @@
+#Processed using Jarprocessor
+pack200.conditioned = true
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.efacet.sdk.ui/pom.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.efacet.sdk.ui/pom.properties
new file mode 100644
index 00000000000..07f973c6ce3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.efacet.sdk.ui/pom.properties
@@ -0,0 +1,5 @@
+#Generated by Maven
+#Mon Aug 19 04:56:45 EDT 2013
+version=0.4.0-SNAPSHOT
+groupId=org.eclipse.emft
+artifactId=org.eclipse.papyrus.emf.facet.efacet.sdk.ui
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.efacet.sdk.ui/pom.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.efacet.sdk.ui/pom.xml
new file mode 100644
index 00000000000..1db51c01dd5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/META-INF/maven/org.eclipse.emft/org.eclipse.emf.facet.efacet.sdk.ui/pom.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>org.eclipse.papyrus.emf.facet.build</artifactId>
+ <groupId>org.eclipse.emft</groupId>
+ <version>0.4.0</version>
+ </parent>
+ <groupId>org.eclipse.emft</groupId>
+ <artifactId>org.eclipse.papyrus.emf.facet.efacet.sdk.ui</artifactId>
+ <version>0.4.0-SNAPSHOT</version>
+ <packaging>eclipse-plugin</packaging>
+</project>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..007f411de32
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,32 @@
+##########################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+###########################################################################
+Bundle-Name = EMF Facet EFacet SDK UI (Incubation)
+Bundle-Vendor = Eclipse Modeling Project
+
+category.name = EMF Facet
+wizard.name = Create a FacetSet 0.2
+wizard.description = Create a new Facet model
+extension-point.name = Query Factory Dialog Registration
+
+menu.label = EMF Facet Commands
+command.name = Create FacetSet in a FacetSet
+command.name.0 = Create Facet in a FacetSet
+command.name.1 = Add Facet Attribute
+command.name.2 = Add Facet Operation
+command.name.3 = Add Parameter to Facet Operation
+command.name.4 = Add Facet Reference
+command.name.5 = Edit FacetSet
+command.name.6 = Edit Facet
+command.name.7 = Edit Facet Attribute
+command.name.8 = Edit Facet Operation
+command.name.9 = Edit Facet Operation Parameter
+command.name.10 = Edit Facet Reference \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/about.html
new file mode 100644
index 00000000000..aacf0cfd3b9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.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>August 17, 2012</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/build.properties
new file mode 100644
index 00000000000..bb55517a8db
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/build.properties
@@ -0,0 +1,8 @@
+source.. = src/
+bin.includes = META-INF/,\
+ .,\
+ icons/,\
+ about.html,\
+ plugin.xml,\
+ schema/,\
+ OSGI-INF/
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/FacetAttribute.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/FacetAttribute.gif
new file mode 100644
index 00000000000..78d42474957
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/FacetAttribute.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/FacetOperation.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/FacetOperation.gif
new file mode 100644
index 00000000000..b3643da048a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/FacetOperation.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/FacetReference.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/FacetReference.gif
new file mode 100644
index 00000000000..0c9154c7997
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/FacetReference.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/FacetSet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/FacetSet.gif
new file mode 100644
index 00000000000..d8a3e957c58
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/FacetSet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/ParameterValue.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/ParameterValue.gif
new file mode 100644
index 00000000000..2b692560297
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/ParameterValue.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/facet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/facet.gif
new file mode 100644
index 00000000000..8c67c03cc10
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/facet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/flatView.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/flatView.gif
new file mode 100644
index 00000000000..1ef74cf98f4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/flatView.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/querySet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/querySet.gif
new file mode 100644
index 00000000000..07d18c55b7f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/querySet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/treeView.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/treeView.gif
new file mode 100644
index 00000000000..234486172ca
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/icons/treeView.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/plugin.xml
new file mode 100644
index 00000000000..25518a889a2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/plugin.xml
@@ -0,0 +1,218 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<!--
+ Copyright (c) 2012 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+-->
+<plugin>
+ <extension-point id="queryFactoryDialogRegistration" name="%extension-point.name" schema="schema/queryFactoryDialogRegistration.exsd"/>
+ <extension point="org.eclipse.ui.newWizards">
+ <wizard
+ category="org.eclipse.papyrus.emf.facet.common.ui.wizardsCategory"
+ class="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.wizard.CreateFacetSetWizard"
+ icon="icons/facet.gif"
+ id="org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.presentation.EFacetModelWizardID"
+ name="%wizard.name">
+ <description>
+ %wizard.description
+ </description>
+ <selection
+ class="org.eclipse.core.resources.IResource">
+ </selection>
+ </wizard>
+ </extension>
+ <extension
+ point="org.eclipse.ui.menus">
+ <menuContribution
+ allPopups="true"
+ locationURI="popup:org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.presentation.EFacetEditorID?before=edit">
+ <menu
+ label="%menu.label">
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.createFacetSetInFacetSet"
+ icon="icons/FacetSet.gif"
+ label="%command.name"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.createFacetInFacetSet"
+ icon="icons/facet.gif"
+ label="%command.name.0"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.addAttributeInFacet"
+ icon="icons/FacetAttribute.gif"
+ label="%command.name.1"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.addOperationInFacet"
+ icon="icons/FacetOperation.gif"
+ label="%command.name.2"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.addReferenceInFacet"
+ icon="icons/FacetReference.gif"
+ label="%command.name.4"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.addParameterInOperation"
+ icon="icons/ParameterValue.gif"
+ label="%command.name.3"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacetSet"
+ icon="icons/FacetSet.gif"
+ label="%command.name.5"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacet"
+ icon="icons/facet.gif"
+ label="%command.name.6"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacetAttribute"
+ icon="icons/FacetAttribute.gif"
+ label="%command.name.7"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacetOperation"
+ icon="icons/FacetOperation.gif"
+ label="%command.name.8"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacetOperationParameter"
+ icon="icons/ParameterValue.gif"
+ label="%command.name.9"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacetReference"
+ icon="icons/FacetReference.gif"
+ label="%command.name.10"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ </menu>
+ </menuContribution>
+ </extension>
+ <extension
+ point="org.eclipse.ui.commands">
+ <command
+ defaultHandler="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.CreateFacetSetInFacetSetHandler"
+ id="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.createFacetSetInFacetSet"
+ name="%command.name">
+ </command>
+ <command
+ defaultHandler="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.CreateFacetInFacetSetHandler"
+ id="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.createFacetInFacetSet"
+ name="%command.name.0">
+ </command>
+ <command
+ defaultHandler="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddAttributeInFacetHandler"
+ id="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.addAttributeInFacet"
+ name="%command.name.1">
+ </command>
+ <command
+ defaultHandler="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddOperationInFacetHandler"
+ id="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.addOperationInFacet"
+ name="%command.name.2">
+ </command>
+ <command
+ defaultHandler="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddReferenceInFacetHandler"
+ id="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.addReferenceInFacet"
+ name="%command.name.4">
+ </command>
+ <command
+ defaultHandler="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation.AddParameterInOperationHandler"
+ id="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.addParameterInOperation"
+ name="%command.name.3">
+ </command>
+ <command
+ defaultHandler="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.edition.EditFacetSetHandler"
+ id="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacetSet"
+ name="%command.name.5">
+ </command>
+ <command
+ defaultHandler="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.edition.EditFacetHandler"
+ id="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacet"
+ name="%command.name.6">
+ </command>
+ <command
+ defaultHandler="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.edition.EditFacetAttributeHandler"
+ id="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacetAttribute"
+ name="%command.name.7">
+ </command>
+ <command
+ defaultHandler="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.edition.EditFacetOperationHandler"
+ id="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacetOperation"
+ name="%command.name.8">
+ </command>
+ <command
+ defaultHandler="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.edition.EditFacetOperationParameterHandler"
+ id="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacetOperationParameter"
+ name="%command.name.9">
+ </command>
+ <command
+ defaultHandler="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.edition.EditFacetReferenceHandler"
+ id="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.editFacetReference"
+ name="%command.name.10">
+ </command>
+ </extension>
+ <extension
+ point="org.eclipse.ui.startup">
+ <startup
+ class="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Startup">
+ </startup>
+ </extension>
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/schema/queryFactoryDialogRegistration.exsd b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/schema/queryFactoryDialogRegistration.exsd
new file mode 100644
index 00000000000..8361bc37364
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/schema/queryFactoryDialogRegistration.exsd
@@ -0,0 +1,119 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.papyrus.emf.facet.efacet.sdk.ui" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appinfo>
+ <meta.schema plugin="org.eclipse.papyrus.emf.facet.efacet.sdk.ui" id="queryFactoryWidgetRegistration" name="%extension-point.name"/>
+ </appinfo>
+ <documentation>
+ [Enter description of this extension point.]
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appinfo>
+ <meta.element />
+ </appinfo>
+ </annotation>
+ <complexType>
+ <sequence>
+ <element ref="queryDialogFactory" minOccurs="1" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute translatable="true"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="queryDialogFactory">
+ <complexType>
+ <attribute name="managedQueryTypeName" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="dialogFactory" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute kind="java" basedOn="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryDialogFactoryStrategy"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="since"/>
+ </appinfo>
+ <documentation>
+ [Enter the first release in which this extension point appears.]
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="examples"/>
+ </appinfo>
+ <documentation>
+ [Enter extension point usage example here.]
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="apiinfo"/>
+ </appinfo>
+ <documentation>
+ [Enter API information here.]
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="implementation"/>
+ </appinfo>
+ <documentation>
+ [Enter information about supplied implementation of this extension point.]
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="copyright"/>
+ </appinfo>
+ <documentation>
+ Contibutiors:
+ Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ </documentation>
+ </annotation>
+
+</schema>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.java
new file mode 100644
index 00000000000..37358ddf14c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/dialog/IFacetDialogFactory.java
@@ -0,0 +1,129 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.FacetDialogFactoryImpl;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.SynchronizedFacetDialogFactory;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IEStructuralFeatureWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IETypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Interface for the dialogs creation factory.
+ *
+ * @see FacetDialogFactoryImpl
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IFacetDialogFactory {
+
+ /**
+ * Return a new instance of the concrete implementation of this interface.
+ */
+ IFacetDialogFactory INSTANCE = new SynchronizedFacetDialogFactory(
+ new FacetDialogFactoryImpl(), Display.getDefault());
+
+ /**
+ * Create an new Dialog for the creation of a FacetSet in a FacetSet.
+ *
+ * @return the dialog.
+ */
+ IDialog<IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>> openCreateFacetSetInFacetSetDialog();
+
+ /**
+ * Create an new Dialog for the creation of a Facet in a FacetSet.
+ *
+ * @return the dialog.
+ */
+ IDialog<IFacetWidget> openCreateFacetInFacetSetDialog();
+
+ /**
+ * Create an new Dialog for the creation of an Attribute in a Facet.
+ *
+ * @return the dialog.
+ */
+ IDialog<IEStructuralFeatureWidget> openAddAttributeInFacetDialog();
+
+ /**
+ * Create an new Dialog for the creation of an Reference in a Facet.
+ *
+ * @return the dialog.
+ */
+ IDialog<IEStructuralFeatureWidget> openAddReferenceInFacetDialog();
+
+ /**
+ * Create an new Dialog for the creation of an Operation in a Facet.
+ *
+ * @return the dialog.
+ */
+ IDialog<IDerivedTypedElementWidget> openAddOperationInFacetDialog();
+
+ /**
+ * Create an new Dialog for the creation of a Parameter in an Operation.
+ *
+ * @return the dialog.
+ */
+ IDialog<IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>> openAddParameterInOperationDialog();
+
+ /**
+ * Create an new Dialog for the edition of a FacetSet.
+ *
+ * @return the dialog.
+ */
+ IDialog<IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>> openEditFacetSetDialog();
+
+ /**
+ * Create an new Dialog for the edition of a Facet.
+ *
+ * @return the dialog.
+ */
+ IDialog<IFacetWidget> openEditFacetDialog();
+
+ /**
+ * Create an new Dialog for the edition of an Attribute.
+ *
+ * @return the dialog.
+ */
+ IDialog<IEStructuralFeatureWidget> openEditFacetAttributeDialog();
+
+ /**
+ * Create an new Dialog for the edition of an Reference.
+ *
+ * @return the dialog.
+ */
+ IDialog<IEStructuralFeatureWidget> openEditFacetReferenceDialog();
+
+ /**
+ * Create an new Dialog for the edition of an Operation.
+ *
+ * @return the dialog.
+ */
+ IDialog<IDerivedTypedElementWidget> openEditFacetOperationDialog();
+
+ /**
+ * Create an new Dialog for the edition of a Parameter.
+ *
+ * @return the dialog.
+ */
+ IDialog<IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>> openEditFacetOperationParameterDialog();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/Activator.java
new file mode 100644
index 00000000000..37ea10981e1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/Activator.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+// Copied from org.eclipse.papyrus.emf.facet.aggregate.metamodel.notgenerated.internal.Activator
+@SuppressWarnings("PMD.UseSingleton")
+// @SuppressWarnings("PMD.UseSingleton") We cannot conforms to this rule because
+// this class is an Eclipse plug-in activator which will be instantiated by the
+// Eclipse framework.
+public class Activator extends Plugin {
+
+ private static Activator plugin;
+
+ @Override
+ @SuppressWarnings("PMD.SignatureDeclareThrowsException")
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ public void start(final BundleContext bundleContext) throws Exception {
+ super.start(bundleContext);
+ Activator.plugin = this;
+ }
+
+ @Override
+ @SuppressWarnings("PMD.SignatureDeclareThrowsException")
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ public void stop(final BundleContext bundleContext) throws Exception {
+ // NOPMD: PMD say "Assigning an Object to null is a code smell."
+ // No choice to right it in another way : this is an Eclipse pattern.
+ Activator.plugin = null; // NOPMD by gdupe on 30/03/12 10:19
+ super.stop(bundleContext);
+ }
+
+ public static Plugin getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/Messages.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/Messages.java
new file mode 100644
index 00000000000..4ffa3e51e38
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/Messages.java
@@ -0,0 +1,224 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Nicolas Bros (Mia-Software) - Bug 370442 - rewrite the Facet loading dialog for v0.2
+ * Grégoire Dupé (Mia-Software) - copied from org.eclipse.papyrus.emf.facet.infra.query.ui.Messages
+ * Nicolas Bros (Mia-Software) - copied from org.eclipse.papyrus.emf.facet.infra.query.ui.Messages
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 372732 - [Facet] Rewrite the catalog views for 0.2
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ * Vincent Lorenzo (CEA-LIST) - Bug 357621 - Improve the label displayed for Customization and Facets
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal;
+
+import org.eclipse.osgi.util.NLS;
+
+public class Messages extends NLS {
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.messages"; //$NON-NLS-1$
+
+ public static String New;
+
+ public static String Enter_a_nsUri;
+ public static String Please_enter_nsUri;
+
+ public static String Enter_a_prefix;
+ public static String ETypedElementSelectionControl_ClassicView;
+
+ public static String ETypedElementSelectionControl_invalidSelectionAtLeastOneElement;
+ public static String ETypedElementSelectionControl_invalidSelection;
+ public static String ETypedElementSelectionControl_invalidSelectionAtMostXElements;
+ public static String ETypedElementSelectionControl_invalidSelectionETypedElementsOnly;
+ public static String ETypedElementSelectionDialog_dialogTitle;
+ public static String ETypedElementSelectionDialog_dialogTitleMultiSelection;
+ public static String ETypedElementSelectionDialog_radioButtonMultiSelection;
+ public static String ETypedElementSelectionDialog_radioButtonNoSelection;
+ public static String ETypedElementSelectionDialog_radioButtonSingleSelection;
+
+ public static String ETypedElementSelectionSortedControl_metamodelView;
+
+ public static String ETypedElementSelectionSortedControl_toolTip;
+
+ public static String Please_enter_prefix;
+
+ public static String Please_select_EPackage;
+ public static String Select_EPackage;
+
+ public static String Select_ETypedElement;
+
+ public static String Select_query_type;
+
+ public static String Operation;
+ public static String Parameter_name;
+ public static String Operation_name;
+ public static String Reference_name;
+ public static String Attribute_name;
+
+ public static String Add_an_Attribute;
+ public static String Add_an_Attribute_desc;
+ public static String Add_a_Reference;
+ public static String Add_a_Reference_desc;
+ public static String Add_an_Operation;
+ public static String Add_an_Operation_desc;
+ public static String Add_an_Operation_Parameter;
+ public static String Add_an_Operation_Parameter_desc;
+
+ public static String FacetSet;
+ public static String FacetSet_mustSelectFacetSet;
+ public static String FacetSet_mustGiveFacetSetName;
+ public static String FacetSetsCatalogView_categoriesColumn;
+ public static String FacetSetsCatalogView_documentationColumn;
+ public static String FacetSetsCatalogView_extendsColumn;
+ public static String FacetSetsCatalogView_nameColumn;
+ public static String FacetSetsCatalogView_viewTitle;
+ public static String FacetSetSelectionControl_mustSelectAtLeastOneElement;
+ public static String FacetSetSelectionControl_mustSelectAtMostNElements;
+ public static String FacetSetSelectionControl_onlyFacetSetsAllowedInSelection;
+ public static String FacetSetSelectionControl_selectionContainsInvalidElements;
+ public static String FacetSetSelectionDialog_deselectAll;
+ public static String FacetSetSelectionDialog_selectAll;
+ public static String FacetSetSelectionDialog_titleSelectFacetSet;
+ public static String FacetSetSelectionDialog_titleSelectFacetSets;
+ public static String Facet;
+ public static String Facet_mustGiveFacetName;
+ public static String Facet_mustGiveReferenceName;
+ public static String Facet_mustGiveOperationName;
+ public static String Facet_mustGivePrameterName;
+ public static String Facet_mustSelectQuery;
+ public static String Facet_mustSelectConformanceType;
+
+ public static String GetOrCreate_FacetSet_message;
+ public static String GetOrCreate_Facet_message;
+ public static String Select_FacetSet;
+ public static String Select_Facet;
+ public static String GetOrCreate_Operation_message;
+ public static String Select_Operation;
+ public static String Facet_mustSelectFacet;
+ public static String Facet_mustGiveAttributeName;
+ public static String Type_mustSelectType;
+ public static String Operation_mustSelectOperation;
+
+ public static String Changeable;
+ public static String Derived;
+ public static String Ordered;
+ public static String Transient;
+ public static String Unique;
+ public static String Volatile;
+
+ public static String Lower_bound;
+ public static String Upper_bound;
+
+ public static String Select_EClass;
+ public static String Select_EClassifier;
+ public static String Select_EDataType;
+
+ public static String No_result_found;
+
+ public static String Select;
+ public static String Type;
+
+ public static String Create_FacetSet_Model;
+
+ public static String CreateFacetInFacetSetWidget_FacetSetName;
+
+ public static String CreateFacetInFacetSetWizardPage_could_not_find_wizard_page;
+ public static String Please_enter_value_for;
+ public static String Create_facet_in_facetSet;
+ public static String Create_facetSet_in_facetSet;
+
+ public static String Create;
+ public static String CreateFacetInFacetSetWizardPage_Please_fill_extendedMetaClass;
+ public static String CreateFacetInFacetSetWizardPage_Sub_Typing_Facet;
+ public static String CreateFacetInFacetSetWizardPage_wizard_description;
+ public static String CreateFacetSetWizardImpl_Create_new_facet_Set;
+ public static String CreateFacetSetWizardImpl_FacetModel;
+ public static String CreateFacetSetWizardImpl_File_extension_restriction;
+
+ public static String CreateFacetSetWizardPage_Not_a_Plugin_project;
+ public static String Create_Query;
+ public static String FilteredElementSelectionControl_type_filter_text;
+ public static String Load_MetaModel_Resource;
+ public static String FacetSetSelectionDialog_selectFacetSetsMessage;
+ public static String FacetSetSelectionDialog_selectFacetSetsTitle;
+ public static String Package_Selection;
+ public static String Select_Registered_URI;
+
+ public static String SelectQueryTypeWizardPage_No_wizard_found;
+ public static String SelectQueryTypeWizardPage_Query_Type;
+ public static String JavaQueryWizardPage_Can_be_cached;
+ public static String JavaQueryWizardPage_has_side_effect;
+ public static String JavaQueryWizardPage_Query_name;
+ public static String Query_Select_Name_And_Type;
+
+ //Begin copied from org.eclipse.papyrus.emf.facet.infra.query.ui.Messages
+ public static String Query_name;
+ public static String QueryExecutionView_0;
+ public static String QueryExecutionView_1;
+ public static String QueryExecutionView_classpathWarning;
+ public static String QueryExecutionView_errorInBundleClasspath;
+ public static String QueryExecutionView_execEnvNotAvailable;
+ public static String QueryExecutionView_execEnvError;
+ public static String QueryExecutionView_Context;
+ public static String QueryExecutionView_DisplayResultIn;
+ public static String QueryExecutionView_dragAndDropHint;
+ public static String QueryExecutionView_ErrorExecutingQuery;
+
+ public static String QueryExecutionView_ETypeElementsGroup;
+ public static String QueryExecutionView_ExecuteButton;
+ public static String QueryExecutionView_ExecuteGroup;
+ public static String QueryExecutionView_NoQueryDisplayer;
+ public static String QueryExecutionView_NoQuerySelected;
+ public static String QueryExecutionView_NullQueryResult;
+ public static String QueryExecutionView_notImplementedYet;
+ public static String QueryExecutionView_Parameters;
+ public static String QueryExecutionView_Query;
+ public static String QueryExecutionView_QueryException;
+ public static String QueryExecutionView_QueryReturnedNull;
+ public static String QueryExecutionView_SelectQueryToExecute;
+ public static String QuerySelectionDialog_createQuery;
+ public static String QuerySelectionDialog_enableQuery;
+ public static String QuerySelectionDialog_refreshQuerySetsJob;
+ public static String QuerySelectionDialog_selectQuery;
+
+ public static String Query_Query_Name;
+ public static String Query_has_side_effect;
+ public static String Query_Can_be_cached;
+
+ public static String Metaclass_mustSelectMetaclass;
+ public static String ExtendedMetaClass;
+
+ //End copied from org.eclipse.papyrus.emf.facet.infra.query.ui.Messages
+
+ // Edition
+ public static String Edit_FacetSet;
+ public static String Edit_Facet;
+ public static String Edit_FacetAttribute;
+ public static String Edit_FacetReference;
+ public static String Edit_FacetOperation;
+ public static String Edit_FacetOperationParameter;
+
+ public static String EditFacetSetWidget_FacetSetName;
+
+ public static String EditFacetWidget_FacetName;
+
+ public static String GetSubTypingType_message;
+ public static String GetSubTypingType_title;
+
+ public static String FacetSetPropertyWizardPage_facet_properties;
+
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(Messages.BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/Startup.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/Startup.java
new file mode 100644
index 00000000000..0ec250490dd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/Startup.java
@@ -0,0 +1,22 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal;
+
+import org.eclipse.ui.IStartup;
+
+public class Startup implements IStartup {
+
+ public void earlyStartup() {
+ // Nothing.
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/WorkbenchUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/WorkbenchUtils.java
new file mode 100644
index 00000000000..e53079abd32
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/WorkbenchUtils.java
@@ -0,0 +1,71 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.part.FileEditorInput;
+import org.eclipse.ui.part.ISetSelectionTarget;
+
+/**
+ * Utils methods for using the workbench.
+ *
+ * @since 0.3
+ */
+public final class WorkbenchUtils {
+
+ private WorkbenchUtils() {
+ // Private constructor.
+ }
+
+ public static void openNewFile(final IFile modelFile,
+ final IWorkbench currentWorkbench,
+ final IWorkbenchWindow workbenchWindow, final IWorkbenchPage page) {
+ // Open an editor on the new file.
+ try {
+ page.openEditor(
+ new FileEditorInput(modelFile),
+ currentWorkbench
+ .getEditorRegistry()
+ .getDefaultEditor(
+ modelFile.getFullPath().toString()).getId());
+ } catch (final PartInitException exception) {
+ MessageDialog.openError(workbenchWindow.getShell(),
+ "Open Editor", exception.getMessage()); //$NON-NLS-1$
+ }
+ }
+
+ public static IWorkbenchPage selectNewFile(final IFile modelFile,
+ final IWorkbenchWindow workbenchWindow) {
+ final IWorkbenchPage page = workbenchWindow.getActivePage();
+ final IWorkbenchPart activePart = page.getActivePart();
+ if (activePart instanceof ISetSelectionTarget) {
+ final ISelection targetSelection = new StructuredSelection(
+ modelFile);
+ workbenchWindow.getShell().getDisplay().asyncExec(new Runnable() {
+ public void run() {
+ ((ISetSelectionTarget) activePart)
+ .selectReveal(targetSelection);
+ }
+ });
+ }
+ return page;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/AbstractComandMainDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/AbstractComandMainDialog.java
new file mode 100644
index 00000000000..7de21814cc5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/AbstractComandMainDialog.java
@@ -0,0 +1,68 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exception.SdkUiRuntimeException;
+import org.eclipse.papyrus.emf.facet.util.core.DebugUtils;
+import org.eclipse.papyrus.emf.facet.util.emf.core.EmfDebugUtils;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.AbstractMainDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+import org.eclipse.osgi.util.NLS;
+
+public abstract class AbstractComandMainDialog<W extends ICommandWidget>
+ extends AbstractMainDialog<W> {
+
+ private final EditingDomain editingDomain;
+
+ /**
+ * Constructor.
+ *
+ * @param editedElement
+ * the selection in the model (ecore file).
+ * @param editingDomain
+ */
+ public AbstractComandMainDialog(final Object editedElement,
+ final EditingDomain editingDomain) {
+ super(editedElement);
+ this.editingDomain = editingDomain;
+ }
+
+ @Override
+ protected void execute() {
+ final Object result = getWidget().getCommand();
+ if (result instanceof Command) {
+ final Command command = (Command) result;
+ DebugUtils.debug(EmfDebugUtils.debugCommand(command));
+ if (command.canExecute()) {
+ this.editingDomain.getCommandStack().execute(command);
+ } else {
+ Object widget = getWidget();
+ if (widget instanceof SynchronizedObject<?>) {
+ final SynchronizedObject<?> syncObject = (SynchronizedObject<?>) widget;
+ widget = syncObject.getSynchronizedObject();
+ }
+ throw new SdkUiRuntimeException(NLS.bind(
+ "The command created by {0} is not executable: {1}", //$NON-NLS-1$
+ widget.getClass().getName(),
+ EmfDebugUtils.debugCommand(command)));
+ }
+ }
+ }
+
+ protected final EditingDomain getEditingDomain() {
+ return this.editingDomain;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/AbstractCommandDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/AbstractCommandDialog.java
new file mode 100644
index 00000000000..f6e41b3fb00
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/AbstractCommandDialog.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.util.EditingUtil;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.AbstractDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+
+public abstract class AbstractCommandDialog<T extends Object, W extends ICommandWidget>
+ extends AbstractDialog<T, W> {
+
+ /**
+ * Constructor.
+ *
+ * @param properties
+ * properties that parent widget had.
+ */
+ public AbstractCommandDialog(final T callback) {
+ super(callback);
+ }
+
+ @Override
+ protected void execute() {
+ final Object result = getWidget().getCommand();
+ if (result instanceof Command) {
+ final Command command = (Command) result;
+ EditingUtil.getEditingDomain().getCommandStack().execute(command);
+ }
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/FacetDialogFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/FacetDialogFactoryImpl.java
new file mode 100644
index 00000000000..663d95c9686
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/FacetDialogFactoryImpl.java
@@ -0,0 +1,179 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog;
+
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation.AddAttributeInFacetDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation.AddOperationInFacetDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation.AddParameterInOperationDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation.AddReferenceInFacetDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation.CreateFacetInFacetSetDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation.CreateFacetSetInFacetSetDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.edition.EditFacetAttributeDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.edition.EditFacetDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.edition.EditFacetOperationDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.edition.EditFacetOperationParameterDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.edition.EditFacetReferenceDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.edition.EditFacetSetDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IEStructuralFeatureWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IETypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.util.EditingUtil;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.handler.HandlerUtils;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.SynchronizedAbstractDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * A factory for the dialogs creation.
+ */
+public class FacetDialogFactoryImpl implements IFacetDialogFactory {
+
+ protected static void openDialog(final IDialog<?> dialog) {
+ Display.getDefault().asyncExec(new Runnable() {
+ public void run() {
+ dialog.open();
+ }
+ });
+ }
+
+ public IDialog<IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>> openCreateFacetSetInFacetSetDialog() {
+ final EditingDomain editingDomain = EditingUtil.getEditingDomain();
+ final IDialog<IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>> dialog = new CreateFacetSetInFacetSetDialog(
+ (FacetSet) HandlerUtils.getSelection(), editingDomain);
+ openDialog(dialog);
+ return new SynchronizedAbstractDialog<IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>>(
+ dialog, Display.getDefault());
+ }
+
+ public IDialog<IFacetWidget> openCreateFacetInFacetSetDialog() {
+ final EditingDomain editingDomain = EditingUtil.getEditingDomain();
+ final IDialog<IFacetWidget> dialog = new CreateFacetInFacetSetDialog(
+ (FacetSet) HandlerUtils.getSelection(), editingDomain);
+ openDialog(dialog);
+ return new SynchronizedAbstractDialog<IFacetWidget>(dialog,
+ Display.getDefault());
+ }
+
+ public IDialog<IEStructuralFeatureWidget> openAddAttributeInFacetDialog() {
+ final EditingDomain editingDomain = EditingUtil.getEditingDomain();
+ final Facet facet = (Facet) HandlerUtils.getSelection();
+ final IDialog<IEStructuralFeatureWidget> dialog = new AddAttributeInFacetDialog(
+ facet, editingDomain);
+ openDialog(dialog);
+ return new SynchronizedAbstractDialog<IEStructuralFeatureWidget>(
+ dialog, Display.getDefault());
+ }
+
+ public IDialog<IEStructuralFeatureWidget> openAddReferenceInFacetDialog() {
+ final EditingDomain editingDomain = EditingUtil.getEditingDomain();
+ final Facet facet = (Facet) HandlerUtils.getSelection();
+ final IDialog<IEStructuralFeatureWidget> dialog = new AddReferenceInFacetDialog(
+ facet, editingDomain);
+ openDialog(dialog);
+ return new SynchronizedAbstractDialog<IEStructuralFeatureWidget>(
+ dialog, Display.getDefault());
+ }
+
+ public IDialog<IDerivedTypedElementWidget> openAddOperationInFacetDialog() {
+ final EditingDomain editingDomain = EditingUtil.getEditingDomain();
+ final Facet facet = (Facet) HandlerUtils.getSelection();
+ final IDialog<IDerivedTypedElementWidget> dialog = new AddOperationInFacetDialog(
+ facet, editingDomain);
+ openDialog(dialog);
+ return new SynchronizedAbstractDialog<IDerivedTypedElementWidget>(
+ dialog, Display.getDefault());
+ }
+
+ public IDialog<IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>> openAddParameterInOperationDialog() {
+ final EditingDomain editingDomain = EditingUtil.getEditingDomain();
+ final IDialog<IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>> dialog = new AddParameterInOperationDialog(
+ (FacetOperation) HandlerUtils.getSelection(), editingDomain);
+ openDialog(dialog);
+ return new SynchronizedAbstractDialog<IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>>(
+ dialog, Display.getDefault());
+ }
+
+ public IDialog<IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>> openEditFacetSetDialog() {
+ final EditingDomain editingDomain = EditingUtil.getEditingDomain();
+ final IDialog<IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>> dialog = new EditFacetSetDialog(
+ (FacetSet) HandlerUtils.getSelection(), editingDomain);
+ openDialog(dialog);
+ return new SynchronizedAbstractDialog<IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>>(
+ dialog,
+ Display.getDefault());
+ }
+
+ public IDialog<IFacetWidget> openEditFacetDialog() {
+ final EditingDomain editingDomain = EditingUtil.getEditingDomain();
+ final IDialog<IFacetWidget> dialog = new EditFacetDialog(
+ (Facet) HandlerUtils.getSelection(), editingDomain);
+ openDialog(dialog);
+ return new SynchronizedAbstractDialog<IFacetWidget>(
+ dialog,
+ Display.getDefault());
+ }
+
+ public IDialog<IEStructuralFeatureWidget> openEditFacetAttributeDialog() {
+ final EditingDomain editingDomain = EditingUtil.getEditingDomain();
+ final FacetAttribute fAttribute = (FacetAttribute) HandlerUtils
+ .getSelection();
+ final IDialog<IEStructuralFeatureWidget> dialog = new EditFacetAttributeDialog(
+ fAttribute, editingDomain);
+ openDialog(dialog);
+ return new SynchronizedAbstractDialog<IEStructuralFeatureWidget>(
+ dialog, Display.getDefault());
+ }
+
+ public IDialog<IEStructuralFeatureWidget> openEditFacetReferenceDialog() {
+ final EditingDomain editingDomain = EditingUtil.getEditingDomain();
+ final FacetReference facetReference = (FacetReference) HandlerUtils
+ .getSelection();
+ final IDialog<IEStructuralFeatureWidget> dialog = new EditFacetReferenceDialog(
+ facetReference, editingDomain);
+ openDialog(dialog);
+ return new SynchronizedAbstractDialog<IEStructuralFeatureWidget>(
+ dialog, Display.getDefault());
+ }
+
+ public IDialog<IDerivedTypedElementWidget> openEditFacetOperationDialog() {
+ final EditingDomain editingDomain = EditingUtil.getEditingDomain();
+ final FacetOperation facetOperation = (FacetOperation) HandlerUtils
+ .getSelection();
+ final IDialog<IDerivedTypedElementWidget> dialog = new EditFacetOperationDialog(
+ facetOperation, editingDomain);
+ openDialog(dialog);
+ return new SynchronizedAbstractDialog<IDerivedTypedElementWidget>(
+ dialog, Display.getDefault());
+ }
+
+ public IDialog<IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>> openEditFacetOperationParameterDialog() {
+ final EditingDomain editingDomain = EditingUtil.getEditingDomain();
+ final IDialog<IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>> dialog = new EditFacetOperationParameterDialog(
+ (EParameter) HandlerUtils.getSelection(), editingDomain);
+ openDialog(dialog);
+ return new SynchronizedAbstractDialog<IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>>(
+ dialog, Display.getDefault());
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/SynchronizedFacetDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/SynchronizedFacetDialogFactory.java
new file mode 100644
index 00000000000..62b6ce0e622
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/SynchronizedFacetDialogFactory.java
@@ -0,0 +1,184 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IEStructuralFeatureWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IETypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Synchronized class for {@link FacetDialogFactoryImpl}.
+ */
+public class SynchronizedFacetDialogFactory extends
+ SynchronizedObject<IFacetDialogFactory> implements IFacetDialogFactory {
+
+ public SynchronizedFacetDialogFactory(final IFacetDialogFactory object,
+ final Display display) {
+ super(object, display);
+ }
+
+ public IDialog<IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>> openCreateFacetSetInFacetSetDialog() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IDialog<IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>>>() {
+ @Override
+ public IDialog<IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>> safeRun() {
+ return SynchronizedFacetDialogFactory.this
+ .getSynchronizedObject()
+ .openCreateFacetSetInFacetSetDialog();
+ }
+ });
+ }
+
+ public IDialog<IFacetWidget> openCreateFacetInFacetSetDialog() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IDialog<IFacetWidget>>() {
+ @Override
+ public IDialog<IFacetWidget> safeRun() {
+ return SynchronizedFacetDialogFactory.this
+ .getSynchronizedObject()
+ .openCreateFacetInFacetSetDialog();
+ }
+ });
+ }
+
+ public IDialog<IEStructuralFeatureWidget> openAddAttributeInFacetDialog() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IDialog<IEStructuralFeatureWidget>>() {
+ @Override
+ public IDialog<IEStructuralFeatureWidget> safeRun() {
+ return SynchronizedFacetDialogFactory.this
+ .getSynchronizedObject()
+ .openAddAttributeInFacetDialog();
+ }
+ });
+ }
+
+ public IDialog<IEStructuralFeatureWidget> openAddReferenceInFacetDialog() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IDialog<IEStructuralFeatureWidget>>() {
+ @Override
+ public IDialog<IEStructuralFeatureWidget> safeRun() {
+ return SynchronizedFacetDialogFactory.this
+ .getSynchronizedObject()
+ .openAddReferenceInFacetDialog();
+ }
+ });
+ }
+
+ public IDialog<IDerivedTypedElementWidget> openAddOperationInFacetDialog() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IDialog<IDerivedTypedElementWidget>>() {
+ @Override
+ public IDialog<IDerivedTypedElementWidget> safeRun() {
+ return SynchronizedFacetDialogFactory.this
+ .getSynchronizedObject()
+ .openAddOperationInFacetDialog();
+ }
+ });
+ }
+
+ public IDialog<IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>> openAddParameterInOperationDialog() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IDialog<IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>>>() {
+ @Override
+ public IDialog<IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>> safeRun() {
+ return SynchronizedFacetDialogFactory.this
+ .getSynchronizedObject()
+ .openAddParameterInOperationDialog();
+ }
+ });
+ }
+
+ public IDialog<IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>> openEditFacetSetDialog() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IDialog<IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>>>() {
+ @Override
+ public IDialog<IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>> safeRun() {
+ return SynchronizedFacetDialogFactory.this
+ .getSynchronizedObject()
+ .openEditFacetSetDialog();
+ }
+ });
+ }
+
+ public IDialog<IFacetWidget> openEditFacetDialog() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IDialog<IFacetWidget>>() {
+ @Override
+ public IDialog<IFacetWidget> safeRun() {
+ return SynchronizedFacetDialogFactory.this
+ .getSynchronizedObject().openEditFacetDialog();
+ }
+ });
+ }
+
+ public IDialog<IEStructuralFeatureWidget> openEditFacetAttributeDialog() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IDialog<IEStructuralFeatureWidget>>() {
+ @Override
+ public IDialog<IEStructuralFeatureWidget> safeRun() {
+ return SynchronizedFacetDialogFactory.this
+ .getSynchronizedObject()
+ .openEditFacetAttributeDialog();
+ }
+ });
+ }
+
+ public IDialog<IEStructuralFeatureWidget> openEditFacetReferenceDialog() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IDialog<IEStructuralFeatureWidget>>() {
+ @Override
+ public IDialog<IEStructuralFeatureWidget> safeRun() {
+ return SynchronizedFacetDialogFactory.this
+ .getSynchronizedObject()
+ .openEditFacetReferenceDialog();
+ }
+ });
+ }
+
+ public IDialog<IDerivedTypedElementWidget> openEditFacetOperationDialog() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IDialog<IDerivedTypedElementWidget>>() {
+ @Override
+ public IDialog<IDerivedTypedElementWidget> safeRun() {
+ return SynchronizedFacetDialogFactory.this
+ .getSynchronizedObject()
+ .openEditFacetOperationDialog();
+ }
+ });
+ }
+
+ public IDialog<IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>> openEditFacetOperationParameterDialog() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IDialog<IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>>>() {
+ @Override
+ public IDialog<IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>> safeRun() {
+ return SynchronizedFacetDialogFactory.this
+ .getSynchronizedObject()
+ .openEditFacetOperationParameterDialog();
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/AbstractComandExecDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/AbstractComandExecDialog.java
new file mode 100644
index 00000000000..f947243b942
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/AbstractComandExecDialog.java
@@ -0,0 +1,49 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.composite;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.AbstractDialogWithCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+
+public abstract class AbstractComandExecDialog<T extends Object, W extends ICommandWidget>
+ extends AbstractDialogWithCallback<T, W> {
+
+ private final EditingDomain editingDomain;
+
+ /**
+ * Constructor.
+ *
+ * @param editingDomain
+ * the current editing domain
+ * @param properties
+ * the properties that the widget needs
+ */
+ protected AbstractComandExecDialog(
+ final IWithResultDialogCallback<T> callback,
+ final EditingDomain editingDomain) {
+ super(callback);
+ this.editingDomain = editingDomain;
+ }
+
+ @Override
+ protected void execute() {
+ final Object result = getWidget().getCommand();
+ if (result instanceof Command) {
+ final Command command = (Command) result;
+ this.editingDomain.getCommandStack().execute(command);
+ }
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetOrCreateFacetDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetOrCreateFacetDialog.java
new file mode 100644
index 00000000000..4727b195e0e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetOrCreateFacetDialog.java
@@ -0,0 +1,108 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.composite;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation.GetOrCreateFiltredFacetWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.SynchronizedAbstractDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Provide a dialog where the user can select a facet in the existing facetSet
+ * list or create a new one. This class use the specific widget
+ * {@link GetOrCreateFiltredFacetWidget} and return the selected element with
+ * the method {@link #getFacetSelected()}.</p>
+ *
+ * When the "ok" button is pressed, the parent property is set with the selected
+ * element.
+ *
+ * @see GetOrCreateFiltredFacetWidget
+ */
+public class GetOrCreateFacetDialog extends
+ AbstractComandExecDialog<Facet, IGetOrCreateFilteredElementCommmandWidget<Facet, IFacetWidget>> {
+
+ private GetOrCreateFiltredFacetWidget gOCFacet; // gOC=getOrCreate
+ private final EditingDomain editingDomain;
+ private final FacetSet container;
+
+ /**
+ * The constructor.
+ *
+ * @param callback
+ * the callback.
+ * @param container
+ * @param properties
+ * properties that parent widget had.
+ */
+ public GetOrCreateFacetDialog(
+ final IWithResultDialogCallback<Facet> callback,
+ final EditingDomain editingDomain, final FacetSet container) {
+ super(callback, editingDomain);
+ this.editingDomain = editingDomain;
+ this.container = container;
+ }
+
+ /**
+ * Return the facet selected by the user.
+ *
+ * @return the facet selected.
+ */
+ public Facet getFacet() {
+ return this.gOCFacet.getFacetSelected();
+ }
+
+ @Override
+ protected IGetOrCreateFilteredElementCommmandWidget<Facet, IFacetWidget> createWidget() {
+ this.gOCFacet = new GetOrCreateFiltredFacetWidget(
+ this.getDialogComposite(), this.editingDomain, this.container);
+ return new SynchronizedGetOrCreateFilteredElementCommmandWidget<Facet, IFacetWidget>(
+ this.gOCFacet, this.gOCFacet.getDisplay());
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.GetOrCreate_Facet_message;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Select_Facet;
+ }
+
+ @Override
+ protected void okPressed() {
+ // TODO Use of an instance of PropetyElement2
+ this.getCallback().canceled(this.gOCFacet.getFacetSelected());
+ super.okPressed();
+ }
+
+ public IDialog<IFacetWidget> createElement() {
+ final IDialog<IFacetWidget> pressNewButton = this.gOCFacet
+ .pressNewButton();
+ return new SynchronizedAbstractDialog<IFacetWidget>(pressNewButton,
+ Display.getDefault());
+ }
+
+ @Override
+ protected Facet getResult() {
+ return this.gOCFacet.getFacetSelected();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetOrCreateFacetSetDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetOrCreateFacetSetDialog.java
new file mode 100644
index 00000000000..459aec1338b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetOrCreateFacetSetDialog.java
@@ -0,0 +1,103 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.composite;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedGetOrCreateFilteredFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation.GetOrCreateFiltredFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+/**
+ * Provide a dialog where the user can select a facetSet in the existing
+ * facetSets list or create a new one. This class use the specific widget
+ * {@link GetOrCreateFiltredFacetSetWidget} and return the selected element with
+ * the method {@link #getFacetSetSelected()}.</p>
+ *
+ * When the "ok" button is pressed, the parent property is set with the selected
+ * element.
+ *
+ * @see GetOrCreateFiltredFacetSetWidget
+ */
+public class GetOrCreateFacetSetDialog extends
+ AbstractComandExecDialog<FacetSet, IGetOrCreateFilteredFacetSetWidget> {
+
+ private GetOrCreateFiltredFacetSetWidget gOCFacetSet; // gOC=getOrCreate
+ private final EditingDomain editingDomain;
+ private final PropertyElement2<FacetSet> facetSetProp;
+ private final FacetSet reject;
+
+ /**
+ * The constructor.
+ *
+ * @param callback
+ * the callback.
+ * @param properties
+ * properties that parent widget had.
+ * @param reject
+ */
+ public GetOrCreateFacetSetDialog(
+ final IWithResultDialogCallback<FacetSet> callback,
+ final EditingDomain editingDomain,
+ final PropertyElement2<FacetSet> facetSetProp, final FacetSet reject) {
+ super(callback, editingDomain);
+ this.editingDomain = editingDomain;
+ this.facetSetProp = facetSetProp;
+ this.reject = reject;
+ }
+
+ /**
+ * Return the facetSet selected by the user.
+ *
+ * @return the facetSet selected.
+ */
+ public FacetSet getFacetSet() {
+ return this.gOCFacetSet.getFacetSetSelected();
+ }
+
+ @Override
+ protected IGetOrCreateFilteredFacetSetWidget createWidget() {
+ this.gOCFacetSet = new GetOrCreateFiltredFacetSetWidget(
+ this.getDialogComposite(), this.editingDomain,
+ this.facetSetProp, this.reject);
+ return new SynchronizedGetOrCreateFilteredFacetSetWidget(
+ this.gOCFacetSet, this.gOCFacetSet.getDisplay());
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.GetOrCreate_FacetSet_message;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Select_FacetSet;
+ }
+
+ @Override
+ protected void okPressed() {
+ final FacetSet newValue = this.gOCFacetSet.getFacetSetSelected();
+ if (newValue != null) {
+ this.facetSetProp.setValue2(newValue);
+ }
+ super.okPressed();
+ }
+
+ @Override
+ protected FacetSet getResult() {
+ return this.gOCFacetSet.getFacetSetSelected();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetOrCreateOperationDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetOrCreateOperationDialog.java
new file mode 100644
index 00000000000..fbdfb43341f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetOrCreateOperationDialog.java
@@ -0,0 +1,114 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.composite;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation.GetOrCreateFiltredOperationWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.SynchronizedAbstractDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Provide a dialog where the user can select an Operation in the existing
+ * facets list or create a new one. This class use the specific widget
+ * {@link GetOrCreateFiltredOperationWidget} and return the selected element
+ * with the method {@link #getFacetOperationSelected()}.</p>
+ *
+ * When the "ok" button is pressed, the parent property is set with the selected
+ * element.
+ *
+ * @see GetOrCreateFiltredOperationWidget
+ */
+public class GetOrCreateOperationDialog extends
+ AbstractComandExecDialog<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>> {
+
+ private GetOrCreateFiltredOperationWidget gOCOperation; // gOC=getOrCreate
+ private final EditingDomain editingDomain;
+ private final Facet context;
+
+ /**
+ * The constructor.
+ *
+ * @param callback
+ * the callback.
+ * @param context
+ * @param specificProperties
+ * properties that parent widget had.
+ */
+ public GetOrCreateOperationDialog(
+ final IWithResultDialogCallback<FacetOperation> callback,
+ final EditingDomain editingDomain, final Facet context) {
+ super(callback, editingDomain);
+ this.editingDomain = editingDomain;
+ this.context = context;
+ }
+
+ /**
+ * Return the operation selected by the user.
+ *
+ * @return the operation selected.
+ */
+ public FacetOperation getFacetOperation() {
+ return this.gOCOperation.getFacetOperationSelected();
+ }
+
+ @Override
+ protected IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget> createWidget() {
+ this.gOCOperation = new GetOrCreateFiltredOperationWidget(
+ this.getDialogComposite(), this.editingDomain, this.context);
+ return new SynchronizedGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>(
+ this.gOCOperation, this.gOCOperation.getDisplay());
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.GetOrCreate_Operation_message;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Select_Operation;
+ }
+
+ @Override
+ protected void okPressed() {
+ // TODO Use of an instance of PropetyElement2
+ this.getCallback().canceled(
+ this.gOCOperation.getFacetOperationSelected());
+ super.okPressed();
+ }
+
+ public void selectElement(final FacetOperation element) {
+ this.gOCOperation.selectElement(element);
+ }
+
+ public IDialog<IDerivedTypedElementWidget> createElement() {
+ final IDialog<IDerivedTypedElementWidget> pressNewButton = this.gOCOperation
+ .pressNewButton();
+ return new SynchronizedAbstractDialog<IDerivedTypedElementWidget>(
+ pressNewButton, Display.getDefault());
+ }
+
+ @Override
+ protected FacetOperation getResult() {
+ return this.gOCOperation.getFacetOperationSelected();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetSubTypingTypeDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetSubTypingTypeDialog.java
new file mode 100644
index 00000000000..291e78222c0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/composite/GetSubTypingTypeDialog.java
@@ -0,0 +1,88 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.composite;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation.GetFilteredSubTypingTypeWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+
+/**
+ * Provide a dialog for the selection of the sub element.
+ */
+public class GetSubTypingTypeDialog extends
+ AbstractComandExecDialog<ETypedElement, IGetOrCreateFilteredElementCommmandWidget<ETypedElement, Object>> {
+
+ private GetFilteredSubTypingTypeWidget typeWidget;
+ private final EClass context;
+ private final Facet facet;
+
+ /**
+ * The constructor.
+ *
+ * @param callback
+ * the callback.
+ * @param specificProperties
+ * properties that parent widget had.
+ */
+ public GetSubTypingTypeDialog(
+ final IWithResultDialogCallback<ETypedElement> callback,
+ final EditingDomain editingDomain, final Facet facet,
+ final EClass context) {
+ super(callback, editingDomain);
+ this.facet = facet;
+ this.context = context;
+ }
+
+ @Override
+ protected IGetOrCreateFilteredElementCommmandWidget<ETypedElement, Object> createWidget() {
+ this.typeWidget = new GetFilteredSubTypingTypeWidget(this.getDialogComposite(),
+ this.context, this.facet);
+ return new SynchronizedGetOrCreateFilteredElementCommmandWidget<ETypedElement, Object>(
+ this.typeWidget, this.typeWidget.getDisplay());
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.GetSubTypingType_message;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.GetSubTypingType_title;
+ }
+
+ @Override
+ protected void okPressed() {
+ // TODO Use of an instance of PropetyElement2
+ this.getCallback().commited(this.typeWidget.getSubTypeSelected());
+ super.okPressed();
+ }
+
+ public void selectElement(final Object element) {
+ if (element instanceof ETypedElement) {
+ final ETypedElement eTypeElement = (ETypedElement) element;
+ this.typeWidget.selectElement(eTypeElement);
+ }
+ }
+
+ @Override
+ protected ETypedElement getResult() {
+ return this.typeWidget.getSubTypeSelected();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractDerivedTypedElementDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractDerivedTypedElementDialog.java
new file mode 100644
index 00000000000..562de2d226e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractDerivedTypedElementDialog.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+public abstract class AbstractDerivedTypedElementDialog<W extends IDerivedTypedElementWidget>
+ extends
+ AbstractETypedElementDialog<Facet, IGetOrCreateFilteredElementCommmandWidget<Facet, IFacetWidget>, W> {
+
+ private final PropertyElement2<Query> queryProperty;
+
+ protected AbstractDerivedTypedElementDialog(
+ final DerivedTypedElement selection,
+ final EditingDomain editingDomain) {
+ super(selection, editingDomain);
+ this.queryProperty = new PropertyElement2<Query>(true);
+ if (selection != null) {
+ this.queryProperty.setValue2(selection.getQuery());
+ }
+ }
+
+ protected final PropertyElement2<Query> getQueryProperty() {
+ return this.queryProperty;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractENamedElementDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractENamedElementDialog.java
new file mode 100644
index 00000000000..2564fddeb70
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractENamedElementDialog.java
@@ -0,0 +1,39 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation;
+
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.AbstractComandMainDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+public abstract class AbstractENamedElementDialog<C extends EObject, CW extends Object, W extends IENamedElementWidget<C, CW>>
+ extends AbstractComandMainDialog<W> {
+
+ private final PropertyElement2<String> nameProperty;
+
+ protected AbstractENamedElementDialog(final ENamedElement editedElement,
+ final EditingDomain editingDomain) {
+ super(editedElement, editingDomain);
+ this.nameProperty = new PropertyElement2<String>(true);
+ if (editedElement != null) {
+ this.nameProperty.setValue2(editedElement.getName());
+ }
+ }
+
+ protected final PropertyElement2<String> getNameProperty() {
+ return this.nameProperty;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractEStructuralFeatureDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractEStructuralFeatureDialog.java
new file mode 100644
index 00000000000..1cec15d1d1f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractEStructuralFeatureDialog.java
@@ -0,0 +1,77 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+public abstract class AbstractEStructuralFeatureDialog<W extends IDerivedTypedElementWidget>
+ extends AbstractDerivedTypedElementDialog<W> {
+
+ private final PropertyElement2<Boolean> volatileProperty;
+ private final PropertyElement2<Boolean> derivedroperty;
+ private final PropertyElement2<Boolean> transientProperty;
+ private final PropertyElement2<Boolean> changeableroperty;
+ private final PropertyElement2<Facet> containerProperty;
+
+ protected AbstractEStructuralFeatureDialog(
+ final DerivedTypedElement selection,
+ final EditingDomain editingDomain,
+ final PropertyElement2<Facet> containerProperty) {
+ super(selection, editingDomain);
+ this.volatileProperty = new PropertyElement2<Boolean>(true);
+ this.changeableroperty = new PropertyElement2<Boolean>(true);
+ this.derivedroperty = new PropertyElement2<Boolean>(true);
+ this.transientProperty = new PropertyElement2<Boolean>(true);
+ if (selection instanceof EStructuralFeature) {
+ final EStructuralFeature structuralFeature = (EStructuralFeature) getSelection();
+ this.volatileProperty.setValue2(Boolean.valueOf(structuralFeature
+ .isVolatile()));
+ this.changeableroperty.setValue2(Boolean.valueOf(structuralFeature
+ .isChangeable()));
+ this.derivedroperty.setValue2(Boolean.valueOf(structuralFeature
+ .isDerived()));
+ this.transientProperty.setValue2(Boolean.valueOf(structuralFeature
+ .isTransient()));
+ }
+ this.containerProperty = containerProperty;
+ }
+
+ protected final PropertyElement2<Boolean> getVolatileProperty() {
+ return this.volatileProperty;
+ }
+
+ protected final PropertyElement2<Boolean> getDerivedroperty() {
+ return this.derivedroperty;
+ }
+
+ protected final PropertyElement2<Boolean> getTransientProperty() {
+ return this.transientProperty;
+ }
+
+ protected final PropertyElement2<Boolean> getChangeableroperty() {
+ return this.changeableroperty;
+ }
+
+ /**
+ * @return the containerProperty
+ */
+ public PropertyElement2<Facet> getContainerProperty() {
+ return this.containerProperty;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractETypedElementDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractETypedElementDialog.java
new file mode 100644
index 00000000000..3907549fbc5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AbstractETypedElementDialog.java
@@ -0,0 +1,78 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IETypedElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+public abstract class AbstractETypedElementDialog<C extends EObject, CW extends Object, W extends IETypedElementWidget<C, CW>>
+ extends AbstractENamedElementDialog<C, CW, W> {
+
+ private final PropertyElement2<Integer> lowerBdProperty;
+ private final PropertyElement2<Integer> upperBdProperty;
+ private final PropertyElement2<Boolean> uniqueProperty;
+ private final PropertyElement2<Boolean> orderedProperty;
+ private final PropertyElement2<EClassifier> typeProperty;
+
+ protected AbstractETypedElementDialog(final ETypedElement eTypedElement,
+ final EditingDomain editingDomain) {
+ super(eTypedElement, editingDomain);
+ this.lowerBdProperty = new PropertyElement2<Integer>(true);
+ this.upperBdProperty = new PropertyElement2<Integer>(true);
+ this.typeProperty = new PropertyElement2<EClassifier>(true);
+ this.orderedProperty = new PropertyElement2<Boolean>(true);
+ this.uniqueProperty = new PropertyElement2<Boolean>(true);
+ if (eTypedElement == null) {
+ this.lowerBdProperty.setValue2(Integer.valueOf(0));
+ this.upperBdProperty.setValue2(Integer.valueOf(1));
+ } else {
+ this.lowerBdProperty.setValue2(Integer.valueOf(eTypedElement
+ .getLowerBound()));
+ // Upper Bound
+ this.upperBdProperty.setValue2(Integer.valueOf(eTypedElement
+ .getUpperBound()));
+ // EType
+ this.typeProperty.setValue2(eTypedElement.getEType());
+ // Ordered
+ this.orderedProperty.setValue2(Boolean.valueOf(eTypedElement
+ .isOrdered()));
+ // Unique
+ this.uniqueProperty.setValue2(Boolean.valueOf(eTypedElement
+ .isUnique()));
+ }
+ }
+
+ protected final PropertyElement2<Integer> getLowerBdProperty() {
+ return this.lowerBdProperty;
+ }
+
+ protected final PropertyElement2<Integer> getUpperBdProperty() {
+ return this.upperBdProperty;
+ }
+
+ protected final PropertyElement2<Boolean> getUniqueProperty() {
+ return this.uniqueProperty;
+ }
+
+ protected final PropertyElement2<Boolean> getOrderedProperty() {
+ return this.orderedProperty;
+ }
+
+ protected final PropertyElement2<EClassifier> getTypeProperty() {
+ return this.typeProperty;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddAttributeInFacetDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddAttributeInFacetDialog.java
new file mode 100644
index 00000000000..f242c317e23
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddAttributeInFacetDialog.java
@@ -0,0 +1,66 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IEStructuralFeatureWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedEStructuralFeatureWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition.EditFacetAttributeWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+/**
+ * Dialog for the edition of an attribute in a facet.
+ */
+public class AddAttributeInFacetDialog extends
+ AbstractEStructuralFeatureDialog<IEStructuralFeatureWidget> {
+
+ /**
+ * Constructor.
+ *
+ * @param selection
+ * the selection in the model (ecore file).
+ */
+ public AddAttributeInFacetDialog(final Facet facet,
+ final EditingDomain editingDomain) {
+ super(null, editingDomain, new PropertyElement2<Facet>(false, facet));
+ }
+
+ @Override
+ protected IEStructuralFeatureWidget createWidget() {
+ final EditFacetAttributeWidget widget = new EditFacetAttributeWidget(
+ this.getDialogComposite(),
+ EFacetFactory.eINSTANCE.createFacetAttribute(),
+ this.getEditingDomain(), this.getContainerProperty(),
+ this.getNameProperty(), this.getLowerBdProperty(),
+ this.getUpperBdProperty(), this.getTypeProperty(),
+ this.getOrderedProperty(), this.getUniqueProperty(),
+ this.getQueryProperty(), this.getVolatileProperty(),
+ this.getChangeableroperty(), this.getDerivedroperty(),
+ this.getTransientProperty());
+ return new SynchronizedEStructuralFeatureWidget(widget,
+ widget.getDisplay());
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.Add_an_Attribute_desc;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Add_an_Attribute;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddOperationInFacetDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddOperationInFacetDialog.java
new file mode 100644
index 00000000000..d27015c0d02
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddOperationInFacetDialog.java
@@ -0,0 +1,74 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedDerivedTypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation.AddOperationInFacetWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+/**
+ * Concrete dialog for the creation of an Operation in a facet.
+ */
+public class AddOperationInFacetDialog extends
+ AbstractDerivedTypedElementDialog<IDerivedTypedElementWidget> {
+
+ private final Facet facet;
+ private final PropertyElement2<Facet> facetProperty;
+
+ /**
+ * Constructor.
+ *
+ * @param callback
+ * the callback.
+ * @param selection
+ * the selection in the model (ecore file).
+ */
+ public AddOperationInFacetDialog(final Facet facet,
+ final EditingDomain editingDomain) {
+ super(null, editingDomain);
+ this.facet = facet;
+ this.facetProperty = new PropertyElement2<Facet>(false, facet);
+ }
+
+ @Override
+ protected IDerivedTypedElementWidget createWidget() {
+ final AddOperationInFacetWidget widget = new AddOperationInFacetWidget(
+ this.getDialogComposite(),
+ this.getEditingDomain(), this.facetProperty,
+ this.getNameProperty(),
+ this.getLowerBdProperty(), this.getUpperBdProperty(),
+ this.getTypeProperty(), this.getOrderedProperty(),
+ this.getUniqueProperty(), this.getQueryProperty());
+ return new SynchronizedDerivedTypedElementWidget(widget,
+ widget.getDisplay());
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.Add_an_Operation_desc;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Add_an_Operation;
+ }
+
+ protected Facet getFacet() {
+ return this.facet;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddParameterInOperationDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddParameterInOperationDialog.java
new file mode 100644
index 00000000000..8f149d35f91
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddParameterInOperationDialog.java
@@ -0,0 +1,70 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IETypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedETypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation.AddParameterInOperationWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+/**
+ * Concrete Dialog for the creation of an Operation in a Facet.
+ */
+public class AddParameterInOperationDialog extends
+ AbstractETypedElementDialog<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>, IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>> {
+
+ private final PropertyElement2<FacetOperation> operationProperty;
+
+ /**
+ * Constructor.
+ *
+ * @param callback
+ * the callback.
+ * @param selection
+ * the selection in the model (ecore file).
+ */
+ public AddParameterInOperationDialog(final FacetOperation selection,
+ final EditingDomain editingDomain) {
+ super(null, editingDomain);
+ this.operationProperty = new PropertyElement2<FacetOperation>(false,
+ selection);
+ }
+
+ @Override
+ protected IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>> createWidget() {
+ final AddParameterInOperationWidget widget = new AddParameterInOperationWidget(
+ this.getDialogComposite(),
+ this.getEditingDomain(), this.operationProperty,
+ this.getNameProperty(), this.getLowerBdProperty(),
+ this.getUpperBdProperty(), this.getTypeProperty(),
+ this.getOrderedProperty(), this.getUniqueProperty());
+ return new SynchronizedETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>(
+ widget, widget.getDisplay());
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.Add_an_Operation_Parameter_desc;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Add_an_Operation_Parameter;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddReferenceInFacetDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddReferenceInFacetDialog.java
new file mode 100644
index 00000000000..6337661bf82
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/AddReferenceInFacetDialog.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IEStructuralFeatureWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedEStructuralFeatureWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition.EditFacetReferenceWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+/**
+ * Concrete Dialog for the creation of a Reference in a Facet.
+ */
+public class AddReferenceInFacetDialog extends
+ AbstractEStructuralFeatureDialog<IEStructuralFeatureWidget> {
+
+ /**
+ * Constructor.
+ *
+ * @param callback
+ * the callback.
+ * @param selection
+ * the selection in the model (ecore file).
+ */
+ public AddReferenceInFacetDialog(final Facet facet,
+ final EditingDomain editingDomain) {
+ super(null, editingDomain, new PropertyElement2<Facet>(false, facet));
+ }
+
+ @Override
+ protected IEStructuralFeatureWidget createWidget() {
+ final EditFacetReferenceWidget widget = new EditFacetReferenceWidget(
+ this.getDialogComposite(),
+ EFacetFactory.eINSTANCE.createFacetReference(),
+ this.getEditingDomain(), this.getContainerProperty(),
+ this.getNameProperty(), this.getLowerBdProperty(),
+ this.getUpperBdProperty(), this.getTypeProperty(),
+ this.getOrderedProperty(), this.getUniqueProperty(),
+ this.getQueryProperty(), this.getVolatileProperty(),
+ this.getChangeableroperty(), this.getDerivedroperty(),
+ this.getTransientProperty());
+ return new SynchronizedEStructuralFeatureWidget(widget,
+ widget.getDisplay());
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.Add_a_Reference_desc;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Add_a_Reference;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/CreateFacetInFacetSetDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/CreateFacetInFacetSetDialog.java
new file mode 100644
index 00000000000..21e47b1433a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/CreateFacetInFacetSetDialog.java
@@ -0,0 +1,83 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedFacetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition.EditFacetWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+/**
+ * Concrete Dialog for the creation of a Facet in a FacetSet.
+ */
+public class CreateFacetInFacetSetDialog
+ extends
+ AbstractENamedElementDialog<
+ FacetSet,
+ IGetOrCreateFilteredFacetSetWidget,
+ IFacetWidget> {
+
+ private final PropertyElement2<FacetSet> facetSetProp;
+ private final PropertyElement2<String> facetNameProp;
+ private final PropertyElement2<EClass> extEClassProp;
+ private final PropertyElement2<ETypedElement> conformProp;
+
+ /**
+ * Constructor.
+ *
+ * @param callback
+ * the callback.
+ * @param selection
+ * the selection in the model (ecore file).
+ */
+ public CreateFacetInFacetSetDialog(final FacetSet selection,
+ final EditingDomain editingDomain) {
+ super(selection, editingDomain);
+ this.facetSetProp = new PropertyElement2<FacetSet>(true);
+ this.facetNameProp = new PropertyElement2<String>(true);
+ this.extEClassProp = new PropertyElement2<EClass>(true);
+ this.conformProp = new PropertyElement2<ETypedElement>(true);
+ if (selection != null) {
+ this.facetSetProp.setValue2(selection);
+ }
+ }
+
+ @Override
+ protected IFacetWidget createWidget() {
+ final Facet facet = EFacetFactory.eINSTANCE.createFacet();
+ final EditFacetWidget widget = new EditFacetWidget(
+ this.getDialogComposite(), facet, this.getEditingDomain(),
+ this.facetNameProp, this.facetSetProp, this.conformProp,
+ this.extEClassProp);
+ return new SynchronizedFacetWidget(widget, widget.getDisplay());
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.CreateFacetInFacetSetWizardPage_wizard_description;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Create_facet_in_facetSet;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/CreateFacetSetInFacetSetDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/CreateFacetSetInFacetSetDialog.java
new file mode 100644
index 00000000000..0276a8a48b6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/creation/CreateFacetSetInFacetSetDialog.java
@@ -0,0 +1,78 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedENamedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition.EditFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+/**
+ * Concrete Dialog for the creation of a FacetSet in a FacetSet.
+ */
+public class CreateFacetSetInFacetSetDialog extends
+ AbstractENamedElementDialog<
+ FacetSet,
+ IGetOrCreateFilteredFacetSetWidget,
+ IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>
+ > {
+
+ private final PropertyElement2<String> facetNameProperty;
+ private final PropertyElement2<FacetSet> facetSetProperty;
+
+ /**
+ * Constructor.
+ *
+ * @param shell
+ * the parent shell.
+ * @param selection
+ * the selection in the model (ecore file).
+ */
+ public CreateFacetSetInFacetSetDialog(final FacetSet selection,
+ final EditingDomain editingDomain) {
+ super(selection, editingDomain);
+ this.facetNameProperty = new PropertyElement2<String>(true);
+ this.facetSetProperty = new PropertyElement2<FacetSet>(false);
+ if (selection != null) {
+ this.facetSetProperty.setValue2(selection);
+ }
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.Create_facetSet_in_facetSet;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.CreateFacetSetWizardImpl_Create_new_facet_Set;
+ }
+
+ @Override
+ protected IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget> createWidget() {
+ final FacetSet editedFacetSet = EFacetFactory.eINSTANCE
+ .createFacetSet();
+ final EditFacetSetWidget widget = new EditFacetSetWidget(
+ this.getDialogComposite(), editedFacetSet,
+ this.getEditingDomain(), this.facetNameProperty,
+ this.facetSetProperty);
+ return new SynchronizedENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>(
+ widget, widget.getDisplay());
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetAttributeDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetAttributeDialog.java
new file mode 100644
index 00000000000..b1947551745
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetAttributeDialog.java
@@ -0,0 +1,73 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.edition;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation.AbstractEStructuralFeatureDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IEStructuralFeatureWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedEStructuralFeatureWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition.EditFacetAttributeWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+/**
+ * Widget for the edition of a {@link FacetAttribute}.
+ */
+public class EditFacetAttributeDialog extends
+ AbstractEStructuralFeatureDialog<IEStructuralFeatureWidget> {
+
+ private final FacetAttribute fAttribut;
+
+ /**
+ * Constructor.
+ *
+ * @param callback
+ * the callback.
+ * @param fAttribute
+ * the selection in the model (ecore file).
+ */
+ public EditFacetAttributeDialog(final FacetAttribute fAttribute,
+ final EditingDomain editingDomain) {
+ super(fAttribute, editingDomain, new PropertyElement2<Facet>(true,
+ (Facet) fAttribute.eContainer()));
+ this.fAttribut = fAttribute;
+ }
+
+ @Override
+ protected IEStructuralFeatureWidget createWidget() {
+ final EditFacetAttributeWidget widget = new EditFacetAttributeWidget(
+ this.getDialogComposite(), this.fAttribut,
+ this.getEditingDomain(), this.getContainerProperty(),
+ this.getNameProperty(), this.getLowerBdProperty(),
+ this.getUpperBdProperty(), this.getTypeProperty(),
+ this.getOrderedProperty(), this.getUniqueProperty(),
+ this.getQueryProperty(), this.getVolatileProperty(),
+ this.getChangeableroperty(), this.getDerivedroperty(),
+ this.getTransientProperty());
+ return new SynchronizedEStructuralFeatureWidget(widget,
+ widget.getDisplay());
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.Edit_FacetAttribute;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Edit_FacetAttribute;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetDialog.java
new file mode 100644
index 00000000000..7b7e0052fed
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetDialog.java
@@ -0,0 +1,91 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.edition;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation.AbstractENamedElementDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedFacetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition.EditFacetWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+/**
+ * Widget for the edition of a {@link Facet}.
+ */
+public class EditFacetDialog extends
+ AbstractENamedElementDialog<
+ FacetSet,
+ IGetOrCreateFilteredFacetSetWidget,
+ IFacetWidget
+ > {
+
+ private final EditingDomain editingDomain;
+ private final PropertyElement2<String> facetNameProperty;
+ private final PropertyElement2<FacetSet> facetSetProperty;
+ private final PropertyElement2<EClass> facetMetaclass;
+ private final PropertyElement2<ETypedElement> conformProperty;
+
+ /**
+ * Constructor.
+ *
+ * @param callback
+ * the callback.
+ * @param selection
+ * the selection in the model (ecore file).
+ */
+ public EditFacetDialog(final Facet selection,
+ final EditingDomain editingDomain) {
+ super(selection, editingDomain);
+ this.editingDomain = editingDomain;
+ this.facetNameProperty = new PropertyElement2<String>(true);
+ this.facetSetProperty = new PropertyElement2<FacetSet>(true);
+ this.facetMetaclass = new PropertyElement2<EClass>(true);
+ this.conformProperty = new PropertyElement2<ETypedElement>(true);
+ if (selection != null) {
+ // Get the first element of the selection
+ this.facetNameProperty.setValue2(selection.getName());
+ this.facetSetProperty.setValue2((FacetSet) selection.eContainer());
+ this.facetMetaclass.setValue2(selection.getExtendedMetaclass());
+ this.conformProperty.setValue2(selection
+ .getConformanceTypedElement());
+ }
+ }
+
+ @Override
+ protected IFacetWidget createWidget() {
+ final EditFacetWidget widget = new EditFacetWidget(
+ this.getDialogComposite(), (Facet) getSelection(),
+ this.editingDomain, this.facetNameProperty,
+ this.facetSetProperty, this.conformProperty,
+ this.facetMetaclass);
+ return new SynchronizedFacetWidget(
+ widget,
+ widget.getDisplay());
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.Edit_Facet;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Edit_Facet;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetOperationDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetOperationDialog.java
new file mode 100644
index 00000000000..39148af9bb8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetOperationDialog.java
@@ -0,0 +1,75 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.edition;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation.AbstractDerivedTypedElementDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedDerivedTypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition.EditFacetOperationWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+/**
+ * Widget for the edition of a {@link FacetOperation}.
+ */
+public class EditFacetOperationDialog extends
+ AbstractDerivedTypedElementDialog<IDerivedTypedElementWidget> {
+
+ private final FacetOperation fOperation;
+ private final PropertyElement2<Facet> facetProperty;
+
+ /**
+ * Constructor.
+ *
+ * @param callback
+ * the callback.
+ * @param selection
+ * the selection in the model (ecore file).
+ * @param editingDomain
+ * the current editing model.
+ */
+ public EditFacetOperationDialog(final FacetOperation fOperation,
+ final EditingDomain editingDomain) {
+ super(fOperation, editingDomain);
+ this.fOperation = fOperation;
+ this.facetProperty = new PropertyElement2<Facet>(false,
+ (Facet) this.fOperation.eContainer());
+ }
+
+ @Override
+ protected IDerivedTypedElementWidget createWidget() {
+ final EditFacetOperationWidget widget = new EditFacetOperationWidget(
+ this.getDialogComposite(),
+ this.fOperation, this.getEditingDomain(), this.facetProperty,
+ this.getNameProperty(), this.getLowerBdProperty(),
+ this.getUpperBdProperty(), this.getTypeProperty(),
+ this.getOrderedProperty(), this.getUniqueProperty(),
+ this.getQueryProperty());
+ return new SynchronizedDerivedTypedElementWidget(widget,
+ widget.getDisplay());
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.Edit_FacetOperation;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Edit_FacetOperation;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetOperationParameterDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetOperationParameterDialog.java
new file mode 100644
index 00000000000..575e548e301
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetOperationParameterDialog.java
@@ -0,0 +1,74 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.edition;
+
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation.AbstractETypedElementDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IETypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedETypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition.EditFacetOperationParameterWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+/**
+ * Widget for the edition of a {@link EParameter}.
+ */
+public class EditFacetOperationParameterDialog extends
+ AbstractETypedElementDialog<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>, IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>> {
+
+ private final EditingDomain editingDomain;
+ private final PropertyElement2<FacetOperation> operationProperty;
+
+ /**
+ * Constructor.
+ *
+ * @param callback
+ * the callback.
+ * @param selection
+ * the selection in the model (ecore file).
+ */
+ public EditFacetOperationParameterDialog(final EParameter selection,
+ final EditingDomain editingDomain) {
+ super(selection, editingDomain);
+ this.editingDomain = editingDomain;
+ this.operationProperty = new PropertyElement2<FacetOperation>(false,
+ (FacetOperation) selection.eContainer());
+ }
+
+ @Override
+ protected IETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>> createWidget() {
+ final EditFacetOperationParameterWidget widget = new EditFacetOperationParameterWidget(this.getDialogComposite(),
+ (EParameter) getSelection(), this.editingDomain,
+ this.operationProperty, this.getNameProperty(),
+ this.getLowerBdProperty(), this.getUpperBdProperty(),
+ this.getTypeProperty(), this.getOrderedProperty(),
+ this.getUniqueProperty());
+ return new SynchronizedETypedElementWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>(
+ widget, widget.getDisplay());
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.Edit_FacetOperationParameter;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Edit_FacetOperationParameter;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetReferenceDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetReferenceDialog.java
new file mode 100644
index 00000000000..38bc16ad59e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetReferenceDialog.java
@@ -0,0 +1,74 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.edition;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation.AbstractEStructuralFeatureDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IEStructuralFeatureWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedEStructuralFeatureWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition.EditFacetReferenceWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+/**
+ * Widget for the edition of a {@link FacetReference}.
+ */
+public class EditFacetReferenceDialog extends
+ AbstractEStructuralFeatureDialog<IEStructuralFeatureWidget> {
+
+ private final FacetReference facetReference;
+
+
+ /**
+ * Constructor.
+ *
+ * @param callback
+ * the callback.
+ * @param selection
+ * the selection in the model (ecore file).
+ */
+ public EditFacetReferenceDialog(final FacetReference facetReference,
+ final EditingDomain editingDomain) {
+ super(facetReference, editingDomain, new PropertyElement2<Facet>(true,
+ (Facet) facetReference.eContainer()));
+ this.facetReference = facetReference;
+ }
+
+ @Override
+ protected IEStructuralFeatureWidget createWidget() {
+ final EditFacetReferenceWidget widget = new EditFacetReferenceWidget(
+ this.getDialogComposite(), this.facetReference,
+ this.getEditingDomain(), this.getContainerProperty(),
+ this.getNameProperty(), this.getLowerBdProperty(),
+ this.getUpperBdProperty(), this.getTypeProperty(),
+ this.getOrderedProperty(), this.getOrderedProperty(),
+ this.getQueryProperty(), this.getVolatileProperty(),
+ this.getChangeableroperty(), this.getDerivedroperty(),
+ this.getTransientProperty());
+ return new SynchronizedEStructuralFeatureWidget(widget,
+ widget.getDisplay());
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.Edit_FacetReference;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Edit_FacetReference;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetSetDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetSetDialog.java
new file mode 100644
index 00000000000..05b6596c148
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/dialog/edition/EditFacetSetDialog.java
@@ -0,0 +1,70 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.edition;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation.AbstractENamedElementDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedENamedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition.EditFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+/**
+ * Widget for the edition of a {@link FacetSet}.
+ */
+public class EditFacetSetDialog extends
+ AbstractENamedElementDialog<FacetSet, IGetOrCreateFilteredFacetSetWidget, IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>> {
+
+ private final PropertyElement2<FacetSet> contrainerProp;
+ private final FacetSet editedFacetSet;
+
+ /**
+ * Constructor.
+ *
+ * @param callback
+ * the callback.
+ * @param selection
+ * the selection in the model (ecore file).
+ */
+ public EditFacetSetDialog(final FacetSet selection,
+ final EditingDomain editingDomain) {
+ super(selection, editingDomain);
+ this.editedFacetSet = selection;
+ this.contrainerProp = new PropertyElement2<FacetSet>(true, true);
+ this.contrainerProp.setValue2((FacetSet) selection.eContainer());
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return Messages.Edit_FacetSet;
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return Messages.Edit_FacetSet;
+ }
+
+ @Override
+ protected IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget> createWidget() {
+ final EditFacetSetWidget widget = new EditFacetSetWidget(
+ this.getDialogComposite(), this.editedFacetSet,
+ this.getEditingDomain(), this.getNameProperty(),
+ this.contrainerProp);
+ return new SynchronizedENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>(
+ widget, widget.getDisplay());
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exception/SdkUiRuntimeException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exception/SdkUiRuntimeException.java
new file mode 100644
index 00000000000..b4afcb1748d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exception/SdkUiRuntimeException.java
@@ -0,0 +1,34 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exception;
+
+public class SdkUiRuntimeException extends RuntimeException {
+
+ private static final long serialVersionUID = 6503448051517995525L;
+
+ public SdkUiRuntimeException() {
+ super();
+ }
+
+ public SdkUiRuntimeException(final String message) {
+ super(message);
+ }
+
+ public SdkUiRuntimeException(final Throwable cause) {
+ super(cause);
+ }
+
+ public SdkUiRuntimeException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.java
new file mode 100644
index 00000000000..e01a88f4aff
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/IQueryContext.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+public interface IQueryContext {
+
+ Resource getResource();
+
+ Facet getFacet();
+
+ String getDerivedTypedElementName();
+
+ EObject getIntermediateEObject();
+
+ IProject getProject();
+
+ EClassifier getReturnType();
+
+ int getUpperBound();
+
+ EClassifier getExtendedEClass();
+
+ Query getQuery();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.java
new file mode 100644
index 00000000000..2813e9a9482
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/IQueryDialogFactoryStrategy.java
@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.IAbstractWidget;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This class will be used for the creation of a java query.
+ *
+ * @see JavaQueryWidget
+ */
+public interface IQueryDialogFactoryStrategy {
+
+ IAbstractWidget createWidget(Composite parent,
+ IQueryContext queryContext);
+
+ Query createQuery(boolean canBeCached, boolean sideEffects,
+ IQueryContext queryContext);
+
+ String getDialogMessage();
+
+ String getDialogTitle();
+
+ String getConclusionText();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.java
new file mode 100644
index 00000000000..94df7a1c16f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/dialog/query/IQueryDialogFactory.java
@@ -0,0 +1,27 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+
+/**
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IQueryDialogFactory extends IDialog<Object> {
+
+ Query createQuery();
+
+ String getConclusionText();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.java
new file mode 100644
index 00000000000..8586df41b77
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IDerivedTypedElementWidget.java
@@ -0,0 +1,49 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.ICreateQueryWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+
+/**
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IDerivedTypedElementWidget extends
+ IETypedElementWidget<Facet, IGetOrCreateFilteredElementCommmandWidget<Facet, IFacetWidget>> {
+
+ Query getQuery();
+
+ void setQuery(Query value);
+
+ /**
+ * Select the query with the name in parameter.
+ *
+ * @param queryName
+ * the name of the query to select.
+ */
+ IDialog<ICreateQueryWidget> selectQueryType(String queryName);
+
+ /**
+ * @return true if the query is enable.
+ */
+ boolean isQueryEnable();
+
+ /**
+ * @return the text displayed with the query.
+ */
+ String getQueryText();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.java
new file mode 100644
index 00000000000..4fda6a5ffe2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IENamedElementWidget.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+
+/**
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IENamedElementWidget<C extends EObject, CW extends Object>
+ extends ICommandWidget {
+
+ /**
+ * Press the get or create parent button.
+ *
+ * @return the dialog open when the button is pressed.
+ */
+ IDialog<CW> pressParentButton();
+
+ /**
+ * @return the name of the element.
+ */
+ String getElementName();
+
+ /**
+ * Set the name of the element.
+ *
+ * @param value
+ * the name.
+ */
+ void setName(String value);
+
+ C getContainer();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.java
new file mode 100644
index 00000000000..f5822c32ed4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IEStructuralFeatureWidget.java
@@ -0,0 +1,37 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget;
+
+
+/**
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IEStructuralFeatureWidget extends IDerivedTypedElementWidget {
+
+ boolean isTransient();
+
+ void setTransient(boolean value);
+
+ boolean isVolatile();
+
+ void setVolatile(boolean value);
+
+ boolean isChangeable();
+
+ void setChangeable(boolean value);
+
+ boolean isDerived();
+
+ void setDerived(boolean value);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.java
new file mode 100644
index 00000000000..8214f16b36e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IETypedElementWidget.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard;
+
+/**
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IETypedElementWidget<C extends EObject, CW extends Object>
+ extends
+ IENamedElementWidget<C, CW> {
+
+ boolean isOrdered();
+
+ void setOrdered(boolean value);
+
+ boolean isUnique();
+
+ void setUnique(boolean value);
+
+ int getLowerBound();
+
+ void setLowerBound(int value);
+
+ int getUpperBound();
+
+ void setUpperBound(int value);
+
+ EClassifier getEType();
+
+ void setEType(EClassifier value);
+
+ /**
+ * Press the button to select the type.
+ */
+ ISelectETypeWizard<EClassifier> pressTypeButton();
+
+ /**
+ * @return the type of the element.
+ */
+ String getElementTypeName();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.java
new file mode 100644
index 00000000000..dde7e3605ee
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/IFacetWidget.java
@@ -0,0 +1,32 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget;
+
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass.IGetExtendedMetaclassWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+
+public interface IFacetWidget extends
+ IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget> {
+
+ void setSubTypingFacetSelection(final boolean enable);
+
+ IDialog<IGetOrCreateFilteredElementCommmandWidget<ETypedElement, Object>> pressSubTypingButton();
+
+ String getSubTypingFacet();
+
+ IGetExtendedMetaclassWidget getGetExtendedMetaclassWidget();
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.java
new file mode 100644
index 00000000000..2fc0f26eda1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/component/getorcreate/IGetOrCreateFacetSetWidget.java
@@ -0,0 +1,35 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.getorcreate.GetOrCreateFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.getorcreate.IAbstractGetOrCreateElementWithButtonWidget;
+
+/**
+ * Interface for {@link GetOrCreateFacetSetWidget}.
+ *
+ * @see GetOrCreateFacetSetWidget
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IGetOrCreateFacetSetWidget extends
+ IAbstractGetOrCreateElementWithButtonWidget<IDialog<IGetOrCreateFilteredFacetSetWidget>> {
+
+ /**
+ * @return the {@link FacetSet} selected.
+ */
+ FacetSet getFacetSet();
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.java
new file mode 100644
index 00000000000..3df7605363c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/component/metaclass/IGetExtendedMetaclassWidget.java
@@ -0,0 +1,21 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.getorcreate.IAbstractGetOrCreateElementWithButtonWidget;
+
+public interface IGetExtendedMetaclassWidget extends
+ IAbstractGetOrCreateElementWithButtonWidget<ISelectETypeWizard<EClass>> {
+ // This interface is juste dedicated to simplify the method's signatures
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.java
new file mode 100644
index 00000000000..c025f6557a4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/component/query/ICreateQueryWidget.java
@@ -0,0 +1,31 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.query.CreateQueryWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+
+
+/**
+ * @see CreateQueryWidget
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICreateQueryWidget extends ICommandWidget {
+
+ Object getCreateQueryWidget();
+
+ boolean isCanBeCached();
+
+ boolean isHasSideEffect();
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.java
new file mode 100644
index 00000000000..f0e665dfc6f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/ICreateFacetInFacetSetWidget.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation;
+
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate.IGetOrCreateFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass.IGetExtendedMetaclassWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name.AbstractGetElementNameWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.IAbstractWidget;
+
+/**
+ * @see CreateFacetInFacetSetWidget
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICreateFacetInFacetSetWidget extends
+ IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget> {
+
+ /**
+ * @return the getOrCreateFacetSetWidget
+ */
+ IGetOrCreateFacetSetWidget getGetOrCreateFacetSetWidget();
+
+ /**
+ * @return the selectSubTypingTypeWidget
+ */
+ IAbstractWidget getSelectSubTypingTypeWidget();
+
+ /**
+ * @return the getFacetNameWidget
+ */
+ AbstractGetElementNameWidget getGetFacetNameWidget();
+
+ /**
+ * @return the getExtendedMetaclassWidget
+ */
+ IGetExtendedMetaclassWidget getGetExtendedMetaclassWidget();
+
+ /**
+ * @return the name of the sub-typing widget.
+ */
+ String getSubTypingFacet();
+
+ IDialog<IGetOrCreateFilteredElementCommmandWidget<ETypedElement, Object>> pressSubTypingButton();
+
+ void setSubTypingFacetSelection(final boolean enable);
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.java
new file mode 100644
index 00000000000..f1362c52a23
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/widget/creation/IGetOrCreateFilteredFacetSetWidget.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+
+public interface IGetOrCreateFilteredFacetSetWidget
+ extends
+ IGetOrCreateFilteredElementCommmandWidget<
+ FacetSet,
+ IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>
+ > {
+ // This interfacet is just a type declaration shortcut
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.java
new file mode 100644
index 00000000000..512a3a184c6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/wizard/IWizardFactory.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.wizard.WizardFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.wizard.IExtendedWizard;
+import org.eclipse.jface.viewers.ISelection;
+
+/**
+ * Factory for the wizards creation.
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IWizardFactory {
+
+ IWizardFactory INSTANCE = new WizardFactory();
+
+ /**
+ * Create a concrete instance of {@link ICreateFacetSetWizard}
+ *
+ * @param selection
+ * the original selection for the wizard.
+ * @return a new instance of {@link ICreateFacetSetWizard}
+ */
+ IExtendedWizard createCreateFacetSetWizard(ISelection selection);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.java
new file mode 100644
index 00000000000..7f22ee79e9d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/ICreateFacetSetWizardPage.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.wizard.page.CreateFacetSetWizardPage;
+import org.eclipse.jface.wizard.IWizardPage;
+
+/**
+ * @see CreateFacetSetWizardPage
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICreateFacetSetWizardPage extends IWizardPage {
+
+ /**
+ * @return the model file.
+ */
+ IFile getModelFile();
+
+ /**
+ * @return the model file name.
+ */
+ String getFileName();
+
+ /**
+ * @param fileName
+ */
+ void setFileName(String fileName);
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.java
new file mode 100644
index 00000000000..26a6c22a40e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/exported/wizard/page/IFacetSetPropertyWizardPage.java
@@ -0,0 +1,50 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.wizard.page.FacetSetPropertyWizardPage;
+import org.eclipse.jface.wizard.IWizardPage;
+
+/**
+ * @see FacetSetPropertyWizardPage
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IFacetSetPropertyWizardPage extends IWizardPage {
+
+ /**
+ * @return the nsURI.
+ */
+ String getNsUri();
+
+ /**
+ * Set the nsURI.
+ *
+ * @param nsUri
+ * the nsURI to set.
+ */
+ void setNsUri(String nsUri);
+
+ /**
+ * @return the prefix.
+ */
+ String getPrefix();
+
+ /**
+ * Set the prefix.
+ *
+ * @param prefix
+ * the prefix to set.
+ */
+ void setPrefix(String prefix);
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.java
new file mode 100644
index 00000000000..5dda412e4ff
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/AddAttributeInFacetHandler.java
@@ -0,0 +1,33 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler.AbstractSelectionExpectedTypeHandler;
+
+/**
+ * Handler for the creation of an Attribute in a Facet.
+ */
+public class AddAttributeInFacetHandler extends AbstractSelectionExpectedTypeHandler {
+
+ @Override
+ protected Class<?> getSelectionExpectedType() {
+ return Facet.class;
+ }
+
+ public Object execute(final ExecutionEvent event) {
+ return IFacetDialogFactory.INSTANCE.openAddAttributeInFacetDialog();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.java
new file mode 100644
index 00000000000..a632e223491
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/AddOperationInFacetHandler.java
@@ -0,0 +1,32 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler.AbstractSelectionExpectedTypeHandler;
+
+/**
+ * Handler for the creation of an Operation in a Facet.
+ */
+public class AddOperationInFacetHandler extends AbstractSelectionExpectedTypeHandler {
+
+ @Override
+ protected Class<?> getSelectionExpectedType() {
+ return Facet.class;
+ }
+
+ public Object execute(final ExecutionEvent event) {
+ return IFacetDialogFactory.INSTANCE.openAddOperationInFacetDialog();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.java
new file mode 100644
index 00000000000..b34c919308a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/AddParameterInOperationHandler.java
@@ -0,0 +1,32 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler.AbstractSelectionExpectedTypeHandler;
+
+/**
+ * Handler for the creation of a Parameter in an Operation.
+ */
+public class AddParameterInOperationHandler extends AbstractSelectionExpectedTypeHandler {
+
+ @Override
+ protected Class<?> getSelectionExpectedType() {
+ return FacetOperation.class;
+ }
+
+ public Object execute(final ExecutionEvent event) {
+ return IFacetDialogFactory.INSTANCE.openAddParameterInOperationDialog();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.java
new file mode 100644
index 00000000000..77af50324ea
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/AddReferenceInFacetHandler.java
@@ -0,0 +1,32 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler.AbstractSelectionExpectedTypeHandler;
+
+/**
+ * Handler for the creation of a Reference in a Facet.
+ */
+public class AddReferenceInFacetHandler extends AbstractSelectionExpectedTypeHandler {
+
+ @Override
+ protected Class<?> getSelectionExpectedType() {
+ return Facet.class;
+ }
+
+ public Object execute(final ExecutionEvent event) {
+ return IFacetDialogFactory.INSTANCE.openAddReferenceInFacetDialog();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.java
new file mode 100644
index 00000000000..d39030f7178
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetInFacetSetHandler.java
@@ -0,0 +1,32 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler.AbstractSelectionExpectedTypeHandler;
+
+/**
+ * Handler for the creation of an Facet in a FacetSet.
+ */
+public class CreateFacetInFacetSetHandler extends AbstractSelectionExpectedTypeHandler {
+
+ @Override
+ protected Class<?> getSelectionExpectedType() {
+ return FacetSet.class;
+ }
+
+ public Object execute(final ExecutionEvent event) {
+ return IFacetDialogFactory.INSTANCE.openCreateFacetInFacetSetDialog();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.java
new file mode 100644
index 00000000000..3539968a8dd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/creation/CreateFacetSetInFacetSetHandler.java
@@ -0,0 +1,33 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.creation;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler.AbstractSelectionExpectedTypeHandler;
+
+/**
+ * The concrete handler for the creation of a FacetSet in a FacetSet.
+ */
+public class CreateFacetSetInFacetSetHandler extends AbstractSelectionExpectedTypeHandler {
+
+ @Override
+ protected Class<?> getSelectionExpectedType() {
+ return FacetSet.class;
+ }
+
+ public Object execute(final ExecutionEvent event) {
+ return IFacetDialogFactory.INSTANCE
+ .openCreateFacetSetInFacetSetDialog();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetAttributeHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetAttributeHandler.java
new file mode 100644
index 00000000000..544b7bf5c66
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetAttributeHandler.java
@@ -0,0 +1,32 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.edition;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler.AbstractSelectionExpectedTypeHandler;
+
+/**
+ * Handler for the edition of a {@link FacetAttribute}
+ */
+public class EditFacetAttributeHandler extends AbstractSelectionExpectedTypeHandler {
+
+ @Override
+ protected Class<?> getSelectionExpectedType() {
+ return FacetAttribute.class;
+ }
+
+ public Object execute(final ExecutionEvent event) {
+ return IFacetDialogFactory.INSTANCE.openEditFacetAttributeDialog();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetHandler.java
new file mode 100644
index 00000000000..7b26afa4f0d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetHandler.java
@@ -0,0 +1,32 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.edition;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler.AbstractSelectionExpectedTypeHandler;
+
+/**
+ * Handler for the edition of a {@link Facet}
+ */
+public class EditFacetHandler extends AbstractSelectionExpectedTypeHandler {
+
+ @Override
+ protected Class<?> getSelectionExpectedType() {
+ return Facet.class;
+ }
+
+ public Object execute(final ExecutionEvent event) {
+ return IFacetDialogFactory.INSTANCE.openEditFacetDialog();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetOperationHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetOperationHandler.java
new file mode 100644
index 00000000000..c328632b9c6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetOperationHandler.java
@@ -0,0 +1,32 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.edition;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler.AbstractSelectionExpectedTypeHandler;
+
+/**
+ * Handler for the edition of a {@link FacetOperation}
+ */
+public class EditFacetOperationHandler extends AbstractSelectionExpectedTypeHandler {
+
+ @Override
+ protected Class<?> getSelectionExpectedType() {
+ return FacetOperation.class;
+ }
+
+ public Object execute(final ExecutionEvent event) {
+ return IFacetDialogFactory.INSTANCE.openEditFacetOperationDialog();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetOperationParameterHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetOperationParameterHandler.java
new file mode 100644
index 00000000000..60087c6c519
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetOperationParameterHandler.java
@@ -0,0 +1,33 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.edition;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler.AbstractSelectionExpectedTypeHandler;
+
+/**
+ * Handler for the edition of a {@link EParameter}
+ */
+public class EditFacetOperationParameterHandler extends AbstractSelectionExpectedTypeHandler {
+
+ @Override
+ protected Class<?> getSelectionExpectedType() {
+ return EParameter.class;
+ }
+
+ public Object execute(final ExecutionEvent event) {
+ return IFacetDialogFactory.INSTANCE
+ .openEditFacetOperationParameterDialog();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetReferenceHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetReferenceHandler.java
new file mode 100644
index 00000000000..1b42d2e6d5e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetReferenceHandler.java
@@ -0,0 +1,32 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.edition;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler.AbstractSelectionExpectedTypeHandler;
+
+/**
+ * Handler for the edition of a {@link FacetReference}
+ */
+public class EditFacetReferenceHandler extends AbstractSelectionExpectedTypeHandler {
+
+ @Override
+ protected Class<?> getSelectionExpectedType() {
+ return FacetReference.class;
+ }
+
+ public Object execute(final ExecutionEvent event) {
+ return IFacetDialogFactory.INSTANCE.openEditFacetReferenceDialog();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetSetHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetSetHandler.java
new file mode 100644
index 00000000000..02feb639675
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/handler/edition/EditFacetSetHandler.java
@@ -0,0 +1,45 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.handler.edition;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.dialog.IFacetDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.handler.HandlerUtils;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler.AbstractSelectionExpectedTypeHandler;
+import org.eclipse.jface.viewers.IStructuredSelection;
+
+public class EditFacetSetHandler extends AbstractSelectionExpectedTypeHandler {
+
+ @Override
+ public boolean isEnabled() {
+ boolean isEnabled = false;
+ final IStructuredSelection selection = HandlerUtils
+ .getStructuredSelection();
+ if (selection != null) {
+ final FacetSet facetSet = (FacetSet) HandlerUtils
+ .getStructuredSelection().getFirstElement();
+ isEnabled = facetSet.eContainer() != null;
+ }
+ return isEnabled && super.isEnabled();
+ }
+
+ @Override
+ protected Class<?> getSelectionExpectedType() {
+ return FacetSet.class;
+ }
+
+ public Object execute(final ExecutionEvent event) {
+ return IFacetDialogFactory.INSTANCE.openEditFacetSetDialog();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/messages.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/messages.properties
new file mode 100644
index 00000000000..8567f7a45cd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/messages.properties
@@ -0,0 +1,177 @@
+##########################################################################
+# Copyright (c) 2011, 2012 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+# Nicolas Bros (Mia-Software) - Bug 370442 - rewrite the Facet loading dialog for v0.2
+# Grégoire Dupé (Mia-Software) - copied from /org.eclipse.papyrus.emf.facet.infra.query.ui/src/org/eclipse/emf/facet/infra/query/ui/messages.properties
+# Nicolas Bros (Mia-Software) - copied from /org.eclipse.papyrus.emf.facet.infra.query.ui/src/org/eclipse/emf/facet/infra/query/ui/messages.properties
+# Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+# Nicolas Bros (Mia-Software) - Bug 372732 - [Facet] Rewrite the catalog views for 0.2
+# Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+# Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+# Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+###########################################################################
+Changeable=Changeable
+Derived=Derived
+Ordered=Ordered
+Transient=Transient
+Unique=Unique
+Volatile=Volatile
+Enter_a_nsUri=Enter a nsUri :
+Please_enter_nsUri=Please enter a nsUri
+Enter_a_prefix=Enter a prefix :
+ETypedElementSelectionControl_ClassicView=Classic View
+ETypedElementSelectionControl_invalidSelection=The selection contains invalid elements
+ETypedElementSelectionControl_invalidSelectionAtLeastOneElement=You must select at least 1 element
+ETypedElementSelectionControl_invalidSelectionAtMostXElements=You must select at most {0} elements
+ETypedElementSelectionControl_invalidSelectionETypedElementsOnly=Only ETypedElements can be selected
+ETypedElementSelectionDialog_dialogTitle=Select ETypedElement
+ETypedElementSelectionDialog_dialogTitleMultiSelection=Select ETypedElements
+ETypedElementSelectionDialog_radioButtonMultiSelection=ETypedElements selected below:
+ETypedElementSelectionDialog_radioButtonNoSelection=No selection
+ETypedElementSelectionDialog_radioButtonSingleSelection=ETypedElement selected below:
+ETypedElementSelectionSortedControl_metamodelView=Metamodel View
+ETypedElementSelectionSortedControl_toolTip=Display possible values sorted by metamodels
+Please_enter_prefix=Please enter a prefix
+Please_select_EPackage=Please, select an EPackage
+Select_query_type=Select a query
+Add_an_Attribute=Add an attribute
+Add_an_Attribute_desc=Add a new attribute to the selected facet
+Attribute_name=Attribute name:
+Operation=Operation :
+Facet=Facet :
+Facet_mustGiveFacetName=You must give a Facet name
+Facet_mustGiveReferenceName=You must give a Reference Name
+Facet_mustGiveOperationName=You must give a Operation Name
+Facet_mustGiveParameterName=You must give an Operation Parameter Name
+FacetSet=FacetSet :
+FacetSet_mustSelectFacetSet=You must select a FacetSet
+FacetSet_mustGiveFacetSetName=You must give a FacetSet name
+FacetSetsCatalogView_categoriesColumn=Categories
+FacetSetsCatalogView_documentationColumn=Documentation
+FacetSetsCatalogView_extendsColumn=Extends
+FacetSetsCatalogView_nameColumn=Name
+FacetSetsCatalogView_viewTitle=Facet Sets
+FacetSetSelectionControl_mustSelectAtLeastOneElement=You must select at least 1 element
+FacetSetSelectionControl_mustSelectAtMostNElements=You must select at most {0} elements
+FacetSetSelectionControl_onlyFacetSetsAllowedInSelection=Only FacetSets can be selected
+FacetSetSelectionControl_selectionContainsInvalidElements=The selection contains invalid elements
+FacetSetSelectionDialog_deselectAll=Deselect All
+FacetSetSelectionDialog_selectAll=Select All
+FacetSetSelectionDialog_titleSelectFacetSet=Select FacetSet
+FacetSetSelectionDialog_titleSelectFacetSets=Select FacetSets
+
+GetOrCreate_FacetSet_message=Select or create a FacetSet
+Select_FacetSet=Select a FacetSet
+GetOrCreate_Facet_message=Select or create a Facet
+Select_Facet=Select a Facet
+GetOrCreate_Operation_message=Select or create an Operation
+Select_Operation=Select an Operation
+Facet_mustSelectFacet=You must select a Facet
+Facet_mustSelectQuery=You must select a Query
+Facet_mustGiveAttributeName=You must give a Facet name
+Facet_mustSelectConformanceType=You must select a conformance type
+Operation_mustSelectOperation=You must select an Operation
+Type_mustSelectType=You must select a Type
+Lower_bound=Lower Bound :
+Upper_bound=Upper Bound :
+Add_a_Reference=Add a reference
+Add_an_Operation=Add an Operation
+Add_an_Operation_desc=Add a new operation to the selected facet
+Add_an_Operation_Parameter=Add an Operation Parameter
+Add_an_Operation_Parameter_desc=Add a new operation's parameter to the selected operation
+Operation_name=Operation Name:
+Parameter_name=Parameter Name:
+Add_a_Reference_desc=Add a reference to the selected facet
+Create=Create
+Create_FacetSet_Model=Create FacetSet Model
+CreateFacetInFacetSetWidget_FacetSetName=Facet Set Name
+CreateFacetInFacetSetWizardPage_could_not_find_wizard_page=Could not find the wizard for this query type
+Create_facet_in_facetSet=Create a Facet in a FacetSet
+Create_facetSet_in_facetSet=Create a Facet in a FacetSet
+Please_enter_value_for=Please enter a value for {0}
+CreateFacetInFacetSetWizardPage_Please_fill_extendedMetaClass=Please fill the extendedMetaClass field
+CreateFacetInFacetSetWizardPage_Sub_Typing_Facet=SubTyping Facet
+CreateFacetInFacetSetWizardPage_wizard_description=This wizard creates a new facet in a facetSet.
+CreateFacetSetWizardImpl_Create_new_facet_Set=Create a new Facet Set
+CreateFacetSetWizardImpl_FacetModel=Facet Set
+CreateFacetSetWizardImpl_File_extension_restriction=File extension has to be ".efacet"
+CreateFacetSetWizardPage_Not_a_Plugin_project=Warning : you are creating this FacetSet in a non-Plugin project. It will not be available until moved to a Plugin project.
+Create_Query=Create Query:
+Load_MetaModel_Resource=Load Meta-model Resource
+FacetSetSelectionDialog_selectFacetSetsMessage=Choose FacetSets:
+FacetSetSelectionDialog_selectFacetSetsTitle=Select FacetSets
+Package_Selection=Package Selection
+Select_Registered_URI=&Select a registered package URI:
+
+SelectQueryTypeWizardPage_No_wizard_found=No wizard page extension was found for the selected query type. Wizard pages have to be registered using queryFactoryWizardPageRegistration extension point
+SelectQueryTypeWizardPage_Query_Type=Query Type :
+JavaQueryWizardPage_Can_be_cached=Can be cached :
+JavaQueryWizardPage_has_side_effect=Has side effect :
+JavaQueryWizardPage_Query_name=Query name :
+Reference_name=Reference name:
+
+Select=Select
+Type=Type :
+New=New...
+Select_EClass=Select an EClass
+Select_EClassifier=Select an EClassifier
+Select_EDataType=Select an EDataType
+Select_EPackage=Select an EPackage
+Select_ETypedElement= Select an ETypedElement
+
+Query_name=Query name :
+Query_Select_Name_And_Type=You have to select a name and a type before the query
+
+#### Begin: copied from /org.eclipse.papyrus.emf.facet.infra.query.ui/src/org/eclipse/emf/facet/infra/query/ui/messages.properties
+QueryExecutionView_0=Missing bundle...
+QueryExecutionView_1=To execute the query, the depending bundle {0} must be installed. It will not be hot loaded.
+QueryExecutionView_classpathWarning=The output location of the Java project "{0}" was not found in its Bundle-ClassPath. This prevents the Java queries implementations it contains from being loaded.
+QueryExecutionView_errorInBundleClasspath=Error in Bundle-ClassPath
+QueryExecutionView_execEnvNotAvailable=Execution environment not available
+QueryExecutionView_execEnvError=To execute the query the execution environment {0} is required but not available. The available execution environments are: {1}
+QueryExecutionView_Context=Context
+QueryExecutionView_DisplayResultIn=Display result in:
+QueryExecutionView_dragAndDropHint=drag&drop model elements here
+QueryExecutionView_ErrorExecutingQuery=Error executing query
+QueryExecutionView_ETypeElementsGroup=ETypeElements
+QueryExecutionView_ExecuteButton=E&xecute
+QueryExecutionView_ExecuteGroup=Execute
+QueryExecutionView_NoQueryDisplayer=No Query Displayer
+QueryExecutionView_NoQuerySelected=No query
+QueryExecutionView_notImplementedYet=<Not implemented yet>
+QueryExecutionView_NullQueryResult=Null query result
+QueryExecutionView_Parameters=Parameters
+QueryExecutionView_Query=Query
+QueryExecutionView_QueryException=Query exception
+QueryExecutionView_QueryReturnedNull=Query returned a null result (see error log)
+QueryExecutionView_SelectQueryToExecute=You must select a query to execute
+
+Query_Query_Name=Query name :
+Query_has_side_effect=Has side effect :
+Query_Can_be_cached=Can be cached :
+
+Metaclass_mustSelectMetaclass=You must select a MetaClass
+ExtendedMetaClass=&Extended Meta-Class:
+#### End: copied from /org.eclipse.papyrus.emf.facet.infra.query.ui/src/org/eclipse/emf/facet/infra/query/ui/messages.properties
+
+#### Edition
+Edit_FacetSet=Edit a FacetSet
+Edit_Facet=Edit a Facet
+Edit_FacetAttribute=Edit a Facet Attribute
+Edit_FacetReference=Edit a Facet Reference
+Edit_FacetOperation=Edit a Facet Operation
+Edit_FacetOperationParameter=Edit a Facet Operation Parameter
+EditFacetSetWidget_FacetSetName=Facet Set Name
+EditFacetWidget_FacetName=Facet Name
+
+GetSubTypingType_message=Select a Sub typing type
+GetSubTypingType_title=Select a Sub typing type
+
+FacetSetPropertyWizardPage_facet_properties=Set the Facet properties \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.java
new file mode 100644
index 00000000000..4bad1fb7a81
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/AbstractQueryDialogFactory.java
@@ -0,0 +1,253 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query;
+
+import java.util.Map;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query.IQueryDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.query.AbstractQueryWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.WidgetProperties;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This abstract class must be extended by the plug-in which has to extend this
+ * plug-in. This abstract class must provide a simple way to create an dialog
+ * for the creation of the query</p>
+ *
+ * The {@link #createWidget()} method must return a widget that extends
+ * {@link AbstractQueryWidget} class add provide a widget for the edition of the
+ * query.</p>
+ *
+ * The {@link #createQuery()} method must return the final query created. The query
+ * must be a subclass of {@link Query}.</p>
+ *
+ * The {@link #getDialogMessage()} method must return a simple text that will
+ * notice the user that he successfully create the query.
+ *
+ * @see WidgetProperties
+ * @see PropertyElement
+ * @see AbstractQueryWidget
+ * @see Query
+ */
+public abstract class AbstractQueryDialogFactory<Q extends Query> implements
+ IQueryDialogFactory {
+
+ public static final ETypedElement QUERY_NAME = EcorePackage.eINSTANCE
+ .getENamedElement_Name();
+ public static final ETypedElement QUERY_TYPE = EcorePackage.eINSTANCE
+ .getETypedElement_EType();
+ public static final ETypedElement CAN_BE_CACHED = ExtensiblePackage.eINSTANCE
+ .getQuery_CanBeCached();
+ public static final ETypedElement SIDE_EFFECTS = ExtensiblePackage.eINSTANCE
+ .getQuery_CanHaveSideEffects();
+ private DerivedTypedElement dte;
+
+ private IDialog<?> parentDialog;
+ private WidgetProperties<ETypedElement> properties;
+ private Q initialQuery;
+ private final PropertyElement canBeCachedProp = getProperties()
+ .getProperty(AbstractQueryDialogFactory.CAN_BE_CACHED);
+ private final PropertyElement sideEffectsProp = getProperties()
+ .getProperty(AbstractQueryDialogFactory.SIDE_EFFECTS);
+
+ /**
+ * @return the widget associated to the dialog. The widget will contain all
+ * the necessaries {@link AbstractWidget} for the creation of the
+ * query.
+ */
+ public abstract AbstractQueryWidget<ETypedElement> createWidget(
+ Composite parent);
+
+ /**
+ * Return a map with the specific properties of the query.
+ *
+ * @return the properties
+ */
+ public abstract Map<ETypedElement, PropertyElement> createSpecificProperties();
+
+ /**
+ * @return the query created by this widget. Null if no query have been
+ * created.
+ */
+ public abstract Query createQuery();
+
+ /**
+ * @return the message description of the dialog.
+ */
+ public abstract String getDialogMessage();
+
+ /**
+ * @return the title of the dialog.
+ */
+ public abstract String getDialogTitle();
+
+ /**
+ * @return a text that the extension must set for the main dialog (to let
+ * the user know that he create the query).
+ */
+ public abstract String getConclusionText();
+
+ /**
+ * @return the parentDialog
+ */
+ public IDialog<?> getParent() {
+ return this.parentDialog;
+ }
+
+ /**
+ * @param queryName
+ * the queryName to set
+ */
+ public void setQueryName(final String queryName) {
+ getQueryNameProperty().setValue(queryName);
+ }
+
+ /**
+ * @return the facetset
+ */
+ public DerivedTypedElement getDerivedTypedElement() {
+ return this.dte;
+ }
+
+ /**
+ * @param queryName
+ * the queryName to set
+ */
+ public void setQueryType(final EClassifier queryType) {
+ getQueryTypeProperty().setValue(queryType);
+ }
+
+ /**
+ * @return the query type.
+ */
+ public PropertyElement getQueryTypeProperty() {
+ return getProperties().getProperty(
+ AbstractQueryDialogFactory.QUERY_TYPE);
+ }
+
+ /**
+ * This method return a singleton of the properties {@link WidgetProperties}
+ * with the initialization of some standard properties as: </nl> <li>The
+ * query name : {@link #getQueryNameProperty()}</li> <li>If the query can be
+ * cached : {@link #getCanBeCachedProperty()}</li> <li>If the query can have
+ * side effects : {@link #getCanHaveSideEffects()}</li> </nl>
+ *
+ * @return the properties
+ */
+ public WidgetProperties<ETypedElement> getProperties() {
+ if (this.properties == null) {
+ this.properties = new WidgetProperties<ETypedElement>();
+
+ // Query Name
+ this.properties.addProperty(AbstractQueryDialogFactory.QUERY_NAME,
+ new PropertyElement("QueryName", String.class, false)); //$NON-NLS-1$
+ // CanBeCached
+ this.properties.addProperty(
+ AbstractQueryDialogFactory.CAN_BE_CACHED,
+ new PropertyElement("CanBeCached", Boolean.class, true, //$NON-NLS-1$
+ Boolean.FALSE));
+ // CanHaveSideEffects
+ this.properties.addProperty(
+ AbstractQueryDialogFactory.SIDE_EFFECTS,
+ new PropertyElement("CanHaveSideEffects", Boolean.class, //$NON-NLS-1$
+ true, Boolean.FALSE));
+ // QueryType
+ this.properties.addProperty(AbstractQueryDialogFactory.QUERY_TYPE,
+ new PropertyElement("QueryType", EClassifier.class, true)); //$NON-NLS-1$
+ }
+ return this.properties;
+ }
+
+ /**
+ * The the specific properties to the existing properties.
+ */
+ public void addSpecificProperties() {
+ // Adding user's properties
+ final Map<ETypedElement, PropertyElement> userProp = createSpecificProperties();
+ if (userProp != null) {
+ for (final ETypedElement element : userProp.keySet()) {
+ this.properties.addProperty(element, userProp.get(element));
+ }
+ }
+ }
+
+ /**
+ * @return the queryNameProperty
+ */
+ public PropertyElement getQueryNameProperty() {
+ return getProperties().getProperty(
+ AbstractQueryDialogFactory.QUERY_NAME);
+ }
+
+ /**
+ * @return the CanBeCachedProperty
+ */
+ public PropertyElement getCanBeCachedProperty() {
+ return this.canBeCachedProp;
+ }
+
+ public boolean isCanBeCachedPropertyValue() {
+ return ((Boolean) this.canBeCachedProp.getValue()).booleanValue();
+ }
+
+ /**
+ * @return the CanHaveSideEffects
+ */
+ public PropertyElement getCanHaveSideEffects() {
+ return this.sideEffectsProp;
+ }
+
+ public boolean isCanHaveSideEffectsValue() {
+ return ((Boolean) this.sideEffectsProp.getValue()).booleanValue();
+ }
+
+ /**
+ * @return the initialQuery
+ */
+ public Q getInitialQuery() {
+ return this.initialQuery;
+ }
+
+ /**
+ * @param initialQuery the initialQuery to set
+ */
+ public void setInitialQuery(final Q initialQuery) {
+ this.initialQuery = initialQuery;
+ }
+
+ public void commit() {
+ this.parentDialog.commit();
+ }
+
+ public void cancel() {
+ this.parentDialog.cancel();
+ }
+
+ public int open() {
+ return this.parentDialog.open();
+ }
+
+ public boolean isDialogValid() {
+ return this.parentDialog.isDialogValid();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.java
new file mode 100644
index 00000000000..72b2deccf38
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/GetQueryDialog.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.AbstractCommandDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryDialogFactoryStrategy;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.ICreateQueryWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedCreateQueryWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.query.CreateQueryWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.IAbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+
+/**
+ * This class provide the dialog for the creation of the specific dialog
+ * according of the type of the query selected.
+ *
+ * To run, this class needs to have into the properties pass in the constructor:
+ * <p>
+ * <li>The {@link PropertyElement} <code>name</code> with the key
+ * <code>EcorePackage.eINSTANCE.getENamedElement_Name()</code></li>
+ * </p>
+ * <li>The {@link PropertyElement} <code>type</code> with the key
+ * <code>EcorePackage.eINSTANCE.getETypedElement_EType()</code></li> </p> <li>
+ * The {@link PropertyElement} <code>parent</code> (a {@link Facet}) with the
+ * key <code>EcorePackage.eINSTANCE.getEObject__EContainer()</code></li> </p>
+ */
+public class GetQueryDialog extends
+ AbstractCommandDialog<IWithResultDialogCallback<IQueryCreationResult>, ICreateQueryWidget> {
+
+ private final PropertyElement2<Boolean> canBeCachedProp;
+ private final PropertyElement2<Boolean> sideEffectsProp;
+ private CreateQueryWidget createQueryWidget;
+ private boolean valid;
+ private final IQueryDialogFactoryStrategy strategy;
+ private final IQueryContext queryContext;
+
+ /**
+ *
+ * @param callback
+ * the callback.
+ * @param properties
+ * properties that parent widget had.
+ * @param propertyElement
+ * the {@link PropertyElement} containing the query
+ * @param qDialogFactoryStrategiy
+ * an instance of {@link AbstractQueryDialogFactory} needed to
+ * create the dialog
+ * @param query
+ */
+ public GetQueryDialog(
+ final IWithResultDialogCallback<IQueryCreationResult> callback,
+ final IQueryDialogFactoryStrategy strategy,
+ final IQueryContext queryContext) {
+ super(callback);
+ this.canBeCachedProp = new PropertyElement2<Boolean>(true);
+ this.canBeCachedProp.setValue(Boolean.FALSE);
+ this.sideEffectsProp = new PropertyElement2<Boolean>(true);
+ this.sideEffectsProp.setValue(Boolean.FALSE);
+ this.strategy = strategy;
+ this.queryContext = queryContext;
+ }
+
+ @Override
+ public ICreateQueryWidget createWidget() {
+ this.createQueryWidget = new CreateQueryWidget(
+ this.getDialogComposite(), this.strategy, this.canBeCachedProp,
+ this.sideEffectsProp, this.queryContext);
+ return new SynchronizedCreateQueryWidget(this.createQueryWidget,
+ this.createQueryWidget.getDisplay());
+ }
+
+ @Override
+ protected String getDialogMessage() {
+ return this.strategy.getDialogMessage();
+ }
+
+ @Override
+ protected String getDialogTitle() {
+ return this.strategy.getDialogTitle();
+ }
+
+ @Override
+ protected void okPressed() {
+ this.valid = isValid();
+ if (this.valid) {
+ final boolean sideEffects = this.sideEffectsProp.getValue2()
+ .booleanValue();
+ final boolean canBeCashed = this.canBeCachedProp.getValue2()
+ .booleanValue();
+ final Query query = this.strategy.createQuery(canBeCashed,
+ sideEffects, this.queryContext);
+ final IWithResultDialogCallback<IQueryCreationResult> callback = getCallback();
+ callback.commited(new IQueryCreationResult() {
+ public Query getQuery() {
+ return query;
+ }
+
+ public String getLabel() {
+ return GetQueryDialog.this.getConclusionText();
+ }
+ });
+ }
+ super.okPressed();
+ }
+
+ @Override
+ protected void cancelPressed() {
+ final IWithResultDialogCallback<IQueryCreationResult> callback = getCallback();
+ callback.canceled(null);
+ super.cancelPressed();
+ }
+
+ @Override
+ public boolean isDialogValid() {
+ return this.valid;
+ }
+
+ private boolean isValid() {
+ boolean result = true;
+ final String error = getWidget().getError();
+ if (error != null) {
+ result = false;
+ }
+ return result;
+ }
+
+ public String getConclusionText() {
+ return this.strategy.getConclusionText();
+ }
+
+
+ public boolean isCanBeCached() {
+ return this.createQueryWidget.isCanBeCached();
+ }
+
+ public boolean isHasSideEffect() {
+ return this.createQueryWidget.isHasSideEffect();
+ }
+
+ public IAbstractWidget getCreateQueryWidget() {
+ return this.createQueryWidget.getCreateQueryWidget();
+ }
+
+ public IAbstractWidget createSubWidget() {
+ return this.strategy.createWidget(this.getDialogComposite(),
+ this.queryContext);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.java
new file mode 100644
index 00000000000..d9e0802a920
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/IQueryCreationResult.java
@@ -0,0 +1,21 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+public interface IQueryCreationResult {
+
+ Query getQuery();
+
+ String getLabel();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.java
new file mode 100644
index 00000000000..01355eb64e2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/IQueryWidgetCompositeFactoryFactory.java
@@ -0,0 +1,53 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query;
+
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryDialogFactoryStrategy;
+
+/**
+ * This interface provide to get all the plug-ins extending the extension point
+ * and the lazy loading of this plug-ins.
+ *
+ * @see QueryWidgetCompositeFactoryImpl
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IQueryWidgetCompositeFactoryFactory {
+
+ /**
+ * Returns an instance of {@link QueryWidgetCompositeFactoryImpl}.
+ */
+ IQueryWidgetCompositeFactoryFactory INSTANCE = new QueryWidgetCompositeFactoryImpl();
+
+ /**
+ * Return a registered {@link AbstractQueryDialogFactory} corresponding to
+ * the given type name.
+ *
+ * @param managedTypeName
+ * the <i>managedQueryTypeName</i> extension attribute.
+ * @return an instance of the class which implements
+ * {@link AbstractQueryDialogFactory}.
+ */
+ IQueryDialogFactoryStrategy getQueryDialogFactoryStrategy(
+ String managedTypeName);
+
+ /**
+ * Returns every registered {@link AbstractQueryDialogFactory} name.
+ *
+ * @return a list containing the <i>managedQueryTypeName</i>.
+ */
+ List<String> getRegisteredQueryWidgetsComposite();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.java
new file mode 100644
index 00000000000..af63d2e1ad4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/QueryWidgetCompositeFactoryImpl.java
@@ -0,0 +1,91 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query;
+
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.InvalidRegistryObjectException;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryDialogFactoryStrategy;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.osgi.util.NLS;
+
+/**
+ * Implementation of the {@link IQueryWidgetCompositeFactoryFactory}.
+ */
+public class QueryWidgetCompositeFactoryImpl implements
+ IQueryWidgetCompositeFactoryFactory {
+
+ private static final String EXTENSION_POINT = "org.eclipse.papyrus.emf.facet.efacet.sdk.ui.queryFactoryDialogRegistration"; //$NON-NLS-1$
+ private static final String DIALOG_FACTORY = "dialogFactory"; //$NON-NLS-1$
+ private static final String MANAGED_TYPE_NAME = "managedQueryTypeName"; //$NON-NLS-1$
+
+ private Map<String, IQueryDialogFactoryStrategy> extensions;
+
+ public IQueryDialogFactoryStrategy getQueryDialogFactoryStrategy(
+ final String managedTypeName) {
+ // Lazy Loading, we only create the necessary instance.
+ for (final IConfigurationElement element : Platform
+ .getExtensionRegistry().getConfigurationElementsFor(
+ QueryWidgetCompositeFactoryImpl.EXTENSION_POINT)) {
+ final String elementName = element
+ .getAttribute(QueryWidgetCompositeFactoryImpl.MANAGED_TYPE_NAME);
+ if (elementName.equals(managedTypeName)) {
+ try {
+ final Object object = element
+ .createExecutableExtension(QueryWidgetCompositeFactoryImpl.DIALOG_FACTORY);
+ if (object instanceof IQueryDialogFactoryStrategy) {
+ final IQueryDialogFactoryStrategy strategy = (IQueryDialogFactoryStrategy) object;
+ this.extensions.put(elementName, strategy);
+ } else {
+ final String errorMsg = NLS
+ .bind("The attribut {0} must contains a class implementing {1}", //$NON-NLS-1$
+ QueryWidgetCompositeFactoryImpl.DIALOG_FACTORY,
+ IQueryDialogFactoryStrategy.class
+ .getName());
+ Logger.logError(errorMsg, Activator.getDefault());
+ }
+ } catch (final InvalidRegistryObjectException e) {
+ Logger.logError(e, Activator.getDefault());
+ } catch (final CoreException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+ }
+ return this.extensions.get(managedTypeName);
+ }
+
+ public List<String> getRegisteredQueryWidgetsComposite() {
+ if (this.extensions == null) {
+ this.extensions = new HashMap<String, IQueryDialogFactoryStrategy>();
+
+ for (final IConfigurationElement element : Platform
+ .getExtensionRegistry().getConfigurationElementsFor(
+ QueryWidgetCompositeFactoryImpl.EXTENSION_POINT)) {
+ this.extensions
+ .put(element
+ .getAttribute(QueryWidgetCompositeFactoryImpl.MANAGED_TYPE_NAME),
+ null);
+ }
+ }
+
+ return new LinkedList<String>(this.extensions.keySet());
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.java
new file mode 100644
index 00000000000..50ac60924ab
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/query/SelectQueryTypeWidget.java
@@ -0,0 +1,290 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query;
+
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryDialogFactoryStrategy;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.ICreateQueryWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.SynchronizedAbstractDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.UIUtils;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.WidgetProperties;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Text;
+
+/**
+ * Provide the composite for the query type selection.</p>
+ *
+ * Label : [ combobox ] [ TextField ]
+ *
+ * When the user select a {@link AbstractQueryDialogFactory}, the associated
+ * dialog {@link GetQueryDialog} is created (with the method
+ * {@link #createQueryWidgetDialog(AbstractQueryDialogFactory)} using the
+ * attributes of the query type) and displayed.
+ *
+ * @see Query
+ * @see AbstractQueryDialogFactory
+ * @see GetQueryDialog
+ */
+public class SelectQueryTypeWidget extends AbstractWidget {
+
+ private static final int COLUMN_NUMBER = 2;
+ private Combo combobox;
+ private final PropertyElement queryProp;
+ private Text textField;
+ private final GridLayout gridLayout;
+ private String alertMessage;
+ private final boolean comboboxEnabled;
+ private final IQueryContext queryContext;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of the composite.
+ * @param properties
+ * the {@link WidgetProperties} of the parent.
+ * @param queryProp
+ * the property element that this composite will edit.
+ */
+ public SelectQueryTypeWidget(final Composite parent,
+ final PropertyElement propertyElement,
+ final IQueryContext queryContext) {
+ this(parent, propertyElement, false, queryContext);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of the composite.
+ * @param properties
+ * the {@link WidgetProperties} of the parent.
+ * @param queryProp
+ * the property element that this composite will edit.
+ */
+ public SelectQueryTypeWidget(final Composite parent,
+ final PropertyElement queryProperty, final boolean comboboxEnabled,
+ final IQueryContext queryContext) {
+ super(parent);
+ this.queryProp = queryProperty;
+ this.comboboxEnabled = comboboxEnabled;
+ this.gridLayout = new GridLayout(COLUMN_NUMBER, false);
+ this.gridLayout.marginWidth = 0;
+ this.queryContext = queryContext;
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ final Composite composite = new Composite(this, SWT.NONE);
+ composite.setLayout(this.gridLayout);
+ composite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ boolean enabled = this.comboboxEnabled;
+ if (!this.comboboxEnabled) {
+ enabled = this.queryProp.getValue() != null;
+ }
+
+ final List<String> elements = new LinkedList<String>();
+ elements.add(Messages.Select_query_type);
+ elements.addAll(IQueryWidgetCompositeFactoryFactory.INSTANCE
+ .getRegisteredQueryWidgetsComposite());
+ final SelectionListener listener = new SelectionListener() {
+
+ public void widgetSelected(final SelectionEvent event) {
+ onSelection();
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent event) {
+ // NOTHING
+ }
+ };
+ this.combobox = UIUtils.createCombobox(composite, enabled, elements,
+ Messages.SelectQueryTypeWizardPage_Query_Type, listener);
+ this.textField = UIUtils.createTextField(composite, "", false, null); //$NON-NLS-1$
+ refresh();
+ }
+
+ /**
+ * Select the item in the combobox with the name in parameter.
+ *
+ * @param selection
+ * the name of the selection.
+ */
+ public IDialog<ICreateQueryWidget> selectQueryType(final String selection) {
+ IDialog<ICreateQueryWidget> result = null;
+ int index = 0;
+ for (final String item : this.combobox.getItems()) {
+ if (item.equals(selection)) {
+ this.combobox.select(index);
+ result = onSelection();
+ break;
+ }
+ ++index;
+ }
+ return result;
+ }
+
+ @Override
+ public String getError() {
+ String result = null;
+
+ if (this.queryProp.getValue() == null) {
+ result = Messages.Facet_mustSelectQuery;
+ }
+
+ return result;
+ }
+
+ /**
+ * This method check if the comboBox is enabled and set the default value if
+ * not (combobox selection and textField alert message).
+ */
+ private void refresh() {
+ this.combobox.select(0);
+ if (this.combobox.isEnabled()) {
+ if (this.queryProp.getValue() != null) {
+ final Query query = (Query) this.queryProp.getValue();
+ this.textField.setText(query.toString());
+ }
+ } else {
+ this.queryProp.setValue(null);
+ // The alert message has the default color because it's not possible
+ // to change the text color if the text field is disabled.
+ if (this.alertMessage != null) {
+ this.textField.setText(this.alertMessage);
+ }
+ }
+ }
+
+ /**
+ * @param enabled
+ * set if the selection combobox is enabled or not.
+ */
+ public void setSelectionEnabled(final boolean enabled) {
+ this.combobox.setEnabled(enabled);
+ refresh();
+ }
+
+ /**
+ * @return if the combobox is enabled or not.
+ */
+ public boolean isSelectionEnabled() {
+ return this.combobox.isEnabled();
+ }
+
+ /**
+ * Set the alert message that will be displayed if the checkbox is not
+ * checked.
+ *
+ * @param alertMessage
+ * the alertMessage to set
+ */
+ public void setAlertMessage(final String alertMessage) {
+ this.alertMessage = alertMessage;
+ }
+
+ /**
+ * The action when an element of the combobox is selected.</p>
+ *
+ * If the default element is selected, the property value is set to null.
+ */
+ protected IDialog<ICreateQueryWidget> onSelection() {
+ IDialog<ICreateQueryWidget> result = null;
+ final int selectionIndex = this.combobox.getSelectionIndex();
+ if (selectionIndex == 0) {
+ this.queryProp.setValue(null);
+ this.textField.setText(this.alertMessage);
+ } else {
+ final String selectionName = this.combobox.getItem(selectionIndex);
+ final IQueryDialogFactoryStrategy strategy = IQueryWidgetCompositeFactoryFactory.INSTANCE
+ .getQueryDialogFactoryStrategy(selectionName);
+ final IWithResultDialogCallback<IQueryCreationResult> callback = new IWithResultDialogCallback<IQueryCreationResult>() {
+ public void commited(final IQueryCreationResult qcResult) {
+ onDialogCommitted(qcResult);
+ }
+
+ public void canceled(final IQueryCreationResult qcResult) {
+ checkQuery(null);
+ }
+ };
+ final IDialog<ICreateQueryWidget> dialog = new GetQueryDialog(
+ callback,
+ strategy, this.queryContext);
+ Display.getDefault().asyncExec(new Runnable() {
+ public void run() {
+ dialog.open();
+ }
+ });
+ result = new SynchronizedAbstractDialog<ICreateQueryWidget>(dialog,
+ Display.getDefault());
+ }
+ return result;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ /**
+ * Action to do when the dialog opened with the button "..." is closed with
+ * the "OK" button.
+ */
+ protected void onDialogCommitted(final IQueryCreationResult qcResult) {
+ if (checkQuery(qcResult.getQuery()) && (qcResult.getLabel() != null)) {
+ this.textField.setText(qcResult.getLabel());
+ }
+ }
+
+ /**
+ * Check if the query is the query exists.
+ *
+ * @param query
+ *
+ * @return true if the query exists.
+ */
+ protected boolean checkQuery(final Query query) {
+ if (query == null) {
+ this.combobox.select(0);
+ if (this.alertMessage != null) {
+ this.textField.setText(this.alertMessage);
+ }
+ }
+ if (query != null) {
+ this.queryProp.setValue(query);
+ }
+ return query != null;
+ }
+
+ /**
+ * @return the text of the text associated with the query.
+ */
+ public String getText() {
+ return this.textField.getText();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedCreateQueryWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedCreateQueryWidget.java
new file mode 100644
index 00000000000..2c24fd46637
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedCreateQueryWidget.java
@@ -0,0 +1,114 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+
+@SuppressWarnings("PMD.ExcessivePublicCount")
+public class SynchronizedCreateQueryWidget extends SynchronizedObject<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.ICreateQueryWidget> implements org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.ICreateQueryWidget {
+
+ public SynchronizedCreateQueryWidget(final org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.ICreateQueryWidget object, final Display display) {
+ super(object, display);
+ }
+ public final void addListener(final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedCreateQueryWidget.this.getSynchronizedObject().addListener(parm0);
+ }
+ });
+ }
+
+ public final void createWidgetContent() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedCreateQueryWidget.this.getSynchronizedObject().createWidgetContent();
+ }
+ });
+ }
+
+ public final java.lang.String getError() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedCreateQueryWidget.this.getSynchronizedObject().getError();
+ }
+ });
+ }
+
+ public final void notifyChanged() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedCreateQueryWidget.this.getSynchronizedObject().notifyChanged();
+ }
+ });
+ }
+
+ public final <A> A adapt(final java.lang.Class<A> parm0) {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<A>() {
+ @Override
+ public A safeRun() {
+ return SynchronizedCreateQueryWidget.this.getSynchronizedObject().adapt(parm0);
+ }
+ });
+ }
+
+ public final java.lang.Object getCommand() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.Object>() {
+ @Override
+ public java.lang.Object safeRun() {
+ return SynchronizedCreateQueryWidget.this.getSynchronizedObject().getCommand();
+ }
+ });
+ }
+
+ public final void onDialogValidation() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedCreateQueryWidget.this.getSynchronizedObject().onDialogValidation();
+ }
+ });
+ }
+
+ public final java.lang.Object getCreateQueryWidget() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.Object>() {
+ @Override
+ public java.lang.Object safeRun() {
+ return SynchronizedCreateQueryWidget.this.getSynchronizedObject().getCreateQueryWidget();
+ }
+ });
+ }
+
+ public final boolean isCanBeCached() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedCreateQueryWidget.this.getSynchronizedObject().isCanBeCached());
+ }
+ }).booleanValue();
+ }
+
+ public final boolean isHasSideEffect() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedCreateQueryWidget.this.getSynchronizedObject().isHasSideEffect());
+ }
+ }).booleanValue();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedDerivedTypedElementWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedDerivedTypedElementWidget.java
new file mode 100644
index 00000000000..c4e73db2af7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedDerivedTypedElementWidget.java
@@ -0,0 +1,276 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+
+@SuppressWarnings("PMD.ExcessivePublicCount")
+public class SynchronizedDerivedTypedElementWidget extends SynchronizedObject<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget> implements org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget {
+
+ public SynchronizedDerivedTypedElementWidget(final org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget object, final Display display) {
+ super(object, display);
+ }
+ public final void addListener(final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().addListener(parm0);
+ }
+ });
+ }
+
+ public final void createWidgetContent() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().createWidgetContent();
+ }
+ });
+ }
+
+ public final java.lang.String getError() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().getError();
+ }
+ });
+ }
+
+ public final void notifyChanged() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().notifyChanged();
+ }
+ });
+ }
+
+ public final <A> A adapt(final java.lang.Class<A> parm0) {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<A>() {
+ @Override
+ public A safeRun() {
+ return SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().adapt(parm0);
+ }
+ });
+ }
+
+ public final java.lang.Object getCommand() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.Object>() {
+ @Override
+ public java.lang.Object safeRun() {
+ return SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().getCommand();
+ }
+ });
+ }
+
+ public final void onDialogValidation() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().onDialogValidation();
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet getContainer() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet safeRun() {
+ return SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().getContainer();
+ }
+ });
+ }
+
+ public final java.lang.String getElementName() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().getElementName();
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget>> pressParentButton() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget>>>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget>> safeRun() {
+ return SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().pressParentButton();
+ }
+ });
+ }
+
+ public final void setName(final java.lang.String parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().setName(parm0);
+ }
+ });
+ }
+
+ public final org.eclipse.emf.ecore.EClassifier getEType() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.emf.ecore.EClassifier>() {
+ @Override
+ public org.eclipse.emf.ecore.EClassifier safeRun() {
+ return SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().getEType();
+ }
+ });
+ }
+
+ public final java.lang.String getElementTypeName() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().getElementTypeName();
+ }
+ });
+ }
+
+ public final int getLowerBound() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Integer>() {
+ @Override
+ public Integer safeRun() {
+ return Integer.valueOf(SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().getLowerBound());
+ }
+ }).intValue();
+ }
+
+ public final int getUpperBound() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Integer>() {
+ @Override
+ public Integer safeRun() {
+ return Integer.valueOf(SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().getUpperBound());
+ }
+ }).intValue();
+ }
+
+ public final boolean isOrdered() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().isOrdered());
+ }
+ }).booleanValue();
+ }
+
+ public final boolean isUnique() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().isUnique());
+ }
+ }).booleanValue();
+ }
+
+ public final org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard<org.eclipse.emf.ecore.EClassifier> pressTypeButton() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard<org.eclipse.emf.ecore.EClassifier>>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard<org.eclipse.emf.ecore.EClassifier> safeRun() {
+ return SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().pressTypeButton();
+ }
+ });
+ }
+
+ public final void setEType(final org.eclipse.emf.ecore.EClassifier parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().setEType(parm0);
+ }
+ });
+ }
+
+ public final void setLowerBound(final int parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().setLowerBound(parm0);
+ }
+ });
+ }
+
+ public final void setOrdered(final boolean parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().setOrdered(parm0);
+ }
+ });
+ }
+
+ public final void setUnique(final boolean parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().setUnique(parm0);
+ }
+ });
+ }
+
+ public final void setUpperBound(final int parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().setUpperBound(parm0);
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query getQuery() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query safeRun() {
+ return SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().getQuery();
+ }
+ });
+ }
+
+ public final java.lang.String getQueryText() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().getQueryText();
+ }
+ });
+ }
+
+ public final boolean isQueryEnable() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().isQueryEnable());
+ }
+ }).booleanValue();
+ }
+
+ public final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.ICreateQueryWidget> selectQueryType(final java.lang.String parm0) {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.ICreateQueryWidget>>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.ICreateQueryWidget> safeRun() {
+ return SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().selectQueryType(parm0);
+ }
+ });
+ }
+
+ public final void setQuery(final org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedDerivedTypedElementWidget.this.getSynchronizedObject().setQuery(parm0);
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedENamedElementWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedENamedElementWidget.java
new file mode 100644
index 00000000000..6e697dbb379
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedENamedElementWidget.java
@@ -0,0 +1,123 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+
+@SuppressWarnings("PMD.ExcessivePublicCount")
+public class SynchronizedENamedElementWidget <C extends org.eclipse.emf.ecore.EObject, CW extends java.lang.Object> extends SynchronizedObject<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget <C, CW>> implements org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget <C, CW> {
+
+ public SynchronizedENamedElementWidget(final org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget <C, CW> object, final Display display) {
+ super(object, display);
+ }
+ public final void addListener(final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedENamedElementWidget.this.getSynchronizedObject().addListener(parm0);
+ }
+ });
+ }
+
+ public final void createWidgetContent() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedENamedElementWidget.this.getSynchronizedObject().createWidgetContent();
+ }
+ });
+ }
+
+ public final java.lang.String getError() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedENamedElementWidget.this.getSynchronizedObject().getError();
+ }
+ });
+ }
+
+ public final void notifyChanged() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedENamedElementWidget.this.getSynchronizedObject().notifyChanged();
+ }
+ });
+ }
+
+ public final <A> A adapt(final java.lang.Class<A> parm0) {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<A>() {
+ @Override
+ public A safeRun() {
+ return SynchronizedENamedElementWidget.this.getSynchronizedObject().adapt(parm0);
+ }
+ });
+ }
+
+ public final java.lang.Object getCommand() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.Object>() {
+ @Override
+ public java.lang.Object safeRun() {
+ return SynchronizedENamedElementWidget.this.getSynchronizedObject().getCommand();
+ }
+ });
+ }
+
+ public final void onDialogValidation() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedENamedElementWidget.this.getSynchronizedObject().onDialogValidation();
+ }
+ });
+ }
+
+ public final C getContainer() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<C>() {
+ @Override
+ public C safeRun() {
+ return SynchronizedENamedElementWidget.this.getSynchronizedObject().getContainer();
+ }
+ });
+ }
+
+ public final java.lang.String getElementName() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedENamedElementWidget.this.getSynchronizedObject().getElementName();
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<CW> pressParentButton() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<CW>>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<CW> safeRun() {
+ return SynchronizedENamedElementWidget.this.getSynchronizedObject().pressParentButton();
+ }
+ });
+ }
+
+ public final void setName(final java.lang.String parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedENamedElementWidget.this.getSynchronizedObject().setName(parm0);
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedEStructuralFeatureWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedEStructuralFeatureWidget.java
new file mode 100644
index 00000000000..a387011085c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedEStructuralFeatureWidget.java
@@ -0,0 +1,348 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+
+@SuppressWarnings("PMD.ExcessivePublicCount")
+public class SynchronizedEStructuralFeatureWidget extends SynchronizedObject<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IEStructuralFeatureWidget> implements org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IEStructuralFeatureWidget {
+
+ public SynchronizedEStructuralFeatureWidget(final org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IEStructuralFeatureWidget object, final Display display) {
+ super(object, display);
+ }
+ public final void addListener(final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().addListener(parm0);
+ }
+ });
+ }
+
+ public final void createWidgetContent() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().createWidgetContent();
+ }
+ });
+ }
+
+ public final java.lang.String getError() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().getError();
+ }
+ });
+ }
+
+ public final void notifyChanged() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().notifyChanged();
+ }
+ });
+ }
+
+ public final <A> A adapt(final java.lang.Class<A> parm0) {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<A>() {
+ @Override
+ public A safeRun() {
+ return SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().adapt(parm0);
+ }
+ });
+ }
+
+ public final java.lang.Object getCommand() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.Object>() {
+ @Override
+ public java.lang.Object safeRun() {
+ return SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().getCommand();
+ }
+ });
+ }
+
+ public final void onDialogValidation() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().onDialogValidation();
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet getContainer() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet safeRun() {
+ return SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().getContainer();
+ }
+ });
+ }
+
+ public final java.lang.String getElementName() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().getElementName();
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget>> pressParentButton() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget>>>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget>> safeRun() {
+ return SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().pressParentButton();
+ }
+ });
+ }
+
+ public final void setName(final java.lang.String parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().setName(parm0);
+ }
+ });
+ }
+
+ public final org.eclipse.emf.ecore.EClassifier getEType() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.emf.ecore.EClassifier>() {
+ @Override
+ public org.eclipse.emf.ecore.EClassifier safeRun() {
+ return SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().getEType();
+ }
+ });
+ }
+
+ public final java.lang.String getElementTypeName() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().getElementTypeName();
+ }
+ });
+ }
+
+ public final int getLowerBound() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Integer>() {
+ @Override
+ public Integer safeRun() {
+ return Integer.valueOf(SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().getLowerBound());
+ }
+ }).intValue();
+ }
+
+ public final int getUpperBound() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Integer>() {
+ @Override
+ public Integer safeRun() {
+ return Integer.valueOf(SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().getUpperBound());
+ }
+ }).intValue();
+ }
+
+ public final boolean isOrdered() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().isOrdered());
+ }
+ }).booleanValue();
+ }
+
+ public final boolean isUnique() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().isUnique());
+ }
+ }).booleanValue();
+ }
+
+ public final org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard<org.eclipse.emf.ecore.EClassifier> pressTypeButton() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard<org.eclipse.emf.ecore.EClassifier>>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard<org.eclipse.emf.ecore.EClassifier> safeRun() {
+ return SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().pressTypeButton();
+ }
+ });
+ }
+
+ public final void setEType(final org.eclipse.emf.ecore.EClassifier parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().setEType(parm0);
+ }
+ });
+ }
+
+ public final void setLowerBound(final int parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().setLowerBound(parm0);
+ }
+ });
+ }
+
+ public final void setOrdered(final boolean parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().setOrdered(parm0);
+ }
+ });
+ }
+
+ public final void setUnique(final boolean parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().setUnique(parm0);
+ }
+ });
+ }
+
+ public final void setUpperBound(final int parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().setUpperBound(parm0);
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query getQuery() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query safeRun() {
+ return SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().getQuery();
+ }
+ });
+ }
+
+ public final java.lang.String getQueryText() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().getQueryText();
+ }
+ });
+ }
+
+ public final boolean isQueryEnable() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().isQueryEnable());
+ }
+ }).booleanValue();
+ }
+
+ public final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.ICreateQueryWidget> selectQueryType(final java.lang.String parm0) {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.ICreateQueryWidget>>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.ICreateQueryWidget> safeRun() {
+ return SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().selectQueryType(parm0);
+ }
+ });
+ }
+
+ public final void setQuery(final org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().setQuery(parm0);
+ }
+ });
+ }
+
+ public final boolean isChangeable() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().isChangeable());
+ }
+ }).booleanValue();
+ }
+
+ public final boolean isDerived() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().isDerived());
+ }
+ }).booleanValue();
+ }
+
+ public final boolean isTransient() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().isTransient());
+ }
+ }).booleanValue();
+ }
+
+ public final boolean isVolatile() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().isVolatile());
+ }
+ }).booleanValue();
+ }
+
+ public final void setChangeable(final boolean parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().setChangeable(parm0);
+ }
+ });
+ }
+
+ public final void setDerived(final boolean parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().setDerived(parm0);
+ }
+ });
+ }
+
+ public final void setTransient(final boolean parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().setTransient(parm0);
+ }
+ });
+ }
+
+ public final void setVolatile(final boolean parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedEStructuralFeatureWidget.this.getSynchronizedObject().setVolatile(parm0);
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedETypedElementWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedETypedElementWidget.java
new file mode 100644
index 00000000000..10599f85d57
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedETypedElementWidget.java
@@ -0,0 +1,231 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+
+@SuppressWarnings("PMD.ExcessivePublicCount")
+public class SynchronizedETypedElementWidget <C extends org.eclipse.emf.ecore.EObject, CW extends java.lang.Object> extends SynchronizedObject<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IETypedElementWidget <C, CW>> implements org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IETypedElementWidget <C, CW> {
+
+ public SynchronizedETypedElementWidget(final org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IETypedElementWidget <C, CW> object, final Display display) {
+ super(object, display);
+ }
+ public final void addListener(final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedETypedElementWidget.this.getSynchronizedObject().addListener(parm0);
+ }
+ });
+ }
+
+ public final void createWidgetContent() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedETypedElementWidget.this.getSynchronizedObject().createWidgetContent();
+ }
+ });
+ }
+
+ public final java.lang.String getError() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedETypedElementWidget.this.getSynchronizedObject().getError();
+ }
+ });
+ }
+
+ public final void notifyChanged() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedETypedElementWidget.this.getSynchronizedObject().notifyChanged();
+ }
+ });
+ }
+
+ public final <A> A adapt(final java.lang.Class<A> parm0) {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<A>() {
+ @Override
+ public A safeRun() {
+ return SynchronizedETypedElementWidget.this.getSynchronizedObject().adapt(parm0);
+ }
+ });
+ }
+
+ public final java.lang.Object getCommand() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.Object>() {
+ @Override
+ public java.lang.Object safeRun() {
+ return SynchronizedETypedElementWidget.this.getSynchronizedObject().getCommand();
+ }
+ });
+ }
+
+ public final void onDialogValidation() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedETypedElementWidget.this.getSynchronizedObject().onDialogValidation();
+ }
+ });
+ }
+
+ public final C getContainer() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<C>() {
+ @Override
+ public C safeRun() {
+ return SynchronizedETypedElementWidget.this.getSynchronizedObject().getContainer();
+ }
+ });
+ }
+
+ public final java.lang.String getElementName() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedETypedElementWidget.this.getSynchronizedObject().getElementName();
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<CW> pressParentButton() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<CW>>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<CW> safeRun() {
+ return SynchronizedETypedElementWidget.this.getSynchronizedObject().pressParentButton();
+ }
+ });
+ }
+
+ public final void setName(final java.lang.String parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedETypedElementWidget.this.getSynchronizedObject().setName(parm0);
+ }
+ });
+ }
+
+ public final org.eclipse.emf.ecore.EClassifier getEType() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.emf.ecore.EClassifier>() {
+ @Override
+ public org.eclipse.emf.ecore.EClassifier safeRun() {
+ return SynchronizedETypedElementWidget.this.getSynchronizedObject().getEType();
+ }
+ });
+ }
+
+ public final java.lang.String getElementTypeName() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedETypedElementWidget.this.getSynchronizedObject().getElementTypeName();
+ }
+ });
+ }
+
+ public final int getLowerBound() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Integer>() {
+ @Override
+ public Integer safeRun() {
+ return Integer.valueOf(SynchronizedETypedElementWidget.this.getSynchronizedObject().getLowerBound());
+ }
+ }).intValue();
+ }
+
+ public final int getUpperBound() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Integer>() {
+ @Override
+ public Integer safeRun() {
+ return Integer.valueOf(SynchronizedETypedElementWidget.this.getSynchronizedObject().getUpperBound());
+ }
+ }).intValue();
+ }
+
+ public final boolean isOrdered() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedETypedElementWidget.this.getSynchronizedObject().isOrdered());
+ }
+ }).booleanValue();
+ }
+
+ public final boolean isUnique() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedETypedElementWidget.this.getSynchronizedObject().isUnique());
+ }
+ }).booleanValue();
+ }
+
+ public final org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard<org.eclipse.emf.ecore.EClassifier> pressTypeButton() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard<org.eclipse.emf.ecore.EClassifier>>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard<org.eclipse.emf.ecore.EClassifier> safeRun() {
+ return SynchronizedETypedElementWidget.this.getSynchronizedObject().pressTypeButton();
+ }
+ });
+ }
+
+ public final void setEType(final org.eclipse.emf.ecore.EClassifier parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedETypedElementWidget.this.getSynchronizedObject().setEType(parm0);
+ }
+ });
+ }
+
+ public final void setLowerBound(final int parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedETypedElementWidget.this.getSynchronizedObject().setLowerBound(parm0);
+ }
+ });
+ }
+
+ public final void setOrdered(final boolean parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedETypedElementWidget.this.getSynchronizedObject().setOrdered(parm0);
+ }
+ });
+ }
+
+ public final void setUnique(final boolean parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedETypedElementWidget.this.getSynchronizedObject().setUnique(parm0);
+ }
+ });
+ }
+
+ public final void setUpperBound(final int parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedETypedElementWidget.this.getSynchronizedObject().setUpperBound(parm0);
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedFacetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedFacetWidget.java
new file mode 100644
index 00000000000..0261403e80a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedFacetWidget.java
@@ -0,0 +1,161 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+
+@SuppressWarnings("PMD.ExcessivePublicCount")
+public class SynchronizedFacetWidget extends SynchronizedObject<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget> implements org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget {
+
+ public SynchronizedFacetWidget(final org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget object, final Display display) {
+ super(object, display);
+ }
+ public final void addListener(final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedFacetWidget.this.getSynchronizedObject().addListener(parm0);
+ }
+ });
+ }
+
+ public final void createWidgetContent() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedFacetWidget.this.getSynchronizedObject().createWidgetContent();
+ }
+ });
+ }
+
+ public final java.lang.String getError() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedFacetWidget.this.getSynchronizedObject().getError();
+ }
+ });
+ }
+
+ public final void notifyChanged() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedFacetWidget.this.getSynchronizedObject().notifyChanged();
+ }
+ });
+ }
+
+ public final <A> A adapt(final java.lang.Class<A> parm0) {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<A>() {
+ @Override
+ public A safeRun() {
+ return SynchronizedFacetWidget.this.getSynchronizedObject().adapt(parm0);
+ }
+ });
+ }
+
+ public final java.lang.Object getCommand() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.Object>() {
+ @Override
+ public java.lang.Object safeRun() {
+ return SynchronizedFacetWidget.this.getSynchronizedObject().getCommand();
+ }
+ });
+ }
+
+ public final void onDialogValidation() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedFacetWidget.this.getSynchronizedObject().onDialogValidation();
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet getContainer() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet safeRun() {
+ return SynchronizedFacetWidget.this.getSynchronizedObject().getContainer();
+ }
+ });
+ }
+
+ public final java.lang.String getElementName() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedFacetWidget.this.getSynchronizedObject().getElementName();
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget> pressParentButton() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget>>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget> safeRun() {
+ return SynchronizedFacetWidget.this.getSynchronizedObject().pressParentButton();
+ }
+ });
+ }
+
+ public final void setName(final java.lang.String parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedFacetWidget.this.getSynchronizedObject().setName(parm0);
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass.IGetExtendedMetaclassWidget getGetExtendedMetaclassWidget() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass.IGetExtendedMetaclassWidget>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass.IGetExtendedMetaclassWidget safeRun() {
+ return SynchronizedFacetWidget.this.getSynchronizedObject().getGetExtendedMetaclassWidget();
+ }
+ });
+ }
+
+ public final java.lang.String getSubTypingFacet() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedFacetWidget.this.getSynchronizedObject().getSubTypingFacet();
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<org.eclipse.emf.ecore.ETypedElement, java.lang.Object>> pressSubTypingButton() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<org.eclipse.emf.ecore.ETypedElement, java.lang.Object>>>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<org.eclipse.emf.ecore.ETypedElement, java.lang.Object>> safeRun() {
+ return SynchronizedFacetWidget.this.getSynchronizedObject().pressSubTypingButton();
+ }
+ });
+ }
+
+ public final void setSubTypingFacetSelection(final boolean parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedFacetWidget.this.getSynchronizedObject().setSubTypingFacetSelection(parm0);
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedGetExtendedMetaclassWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedGetExtendedMetaclassWidget.java
new file mode 100644
index 00000000000..98f18e5f079
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedGetExtendedMetaclassWidget.java
@@ -0,0 +1,98 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+
+@SuppressWarnings("PMD.ExcessivePublicCount")
+public class SynchronizedGetExtendedMetaclassWidget extends SynchronizedObject<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass.IGetExtendedMetaclassWidget> implements org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass.IGetExtendedMetaclassWidget {
+
+ public SynchronizedGetExtendedMetaclassWidget(final org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass.IGetExtendedMetaclassWidget object, final Display display) {
+ super(object, display);
+ }
+ public final void addListener(final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetExtendedMetaclassWidget.this.getSynchronizedObject().addListener(parm0);
+ }
+ });
+ }
+
+ public final void createWidgetContent() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetExtendedMetaclassWidget.this.getSynchronizedObject().createWidgetContent();
+ }
+ });
+ }
+
+ public final java.lang.String getError() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedGetExtendedMetaclassWidget.this.getSynchronizedObject().getError();
+ }
+ });
+ }
+
+ public final void notifyChanged() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetExtendedMetaclassWidget.this.getSynchronizedObject().notifyChanged();
+ }
+ });
+ }
+
+ public final java.lang.String getText() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedGetExtendedMetaclassWidget.this.getSynchronizedObject().getText();
+ }
+ });
+ }
+
+ public final void setText(final java.lang.String parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetExtendedMetaclassWidget.this.getSynchronizedObject().setText(parm0);
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard<org.eclipse.emf.ecore.EClass> pressButton() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard<org.eclipse.emf.ecore.EClass>>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard<org.eclipse.emf.ecore.EClass> safeRun() {
+ return SynchronizedGetExtendedMetaclassWidget.this.getSynchronizedObject().pressButton();
+ }
+ });
+ }
+
+ public final void setButtonEnabled(final boolean parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetExtendedMetaclassWidget.this.getSynchronizedObject().setButtonEnabled(parm0);
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedGetOrCreateFilteredElementCommmandWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedGetOrCreateFilteredElementCommmandWidget.java
new file mode 100644
index 00000000000..5842186450c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedGetOrCreateFilteredElementCommmandWidget.java
@@ -0,0 +1,143 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.swt.widgets.Display;
+
+public class SynchronizedGetOrCreateFilteredElementCommmandWidget<T extends java.lang.Object, W extends java.lang.Object>
+ extends
+ SynchronizedObject<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<T, W>>
+ implements
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<T, W> {
+
+ public SynchronizedGetOrCreateFilteredElementCommmandWidget(
+ final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<T, W> object,
+ final Display display) {
+ super(object, display);
+ }
+
+ public final void addListener(
+ final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().addListener(parm0);
+ }
+ });
+ }
+
+ public final void createWidgetContent() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().createWidgetContent();
+ }
+ });
+ }
+
+ public final java.lang.String getError() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().getError();
+ }
+ });
+ }
+
+ public final void notifyChanged() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().notifyChanged();
+ }
+ });
+ }
+
+ public final <A> A adapt(final java.lang.Class<A> parm0) {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<A>() {
+ @Override
+ public A safeRun() {
+ return SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().adapt(parm0);
+ }
+ });
+ }
+
+ public final java.lang.Object getCommand() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.Object>() {
+ @Override
+ public java.lang.Object safeRun() {
+ return SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().getCommand();
+ }
+ });
+ }
+
+ public final void onDialogValidation() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().onDialogValidation();
+ }
+ });
+ }
+
+ public final T getElementSelected() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<T>() {
+ @Override
+ public T safeRun() {
+ return SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().getElementSelected();
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<W> pressNewButton() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<W>>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<W> safeRun() {
+ return SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().pressNewButton();
+ }
+ });
+ }
+
+ public final void selectElement(final T parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().selectElement(parm0);
+ }
+ });
+ }
+
+ public final void selectElementByName(final java.lang.String parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().selectElementByName(parm0);
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedGetOrCreateFilteredFacetSetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedGetOrCreateFilteredFacetSetWidget.java
new file mode 100644
index 00000000000..3e7c745f70e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/sync/generated/SynchronizedGetOrCreateFilteredFacetSetWidget.java
@@ -0,0 +1,126 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+
+@SuppressWarnings("PMD.ExcessivePublicCount")
+public class SynchronizedGetOrCreateFilteredFacetSetWidget extends SynchronizedObject<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget> implements org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget {
+
+ public SynchronizedGetOrCreateFilteredFacetSetWidget(final org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget object, final Display display) {
+ super(object, display);
+ }
+ public final void addListener(final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredFacetSetWidget.this.getSynchronizedObject().addListener(parm0);
+ }
+ });
+ }
+
+ public final void createWidgetContent() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredFacetSetWidget.this.getSynchronizedObject().createWidgetContent();
+ }
+ });
+ }
+
+ public final java.lang.String getError() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedGetOrCreateFilteredFacetSetWidget.this.getSynchronizedObject().getError();
+ }
+ });
+ }
+
+ public final void notifyChanged() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredFacetSetWidget.this.getSynchronizedObject().notifyChanged();
+ }
+ });
+ }
+
+ public final <A> A adapt(final java.lang.Class<A> parm0) {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<A>() {
+ @Override
+ public A safeRun() {
+ return SynchronizedGetOrCreateFilteredFacetSetWidget.this.getSynchronizedObject().adapt(parm0);
+ }
+ });
+ }
+
+ public final java.lang.Object getCommand() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.Object>() {
+ @Override
+ public java.lang.Object safeRun() {
+ return SynchronizedGetOrCreateFilteredFacetSetWidget.this.getSynchronizedObject().getCommand();
+ }
+ });
+ }
+
+ public final void onDialogValidation() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredFacetSetWidget.this.getSynchronizedObject().onDialogValidation();
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet getElementSelected() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet safeRun() {
+ return SynchronizedGetOrCreateFilteredFacetSetWidget.this.getSynchronizedObject().getElementSelected();
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget<org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget>> pressNewButton() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget<org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget>>>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget<org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet, org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget>> safeRun() {
+ return SynchronizedGetOrCreateFilteredFacetSetWidget.this.getSynchronizedObject().pressNewButton();
+ }
+ });
+ }
+
+ public final void selectElement(final org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredFacetSetWidget.this.getSynchronizedObject().selectElement(parm0);
+ }
+ });
+ }
+
+ public final void selectElementByName(final java.lang.String parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredFacetSetWidget.this.getSynchronizedObject().selectElementByName(parm0);
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/getorcreate/GetOrCreateFacetSetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/getorcreate/GetOrCreateFacetSetWidget.java
new file mode 100644
index 00000000000..6d278d648ed
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/getorcreate/GetOrCreateFacetSetWidget.java
@@ -0,0 +1,100 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.getorcreate;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.composite.GetOrCreateFacetSetDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate.IGetOrCreateFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWithDialogButtonWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This class provide the selection or the creation of a FacetSet.</p>
+ *
+ * FaceSet : [ TextField ][...]</p>
+ *
+ * The {@link GetOrCreateFacetSetDialog} dialog will be displayed when the
+ * button is pressed.
+ *
+ * @see GetOrCreateFacetSetDialog
+ */
+public class GetOrCreateFacetSetWidget extends
+ AbstractGetOrCreateElementWithDialogButtonWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>
+ implements IGetOrCreateFacetSetWidget {
+
+ private final EditingDomain editingdoamin;
+ private final PropertyElement2<FacetSet> facetSetProperty;
+ private final FacetSet reject;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param facetSetProperty
+ * the property element that be edited with this composite.
+ * @param properties
+ * the map of properties of the parent.
+ */
+ public GetOrCreateFacetSetWidget(final Composite parent,
+ final PropertyElement2<FacetSet> facetSetProperty,
+ final EditingDomain editingDomain, final FacetSet reject) {
+ super(parent, facetSetProperty);
+ this.facetSetProperty = facetSetProperty;
+ this.editingdoamin = editingDomain;
+ this.reject = reject;
+ }
+
+ @Override
+ protected IDialog<IGetOrCreateFilteredFacetSetWidget> getCreationDialog(
+ final IWithResultDialogCallback<FacetSet> callback) {
+ return new GetOrCreateFacetSetDialog(callback, this.editingdoamin,
+ this.facetSetProperty, this.reject);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.FacetSet;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return Messages.FacetSet_mustSelectFacetSet;
+ }
+
+ @Override
+ protected String getTextFieldInitialText() {
+ return this.getPropertyElement().getValue2().getName();
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ public FacetSet getFacetSet() {
+ return this.facetSetProperty.getValue2();
+ }
+
+ @Override
+ protected void onCanceled() {
+ // Nothing to do.
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/getorcreate/GetOrCreateFacetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/getorcreate/GetOrCreateFacetWidget.java
new file mode 100644
index 00000000000..d8536f2c1a2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/getorcreate/GetOrCreateFacetWidget.java
@@ -0,0 +1,95 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.getorcreate;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.composite.GetOrCreateFacetDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWithDialogButtonWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This class provide the selection or the creation of a Facet.</p>
+ *
+ * Facet : [ TextField ][...]</p>
+ *
+ * The {@link GetOrCreateFacetDialog} dialog will be displayed when the button
+ * is pressed.
+ *
+ * @see GetOrCreateFacetDialog
+ */
+public class GetOrCreateFacetWidget extends
+ AbstractGetOrCreateElementWithDialogButtonWidget<Facet, IGetOrCreateFilteredElementCommmandWidget<Facet, IFacetWidget>> {
+
+ private final EditingDomain editingDomain;
+ private final FacetSet container;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param facetProperty
+ * the property element that be edited with this composite.
+ * @param container
+ * @param properties
+ * the map of properties of the parent.
+ */
+ public GetOrCreateFacetWidget(final Composite parent,
+ final PropertyElement2<Facet> facetProperty,
+ final EditingDomain editingDomain, final FacetSet container) {
+ super(parent, facetProperty);
+ this.editingDomain = editingDomain;
+ this.container = container;
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Facet;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return Messages.Facet_mustSelectFacet;
+ }
+
+ @Override
+ protected IDialog<IGetOrCreateFilteredElementCommmandWidget<Facet, IFacetWidget>> getCreationDialog(
+ final IWithResultDialogCallback<Facet> callback) {
+ return new GetOrCreateFacetDialog(callback, this.editingDomain,
+ this.container);
+ }
+
+ @Override
+ protected String getTextFieldInitialText() {
+ return ((Facet) this.getPropertyElement().getValue()).getName();
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ protected void onCanceled() {
+ // Nothing to do.
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/getorcreate/GetOrCreateOperationWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/getorcreate/GetOrCreateOperationWidget.java
new file mode 100644
index 00000000000..8a2882a3c75
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/getorcreate/GetOrCreateOperationWidget.java
@@ -0,0 +1,94 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.getorcreate;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.composite.GetOrCreateOperationDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWithDialogButtonWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This class provide the selection or the creation of a Operation.</p>
+ *
+ * Operation : [ TextField ][...]</p>
+ *
+ * The {@link GetOrCreateOperationDialog} dialog will be displayed when the
+ * button is pressed.
+ *
+ * @see GetOrCreateOperationDialog
+ */
+public class GetOrCreateOperationWidget extends
+ AbstractGetOrCreateElementWithDialogButtonWidget<FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>> {
+
+ private final EditingDomain editingDomain;
+ private final Facet context;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param facetOpProp
+ * the property element that be edited with this composite.
+ * @param properties
+ * the map of properties of the parent.
+ */
+ public GetOrCreateOperationWidget(final Composite parent,
+ final PropertyElement2<FacetOperation> facetOpProp,
+ final EditingDomain editingDomain, final Facet context) {
+ super(parent, facetOpProp);
+ this.editingDomain = editingDomain;
+ this.context = context;
+ }
+
+ @Override
+ protected IDialog<IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>> getCreationDialog(
+ final IWithResultDialogCallback<FacetOperation> callback) {
+ return new GetOrCreateOperationDialog(callback, this.editingDomain,
+ this.context);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Operation;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return Messages.Operation_mustSelectOperation;
+ }
+
+ @Override
+ protected String getTextFieldInitialText() {
+ return this.getPropertyElement().getValue2().getName();
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ protected void onCanceled() {
+ // Nothing to do.
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/GetElementTypeWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/GetElementTypeWidget.java
new file mode 100644
index 00000000000..1eec1610f76
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/GetElementTypeWidget.java
@@ -0,0 +1,79 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.metaclass;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation.AddOperationInFacetWidget;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.widget.component.metaclass.AbstractGetMetaclassWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+
+/**
+ * Concrete implementation of {@link AbstractGetMetaclassWidget} abstract
+ * class.</p>
+ *
+ * Create a simple Label {@link #getLabel()}TextField and a button.</p> The type
+ * used {@link ETypeSelectionOptions} depends of the element created.
+ *
+ * @see AddOperationInFacetWidget
+ */
+public class GetElementTypeWidget extends
+ AbstractGetMetaclassWidget<EClassifier> {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param propertyElement
+ * the property element that will be edited by this composite.
+ * @param facetSetProp
+ * the property element to get the super, main, facetSet of the
+ * model.
+ * @param eTypeOption
+ * @param eTypeOption
+ * the type of the elements displayed in the selection wizard.
+ */
+ public GetElementTypeWidget(final Composite parent,
+ final PropertyElement2<EClassifier> propertyElement,
+ final PropertyElement2<FacetSet> facetSetProp,
+ final Class<? extends EClassifier> eTypeOption) {
+ super(parent, propertyElement, facetSetProp, eTypeOption);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Type;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return Messages.Type_mustSelectType;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ protected EPackage getEPackage() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/GetExtendedMetaclassWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/GetExtendedMetaclassWidget.java
new file mode 100644
index 00000000000..f454e7a4cfc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/GetExtendedMetaclassWidget.java
@@ -0,0 +1,84 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.metaclass;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass.IGetExtendedMetaclassWidget;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.widget.component.metaclass.AbstractGetMetaclassWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+
+/**
+ * Concrete implementation of {@link AbstractGetMetaclassWidget} abstract
+ * class.</p>
+ *
+ * Create a simple Label {@link #getLabel()}TextField and a button.</p> This
+ * class provide the selection the extended metaclass. The type used is
+ * {@link ETypeSelectionOptions#ECLASS}
+ *
+ * @see CreateFacetInFacetSetWidget
+ * @since 0.3
+ */
+public class GetExtendedMetaclassWidget extends
+ AbstractGetMetaclassWidget<EClass> implements
+ IGetExtendedMetaclassWidget {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param editingDomain
+ * the current editing domain.
+ * @param propertyElement
+ * the property element that will be edited by this composite.
+ * @param facetSetProp
+ * the property element to get the super, main, facetSet of the
+ * model.
+ */
+ public GetExtendedMetaclassWidget(final Composite parent,
+ final PropertyElement2<EClass> propertyElement,
+ final PropertyElement2<FacetSet> facetSetProp) {
+ super(parent, propertyElement, facetSetProp, EClass.class);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.ExtendedMetaClass;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return Messages.Metaclass_mustSelectMetaclass;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ protected String getTextFieldInitialText() {
+ return getPropertyElement().getValue2().getName();
+ }
+
+ @Override
+ protected EPackage getEPackage() {
+ return this.getEPackageProperty().getValue2();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/GetSubTypingTypeWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/GetSubTypingTypeWidget.java
new file mode 100644
index 00000000000..061a0e3f457
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/GetSubTypingTypeWidget.java
@@ -0,0 +1,88 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.metaclass;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.composite.GetSubTypingTypeDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWithDialogButtonWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * @author amenager_stage
+ *
+ */
+public class GetSubTypingTypeWidget extends
+ AbstractGetOrCreateElementWithDialogButtonWidget<ETypedElement, IGetOrCreateFilteredElementCommmandWidget<ETypedElement, Object>> {
+
+ private final EditingDomain editingDoamin;
+ private final EClass context;
+ private final Facet facet;
+
+ /**
+ * @param parent
+ * @param editingDomain
+ * @param propertyElement
+ */
+ protected GetSubTypingTypeWidget(final Composite parent,
+ final PropertyElement2<ETypedElement> propertyElement,
+ final EditingDomain editingDomain, final EClass context,
+ final Facet facet) {
+ super(parent, propertyElement);
+ this.editingDoamin = editingDomain;
+ this.context = context;
+ this.facet = facet;
+ }
+
+ @Override
+ protected String getLabel() {
+ return null;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return Messages.Facet_mustSelectConformanceType;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ protected String getTextFieldInitialText() {
+ return getPropertyElement().getValue2().getName();
+ }
+
+ @Override
+ protected void onCanceled() {
+ fireChanged();
+ }
+
+ // protected IDialog<GetFilteredSubTypingTypeWidget> getCreationDialog(
+
+ @Override
+ protected IDialog<IGetOrCreateFilteredElementCommmandWidget<ETypedElement, Object>> getCreationDialog(
+ final IWithResultDialogCallback<ETypedElement> callback) {
+ return new GetSubTypingTypeDialog(callback, this.editingDoamin,
+ this.facet, this.context);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/SelectSubTypingTypeWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/SelectSubTypingTypeWidget.java
new file mode 100644
index 00000000000..5d790178b43
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/metaclass/SelectSubTypingTypeWidget.java
@@ -0,0 +1,161 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.metaclass;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.UIUtils;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This class provide the composite:</p>
+ *
+ * Label : [x] [/TextField/] [...]</p>
+ *
+ * The text field is not directly editable by will be edit by the result of the
+ * type selection. The {@link GetConformanceMetaclassWidget} composite is used
+ * in this composite.</p>
+ *
+ * When the checkbox is selected, the button for the conformance type selection
+ * is enabled.
+ *
+ * @see GetConformanceMetaclassWidget
+ */
+public class SelectSubTypingTypeWidget extends AbstractWidget {
+
+ private static final int COLUMN_NUMBER = 2;
+ private final PropertyElement2<ETypedElement> propertyElement;
+ private GetSubTypingTypeWidget conformanceWidget;
+ private Button checkbox;
+ private final EditingDomain editingDomain;
+ private final EClass context;
+ private final Facet facet;
+
+ public SelectSubTypingTypeWidget(final Composite parent,
+ final PropertyElement2<ETypedElement> propertyElement,
+ final EditingDomain editingDomain, final EClass context,
+ final Facet facet) {
+ super(parent);
+ this.setLayout(new GridLayout(COLUMN_NUMBER, false));
+ this.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ this.propertyElement = propertyElement;
+ this.editingDomain = editingDomain;
+ this.context = context;
+ this.facet = facet;
+ }
+
+ /**
+ * @return the checkbox
+ */
+ public Button getCheckbox() {
+ return this.checkbox;
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ boolean enabled = false;
+ if (this.propertyElement.getValue() != null) {
+ enabled = true;
+ }
+ createCheckbox(enabled);
+ this.conformanceWidget = new GetSubTypingTypeWidget(this,
+ this.propertyElement, this.editingDomain, this.context,
+ this.facet);
+ addSubWidget(this.conformanceWidget);
+ }
+
+ /**
+ * Create a checkbox in the composite. When the checkbox is selected, the
+ * button for the conformance type selection is enabled.
+ *
+ * @param enabled
+ */
+ private void createCheckbox(final boolean enabled) {
+ final Composite composite = new Composite(this, SWT.NONE);
+ final GridLayout gridLayout = new GridLayout(COLUMN_NUMBER, false);
+ gridLayout.marginWidth = 0;
+ composite.setLayout(gridLayout);
+
+ UIUtils.createLabel(composite,
+ Messages.CreateFacetInFacetSetWizardPage_Sub_Typing_Facet);
+
+ final SelectionListener selectionListener = new SelectionListener() {
+
+ public void widgetSelected(final SelectionEvent event) {
+ onWidgetSelected();
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent event) {
+ // NOTHING
+ }
+ };
+ this.checkbox = UIUtils.createCheckbox(composite, true, enabled,
+ selectionListener);
+ }
+
+ @Override
+ public String getError() {
+ String error = null;
+
+ if (SelectSubTypingTypeWidget.this.getCheckbox().getSelection()) {
+ error = this.conformanceWidget.getError();
+ }
+
+ return error;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ /**
+ * Set the value of the checkbox.
+ *
+ * @param selected
+ * the value of the selection.
+ */
+ public void setSelection(final boolean selected) {
+ this.checkbox.setSelection(selected);
+ onWidgetSelected();
+ }
+
+ public IDialog<IGetOrCreateFilteredElementCommmandWidget<ETypedElement, Object>> pressButton() {
+ return this.conformanceWidget.pressButton();
+ }
+
+ public String getSubTypingText() {
+ return this.conformanceWidget.getText();
+ }
+
+ protected void onWidgetSelected() {
+ SelectSubTypingTypeWidget.this.conformanceWidget.getButton()
+ .setEnabled(
+ SelectSubTypingTypeWidget.this.getCheckbox()
+ .getSelection());
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetChangeableWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetChangeableWidget.java
new file mode 100644
index 00000000000..b1c59e45ebc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetChangeableWidget.java
@@ -0,0 +1,57 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.AbstractGetPropertyWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Concrete implementation of {@link AbstractGetPropertyWidget} for the
+ * Changeable property.
+ */
+public class GetChangeableWidget extends AbstractGetPropertyWidget {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent containing this composite.
+ * @param style
+ * the style of the composite.
+ * @param propertyElement
+ * the property element that this composite will edit.
+ */
+ public GetChangeableWidget(final Composite parent,
+ final PropertyElement propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Changeable;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public String getError() {
+ // A property widget is a checkbox, so the values can be "true" or
+ // "false" so, no error can be throws because a value will be always
+ // put.
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetDerivedWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetDerivedWidget.java
new file mode 100644
index 00000000000..0116c4c33d5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetDerivedWidget.java
@@ -0,0 +1,57 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.AbstractGetPropertyWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Concrete implementation of {@link AbstractGetPropertyWidget} for the
+ * Derived property.
+ */
+public class GetDerivedWidget extends AbstractGetPropertyWidget {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent containing this composite.
+ * @param style
+ * the style of the composite.
+ * @param propertyElement
+ * the property element that this composite will edit.
+ */
+ public GetDerivedWidget(final Composite parent,
+ final PropertyElement propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Derived;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public String getError() {
+ // A property widget is a checkbox, so the values can be "true" or
+ // "false" so, no error can be throws because a value will be always
+ // put.
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetOrderedWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetOrderedWidget.java
new file mode 100644
index 00000000000..ae9ef646b1e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetOrderedWidget.java
@@ -0,0 +1,57 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.AbstractGetPropertyWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Concrete implementation of {@link AbstractGetPropertyWidget} for the Ordered
+ * property.
+ */
+public class GetOrderedWidget extends AbstractGetPropertyWidget {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent containing this composite.
+ * @param style
+ * the style of the composite.
+ * @param propertyElement
+ * the property element that this composite will edit.
+ */
+ public GetOrderedWidget(final Composite parent,
+ final PropertyElement propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Ordered;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public String getError() {
+ // A property widget is a checkbox, so the values can be "true" or
+ // "false" so, no error can be throws because a value will be always
+ // put.
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetTransientWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetTransientWidget.java
new file mode 100644
index 00000000000..5bb607f54b8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetTransientWidget.java
@@ -0,0 +1,57 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.AbstractGetPropertyWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Concrete implementation of {@link AbstractGetPropertyWidget} for the
+ * Transient property.
+ */
+public class GetTransientWidget extends AbstractGetPropertyWidget {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent containing this composite.
+ * @param style
+ * the style of the composite.
+ * @param propertyElement
+ * the property element that this composite will edit.
+ */
+ public GetTransientWidget(final Composite parent,
+ final PropertyElement propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Transient;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public String getError() {
+ // A property widget is a checkbox, so the values can be "true" or
+ // "false" so, no error can be throws because a value will be always
+ // put.
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetUniqueWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetUniqueWidget.java
new file mode 100644
index 00000000000..1089f3c531e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetUniqueWidget.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.AbstractGetPropertyWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Concrete implementation of {@link AbstractGetPropertyWidget} for the
+ * Unique property.
+ */
+public class GetUniqueWidget extends AbstractGetPropertyWidget {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent containing this composite.
+ * @param style
+ * the style of the composite.
+ * @param editingDomain
+ * the current editing domain.
+ * @param propertyElement
+ * the property element that this composite will edit.
+ */
+ public GetUniqueWidget(final Composite parent,
+ final PropertyElement propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Unique;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public String getError() {
+ // A property widget is a checkbox, so the values can be "true" or
+ // "false" so, no error can be throws because a value will be always
+ // put.
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetVolatileWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetVolatileWidget.java
new file mode 100644
index 00000000000..e9ea708282f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/GetVolatileWidget.java
@@ -0,0 +1,57 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.AbstractGetPropertyWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Concrete implementation of {@link AbstractGetPropertyWidget} for the
+ * Volatile property.
+ */
+public class GetVolatileWidget extends AbstractGetPropertyWidget {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent containing this composite.
+ * @param style
+ * the style of the composite.
+ * @param propertyElement
+ * the property element that this composite will edit.
+ */
+ public GetVolatileWidget(final Composite parent,
+ final PropertyElement propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Volatile;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public String getError() {
+ // A property widget is a checkbox, so the values can be "true" or
+ // "false" so, no error can be throws because a value will be always
+ // put.
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/bounds/GetLowerBoundWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/bounds/GetLowerBoundWidget.java
new file mode 100644
index 00000000000..d35164cb0b8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/bounds/GetLowerBoundWidget.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties.bounds;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.bounds.AbstractGetBoundsWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Concrete implementation of {@link AbstractGetBoundsWidget} for the
+ * LowerBound.
+ */
+public class GetLowerBoundWidget extends AbstractGetBoundsWidget {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent containing this composite.
+ * @param style
+ * the style of the composite.
+ * @param propertyElement
+ * the property element that this composite will edit.
+ */
+ public GetLowerBoundWidget(final Composite parent,
+ final PropertyElement2<Integer> propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Lower_bound;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public String getError() {
+ // A property widget is a Spinner, the default value of a Spinner is "0"
+ // so the value can't be null.
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/bounds/GetUpperBoundWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/bounds/GetUpperBoundWidget.java
new file mode 100644
index 00000000000..d76be986a57
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/bounds/GetUpperBoundWidget.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties.bounds;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.bounds.AbstractGetBoundsWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Concrete implementation of {@link AbstractGetBoundsWidget} for the
+ * UpperBound.
+ */
+public class GetUpperBoundWidget extends AbstractGetBoundsWidget {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent containing this composite.
+ * @param style
+ * the style of the composite.
+ * @param propertyElement
+ * the property element that this composite will edit.
+ */
+ public GetUpperBoundWidget(final Composite parent,
+ final PropertyElement2<Integer> propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Upper_bound;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public String getError() {
+ // A property widget is a Spinner, the default value of a Spinner is "0"
+ // so the value can't be null.
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/name/GetAttributeNameWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/name/GetAttributeNameWidget.java
new file mode 100644
index 00000000000..07f6fc81af6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/name/GetAttributeNameWidget.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties.name;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name.AbstractGetElementNameWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * The concrete implementation of {@link AbstractGetElementNameWidget} for the
+ * Attribute Name.
+ *
+ * @see AbstractGetElementNameWidget
+ */
+public class GetAttributeNameWidget extends AbstractGetElementNameWidget {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param propertyElement
+ * the property element that be edited with this composite.
+ */
+ public GetAttributeNameWidget(final Composite parent,
+ final PropertyElement2<String> propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Attribute_name;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return Messages.Facet_mustGiveAttributeName;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/name/GetOperationNameWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/name/GetOperationNameWidget.java
new file mode 100644
index 00000000000..d5dc29df0f8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/name/GetOperationNameWidget.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties.name;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name.AbstractGetElementNameWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * The concrete implementation of {@link AbstractGetElementNameWidget} for the
+ * Operation Name.
+ *
+ * @see AbstractGetElementNameWidget
+ */
+public class GetOperationNameWidget extends AbstractGetElementNameWidget {
+
+ public GetOperationNameWidget(final Composite parent,
+ final PropertyElement2<String> propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Operation_name;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return Messages.Facet_mustGiveOperationName;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/name/GetReferenceNameWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/name/GetReferenceNameWidget.java
new file mode 100644
index 00000000000..d40c7750f2e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/properties/name/GetReferenceNameWidget.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties.name;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name.AbstractGetElementNameWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * The concrete implementation of {@link AbstractGetElementNameWidget} for the
+ * Reference Name.
+ *
+ * @see AbstractGetElementNameWidget
+ */
+public class GetReferenceNameWidget extends AbstractGetElementNameWidget {
+
+ public GetReferenceNameWidget(final Composite parent,
+ final PropertyElement2<String> propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Reference_name;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return Messages.Facet_mustGiveReferenceName;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/query/CreateQueryWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/query/CreateQueryWidget.java
new file mode 100644
index 00000000000..67c103edfec
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/query/CreateQueryWidget.java
@@ -0,0 +1,105 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.query;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryDialogFactoryStrategy;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.ICreateQueryWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.AbstractQueryDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractCommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.IAbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This widget is the base of the query creation widget.</p>
+ *
+ * The name, canBeCashed and canHavSideEffects are originally present and the
+ * others properties needed by the query are returned by the concrete widget
+ * returned by {@link AbstractQueryDialogFactory#createWidget()}.
+ *
+ * @see AbstractQueryDialogFactory
+ */
+public class CreateQueryWidget extends AbstractCommandWidget implements
+ ICreateQueryWidget {
+
+ private final IQueryDialogFactoryStrategy strategy;
+ // Widgets
+ private GetCanBeCachedWidget canBeCachedWidget;
+ private GetCanHaveSideEffectsWidget sideEffectsWidget;
+ private IAbstractWidget queryWidget;
+ // Properties
+ private final PropertyElement canBeCachedProp;
+ private final PropertyElement sideEffectsProp;
+ private final IQueryContext queryContext;
+
+
+ public CreateQueryWidget(final Composite parent,
+ final IQueryDialogFactoryStrategy strategy,
+ final PropertyElement canBeCachedProp,
+ final PropertyElement sideEffectsProp,
+ final IQueryContext queryContext) {
+ super(parent);
+ this.strategy = strategy;
+ this.canBeCachedProp = canBeCachedProp;
+ this.sideEffectsProp = sideEffectsProp;
+ this.queryContext = queryContext;
+ }
+
+ @Override
+ public Command getCommand() {
+ return null;
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ this.canBeCachedWidget = new GetCanBeCachedWidget(this,
+ this.canBeCachedProp);
+ addSubWidget(this.canBeCachedWidget);
+ this.sideEffectsWidget = new GetCanHaveSideEffectsWidget(this,
+ this.sideEffectsProp);
+ addSubWidget(this.sideEffectsWidget);
+ this.queryWidget = this.strategy.createWidget(this, this.queryContext);
+ addSubWidget(this.queryWidget);
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing.
+ }
+
+ /**
+ * @return CanBeCached value.
+ */
+ public boolean isCanBeCached() {
+ return this.canBeCachedWidget.isSelected();
+ }
+
+ /**
+ * @return HasSideEffect value.
+ */
+ public boolean isHasSideEffect() {
+ return this.sideEffectsWidget.isSelected();
+ }
+
+ public IAbstractWidget getCreateQueryWidget() {
+ return this.queryWidget;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/query/GetCanBeCachedWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/query/GetCanBeCachedWidget.java
new file mode 100644
index 00000000000..b7abc2dbf3a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/query/GetCanBeCachedWidget.java
@@ -0,0 +1,50 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.query;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.AbstractGetPropertyWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Concrete implementation of {@link AbstractGetPropertyWidget} for the can be
+ * cached property.
+ */
+public class GetCanBeCachedWidget extends AbstractGetPropertyWidget {
+
+ private static final int LABEL_WIDTH_HINT = 110;
+
+ public GetCanBeCachedWidget(final Composite parent,
+ final PropertyElement propertyElement) {
+ super(parent, propertyElement);
+ setLabelWidthHint(LABEL_WIDTH_HINT);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Query_Can_be_cached;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public String getError() {
+ // A property widget is a checkbox, so the values can be "true" or
+ // "false" so, no error can be throws because a value will be always
+ // put.
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/query/GetCanHaveSideEffectsWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/query/GetCanHaveSideEffectsWidget.java
new file mode 100644
index 00000000000..6cbd356372a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/component/query/GetCanHaveSideEffectsWidget.java
@@ -0,0 +1,50 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.query;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.AbstractGetPropertyWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Concrete implementation of {@link AbstractGetPropertyWidget} for the
+ * can have side effects property.
+ */
+public class GetCanHaveSideEffectsWidget extends AbstractGetPropertyWidget {
+
+ private static final int LABEL_WIDTH_HINT = 110;
+
+ public GetCanHaveSideEffectsWidget(final Composite parent,
+ final PropertyElement propertyElement) {
+ super(parent, propertyElement);
+ setLabelWidthHint(LABEL_WIDTH_HINT);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Query_has_side_effect;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public String getError() {
+ // A property widget is a checkbox, so the values can be "true" or
+ // "false" so, no error can be throws because a value will be always
+ // put.
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractDerivedTypedElementWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractDerivedTypedElementWidget.java
new file mode 100644
index 00000000000..fc2a496fdc6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractDerivedTypedElementWidget.java
@@ -0,0 +1,184 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.core.FacetUtils;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.query.ICreateQueryWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.SelectQueryTypeWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.getorcreate.GetOrCreateFacetWidget;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ModelUtils;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Abstract Widget implementing {@link IDerivedTypedElementWidget}.
+ */
+public abstract class AbstractDerivedTypedElementWidget<T extends DerivedTypedElement>
+ extends
+ AbstractETypedElementWidget<T, Facet, IGetOrCreateFilteredElementCommmandWidget<Facet, IFacetWidget>>
+ implements
+ IDerivedTypedElementWidget {
+
+ private SelectQueryTypeWidget queryTypeWidget;
+ private final Facet facet;
+
+ private final PropertyElement2<Query> queryProperty;
+
+ public AbstractDerivedTypedElementWidget(final Composite parent,
+ final EditingDomain editingDomain,
+ final PropertyElement2<Facet> facetProperty,
+ final PropertyElement2<String> nameProperty,
+ final PropertyElement2<Integer> lowerBdProperty,
+ final PropertyElement2<Integer> upperBdProperty,
+ final PropertyElement2<EClassifier> typeProperty,
+ final PropertyElement2<Boolean> orderedProperty,
+ final PropertyElement2<Boolean> uniqueProperty,
+ final PropertyElement2<Query> queryProperty) {
+ super(parent, editingDomain, facetProperty, nameProperty,
+ lowerBdProperty,
+ upperBdProperty, typeProperty, orderedProperty, uniqueProperty);
+ this.facet = facetProperty.getValue2();
+ this.queryProperty = queryProperty;
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ super.addSubWidgets();
+ // Query
+ this.queryTypeWidget = new SelectQueryTypeWidget(this,
+ this.queryProperty, this.getQueryContext());
+ this.queryTypeWidget
+ .setAlertMessage(Messages.Query_Select_Name_And_Type);
+ addSubWidget(this.queryTypeWidget);
+ }
+
+ protected final IQueryContext getQueryContext() {
+ return new QueryContext(this);
+ }
+
+ public SelectQueryTypeWidget getQueryTypeWidgetComposite() {
+ return this.queryTypeWidget;
+ }
+
+ @Override
+ protected GetOrCreateFacetWidget createGetOrCreateElementWidgetComposite() {
+ return new GetOrCreateFacetWidget(this, this.getContainerPropery(),
+ this.getEditingDomain(), (FacetSet) this.getContainerPropery()
+ .getValue2().eContainer());
+ }
+
+ @Override
+ public void notifyChanged() {
+ final Object name = this.getElementNameProperty().getValue();
+ final Object type = this.getTypeProperty().getValue();
+ final boolean enable = !("".equals(name) || "".equals(type) || type == null); //$NON-NLS-1$ //$NON-NLS-2$
+ this.getQueryTypeWidgetComposite().setSelectionEnabled(enable);
+ }
+
+ /**
+ * @return the queryProperty
+ */
+ public PropertyElement2<Query> getQueryProperty() {
+ return this.queryProperty;
+ }
+
+ public Query getQueryPropertyValue() {
+ return (Query) this.queryProperty.getValue();
+ }
+
+ public boolean isQueryEnable() {
+ return this.queryTypeWidget.isSelectionEnabled();
+ }
+
+ public IDialog<ICreateQueryWidget> selectQueryType(final String queryName) {
+ return this.queryTypeWidget.selectQueryType(queryName);
+ }
+
+ public String getQueryText() {
+ return this.queryTypeWidget.getText();
+ }
+
+ public Query getQuery() {
+ return (Query) this.queryProperty.getValue();
+ }
+
+ public void setQuery(final Query value) {
+ this.queryProperty.setValue(value);
+ }
+
+ public Facet getFacet() {
+ return this.facet;
+ }
+
+ private class QueryContext implements IQueryContext {
+
+ private final AbstractDerivedTypedElementWidget<T> widget;
+
+ public QueryContext(final AbstractDerivedTypedElementWidget<T> widget) {
+ this.widget = widget;
+ }
+
+ public int getUpperBound() {
+ return this.widget.getUpperBoundProperty().getValue2().intValue();
+ }
+
+ public EClassifier getReturnType() {
+ return this.widget.getEType();
+ }
+
+ public Resource getResource() {
+ return this.widget.getFacet().eResource();
+ }
+
+ public Query getQuery() {
+ return this.widget.getQueryPropertyValue();
+ }
+
+ public IProject getProject() {
+ return ModelUtils.getProject(this.widget.getFacet());
+ }
+
+ public EObject getIntermediateEObject() {
+ return null;
+ }
+
+ public Facet getFacet() {
+ return this.widget.getFacet();
+ }
+
+ public EClassifier getExtendedEClass() {
+ return FacetUtils.getExtendedMetaclass(this.widget.getFacet());
+ }
+
+ public String getDerivedTypedElementName() {
+ return this.widget.getElementNamePropertyValue();
+ }
+
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractENamedElementWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractENamedElementWidget.java
new file mode 100644
index 00000000000..b68e2288820
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractENamedElementWidget.java
@@ -0,0 +1,125 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation;
+
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetCommandFactory;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetCommandFactoryFactory;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractCommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.getorcreate.IAbstractGetOrCreateElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.getorcreate.IAbstractGetOrCreateElementWithButtonWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Abstract widget implementing {@link IENamedElementWidget}.
+ *
+ * @param C
+ * container
+ * @param T
+ * type of edited element
+ * @param CW
+ * the type of the widget contained by the dialog open to edit the
+ * container field
+ *
+ * */
+public abstract class AbstractENamedElementWidget<T extends ENamedElement, C extends EObject, CW extends Object>
+ extends AbstractCommandWidget implements IENamedElementWidget<C, CW> {
+
+ private final PropertyElement2<C> containerProperty;
+ private final PropertyElement2<String> nameProperty;
+
+ private IAbstractGetOrCreateElementWithButtonWidget<IDialog<CW>> containerWidget;
+ private IAbstractGetOrCreateElementWidget elementNameSubWC;
+ private final IFacetCommandFactory commandFatory;
+ private final EditingDomain editingDomain;
+
+ public AbstractENamedElementWidget(final Composite parent,
+ final EditingDomain editingDomain,
+ final PropertyElement2<C> facetProperty,
+ final PropertyElement2<String> nameProperty) {
+ super(parent);
+ this.containerProperty = facetProperty;
+ this.nameProperty = nameProperty;
+ this.editingDomain = editingDomain;
+ this.commandFatory = IFacetCommandFactoryFactory.DEFAULT
+ .createCommandFactory(editingDomain);
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ this.containerWidget = createGetOrCreateElementWidgetComposite();
+ addSubWidget(this.containerWidget);
+ this.elementNameSubWC = createGetElementNameSubWidgetComposite();
+ addSubWidget(this.elementNameSubWC);
+ }
+
+ /**
+ * @return the sub widget composite for the creation of the element.
+ */
+ protected abstract IAbstractGetOrCreateElementWithButtonWidget<IDialog<CW>> createGetOrCreateElementWidgetComposite();
+
+ /**
+ * @return the sub widget composite for the get of the element name.
+ */
+ protected abstract IAbstractGetOrCreateElementWidget createGetElementNameSubWidgetComposite();
+
+ /**
+ *
+ * @return the facetProperty
+ */
+ public PropertyElement2<C> getContainerPropery() {
+ return this.containerProperty;
+ }
+
+ /**
+ * @return the elementNameProperty
+ */
+ public PropertyElement2<String> getElementNameProperty() {
+ return this.nameProperty;
+ }
+
+ public String getElementNamePropertyValue() {
+ return this.nameProperty.getValue2();
+ }
+
+ public IDialog<CW> pressParentButton() {
+ return this.containerWidget.pressButton();
+ }
+
+ public String getElementName() {
+ return this.elementNameSubWC.getText();
+ }
+
+ public void setName(final String value) {
+ this.elementNameSubWC.setText(value);
+ }
+
+ public C getContainer() {
+ return this.containerProperty.getValue2();
+ }
+
+ protected final IFacetCommandFactory getCommandFactory() {
+ return this.commandFatory;
+ }
+
+ protected final EditingDomain getEditingDomain() {
+ return this.editingDomain;
+ }
+
+}
+
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractEStructuralFeatureWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractEStructuralFeatureWidget.java
new file mode 100644
index 00000000000..edb133f328a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractEStructuralFeatureWidget.java
@@ -0,0 +1,135 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IEStructuralFeatureWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties.GetChangeableWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties.GetDerivedWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties.GetTransientWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties.GetVolatileWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Abstract widget implementing {@link IEStructuralFeatureWidget}.
+ */
+public abstract class AbstractEStructuralFeatureWidget<T extends DerivedTypedElement>
+ extends AbstractDerivedTypedElementWidget<T> implements
+ IEStructuralFeatureWidget {
+
+ private final DerivedTypedElement dte;
+ private final PropertyElement2<Boolean> volatileProperty;
+ private final PropertyElement2<Boolean> changeProperty;
+ private final PropertyElement2<Boolean> derivedProperty;
+ private final PropertyElement2<Boolean> transientProperty;
+
+ private GetVolatileWidget volatileWidget;
+ private GetChangeableWidget changeableWidget;
+ private GetDerivedWidget derivedWidget;
+ private GetTransientWidget transientWidget;
+
+ public AbstractEStructuralFeatureWidget(final DerivedTypedElement dte,
+ final Composite parent,
+ final EditingDomain editingDomain,
+ final PropertyElement2<Facet> facetProperty,
+ final PropertyElement2<String> nameProperty,
+ final PropertyElement2<Integer> lowerBdProperty,
+ final PropertyElement2<Integer> upperBdProperty,
+ final PropertyElement2<EClassifier> typeProperty,
+ final PropertyElement2<Boolean> orderedProperty,
+ final PropertyElement2<Boolean> uniqueProperty,
+ final PropertyElement2<Query> queryProperty,
+ final PropertyElement2<Boolean> volatileProperty,
+ final PropertyElement2<Boolean> changeProperty,
+ final PropertyElement2<Boolean> derivedProperty,
+ final PropertyElement2<Boolean> transientProperty) {
+ super(parent, editingDomain, facetProperty, nameProperty,
+ lowerBdProperty, upperBdProperty, typeProperty,
+ orderedProperty, uniqueProperty, queryProperty);
+ this.dte = dte;
+ this.volatileProperty = volatileProperty;
+ this.changeProperty = changeProperty;
+ this.derivedProperty = derivedProperty;
+ this.transientProperty = transientProperty;
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ super.addSubWidgets();
+ this.volatileWidget = new GetVolatileWidget(getComposite(),
+ this.volatileProperty);
+ addSubWidget(this.volatileWidget);
+ this.changeableWidget = new GetChangeableWidget(getComposite(),
+ this.changeProperty);
+ addSubWidget(this.changeableWidget);
+ this.derivedWidget = new GetDerivedWidget(getComposite(),
+ this.derivedProperty);
+ addSubWidget(this.derivedWidget);
+ this.transientWidget = new GetTransientWidget(getComposite(),
+ this.transientProperty);
+ addSubWidget(this.transientWidget);
+ }
+
+ @Override
+ public Command getCommand() {
+ return this.getCommandFactory()
+ .createEditFacetStructuralFeatureCommand(this.dte,
+ this.getContainer(), this.getElementName(),
+ this.getLowerBoundProperty().getValue2().intValue(),
+ this.getUpperBoundProperty().getValue2().intValue(),
+ this.getTypeProperty().getValue2(),
+ this.getOrderedProperty().getValue2().booleanValue(),
+ this.getUniqueProperty().getValue2().booleanValue(),
+ this.getQueryPropertyValue(),
+ this.volatileProperty.getValue2().booleanValue(),
+ this.changeProperty.getValue2().booleanValue(),
+ this.derivedProperty.getValue2().booleanValue(),
+ this.transientProperty.getValue2().booleanValue());
+ }
+ public boolean isTransient() {
+ return this.transientWidget.isSelected();
+ }
+ public void setTransient(final boolean value) {
+ this.transientWidget.setPropertyEnabled(value);
+ }
+
+ public boolean isVolatile() {
+ return this.volatileWidget.isSelected();
+ }
+
+ public void setVolatile(final boolean value) {
+ this.volatileWidget.setPropertyEnabled(value);
+ }
+
+ public boolean isChangeable() {
+ return this.changeableWidget.isSelected();
+ }
+
+ public void setChangeable(final boolean value) {
+ this.changeableWidget.setPropertyEnabled(value);
+ }
+
+ public boolean isDerived() {
+ return this.derivedWidget.isSelected();
+ }
+
+ public void setDerived(final boolean value) {
+ this.derivedWidget.setPropertyEnabled(value);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractETypedElementWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractETypedElementWidget.java
new file mode 100644
index 00000000000..22ecdb3edf0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AbstractETypedElementWidget.java
@@ -0,0 +1,188 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IETypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.metaclass.GetElementTypeWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties.GetOrderedWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties.GetUniqueWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties.bounds.GetLowerBoundWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties.bounds.GetUpperBoundWidget;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Abstract widget implement {@link IETypedElementWidget}.
+ */
+public abstract class AbstractETypedElementWidget<T extends ETypedElement, C extends EObject, CW extends Object>
+ extends AbstractENamedElementWidget<T, C, CW>
+ implements
+ IETypedElementWidget<C, CW> {
+
+ private static final int HORIZ_SPACING = 110;
+ private static final int COLUMN_NUMBER = 3;
+
+ private final PropertyElement2<Integer> lowerBdProperty;
+ private final PropertyElement2<Integer> upperBdProperty;
+ private final PropertyElement2<EClassifier> typeProperty;
+ private final PropertyElement2<Boolean> orderedProperty;
+ private final PropertyElement2<Boolean> uniqueProperty;
+
+ private GetLowerBoundWidget lowerBoundWidget;
+ private GetUpperBoundWidget upperBoundWidget;
+ private GetElementTypeWidget elementTypeWidget;
+ private GetOrderedWidget orderedWidget;
+ private GetUniqueWidget uniqueWidget;
+ private Composite composite;
+
+ public AbstractETypedElementWidget(final Composite parent,
+ final EditingDomain editingDomain,
+ final PropertyElement2<C> containerProperty,
+ final PropertyElement2<String> nameProperty,
+ final PropertyElement2<Integer> lowerBdProperty,
+ final PropertyElement2<Integer> upperBdProperty,
+ final PropertyElement2<EClassifier> typeProperty,
+ final PropertyElement2<Boolean> orderedProperty,
+ final PropertyElement2<Boolean> uniqueProperty) {
+ super(parent, editingDomain, containerProperty, nameProperty);
+ this.lowerBdProperty = lowerBdProperty;
+ this.upperBdProperty = upperBdProperty;
+ this.typeProperty = typeProperty;
+ this.orderedProperty = orderedProperty;
+ this.uniqueProperty = uniqueProperty;
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ super.addSubWidgets();
+ this.lowerBoundWidget = new GetLowerBoundWidget(this,
+ this.lowerBdProperty);
+ addSubWidget(this.lowerBoundWidget);
+ this.upperBoundWidget = new GetUpperBoundWidget(this,
+ this.upperBdProperty);
+ addSubWidget(this.upperBoundWidget);
+ this.elementTypeWidget = new GetElementTypeWidget(this,
+ this.typeProperty, null, this.getETypeSelectionOption());
+ addSubWidget(this.elementTypeWidget);
+ this.composite = new Composite(this, SWT.NONE);
+ final GridLayout gridLayout = new GridLayout(COLUMN_NUMBER, false);
+ gridLayout.horizontalSpacing = HORIZ_SPACING;
+ gridLayout.marginWidth = 0;
+ this.composite.setLayout(gridLayout);
+ this.orderedWidget = new GetOrderedWidget(this.composite,
+ this.orderedProperty);
+ addSubWidget(this.orderedWidget);
+ this.uniqueWidget = new GetUniqueWidget(this.composite,
+ this.uniqueProperty);
+ addSubWidget(this.uniqueWidget);
+ }
+
+ protected final Composite getComposite() {
+ return this.composite;
+ }
+
+ /**
+ * @return the type selection option.
+ */
+ protected abstract Class<? extends EClassifier> getETypeSelectionOption();
+
+ /**
+ * @return the lowerBoundProperty
+ */
+ protected final PropertyElement2<Integer> getLowerBoundProperty() {
+ return this.lowerBdProperty;
+ }
+
+ /**
+ * @return the upperBoundProperty
+ */
+ protected final PropertyElement2<Integer> getUpperBoundProperty() {
+ return this.upperBdProperty;
+ }
+
+ /**
+ * @return the typeProperty
+ */
+ protected final PropertyElement2<EClassifier> getTypeProperty() {
+ return this.typeProperty;
+ }
+
+ /**
+ * @return the orderedProperty
+ */
+ protected final PropertyElement2<Boolean> getOrderedProperty() {
+ return this.orderedProperty;
+ }
+
+ /**
+ * @return the uniqueProperty
+ */
+ protected final PropertyElement2<Boolean> getUniqueProperty() {
+ return this.uniqueProperty;
+ }
+
+ public boolean isOrdered() {
+ return this.orderedWidget.isSelected();
+ }
+
+ public void setOrdered(final boolean value) {
+ this.orderedWidget.setPropertyEnabled(value);
+ }
+
+ public boolean isUnique() {
+ return this.uniqueWidget.isSelected();
+ }
+
+ public void setUnique(final boolean value) {
+ this.uniqueWidget.setPropertyEnabled(value);
+ }
+
+ public int getLowerBound() {
+ return this.lowerBoundWidget.getBoundValue();
+ }
+
+ public void setLowerBound(final int value) {
+ this.lowerBoundWidget.setBoundValue(value);
+ }
+
+ public int getUpperBound() {
+ return this.upperBoundWidget.getBoundValue();
+ }
+
+ public void setUpperBound(final int value) {
+ this.upperBoundWidget.setBoundValue(value);
+ }
+
+ public EClassifier getEType() {
+ return this.typeProperty.getValue2();
+ }
+
+ public void setEType(final EClassifier value) {
+ this.typeProperty.setValue(value);
+ }
+
+ public ISelectETypeWizard<EClassifier> pressTypeButton() {
+ return this.elementTypeWidget.pressButton();
+ }
+
+ public String getElementTypeName() {
+ return this.elementTypeWidget.getText();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AddOperationInFacetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AddOperationInFacetWidget.java
new file mode 100644
index 00000000000..95d254de1f1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AddOperationInFacetWidget.java
@@ -0,0 +1,104 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties.name.GetOperationNameWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name.AbstractGetElementNameWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+
+/**
+ * Concrete implementation of {@link AbstractAddElementWidget} for the creation
+ * of an operation in a facet.
+ */
+public class AddOperationInFacetWidget extends
+ AbstractDerivedTypedElementWidget<FacetOperation> {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param properties
+ * the properties.
+ * @param facet
+ */
+ public AddOperationInFacetWidget(final Composite parent,
+ final EditingDomain editingDomain,
+ final PropertyElement2<Facet> facetProperty,
+ final PropertyElement2<String> nameProperty,
+ final PropertyElement2<Integer> lowerBdProperty,
+ final PropertyElement2<Integer> upperBdProperty,
+ final PropertyElement2<EClassifier> typeProperty,
+ final PropertyElement2<Boolean> orderedProperty,
+ final PropertyElement2<Boolean> uniqueProperty,
+ final PropertyElement2<Query> queryProperty) {
+ super(parent, editingDomain, facetProperty,
+ nameProperty, lowerBdProperty, upperBdProperty, typeProperty,
+ orderedProperty, uniqueProperty, queryProperty);
+ }
+
+ @Override
+ public Command getCommand() {
+ final Facet facet = this.getContainerPropery().getValue2();
+ final FacetOperation facetOperation = createFacetOperation();
+ return this.getCommandFactory().createAddOperationInFacetCommand(facet,
+ facetOperation);
+ }
+
+ protected FacetOperation createFacetOperation() {
+ final FacetOperation facetOperation = getFacetOperation();
+ facetOperation.setName(getElementNamePropertyValue());
+ facetOperation.setLowerBound(getLowerBoundProperty().getValue2()
+ .intValue());
+ facetOperation.setUpperBound(getUpperBoundProperty().getValue2()
+ .intValue());
+ facetOperation.setEType(getTypeProperty().getValue2());
+ facetOperation.setOrdered(getOrderedProperty().getValue2()
+ .booleanValue());
+ facetOperation
+ .setUnique(getUniqueProperty().getValue2().booleanValue());
+ facetOperation.setQuery(getQueryProperty().getValue2());
+ return facetOperation;
+ }
+
+ @SuppressWarnings("static-method")
+ //@SuppressWarnings("static-method") This method cannot be static because it is overrode by EditFacetWidget.
+ protected FacetOperation getFacetOperation() {
+ return EFacetFactory.eINSTANCE.createFacetOperation();
+ }
+
+ @Override
+ protected AbstractGetElementNameWidget createGetElementNameSubWidgetComposite() {
+ return new GetOperationNameWidget(this, this.getElementNameProperty());
+ }
+
+ @Override
+ protected Class<EClassifier> getETypeSelectionOption() {
+ return EClassifier.class;
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing.
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AddParameterInOperationWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AddParameterInOperationWidget.java
new file mode 100644
index 00000000000..1979fa92a7c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/AddParameterInOperationWidget.java
@@ -0,0 +1,119 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.ecore.EcoreFactory;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.getorcreate.GetOrCreateOperationWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties.name.GetOperationNameWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWithButtonWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Concrete implementation of {@link AbstractAddElementWidget} for the creation
+ * of an parameter in a operation.
+ */
+public class AddParameterInOperationWidget extends
+ AbstractETypedElementWidget<EParameter, FacetOperation, IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>> {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param properties
+ * the properties.
+ */
+ public AddParameterInOperationWidget(final Composite parent,
+ final EditingDomain editingDomain,
+ final PropertyElement2<FacetOperation> containerProperty,
+ final PropertyElement2<String> nameProperty,
+ final PropertyElement2<Integer> lowerBdProperty,
+ final PropertyElement2<Integer> upperBdProperty,
+ final PropertyElement2<EClassifier> typeProperty,
+ final PropertyElement2<Boolean> orderedProperty,
+ final PropertyElement2<Boolean> uniqueProperty) {
+ super(parent, editingDomain, containerProperty, nameProperty,
+ lowerBdProperty,
+ upperBdProperty, typeProperty, orderedProperty, uniqueProperty);
+ }
+
+ @Override
+ public Command getCommand() {
+ final FacetOperation facetOperation = this.getContainerPropery()
+ .getValue2();
+ final EParameter operationParam = createOperationParameter();
+ return this.getCommandFactory()
+ .createAddParameterInOperationCommand(facetOperation,
+ operationParam);
+ }
+
+ protected EParameter createOperationParameter() {
+ final EParameter operationParam = getOperationParameter();
+ operationParam.setName(getElementNamePropertyValue());
+ operationParam.setLowerBound(getLowerBoundProperty().getValue2()
+ .intValue());
+ operationParam.setUpperBound(getUpperBoundProperty().getValue2()
+ .intValue());
+ operationParam.setEType(getTypeProperty().getValue2());
+ operationParam.setOrdered(getOrderedProperty().getValue2()
+ .booleanValue());
+ operationParam
+ .setUnique(getUniqueProperty().getValue2().booleanValue());
+ return operationParam;
+ }
+
+ @SuppressWarnings("static-method")
+ //@SuppressWarnings("static-method") This method cannot be static because it is overrode by EditFacetWidget.
+ protected EParameter getOperationParameter() {
+ return EcoreFactory.eINSTANCE.createEParameter();
+ }
+
+ @Override
+ protected GetOperationNameWidget createGetElementNameSubWidgetComposite() {
+ return new GetOperationNameWidget(this, this.getElementNameProperty());
+ }
+
+ @Override
+ protected AbstractGetOrCreateElementWithButtonWidget<FacetOperation, IDialog<IGetOrCreateFilteredElementCommmandWidget<FacetOperation, IDerivedTypedElementWidget>>> createGetOrCreateElementWidgetComposite() {
+ final Facet context = (Facet) this.getContainerPropery().getValue2()
+ .eContainer();
+ return new GetOrCreateOperationWidget(this, this.getContainerPropery(),
+ this.getEditingDomain(), context);
+ }
+
+ @Override
+ protected Class<EClassifier> getETypeSelectionOption() {
+ return EClassifier.class;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing.
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/GetFilteredSubTypingTypeWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/GetFilteredSubTypingTypeWidget.java
new file mode 100644
index 00000000000..6112bbed9b3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/GetFilteredSubTypingTypeWidget.java
@@ -0,0 +1,153 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractGetOrCreateFilteredElementCommandWidget;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Widget for the selection and/or creation of an element in a list.
+ */
+public class GetFilteredSubTypingTypeWidget extends
+ AbstractGetOrCreateFilteredElementCommandWidget<ETypedElement, Object> {
+
+ private final EClass context;
+ private final Facet facet;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this widget.
+ * @param properties
+ * the properties.
+ */
+ public GetFilteredSubTypingTypeWidget(final Composite parent, final EClass context,
+ final Facet facet) {
+ super(parent);
+ this.context = context;
+ this.facet = facet;
+ }
+
+ @Override
+ protected Map<String, ETypedElement> getElements() {
+ final Map<String, ETypedElement> allElements = new HashMap<String, ETypedElement>();
+ if (this.context != null) {
+ allElements.putAll(getAttributes(this.context));
+ allElements.putAll(getOperations(this.context.getEAllOperations()));
+ }
+ if (this.facet != null) {
+ allElements.putAll(getFacetAttributes(this.facet));
+ allElements.putAll(getOperations(this.facet.getFacetOperations()));
+ }
+ return allElements;
+ }
+
+ /**
+ * @param facet
+ * @return
+ */
+ private static Map<String, ETypedElement> getFacetAttributes(
+ final Facet facet) {
+ final Map<String, ETypedElement> allElements = new HashMap<String, ETypedElement>();
+ for (final EStructuralFeature element : facet.getFacetElements()) {
+ final EClassifier eType = element.getEType();
+ if ((element instanceof FacetAttribute)
+ && eType.equals(
+ EcorePackage.eINSTANCE.getEBoolean())) {
+ allElements.put(element.getName(), element);
+ }
+ }
+ return allElements;
+ }
+
+ /**
+ * @param context
+ * @return
+ */
+ private static Map<String, ETypedElement> getOperations(
+ final List<? extends EOperation> elements) {
+ final Map<String, ETypedElement> allElements = new HashMap<String, ETypedElement>();
+ for (final EOperation operation : elements) {
+ // Get all the operations returning a boolean and without any
+ // parameter.
+ if (operation.getEType().equals(
+ EcorePackage.eINSTANCE.getEBoolean())
+ && (operation.getEParameters().size() == 0)) {
+ allElements.put(operation.getName(), operation);
+ }
+ }
+ return allElements;
+ }
+
+ /**
+ * @param context
+ * @return
+ */
+ private static Map<String, ETypedElement> getAttributes(
+ final EClass context) {
+ final Map<String, ETypedElement> allElements = new HashMap<String, ETypedElement>();
+ for (final EAttribute attribute : context.getEAllAttributes()) {
+ if (attribute.getEType().equals(
+ EcorePackage.eINSTANCE.getEBoolean())) {
+ allElements.put(attribute.getName(), attribute);
+ }
+ }
+ return allElements;
+ }
+
+ @Override
+ protected IDialog<Object> createDialog() {
+ // No element can be created.
+ return null;
+ }
+
+ /**
+ * @return the selected element in the filtredList.
+ */
+ public ETypedElement getSubTypeSelected() {
+ return getElementSelected();
+ }
+
+ @Override
+ public Command getCommand() {
+ // Here, this widget only return a selected element so, no command is
+ // returned.
+ return null;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing.
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/GetOrCreateFiltredFacetSetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/GetOrCreateFiltredFacetSetWidget.java
new file mode 100644
index 00000000000..7d3d58f623d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/GetOrCreateFiltredFacetSetWidget.java
@@ -0,0 +1,142 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.core.FacetUtils;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation.CreateFacetSetInFacetSetDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IENamedElementWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractGetOrCreateFilteredElementCommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Concrete implementation of {@link AbstractGetOrCreateElementWidget}.</p>
+ *
+ * This class allows to select a FacetSet or create a new one.
+ */
+public class GetOrCreateFiltredFacetSetWidget
+ extends
+ AbstractGetOrCreateFilteredElementCommandWidget<
+ FacetSet,
+ IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>
+ >
+ implements IGetOrCreateFilteredFacetSetWidget {
+
+ private final EditingDomain editingDomain;
+ private final PropertyElement2<FacetSet> parentFSProp;
+ private final FacetSet reject;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this widget.
+ * @param properties
+ * the properties.
+ * @param reject
+ * @param recursiveCreation
+ * if the creation of the FacetSet can be recursive.
+ */
+ public GetOrCreateFiltredFacetSetWidget(final Composite parent,
+ final EditingDomain editingDomain,
+ final PropertyElement2<FacetSet> parentFSProp, final FacetSet reject) {
+ super(parent);
+ this.editingDomain = editingDomain;
+ this.parentFSProp = parentFSProp;
+ this.reject = reject;
+ }
+
+ /**
+ * @return the selected facetSet in the filtredList.
+ */
+ public FacetSet getFacetSetSelected() {
+ return getElementSelected();
+ }
+
+ @Override
+ protected Map<String, FacetSet> getElements() {
+ final FacetSet containingFS = FacetUtils
+ .getRootFacetSet(this.parentFSProp.getValue2());
+ final Map<String, FacetSet> allFacets = getAllFacetSets(containingFS);
+ allFacets.remove(this.parentFSProp.getName());
+ return allFacets;
+ }
+
+ @Override
+ protected IDialog<IENamedElementWidget<FacetSet, IGetOrCreateFilteredFacetSetWidget>> createDialog() {
+ return new CreateFacetSetInFacetSetDialog(
+ this.parentFSProp.getValue2(), this.editingDomain);
+ }
+
+ /**
+ * Return all the facetSets parent if the element in parameter.
+ *
+ * @param element
+ * where to begin.
+ * @return the list of facetSet.
+ */
+ public Map<String, FacetSet> getAllSuperFacetSets(final FacetSet element) {
+ final Map<String, FacetSet> facetSets = new HashMap<String, FacetSet>();
+ facetSets.put(element.getName(), element);
+ final FacetSet parent = (FacetSet) element.getESuperPackage();
+ if (parent != null) {
+ facetSets.putAll(getAllSuperFacetSets(parent));
+ }
+ return facetSets;
+ }
+
+ /**
+ * Return all the facetSets of the model.
+ *
+ * @param parent
+ * the first FacetSet of the model.
+ * @return the list of facetSet.
+ */
+ private Map<String, FacetSet> getAllFacetSets(final FacetSet parent) {
+ final Map<String, FacetSet> facetSets = new HashMap<String, FacetSet>();
+ if (parent != this.reject) {
+ facetSets.put(parent.getName(), parent);
+ for (final EPackage element : parent.getESubpackages()) {
+ facetSets.putAll(getAllFacetSets((FacetSet) element));
+ }
+ }
+ return facetSets;
+ }
+
+ @Override
+ public Command getCommand() {
+ // Here, this widget only return a selected element so, no command is
+ // returned.
+ return null;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing.
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/GetOrCreateFiltredFacetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/GetOrCreateFiltredFacetWidget.java
new file mode 100644
index 00000000000..09126d23b47
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/GetOrCreateFiltredFacetWidget.java
@@ -0,0 +1,96 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation;
+
+import java.util.Map;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.core.FacetUtils;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation.CreateFacetInFacetSetDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractGetOrCreateFilteredElementCommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWidget;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Concrete implementation of {@link AbstractGetOrCreateElementWidget}.</p>
+ *
+ * This class allows to select a Facet or create a new one.
+ */
+public class GetOrCreateFiltredFacetWidget extends
+ AbstractGetOrCreateFilteredElementCommandWidget<Facet, IFacetWidget> {
+
+ private final EditingDomain editingDomain;
+ private final FacetSet container;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this widget.
+ * @param properties
+ * the properties.
+ */
+ public GetOrCreateFiltredFacetWidget(final Composite parent,
+ final EditingDomain editingDomain, final FacetSet container) {
+ super(parent);
+ this.editingDomain = editingDomain;
+ this.container = container;
+ }
+
+ @Override
+ protected Map<String, Facet> getElements() {
+ final FacetSet parent = FacetUtils
+ .getContainingFacetSet(this.container);
+ final Map<String, Facet> allFacets = FacetUtils
+ .getAllFacetsByName(parent);
+ final Object name = this.container.getName();
+ allFacets.remove(name);
+ return allFacets;
+ }
+
+ @Override
+ protected IDialog<IFacetWidget> createDialog() {
+ return new CreateFacetInFacetSetDialog(this.container,
+ this.editingDomain);
+ }
+
+ /**
+ * @return the selected facet in the filtredList.
+ */
+ public Facet getFacetSelected() {
+ return getElementSelected();
+ }
+
+ @Override
+ public Command getCommand() {
+ // Here, this widget only return a selected element so, no command is
+ // returned.
+ return null;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing.
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/GetOrCreateFiltredOperationWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/GetOrCreateFiltredOperationWidget.java
new file mode 100644
index 00000000000..2756769af59
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/creation/GetOrCreateFiltredOperationWidget.java
@@ -0,0 +1,93 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation;
+
+import java.util.Map;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.core.FacetUtils;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.dialog.creation.AddOperationInFacetDialog;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IDerivedTypedElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractGetOrCreateFilteredElementCommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWidget;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Concrete implementation of {@link AbstractGetOrCreateElementWidget}.</p>
+ *
+ * This class allows to select an Operation or create a new one.
+ */
+public class GetOrCreateFiltredOperationWidget extends
+ AbstractGetOrCreateFilteredElementCommandWidget<FacetOperation, IDerivedTypedElementWidget> {
+
+ private final EditingDomain editingDomain;
+ private final Facet context;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this widget.
+ * @param properties
+ * the properties.
+ */
+ public GetOrCreateFiltredOperationWidget(final Composite parent,
+ final EditingDomain editingDomain, final Facet context) {
+ super(parent);
+ this.editingDomain = editingDomain;
+ this.context = context;
+ }
+
+ @Override
+ protected Map<String, FacetOperation> getElements() {
+ final FacetSet parent = FacetUtils.getContainingFacetSet(this.context);
+ final Map<String, FacetOperation> allOperations = FacetUtils
+ .getAllOperationsByName(parent);
+ return allOperations;
+ }
+
+ @Override
+ protected IDialog<IDerivedTypedElementWidget> createDialog() {
+ final Facet container = this.context;
+ return new AddOperationInFacetDialog(container, this.editingDomain);
+ }
+
+ /**
+ * @return the selected operation in the filtredList.
+ */
+ public FacetOperation getFacetOperationSelected() {
+ return getElementSelected();
+ }
+
+ @Override
+ public Command getCommand() {
+ // Here, this widget only return a selected element so, no command is
+ // returned.
+ return null;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing.
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetAttributeWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetAttributeWidget.java
new file mode 100644
index 00000000000..5dbef8d016b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetAttributeWidget.java
@@ -0,0 +1,81 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties.name.GetAttributeNameWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation.AbstractEStructuralFeatureWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name.AbstractGetElementNameWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Widget for the edition of a {@link FacetAttribute}.
+ */
+public class EditFacetAttributeWidget extends
+ AbstractEStructuralFeatureWidget<FacetAttribute> {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param properties
+ * the properties.
+ * @param initialAttribut
+ * the {@link FacetAttribute} to edit.
+ */
+ public EditFacetAttributeWidget(final Composite parent,
+ final FacetAttribute initialAttribut,
+ final EditingDomain editingDomain,
+ final PropertyElement2<Facet> facetProperty,
+ final PropertyElement2<String> nameProperty,
+ final PropertyElement2<Integer> lowerBdProperty,
+ final PropertyElement2<Integer> upperBdProperty,
+ final PropertyElement2<EClassifier> typeProperty,
+ final PropertyElement2<Boolean> orderedProperty,
+ final PropertyElement2<Boolean> uniqueProperty,
+ final PropertyElement2<Query> queryProperty,
+ final PropertyElement2<Boolean> volatileProperty,
+ final PropertyElement2<Boolean> changeProperty,
+ final PropertyElement2<Boolean> derivedProperty,
+ final PropertyElement2<Boolean> transientProperty) {
+ super(initialAttribut, parent, editingDomain, facetProperty,
+ nameProperty,
+ lowerBdProperty, upperBdProperty, typeProperty,
+ orderedProperty, uniqueProperty, queryProperty,
+ volatileProperty, changeProperty, derivedProperty,
+ transientProperty);
+ }
+
+ @Override
+ protected AbstractGetElementNameWidget createGetElementNameSubWidgetComposite() {
+ return new GetAttributeNameWidget(this, this.getElementNameProperty());
+ }
+
+ @Override
+ protected Class<? extends EClassifier> getETypeSelectionOption() {
+ return EDataType.class;
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing.
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetOperationParameterWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetOperationParameterWidget.java
new file mode 100644
index 00000000000..a391d96b7cf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetOperationParameterWidget.java
@@ -0,0 +1,72 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation.AddParameterInOperationWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Widget for the edition of a {@link EParameter}.
+ */
+public class EditFacetOperationParameterWidget extends
+ AddParameterInOperationWidget {
+
+ private final EParameter initialParameter;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param editingDomain
+ * the current editing domain.
+ * @param properties
+ * the properties.
+ * @param initialParameter
+ * the {@link EParameter} to edit.
+ */
+ public EditFacetOperationParameterWidget(final Composite parent,
+ final EParameter initialParameter,
+ final EditingDomain editingDomain,
+ final PropertyElement2<FacetOperation> containerProperty,
+ final PropertyElement2<String> nameProperty,
+ final PropertyElement2<Integer> lowerBdProperty,
+ final PropertyElement2<Integer> upperBdProperty,
+ final PropertyElement2<EClassifier> typeProperty,
+ final PropertyElement2<Boolean> orderedProperty,
+ final PropertyElement2<Boolean> uniqueProperty) {
+ super(parent, editingDomain, containerProperty, nameProperty,
+ lowerBdProperty, upperBdProperty, typeProperty,
+ orderedProperty, uniqueProperty);
+ this.initialParameter = initialParameter;
+ }
+
+ @Override
+ protected EParameter getOperationParameter() {
+ return this.initialParameter;
+ }
+
+ @Override
+ public Command getCommand() {
+ return this.getCommandFactory().createEditOperationParameterCommand(
+ this.initialParameter, this.getContainer(), this.getElementName(),
+ this.getLowerBound(), this.getLowerBound(), this.getEType(),
+ this.isOrdered(), this.isUnique());
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetOperationWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetOperationWidget.java
new file mode 100644
index 00000000000..623d3d7cc6c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetOperationWidget.java
@@ -0,0 +1,78 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation.AddOperationInFacetWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Widget for the edition of a {@link FacetOperation}.
+ */
+public class EditFacetOperationWidget extends AddOperationInFacetWidget {
+
+ private final FacetOperation initialFacetOpe;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param properties
+ * the properties.
+ * @param initialFacetOpe
+ * the {@link FacetOperation} to edit.
+ * @param facet
+ */
+ public EditFacetOperationWidget(final Composite parent,
+ final FacetOperation initialFacetOpe,
+ final EditingDomain editingDomain,
+ final PropertyElement2<Facet> facetProperty,
+ final PropertyElement2<String> nameProperty,
+ final PropertyElement2<Integer> lowerBdProperty,
+ final PropertyElement2<Integer> upperBdProperty,
+ final PropertyElement2<EClassifier> typeProperty,
+ final PropertyElement2<Boolean> orderedProperty,
+ final PropertyElement2<Boolean> uniqueProperty,
+ final PropertyElement2<Query> queryProperty) {
+ super(parent, editingDomain, facetProperty, nameProperty,
+ lowerBdProperty, upperBdProperty, typeProperty,
+ orderedProperty, uniqueProperty, queryProperty);
+ this.initialFacetOpe = initialFacetOpe;
+ }
+
+ @Override
+ protected FacetOperation getFacetOperation() {
+ return this.initialFacetOpe;
+ }
+
+ @Override
+ public Command getCommand() {
+ final Facet facetContainer = this.getContainerPropery()
+ .getValue2();
+ final FacetOperation facetElement = createFacetOperation();
+ return this.getCommandFactory().createEditFacetOperationCommand(
+ facetElement, facetContainer, getElementName(), getLowerBound(),
+ getUpperBound(), getTypeProperty().getValue2(),
+ getOrderedProperty().getValue2().booleanValue(),
+ getUniqueProperty().getValue2().booleanValue(),
+ getQueryProperty().getValue2());
+
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetReferenceWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetReferenceWidget.java
new file mode 100644
index 00000000000..79eafeb824d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetReferenceWidget.java
@@ -0,0 +1,81 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.properties.name.GetReferenceNameWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation.AbstractEStructuralFeatureWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name.AbstractGetElementNameWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Widget for the edition of a {@link FacetReference}.
+ */
+public class EditFacetReferenceWidget extends
+ AbstractEStructuralFeatureWidget<FacetReference> {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param properties
+ * the properties.
+ * @param initialFacetRef
+ * the {@link FacetReference} to edit.
+ * @param facet
+ */
+ public EditFacetReferenceWidget(final Composite parent,
+ final FacetReference initialFacetRef,
+ final EditingDomain editingDomain,
+ final PropertyElement2<Facet> facetProperty,
+ final PropertyElement2<String> nameProperty,
+ final PropertyElement2<Integer> lowerBdProperty,
+ final PropertyElement2<Integer> upperBdProperty,
+ final PropertyElement2<EClassifier> typeProperty,
+ final PropertyElement2<Boolean> orderedProperty,
+ final PropertyElement2<Boolean> uniqueProperty,
+ final PropertyElement2<Query> queryProperty,
+ final PropertyElement2<Boolean> volatileProperty,
+ final PropertyElement2<Boolean> changeProperty,
+ final PropertyElement2<Boolean> derivedProperty,
+ final PropertyElement2<Boolean> transientProperty) {
+ super(initialFacetRef, parent, editingDomain, facetProperty,
+ nameProperty, lowerBdProperty, upperBdProperty, typeProperty,
+ orderedProperty, uniqueProperty, queryProperty,
+ volatileProperty, changeProperty, derivedProperty,
+ transientProperty);
+ }
+
+ @Override
+ protected AbstractGetElementNameWidget createGetElementNameSubWidgetComposite() {
+ return new GetReferenceNameWidget(this, this.getElementNameProperty());
+ }
+
+ @Override
+ protected Class<? extends EClassifier> getETypeSelectionOption() {
+ return EClass.class;
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing.
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetSetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetSetWidget.java
new file mode 100644
index 00000000000..8c3d812cb88
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetSetWidget.java
@@ -0,0 +1,113 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate.IGetOrCreateFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.getorcreate.GetOrCreateFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation.AbstractENamedElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name.AbstractGetElementNameWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Widget for the edition of a {@link FacetSet}.
+ */
+public class EditFacetSetWidget
+ extends
+ AbstractENamedElementWidget<FacetSet, FacetSet, IGetOrCreateFilteredFacetSetWidget> {
+
+ private final PropertyElement2<FacetSet> containerProperty;
+ private final FacetSet editedFacetSet;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param properties
+ * the properties.
+ * @param editedFacetSet
+ * the {@link FacetSet} to edit.
+ * @param nameProperty
+ * @param containerProp
+ */
+ public EditFacetSetWidget(final Composite parent,
+ final FacetSet editedFacetSet, final EditingDomain editingDomain,
+ final PropertyElement2<String> nameProperty,
+ final PropertyElement2<FacetSet> containerProp) {
+ super(parent, editingDomain, containerProp, nameProperty);
+ this.containerProperty = containerProp;
+ this.editedFacetSet = editedFacetSet;
+ }
+
+ @Override
+ public Command getCommand() {
+ final FacetSet container = this.containerProperty.getValue2();
+ return this.getCommandFactory().createEditFacetSetCommand(
+ this.editedFacetSet, container,
+ this.getElementNamePropertyValue());
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing.
+ }
+
+
+ @Override
+ protected IGetOrCreateFacetSetWidget createGetOrCreateElementWidgetComposite() {
+ return new GetOrCreateFacetSetWidget(this, this.containerProperty,
+ this.getEditingDomain(), null);
+ }
+
+ @Override
+ protected AbstractGetElementNameWidget createGetElementNameSubWidgetComposite() {
+ final AbstractGetElementNameWidget widget = new AbstractGetElementNameWidget(
+ this, this.getElementNameProperty()) {
+ @Override
+ protected String getErrorMessage() {
+ return ""; //$NON-NLS-1$
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.EditFacetSetWidget_FacetSetName;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // Noting to do
+ }
+
+ };
+ return widget;
+ }
+
+
+ protected final PropertyElement getContainerProperty() {
+ return this.containerProperty;
+ }
+
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetWidget.java
new file mode 100644
index 00000000000..997aecee8d2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/widget/edition/EditFacetWidget.java
@@ -0,0 +1,168 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.IFacetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.getorcreate.IGetOrCreateFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.component.metaclass.IGetExtendedMetaclassWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.widget.creation.IGetOrCreateFilteredFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.sync.generated.SynchronizedGetExtendedMetaclassWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.getorcreate.GetOrCreateFacetSetWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.metaclass.GetExtendedMetaclassWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.component.metaclass.SelectSubTypingTypeWidget;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.creation.AbstractENamedElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name.AbstractGetElementNameWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.IAbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Widget for the edition of a {@link Facet}.
+ */
+public class EditFacetWidget
+ extends
+ AbstractENamedElementWidget<Facet, FacetSet, IGetOrCreateFilteredFacetSetWidget> implements IFacetWidget {
+
+ private final Facet initialFacet;
+ private final PropertyElement2<String> facetNameProperty;
+ private final PropertyElement2<EClass> facetMetaclass;
+ private final PropertyElement2<ETypedElement> conformProperty;
+ private SelectSubTypingTypeWidget subTypingTypeW;
+ private GetExtendedMetaclassWidget extMetaclassW;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param editingDomain
+ * the current editing domain.
+ * @param properties
+ * the properties.
+ * @param initialFacet
+ * the {@link Facet} to edit.
+ * @param facetNameProperty
+ * @param containerProperty
+ * @param conformProperty
+ * @param facetMetaclass
+ */
+ public EditFacetWidget(final Composite parent,
+ final Facet initialFacet, final EditingDomain editingDomain,
+ final PropertyElement2<String> facetNameProperty,
+ final PropertyElement2<FacetSet> facetSetProperty,
+ final PropertyElement2<ETypedElement> conformProperty,
+ final PropertyElement2<EClass> facetMetaclass) {
+ super(parent, editingDomain, facetSetProperty, facetNameProperty);
+ this.facetNameProperty = facetNameProperty;
+ this.facetMetaclass = facetMetaclass;
+ this.conformProperty = conformProperty;
+ this.initialFacet = initialFacet;
+ }
+
+ @Override
+ public Command getCommand() {
+ return this.getCommandFactory().createEditFacetCommand(
+ this.initialFacet, this.getContainerPropery().getValue2(),
+ this.facetNameProperty.getValue2(),
+ this.conformProperty.getValue2(),
+ this.facetMetaclass.getValue2(), null);
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ super.addSubWidgets();
+ this.extMetaclassW = new GetExtendedMetaclassWidget(this,
+ this.facetMetaclass, this.getContainerPropery());
+ addSubWidget(this.extMetaclassW);
+ this.subTypingTypeW = new SelectSubTypingTypeWidget(this,
+ this.conformProperty, this.getEditingDomain(),
+ this.facetMetaclass.getValue2(), this.initialFacet);
+ addSubWidget(this.subTypingTypeW);
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing.
+ }
+
+ public IAbstractWidget getSelectSubTypingTypeWidget() {
+ return this.subTypingTypeW;
+ }
+
+ public IGetExtendedMetaclassWidget getGetExtendedMetaclassWidget() {
+ return new SynchronizedGetExtendedMetaclassWidget(this.extMetaclassW,
+ this.extMetaclassW.getDisplay());
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition.IFacetWidget#setSubTypingFacetSelection(boolean)
+ */
+ public void setSubTypingFacetSelection(final boolean enable) {
+ this.subTypingTypeW.setSelection(enable);
+ }
+
+ public String getSubTypingFacet() {
+ return this.subTypingTypeW.getSubTypingText();
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.widget.edition.IFacetWidget#pressSubTypingButton()
+ */
+ public IDialog<IGetOrCreateFilteredElementCommmandWidget<ETypedElement, Object>> pressSubTypingButton() {
+ return this.subTypingTypeW.pressButton();
+ }
+
+ @Override
+ protected IGetOrCreateFacetSetWidget createGetOrCreateElementWidgetComposite() {
+ return new GetOrCreateFacetSetWidget(this, this.getContainerPropery(),
+ this.getEditingDomain(), null);
+ }
+
+ @Override
+ protected AbstractGetElementNameWidget createGetElementNameSubWidgetComposite() {
+ final AbstractGetElementNameWidget widget = new AbstractGetElementNameWidget(
+ this, this.facetNameProperty) {
+ @Override
+ protected String getErrorMessage() {
+ return ""; //$NON-NLS-1$
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.EditFacetWidget_FacetName;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // Noting to do
+ }
+
+ };
+ return widget;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/CreateFacetSetWizard.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/CreateFacetSetWizard.java
new file mode 100644
index 00000000000..b31da8ae672
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/CreateFacetSetWizard.java
@@ -0,0 +1,240 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.wizard;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetActions;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.WorkbenchUtils;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.ICreateFacetSetWizardPage;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.IFacetSetPropertyWizardPage;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.wizard.page.CreateFacetSetWizardPage;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.wizard.page.FacetSetPropertyWizardPage;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.wizard.page.SynchronizedCreateFacetSetWizardPage;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.wizard.page.SynchronizedFacetSetPropertyWizardPage;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.wizard.IExtendedWizard;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.window.Window;
+import org.eclipse.jface.wizard.IWizardPage;
+import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.jface.wizard.WizardDialog;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.INewWizard;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.actions.WorkspaceModifyOperation;
+
+/**
+ * Wizard for the creation of the "ecore" file with the main facetSet.
+ */
+public class CreateFacetSetWizard extends Wizard implements INewWizard,
+ IExtendedWizard {
+
+ private WizardDialog dialog;
+
+ private IStructuredSelection selection;
+ private IWorkbench workbench;
+ private final ICreateFacetSetWizardPage facetSetWizard;
+ private final IFacetSetPropertyWizardPage propertyWizard;
+
+ private boolean openFacetSet = true;
+
+ public CreateFacetSetWizard() {
+ this(PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+ .getSelectionService().getSelection());
+ }
+
+ public CreateFacetSetWizard(final ISelection selection,
+ final boolean openFacetSet) {
+ this(selection);
+ this.openFacetSet = openFacetSet;
+ }
+
+ public CreateFacetSetWizard(final ISelection selection) {
+ super();
+ if (selection instanceof IStructuredSelection) {
+ this.selection = (IStructuredSelection) selection;
+ }
+ setWindowTitle(Messages.Create_FacetSet_Model);
+
+ this.facetSetWizard = new CreateFacetSetWizardPage(
+ "Whatever", this.selection); //$NON-NLS-1$
+ this.propertyWizard = new FacetSetPropertyWizardPage("Whatever"); //$NON-NLS-1$
+
+ }
+
+ @Override
+ public void addPages() {
+ addPage(this.facetSetWizard);
+ addPage(this.propertyWizard);
+ }
+
+ public int open() {
+ this.dialog = new WizardDialog(Display.getDefault().getShells()[0],
+ this);
+ int result = Window.CANCEL;
+
+ if (this.dialog != null) {
+ result = this.dialog.open();
+ }
+ return result;
+ }
+
+ @Override
+ public boolean performFinish() {
+ boolean result = false;
+
+ if (this.propertyWizard.isPageComplete()) {
+ try {
+ // Remember the file.
+ final IFile modelFile = getModelFile();
+
+ // Do the work within an operation.
+ final WorkspaceModifyOperation operation = createOperation(modelFile);
+
+ getContainer().run(false, false, operation);
+
+ if (this.openFacetSet) {
+ // Select the new file resource in the current view.
+ final IWorkbenchWindow workbenchWindow = selectWorkbenchWindow();
+ final IWorkbenchPage page = WorkbenchUtils.selectNewFile(
+ modelFile,
+ workbenchWindow);
+
+ WorkbenchUtils.openNewFile(modelFile, this.workbench,
+ workbenchWindow,
+ page);
+ }
+
+ result = true;
+ } catch (final Exception exception) {
+ Logger.logError(exception, Activator.getDefault());
+ }
+ }
+
+ return result;
+ }
+
+ protected IWorkbenchWindow selectWorkbenchWindow() {
+ if (this.workbench == null) {
+ this.workbench = PlatformUI.getWorkbench();
+ }
+ final IWorkbenchWindow workbenchWindow = this.workbench
+ .getActiveWorkbenchWindow();
+ return workbenchWindow;
+ }
+
+ protected WorkspaceModifyOperation createOperation(final IFile modelFile) {
+ final WorkspaceModifyOperation operation = new WorkspaceModifyOperation() {
+ @Override
+ protected void execute(final IProgressMonitor progressMonitor) {
+ try {
+ final FacetSet facetSet = createInitialFacet();
+ IFacetActions.INSTANCE.saveFacetSet(facetSet, modelFile);
+ } catch (final Exception exception) {
+ Logger.logError(exception, Activator.getDefault());
+ } finally {
+ progressMonitor.done();
+ }
+ }
+ };
+ return operation;
+ }
+
+
+
+ @Override
+ public boolean canFinish() {
+ return (getContainer().getCurrentPage() == this.propertyWizard)
+ && this.propertyWizard.isPageComplete();
+ }
+
+ public void init(final IWorkbench newWorkbench,
+ final IStructuredSelection newSelection) {
+ this.workbench = newWorkbench;
+ this.selection = newSelection;
+ }
+
+ protected FacetSet createInitialFacet() {
+ final FacetSet facetSet = EFacetPackage.eINSTANCE.getEFacetFactory()
+ .createFacetSet();
+ final String modelFacetSetName = getModelFile().getName().replaceAll(
+ ".efacet", ""); //$NON-NLS-1$ //$NON-NLS-2$
+ facetSet.setName(modelFacetSetName);
+ facetSet.setNsURI(this.propertyWizard.getNsUri());
+ facetSet.setNsPrefix(this.propertyWizard.getPrefix());
+ return facetSet;
+ }
+
+ public IFile getModelFile() {
+ return this.facetSetWizard.getModelFile();
+ }
+
+ public IFacetSetPropertyWizardPage getPropertyWizard() {
+ return this.propertyWizard;
+ }
+
+ public IWizardPage next() {
+ final IWizardPage nextPage = getNextPage(getContainer()
+ .getCurrentPage());
+ this.dialog.showPage(nextPage);
+ return getSynchronizedPage(nextPage);
+
+ }
+
+ public IWizardPage previous() {
+ final IWizardPage previousPage = getPreviousPage(getContainer()
+ .getCurrentPage());
+ this.dialog.showPage(previousPage);
+ return getSynchronizedPage(previousPage);
+ }
+
+ public boolean finish() {
+ final boolean result = performFinish();
+ dispose();
+ setContainer(null);
+ getDialog().close();
+ return result;
+ }
+
+ public ICreateFacetSetWizardPage getFacetSetWizard() {
+ return this.facetSetWizard;
+ }
+
+ public WizardDialog getDialog() {
+ return this.dialog;
+ }
+
+ public IWizardPage getCurrentPage() {
+ return getSynchronizedPage(getContainer().getCurrentPage());
+ }
+
+ private static IWizardPage getSynchronizedPage(final IWizardPage page) {
+ IWizardPage result = null;
+ if (page instanceof ICreateFacetSetWizardPage) {
+ result = new SynchronizedCreateFacetSetWizardPage(
+ (ICreateFacetSetWizardPage) page, Display.getDefault());
+ } else if (page instanceof IFacetSetPropertyWizardPage) {
+ result = new SynchronizedFacetSetPropertyWizardPage(
+ (IFacetSetPropertyWizardPage) page, Display.getDefault());
+ }
+ return result;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/WizardFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/WizardFactory.java
new file mode 100644
index 00000000000..21a018e5123
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/WizardFactory.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.wizard;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.IWizardFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.wizard.SynchronizedWizard;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.wizard.IExtendedWizard;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Concrete implementation of {@link IWizardFactory}.
+ *
+ * @see IWizardFactory
+ */
+public class WizardFactory implements IWizardFactory {
+
+ public IExtendedWizard createCreateFacetSetWizard(
+ final ISelection selection) {
+ final CreateFacetSetWizard wizard = new CreateFacetSetWizard(
+ selection);
+ Display.getDefault().asyncExec(new Runnable() {
+ public void run() {
+ wizard.open();
+ }
+ });
+ return new SynchronizedWizard<IExtendedWizard>(wizard,
+ Display.getDefault());
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/page/CreateFacetSetWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/page/CreateFacetSetWizardPage.java
new file mode 100644
index 00000000000..0fa06f2a446
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/page/CreateFacetSetWizardPage.java
@@ -0,0 +1,109 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.wizard.page;
+
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.ICreateFacetSetWizardPage;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+//import org.eclipse.papyrus.emf.facet.util.core.internal.exported.PluginUtils;
+import org.eclipse.jface.dialogs.IMessageProvider;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.dialogs.WizardNewFileCreationPage;
+
+public class CreateFacetSetWizardPage extends WizardNewFileCreationPage
+ implements ICreateFacetSetWizardPage {
+
+ private static final String FILE_EXTENSION = "efacet"; //$NON-NLS-1$
+ private static final String MODEL_BASE = "My"; //$NON-NLS-1$
+
+ public CreateFacetSetWizardPage(final String pageId,
+ final IStructuredSelection selection) {
+ super(pageId, selection);
+ setTitle(Messages.CreateFacetSetWizardImpl_FacetModel);
+ setDescription(Messages.CreateFacetSetWizardImpl_Create_new_facet_Set);
+ setFileName(MODEL_BASE + "." + CreateFacetSetWizardPage.FILE_EXTENSION); //$NON-NLS-1$
+ // Try and get the resource selection to determine a current directory
+ // for the file dialog.
+ if ((selection != null) && !selection.isEmpty()) {
+ // Get the resource...
+ getResource(selection);
+ }
+ }
+
+ private void getResource(final IStructuredSelection selection) {
+ final Object selectedElement = selection.iterator().next();
+ if (selectedElement instanceof IResource) {
+ // Get the resource parent, if its a file.
+ IResource selectedResource = (IResource) selectedElement;
+ if (selectedResource.getType() == IResource.FILE) {
+ selectedResource = selectedResource.getParent();
+ }
+ // This gives us a directory...
+ if ((selectedResource instanceof IFolder)
+ || (selectedResource instanceof IProject)) {
+ // Set this for the container.
+ setContainerFullPath(selectedResource.getFullPath());
+ // Make up a unique new name here.
+ final String modelFileExt = CreateFacetSetWizardPage.FILE_EXTENSION;
+ String modelFilename = MODEL_BASE + "." + modelFileExt; //$NON-NLS-1$
+ for (int i = 1; ((IContainer) selectedResource)
+ .findMember(modelFilename) != null; ++i) {
+ modelFilename = MODEL_BASE + i + "." + modelFileExt; //$NON-NLS-1$
+ }
+ setFileName(modelFilename);
+ }
+ }
+ }
+
+ @Override
+ protected boolean validatePage() {
+ boolean valid = super.validatePage();
+
+ if (valid) {
+ final String extension = new Path(getFileName()).getFileExtension();
+ if ((extension == null)
+ || !CreateFacetSetWizardPage.FILE_EXTENSION
+ .equalsIgnoreCase(extension)) {
+ setErrorMessage(Messages.CreateFacetSetWizardImpl_File_extension_restriction);
+ valid = false;
+ }
+ final IPath containerFullPath = getContainerFullPath();
+// try {
+// if (!PluginUtils.isInPluginProject(containerFullPath)) {
+// setMessage(
+// Messages.CreateFacetSetWizardPage_Not_a_Plugin_project,
+// IMessageProvider.WARNING);
+// }
+// } catch (final CoreException e) {
+// Logger.logError(e, Activator.getDefault());
+// }
+ }
+
+ return valid;
+ }
+
+ public IFile getModelFile() {
+ return ResourcesPlugin.getWorkspace().getRoot()
+ .getFile(getContainerFullPath().append(getFileName()));
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/page/FacetSetPropertyWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/page/FacetSetPropertyWizardPage.java
new file mode 100644
index 00000000000..cb9f565a571
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/page/FacetSetPropertyWizardPage.java
@@ -0,0 +1,120 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.wizard.page;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.IFacetSetPropertyWizardPage;
+import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Text;
+
+/**
+ * Wizard page to enter a NsURI, a prefix and an extended EPackage to a facetSet
+ */
+public class FacetSetPropertyWizardPage extends WizardPage
+ implements IFacetSetPropertyWizardPage {
+
+ private transient Text nsUriTextField;
+ private transient Text prefixTextField;
+
+ public FacetSetPropertyWizardPage(final String pageName) {
+ super(pageName);
+
+ setTitle(Messages.FacetSetPropertyWizardPage_facet_properties);
+ }
+
+ public void createControl(final Composite parent) {
+
+ final Composite nsURiContainer = new Composite(parent, SWT.NONE);
+ nsURiContainer.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ nsURiContainer.setLayout(new GridLayout(2, false));
+
+ // NsURI
+ final Label nsUriLabel = new Label(nsURiContainer, SWT.NONE);
+ nsUriLabel.setText(Messages.Enter_a_nsUri);
+ this.nsUriTextField = new Text(nsURiContainer, SWT.BORDER | SWT.SINGLE);
+ this.nsUriTextField
+ .setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ this.nsUriTextField.addListener(SWT.Modify, new Listener() {
+ public void handleEvent(final Event event) {
+ updateButtons();
+ }
+ });
+
+ // PREFIX
+ final Label prefixLabel = new Label(nsURiContainer, SWT.NONE);
+ prefixLabel.setText(Messages.Enter_a_prefix);
+ this.prefixTextField = new Text(nsURiContainer, SWT.BORDER | SWT.SINGLE);
+ this.prefixTextField.setLayoutData(new GridData(
+ GridData.FILL_HORIZONTAL));
+ this.prefixTextField.addListener(SWT.Modify, new Listener() {
+ public void handleEvent(final Event event) {
+ updateButtons();
+ }
+ });
+
+ setControl(nsURiContainer);
+ }
+
+ @Override
+ public boolean isPageComplete() {
+ boolean result = false;
+
+ if (this.nsUriTextField.getText().length() == 0) {
+ setErrorMessage(Messages.Please_enter_nsUri);
+ }
+
+ if (this.prefixTextField.getText().length() == 0) {
+ setErrorMessage(Messages.Please_enter_prefix);
+ }
+
+ if (super.isPageComplete()) {
+ setErrorMessage(null);
+ result = true;
+ } else {
+ setErrorMessage(Messages.Please_select_EPackage);
+ }
+
+ return result;
+ }
+
+ public void setIsPageComplete(final boolean complete) {
+ this.setPageComplete(complete);
+ }
+
+ protected void updateButtons() {
+ getContainer().updateButtons();
+ }
+
+ public void setNsUri(final String nsUri) {
+ this.nsUriTextField.setText(nsUri);
+ }
+
+ public void setPrefix(final String prefix) {
+ this.prefixTextField.setText(prefix);
+ }
+
+ public String getNsUri() {
+ return this.nsUriTextField.getText();
+ }
+
+ public String getPrefix() {
+ return this.prefixTextField.getText();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/page/SynchronizedCreateFacetSetWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/page/SynchronizedCreateFacetSetWizardPage.java
new file mode 100644
index 00000000000..b038f86f42e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/page/SynchronizedCreateFacetSetWizardPage.java
@@ -0,0 +1,70 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.wizard.page;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.ICreateFacetSetWizardPage;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page.SynchronizedWizardPage;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Synchronized class for safe run.
+ */
+public class SynchronizedCreateFacetSetWizardPage extends
+ SynchronizedWizardPage<ICreateFacetSetWizardPage> implements
+ ICreateFacetSetWizardPage {
+
+ /**
+ * Constructor.
+ *
+ * @param object
+ * the to synchronized.
+ * @param display
+ * the display.
+ */
+ public SynchronizedCreateFacetSetWizardPage(
+ final ICreateFacetSetWizardPage object, final Display display) {
+ super(object, display);
+ }
+
+ public IFile getModelFile() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<IFile>() {
+ @Override
+ public IFile safeRun() {
+ return SynchronizedCreateFacetSetWizardPage.this
+ .getSynchronizedObject().getModelFile();
+ }
+ });
+ }
+
+ public String getFileName() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<String>() {
+ @Override
+ public String safeRun() {
+ return SynchronizedCreateFacetSetWizardPage.this
+ .getSynchronizedObject().getFileName();
+ }
+ });
+ }
+
+ public void setFileName(final String fileName) {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedCreateFacetSetWizardPage.this
+ .getSynchronizedObject().setFileName(fileName);
+ }
+ });
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/page/SynchronizedFacetSetPropertyWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/page/SynchronizedFacetSetPropertyWizardPage.java
new file mode 100644
index 00000000000..389de660910
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.sdk.ui/src/org/eclipse/papyrus/emf/facet/efacet/sdk/ui/internal/wizard/page/SynchronizedFacetSetPropertyWizardPage.java
@@ -0,0 +1,80 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.wizard.page;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.wizard.page.IFacetSetPropertyWizardPage;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page.SynchronizedWizardPage;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Synchronized class for safe run.
+ */
+public class SynchronizedFacetSetPropertyWizardPage extends
+ SynchronizedWizardPage<IFacetSetPropertyWizardPage> implements
+ IFacetSetPropertyWizardPage {
+
+ /**
+ * Constructor.
+ *
+ * @param object
+ * the to synchronized.
+ * @param display
+ * the display.
+ */
+ public SynchronizedFacetSetPropertyWizardPage(
+ final IFacetSetPropertyWizardPage object, final Display display) {
+ super(object, display);
+ }
+
+ public String getNsUri() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<String>() {
+ @Override
+ public String safeRun() {
+ return SynchronizedFacetSetPropertyWizardPage.this
+ .getSynchronizedObject().getNsUri();
+ }
+ });
+ }
+
+ public void setNsUri(final String nsUri) {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedFacetSetPropertyWizardPage.this
+ .getSynchronizedObject().setNsUri(nsUri);
+ }
+ });
+ }
+
+ public String getPrefix() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<String>() {
+ @Override
+ public String safeRun() {
+ return SynchronizedFacetSetPropertyWizardPage.this
+ .getSynchronizedObject().getPrefix();
+ }
+ });
+ }
+
+ public void setPrefix(final String prefix) {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedFacetSetPropertyWizardPage.this
+ .getSynchronizedObject().setPrefix(prefix);
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.checkstyle
new file mode 100644
index 00000000000..7e3461a0b15
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.checkstyle
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2011 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Guyomar (Mia-Software) - initial API and implementation
+-->
+<fileset-config file-format-version="1.2.0" simple-config="true">
+ <local-check-config name="EmfFacet" location="../org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.classpath
new file mode 100644
index 00000000000..45f024e850e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.pmd b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.pmd
new file mode 100644
index 00000000000..e8d3e27588f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.pmd
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<pmd>
+ <useProjectRuleSet>true</useProjectRuleSet>
+ <ruleSetFile>../org.eclipse.papyrus.emf.facet.archi.tech.rules/pmd/ruleset.xml</ruleSetFile>
+ <includeDerivedFiles>false</includeDerivedFiles>
+ <violationsAsErrors>true</violationsAsErrors>
+</pmd>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.project
new file mode 100644
index 00000000000..203638fd019
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.project
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.efacet.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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ <nature>net.sourceforge.pmd.eclipse.plugin.pmdNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..e6857f055f1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,3 @@
+eclipse.preferences.version=1
+encoding//src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/messages.properties=ISO-8859-1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..95dbde4c4bb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5 \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..2302f819fd9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,35 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.efacet.ui;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.efacet.ui.internal.Activator
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.ui.ide,
+ org.eclipse.papyrus.emf.facet.efacet.core;bundle-version="0.1.0",
+ org.eclipse.papyrus.emf.facet.common.ui;bundle-version="0.1.0",
+ org.eclipse.papyrus.emf.facet.util.emf.core;bundle-version="0.1.0",
+ org.eclipse.emf.edit.ui;bundle-version="2.6.0",
+ org.eclipse.emf.ecore.edit;bundle-version="2.6.0",
+ org.eclipse.papyrus.emf.facet.widgets.celleditors;bundle-version="0.1.0",
+ org.eclipse.core.expressions,
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.1.0",
+ org.eclipse.papyrus.emf.facet.efacet.metamodel;bundle-version="0.2.0";visibility:=reexport,
+ org.eclipse.papyrus.emf.facet.util.emf.ui;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.util.ui;bundle-version="0.2.0",
+ org.eclipse.ui,
+ org.eclipse.core.resources;bundle-version="3.6.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.2.0";visibility:=reexport,
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.util.pde.core;bundle-version="0.4.0"
+Bundle-ActivationPolicy: lazy
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-Vendor: %Bundle-Vendor
+Export-Package: org.eclipse.papyrus.emf.facet.efacet.ui,
+ org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites;x-friends:="org.eclipse.papyrus.emf.facet.query.java.ui",
+ org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported;x-friends:="org.eclipse.papyrus.emf.facet.aggregate.tests",
+ org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog;x-friends:="org.eclipse.papyrus.emf.facet.widgets.table.ui,org.eclipse.papyrus.emf.facet.efacet.tests,org.eclipse.papyrus.emf.facet.aggregate.tests",
+ org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.view;x-friends:="org.eclipse.papyrus.emf.facet.efacet.tests",
+ org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.widget;x-friends:="org.eclipse.papyrus.emf.facet.efacet.tests",
+ org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard;x-friends:="org.eclipse.papyrus.emf.facet.query.java.ui",
+ org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards;x-friends:="org.eclipse.papyrus.emf.facet.query.java.ui"
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..8081db6517e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,32 @@
+##########################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+# Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+###########################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.efacet.ui
+Bundle-Name = EMF Facet EFacet UI (Incubation)
+Bundle-Vendor = Eclipse Modeling Project
+
+category.name = EMF Facet
+wizard.name = Create a FacetSet 0.1 (Deprecated)
+wizard.description = Create a new Facet model
+extension-point.name = Query Factory Wizard Page Registration
+
+menu.label = EMF Facet Commands
+command.name = Create Facet in a FacetSet
+command.name.0 = Add Facet Attribute
+command.name.1 = Add Facet Operation
+command.name.2 = Add Parameter to Facet Operation
+command.name.3 = Add Facet Reference
+view.facetSets = Facet Sets
+navigate_handler = Navigate
+navigation_view = Navigation view
+navigate_command = Navigate
+ETypedElementResult_Display = eTypedElementResultDisplay \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/about.html
new file mode 100644
index 00000000000..6f266717681
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.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>June 16, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/build.properties
new file mode 100644
index 00000000000..52bc5c8fc60
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/build.properties
@@ -0,0 +1,23 @@
+##########################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+###########################################################################
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ schema/,\
+ OSGI-INF/,\
+ build.properties,\
+ about.html,\
+ icons/,\
+ OSGI-INF/l10n/bundle.properties
+source.. = src/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/facet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/facet.gif
new file mode 100644
index 00000000000..8c67c03cc10
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/facet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/flatView.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/flatView.gif
new file mode 100644
index 00000000000..1ef74cf98f4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/flatView.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/querySet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/querySet.gif
new file mode 100644
index 00000000000..07d18c55b7f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/querySet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/remove.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/remove.gif
new file mode 100644
index 00000000000..0ae6decd03f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/remove.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/removeAll.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/removeAll.gif
new file mode 100644
index 00000000000..529f714c8c9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/removeAll.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/treeView.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/treeView.gif
new file mode 100644
index 00000000000..234486172ca
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/icons/treeView.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/plugin.xml
new file mode 100644
index 00000000000..fba567f8b86
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/plugin.xml
@@ -0,0 +1,247 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?eclipse version="3.4"?>
+ <!--
+ Copyright (c) 2011, 2012 Mia-Software
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Nicolas Guyomar (Mia-Software) - initial API and implementation
+ Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ Gregoire Dupe (Mia-Software) - Bug 377782 - The command 'Navigation' and 'View in table' must not be unable in all menu.
+ -->
+
+<plugin>
+ <extension-point id="queryFactoryWizardPageRegistration" name="%extension-point.name" schema="schema/queryFactoryWizardPageRegistration.exsd"/>
+ <extension-point id="eTypedElementResultDisplay" name="%ETypedElementResult_Display" schema="schema/eTypedElementResultDisplay.exsd"/>
+ <extension point="org.eclipse.ui.newWizards">
+ <wizard
+ category="org.eclipse.papyrus.emf.facet.common.ui.wizardsCategory"
+ class="org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.CreateFacetSetWizardImpl"
+ icon="icons/facet.gif"
+ id="org.eclipse.papyrus.emf.facet.infra.facet.editor.presentation.FacetModelWizardID"
+ name="%wizard.name">
+ <description>
+ %wizard.description
+ </description>
+ <selection
+ class="org.eclipse.core.resources.IResource">
+ </selection>
+ </wizard>
+ </extension>
+ <extension
+ point="org.eclipse.ui.menus">
+ <menuContribution
+ allPopups="true"
+ locationURI="popup:org.eclipse.papyrus.emf.facet.efacet.presentation.EFacetEditorID?before=edit">
+ <menu
+ label="%menu.label">
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.ui.createFacetInFacetSet"
+ icon="icons/facet.gif"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.ui.addParameterToFacetOperation"
+ icon="icons/facet.gif"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.ui.addFacetReference"
+ icon="icons/facet.gif"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.ui.addFacetOperation"
+ icon="icons/facet.gif"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.ui.addFacetAttribute"
+ icon="icons/facet.gif"
+ style="push">
+ <visibleWhen
+ checkEnabled="true">
+ </visibleWhen>
+ </command>
+ </menu>
+ </menuContribution>
+ </extension>
+ <extension
+ point="org.eclipse.ui.commands">
+ <command
+ id="org.eclipse.papyrus.emf.facet.efacet.ui.createFacetInFacetSet"
+ name="%command.name">
+ </command>
+ <command
+ id="org.eclipse.papyrus.emf.facet.efacet.ui.addFacetAttribute"
+ name="%command.name.0">
+ </command>
+ <command
+ id="org.eclipse.papyrus.emf.facet.efacet.ui.addFacetOperation"
+ name="%command.name.1">
+ </command>
+ <command
+ id="org.eclipse.papyrus.emf.facet.efacet.ui.addParameterToFacetOperation"
+ name="%command.name.2">
+ </command>
+ <command
+ id="org.eclipse.papyrus.emf.facet.efacet.ui.addFacetReference"
+ name="%command.name.3">
+ </command>
+ <command
+ defaultHandler="org.eclipse.papyrus.emf.facet.efacet.ui.internal.handlers.NavigationHandler"
+ id="org.eclipse.papyrus.emf.facet.efacet.ui.navigate"
+ name="%navigate_handler">
+ </command>
+ </extension>
+ <extension
+ point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.papyrus.emf.facet.efacet.ui.internal.handlers.CreateFacetInFacetSetHandler"
+ commandId="org.eclipse.papyrus.emf.facet.efacet.ui.createFacetInFacetSet">
+ <activeWhen>
+ <with
+ variable="selection">
+ <test
+ forcePluginActivation="true"
+ property="org.eclipse.papyrus.emf.facet.efacet.ui.facetPropertyTester.isFacetSet"
+ value="true">
+ </test>
+ </with>
+ </activeWhen>
+ </handler>
+ <handler
+ class="org.eclipse.papyrus.emf.facet.efacet.ui.internal.handlers.AddFacetOperationHandler"
+ commandId="org.eclipse.papyrus.emf.facet.efacet.ui.addFacetOperation">
+ <activeWhen>
+ <with
+ variable="selection">
+ <test
+ forcePluginActivation="true"
+ property="org.eclipse.papyrus.emf.facet.efacet.ui.facetPropertyTester.isFacet"
+ value="true">
+ </test>
+ </with>
+ </activeWhen>
+ </handler>
+ <handler
+ class="org.eclipse.papyrus.emf.facet.efacet.ui.internal.handlers.AddFacetAttributeHandler"
+ commandId="org.eclipse.papyrus.emf.facet.efacet.ui.addFacetAttribute">
+ <activeWhen>
+ <with
+ variable="selection">
+ <test
+ forcePluginActivation="true"
+ property="org.eclipse.papyrus.emf.facet.efacet.ui.facetPropertyTester.isFacet"
+ value="true">
+ </test>
+ </with>
+ </activeWhen>
+ </handler>
+ <handler
+ class="org.eclipse.papyrus.emf.facet.efacet.ui.internal.handlers.AddFacetParameterOperationHandler"
+ commandId="org.eclipse.papyrus.emf.facet.efacet.ui.addParameterToFacetOperation">
+ <activeWhen>
+ <with
+ variable="selection">
+ <test
+ forcePluginActivation="true"
+ property="org.eclipse.papyrus.emf.facet.efacet.ui.facetPropertyTester.isFacetOperation"
+ value="true">
+ </test>
+ </with>
+ </activeWhen>
+ </handler>
+ <handler
+ class="org.eclipse.papyrus.emf.facet.efacet.ui.internal.handlers.AddFacetReferenceHandler"
+ commandId="org.eclipse.papyrus.emf.facet.efacet.ui.addFacetReference">
+ <activeWhen>
+ <with
+ variable="selection">
+ <test
+ forcePluginActivation="true"
+ property="org.eclipse.papyrus.emf.facet.efacet.ui.facetPropertyTester.isFacet"
+ value="true">
+ </test>
+ </with>
+ </activeWhen>
+ </handler>
+ </extension>
+ <extension
+ point="org.eclipse.core.expressions.propertyTesters">
+ <propertyTester
+ class="org.eclipse.papyrus.emf.facet.efacet.ui.internal.handlers.FacetPropertyTester"
+ id="org.eclipse.papyrus.emf.facet.efacet.ui.facetPropertyTester"
+ namespace="org.eclipse.papyrus.emf.facet.efacet.ui.facetPropertyTester"
+ properties="isFacet,isFacetSet,isFacetOperation,isFacetAttribute,isFacetReference"
+ type="org.eclipse.jface.viewers.StructuredSelection">
+ </propertyTester>
+ </extension>
+ <extension
+ point="org.eclipse.ui.views">
+ <view
+ category="org.eclipse.papyrus.emf.facet.common.ui.views"
+ class="org.eclipse.papyrus.emf.facet.efacet.ui.internal.view.NavigationView"
+ id="org.eclipse.papyrus.emf.facet.efacet.ui.view.navigation"
+ name="%navigation_view"
+ restorable="true">
+ </view>
+ </extension>
+
+ <extension point="org.eclipse.ui.views">
+ <view
+ category="org.eclipse.papyrus.emf.facet.common.ui.views"
+ class="org.eclipse.papyrus.emf.facet.efacet.ui.internal.view.FacetSetsCatalogView"
+ icon="icons/facet.gif"
+ id="org.eclipse.papyrus.emf.facet.efacet.ui.view.catalog"
+ name="%view.facetSets"
+ restorable="true">
+ </view>
+ </extension>
+
+ <extension
+ point="org.eclipse.ui.menus">
+ <menuContribution
+ allPopups="true"
+ locationURI="popup:org.eclipse.ui.popup.any?after=additions">
+ <command
+ commandId="org.eclipse.papyrus.emf.facet.efacet.ui.navigate"
+ label="%navigate_command"
+ style="push">
+ <visibleWhen
+ checkEnabled="false">
+ <with
+ variable="selection">
+ <iterate
+ ifEmpty="false">
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
+ </iterate>
+ </with>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <extension
+ point="org.eclipse.core.runtime.preferences">
+ <initializer
+ class="org.eclipse.papyrus.emf.facet.efacet.ui.internal.preferences.PreferencesInitializer">
+ </initializer>
+ </extension>
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/schema/eTypedElementResultDisplay.exsd b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/schema/eTypedElementResultDisplay.exsd
new file mode 100644
index 00000000000..0c4cccb9f5c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/schema/eTypedElementResultDisplay.exsd
@@ -0,0 +1,104 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.papyrus.emf.facet.infra.query.ui" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appinfo>
+ <meta.schema plugin="org.eclipse.papyrus.emf.facet.infra.query.ui" id="queryResultDisplay" name="Display the results of a model query"/>
+ </appinfo>
+ <documentation>
+ Use this extension point to provide a view or editor that can display the results of a model query.
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appinfo>
+ <meta.element />
+ </appinfo>
+ </annotation>
+ <complexType>
+ <sequence>
+ <element ref="displayer" minOccurs="1" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute translatable="true"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="displayer">
+ <annotation>
+ <documentation>
+ Provide a view or editor that will be used to display the results of a model query
+ </documentation>
+ </annotation>
+ <complexType>
+ <attribute name="class" type="string" use="required">
+ <annotation>
+ <documentation>
+ Implemented by a view or editor that wants to be used to display the results of a model query.
+ </documentation>
+ <appinfo>
+ <meta.attribute kind="java" basedOn=":org.eclipse.papyrus.emf.facet.efacet.ui.IETypedElementResultDisplayer"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="since"/>
+ </appinfo>
+ <documentation>
+ 0.8
+ </documentation>
+ </annotation>
+
+
+
+ <annotation>
+ <appinfo>
+ <meta.section type="implementation"/>
+ </appinfo>
+ <documentation>
+ See plugin &quot;org.eclipse.papyrus.emf.facet.infra.browser&quot;.
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="copyright"/>
+ </appinfo>
+ <documentation>
+ Copyright (c) 2009, 2012 Mia-Software.
+
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+ </documentation>
+ </annotation>
+
+</schema>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/schema/queryFactoryWizardPageRegistration.exsd b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/schema/queryFactoryWizardPageRegistration.exsd
new file mode 100644
index 00000000000..2687f627d22
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/schema/queryFactoryWizardPageRegistration.exsd
@@ -0,0 +1,102 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.papyrus.emf.facet.efacet.ui" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appinfo>
+ <meta.schema plugin="org.eclipse.papyrus.emf.facet.efacet.ui" id="queryFactoryWizardPageRegistration" name="Query Factory Wizard Page Registration"/>
+ </appinfo>
+ <documentation>
+ This extension point aims at registering a wizard page for the creation of a query.
+This wizard page has to be associated to the EClass managed by the corresponding query evaluator factory.
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appinfo>
+ <meta.element />
+ </appinfo>
+ </annotation>
+ <complexType>
+ <sequence>
+ <element ref="queryWizardPage" minOccurs="1" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute translatable="true"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="queryWizardPage">
+ <complexType>
+ <attribute name="managedQueryTypeName" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="wizardPage" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute kind="java" basedOn=":org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IQueryCreationPagePart"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="since"/>
+ </appinfo>
+ <documentation>
+ 0.2.0
+ </documentation>
+ </annotation>
+
+
+
+
+ <annotation>
+ <appinfo>
+ <meta.section type="copyright"/>
+ </appinfo>
+ <documentation>
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ </documentation>
+ </annotation>
+
+</schema>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/IETypedElementResultDisplayer.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/IETypedElementResultDisplayer.java
new file mode 100644
index 00000000000..430e0055eac
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/IETypedElementResultDisplayer.java
@@ -0,0 +1,28 @@
+/*******************************************************************************
+ * Copyright (c) 2010, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software)
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui;
+
+import java.util.List;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult;
+
+/**
+ * Implemented by a view or editor that wants to be used to display the results
+ * of a model query.
+ */
+//Copied from org.eclipse.papyrus.emf.facet.infra.query.ui.views.queryExecution.QueryResultDisplayer
+public interface IETypedElementResultDisplayer {
+ void displayETypedElementResults(final List<ETypedElementResult> result, EditingDomain editingDomain);
+
+ String getName();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/IETypedElementResultDisplayerOpener.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/IETypedElementResultDisplayerOpener.java
new file mode 100644
index 00000000000..ab28af148f5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/IETypedElementResultDisplayerOpener.java
@@ -0,0 +1,29 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui;
+
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult;
+import org.eclipse.ui.IWorkbenchPart;
+
+
+/**
+ * This method must be implemented and referenced by the extension point org.eclipse.papyrus.emf.facet.efacet.ui.displayeropener
+ *
+ * This is a new version of the org.eclipse.papyrus.emf.facet.infra.query.ui.views.queryExecution.QueryResultDisplayer.
+ * @author Gregoire Dupe
+ *
+ */
+public interface IETypedElementResultDisplayerOpener {
+ IWorkbenchPart open(List<ETypedElementResult> results);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/Activator.java
new file mode 100644
index 00000000000..a9ac74c45ff
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/Activator.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Nicolas Bros (Mia-Software) - Bug 379439 - Missing icons for Navigation view actions
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal;
+
+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 {
+
+ public static final String PLUGIN_ID = "org.eclipse.papyrus.emf.facet.efacet.ui"; //$NON-NLS-1$
+
+ // The shared instance
+ private static Activator plugin;
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext )
+ */
+ @Override
+ public void start(final BundleContext context) throws Exception {
+ super.start(context);
+ Activator.plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext )
+ */
+ @Override
+ public void stop(final BundleContext context) throws Exception {
+ Activator.plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/FacetUIFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/FacetUIFactoryImpl.java
new file mode 100644
index 00000000000..58bb07178e9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/FacetUIFactoryImpl.java
@@ -0,0 +1,57 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.ICreateFacetInFacetSetWizard;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.ICreateFacetSetWizard;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IFacetChildrenWizard;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.AddFacetAttributeWizardImpl;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.AddFacetOperationParameterWizardImpl;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.AddFacetOperationWizardImpl;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.AddFacetReferenceWizardImpl;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.CreateFacetInFacetSetWizardImpl;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.CreateFacetSetWizardImpl;
+import org.eclipse.jface.viewers.ISelection;
+
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class FacetUIFactoryImpl implements IFacetUIFactory {
+
+ public ICreateFacetInFacetSetWizard createCreateFacetInFacetSetWizardDialog(final ISelection selection, final EditingDomain editingDomain) {
+ return new CreateFacetInFacetSetWizardImpl(selection, editingDomain);
+ }
+
+ public ICreateFacetSetWizard createCreateFacetSetWizardDialog(final ISelection selection) {
+ return createCreateFacetSetWizardDialog(selection, true);
+ }
+
+ public ICreateFacetSetWizard createCreateFacetSetWizardDialog(final ISelection selection, final boolean opendCreatedFacetSetInEditor) {
+ return new CreateFacetSetWizardImpl(selection, opendCreatedFacetSetInEditor);
+ }
+
+ public IFacetChildrenWizard createAddFacetAttributeWizardDialog(final ISelection selection, final EditingDomain editingDomain) {
+ return new AddFacetAttributeWizardImpl(selection, editingDomain);
+ }
+
+ public IFacetChildrenWizard createAddFacetOperationWizardDialog(final ISelection selection, final EditingDomain editingDomain) {
+ return new AddFacetOperationWizardImpl(selection, editingDomain);
+ }
+
+ public IFacetChildrenWizard createAddFacetOperationParameterWizardDialog(final ISelection selection, final EditingDomain editingDomain) {
+ return new AddFacetOperationParameterWizardImpl(selection, editingDomain);
+ }
+
+ public IFacetChildrenWizard createAddFacetReferenceWizardDialog(final ISelection selection, final EditingDomain editingDomain) {
+ return new AddFacetReferenceWizardImpl(selection, editingDomain);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IFacetUIFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IFacetUIFactory.java
new file mode 100644
index 00000000000..1cc914058ed
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IFacetUIFactory.java
@@ -0,0 +1,108 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal;
+
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.ICreateFacetInFacetSetWizard;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.ICreateFacetSetWizard;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IFacetChildrenWizard;
+import org.eclipse.jface.viewers.ISelection;
+
+/**
+ * This interface provides methods used to create wizards that create {@link Facet}s and Facet elements.
+ * @since 0.2
+ * @deprecated This interface has been replaced by {@link IFacetUIFactory2}. No tracking bug needed because this API has not been released yet.
+ */
+@Deprecated
+public interface IFacetUIFactory {
+
+ /**
+ * Returns an instance of a {@link FacetUIFactoryImpl}
+ */
+ IFacetUIFactory INSTANCE = new FacetUIFactoryImpl();
+
+ /**
+ * Create a wizard dialog dedicated to the addition of a {@link Facet} in a {@link FacetSet}
+ *
+ * @param selection
+ * the current selection, should be a FacetSet
+ * @param editingDomain
+ * the editing domain used to perform the EMF command
+ * @return the newly created wizard
+ */
+ public ICreateFacetInFacetSetWizard createCreateFacetInFacetSetWizardDialog(ISelection selection, EditingDomain editingDomain);
+
+ /**
+ * Create a wizard dialog dedicated to the creation of a {@link FacetSet}
+ *
+ * @param selection
+ * the current selection
+ * @return the newly created wizard
+ */
+ public ICreateFacetSetWizard createCreateFacetSetWizardDialog(ISelection selection);
+
+ /**
+ * Create a wizard dialog dedicated to the creation of a {@link FacetSet}
+ *
+ * @param selection
+ * the current selection
+ * @param openCreatedFacetSetInEditor
+ * @return the newly created wizard
+ */
+ public ICreateFacetSetWizard createCreateFacetSetWizardDialog(ISelection selection, boolean openCreatedFacetSetInEditor);
+
+ /**
+ * Create a wizard dialog dedicated to the addition of a {@link FacetAttribute} in a {@link Facet}
+ *
+ * @param selection
+ * the current selection, should be a Facet
+ * @param editingDomain
+ * the editing domain used to perform the EMF command
+ * @return the newly created wizard
+ */
+ public IFacetChildrenWizard createAddFacetAttributeWizardDialog(ISelection selection, EditingDomain editingDomain);
+
+ /**
+ * Create a wizard dialog dedicated to the addition of a {@link FacetOperation} in a {@link Facet}
+ *
+ * @param selection
+ * the current selection, should be a Facet
+ * @param editingDomain
+ * the editing domain used to perform the EMF command
+ * @return the newly created wizard
+ */
+ public IFacetChildrenWizard createAddFacetOperationWizardDialog(ISelection selection, EditingDomain editingDomain);
+
+ /**
+ * Create a wizard dialog dedicated to the addition of a {@link EParameter} to a {@link FacetOperation}
+ *
+ * @param selection
+ * the current selection, should be a FacetOperation
+ * @param editingDomain
+ * the editing domain used to perform the EMF command
+ * @return the newly created wizard
+ */
+ public IFacetChildrenWizard createAddFacetOperationParameterWizardDialog(ISelection selection, EditingDomain editingDomain);
+
+ /**
+ * Create a wizard dialog dedicated to the addition of a {@link FacetReference} in a {@link Facet}
+ *
+ * @param selection
+ * the current selection, should be a Facet Reference
+ * @param editingDomain
+ * the editing domain used to perform the EMF command
+ * @return the newly created wizard
+ */
+ public IFacetChildrenWizard createAddFacetReferenceWizardDialog(ISelection selection, EditingDomain editingDomain);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IFacetUIFactory2.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IFacetUIFactory2.java
new file mode 100644
index 00000000000..fcff2205996
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IFacetUIFactory2.java
@@ -0,0 +1,116 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Gregoire Dupe (Mia-Software) - Bug 361617 - Deprecation of APIs for the old Facet metamodels
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal;
+
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.ICreateFacetInFacetSetWizard2;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.ICreateFacetSetWizard;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IFacetChildrenWizard2;
+import org.eclipse.jface.viewers.ISelection;
+
+/**
+ * This interface provides methods used to create wizards that create {@link Facet}s and Facet elements.
+ *
+ * TODO: This interface has to be renamed to IFacetUIFactory before the release of 0.2
+ *
+ * @since 0.2
+ */
+//TODO: This interface has to be renamed to IFacetUIFactory before the release of 0.2
+public interface IFacetUIFactory2 {
+
+ /**
+ * Returns an instance of a {@link FacetUIFactoryImpl}
+ */
+ IFacetUIFactory2 INSTANCE = null; //TODO cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+
+ /**
+ * Create a wizard dialog dedicated to the addition of a {@link Facet} in a {@link FacetSet}
+ *
+ * @param selection
+ * the current selection, should be a FacetSet
+ * @param editingDomain
+ * the editing domain used to perform the EMF command
+ * @return the newly created wizard
+ */
+ public ICreateFacetInFacetSetWizard2 createCreateFacetInFacetSetWizardDialog(ISelection selection, EditingDomain editingDomain);
+
+ /**
+ * Create a wizard dialog dedicated to the creation of a {@link FacetSet}
+ *
+ * @param selection
+ * the current selection
+ * @return the newly created wizard
+ */
+ public ICreateFacetSetWizard createCreateFacetSetWizardDialog(ISelection selection);
+
+ /**
+ * Create a wizard dialog dedicated to the creation of a {@link FacetSet}
+ *
+ * @param selection
+ * the current selection
+ * @param openCreatedFacetSetInEditor
+ * @return the newly created wizard
+ */
+ public ICreateFacetSetWizard createCreateFacetSetWizardDialog(ISelection selection, boolean openCreatedFacetSetInEditor);
+
+ /**
+ * Create a wizard dialog dedicated to the addition of a {@link FacetAttribute} in a {@link Facet}
+ *
+ * @param selection
+ * the current selection, should be a Facet
+ * @param editingDomain
+ * the editing domain used to perform the EMF command
+ * @return the newly created wizard
+ */
+ public IFacetChildrenWizard2 createAddFacetAttributeWizardDialog(ISelection selection, EditingDomain editingDomain);
+
+ /**
+ * Create a wizard dialog dedicated to the addition of a {@link FacetOperation} in a {@link Facet}
+ *
+ * @param selection
+ * the current selection, should be a Facet
+ * @param editingDomain
+ * the editing domain used to perform the EMF command
+ * @return the newly created wizard
+ */
+ public IFacetChildrenWizard2 createAddFacetOperationWizardDialog(ISelection selection, EditingDomain editingDomain);
+
+ /**
+ * Create a wizard dialog dedicated to the addition of a {@link EParameter} to a {@link FacetOperation}
+ *
+ * @param selection
+ * the current selection, should be a FacetOperation
+ * @param editingDomain
+ * the editing domain used to perform the EMF command
+ * @return the newly created wizard
+ */
+ public IFacetChildrenWizard2 createAddFacetOperationParameterWizardDialog(ISelection selection, EditingDomain editingDomain);
+
+ /**
+ * Create a wizard dialog dedicated to the addition of a {@link FacetReference} in a {@link Facet}
+ *
+ * @param selection
+ * the current selection, should be a Facet Reference
+ * @param editingDomain
+ * the editing domain used to perform the EMF command
+ * @return the newly created wizard
+ */
+ public IFacetChildrenWizard2 createAddFacetReferenceWizardDialog(ISelection selection, EditingDomain editingDomain);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IQueryCreationPagePart2.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IQueryCreationPagePart2.java
new file mode 100644
index 00000000000..2a29102229f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IQueryCreationPagePart2.java
@@ -0,0 +1,168 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Gregoire Dupe (Mia-Software) - Bug 361617 - Deprecation of APIs for the old Facet metamodels
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This interface has to be implemented by {@link Query} factory UI Class. It is used to complete a
+ * generic {@link Query} creation wizard with specific widget.
+ *
+ * TODO: This interface has to be renamed to IQueryCreationPagePart before the release of 0.2
+ *
+ * @since 0.2
+ */
+//TODO: This interface has to be renamed to IQueryCreationPagePart before the release of 0.2
+public interface IQueryCreationPagePart2 {
+
+ /**
+ * Set the {@link Query}'s {@link FacetSet}.
+ *
+ * @param facetSet
+ * the given {@link FacetSet}
+ */
+ public void setFacetSet(FacetSet facetSet);
+
+ /**
+ * Set the {@link Query}'s upperBound.
+ *
+ * @param upperBound
+ * the upperBound.
+ */
+ public void setUpperBound(int upperBound);
+
+ /**
+ * Set the {@link Query}'s lowerBound.
+ *
+ * @param lowerBound
+ * the lowerBound.
+ */
+ public void setLowerBound(int lowerBound);
+
+ /**
+ * Set the {@link Query}'s {@link Query#isOrdered() <em>attribute</em>} attribute.
+ *
+ * @param ordered
+ * whether
+ */
+ public void setOrdered(final boolean ordered);
+
+ /**
+ * Set the {@link Query}'s {@link Query#isUnique() <em>unique</em>} attribute.
+ *
+ * @param unique
+ * Whether the query is unique or not.
+ */
+ public void setUnique(final boolean unique);
+
+ /**
+ * Set the {@link Query}'s type.
+ *
+ * @param queryType
+ * the {@link Query}'s type.
+ */
+ public void setQueryType(EClassifier queryType);
+
+ /**
+ * Set the {@link Query}'s name.
+ *
+ * @param name
+ * the query's name.
+ */
+ public void setQueryName(String name);
+
+ /**
+ * Set the {@link Query}'s {@link Query#isCanBeCached() <em>Can Be Cached</em>}.
+ *
+ * @param canBeCached
+ * whether the query result can be cached.
+ */
+ public void setCanBeCached(boolean canBeCached);
+
+ /**
+ * Set the {@link Query}'s {@link Query#isHasSideEffect() <em>Has Side Effect</em>}.
+ *
+ * @param hasSideEffect
+ * whether the query has side effect, such as modifying a model when applied on it.
+ */
+ public void setHasSideEffect(boolean hasSideEffect);
+
+ /**
+ * Set the {@link Query}'s '{@link Query#getScope <em>Scope</em>}'.
+ *
+ * @param type
+ * the {@link Query}'s '{@link Query#getScope <em>Scope</em>}'.
+ */
+ public void setQueryScope(EClass scope);
+
+ /**
+ * This method is dedicated to create a {@link Query} with every attribute set by the others
+ * methods of {@link IQueryCreationPagePart2}.
+ *
+ * @return the newly created {@link Query}
+ */
+ public Query performFinish();
+
+ /**
+ * This method is called by the {@link org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.CreateQueryWizardPage}.
+ *
+ * @param parent
+ * the Wizard's composite to be completed with specific widget for this {@link Query} creation.
+ */
+ public void completeComposite(Composite parent);
+
+ /**
+ * Returns <code>true</code> if the composite is complete.
+ *
+ * @return <code>true</code> if the composite is complete.
+ */
+ public boolean isCompositeComplete();
+
+ /**
+ * Returns the error messages generated by the part, or null if none.
+ *
+ * @return the error messages generated by the part, or null if none.
+ */
+ public String getErrorMessage();
+
+ /**
+ * Add a {@link ModifyListener} on the part.
+ *
+ * @param listener
+ * a {@link ModifyListener}
+ */
+ public void addModifyListener(ModifyListener listener);
+
+ /**
+ * Remove an existing {@link ModifyListener} from the part's listener.
+ *
+ * @param listener
+ * an existing {@link ModifyListener} listener.
+ */
+ public void removeModifyListener(ModifyListener listener);
+
+ /**
+ * Notify the registered listener that something has been modified in the part. It should only
+ * be used as a way to update the buttons' state of the containing wizard dialog.
+ *
+ * @param modifiedComposite
+ * the composite on which the modification occured.
+ */
+ public void notifyCompositeListeners(Composite modifiedComposite);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IQueryCreationPagePart2Registry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IQueryCreationPagePart2Registry.java
new file mode 100644
index 00000000000..c0f4dfe8fdb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IQueryCreationPagePart2Registry.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Gregoire Dupe (Mia-Software) - Bug 361617 - Deprecation of APIs for the old Facet metamodels
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal;
+
+import java.util.Map;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IQueryCreationPagePart;
+
+/**
+ * This interface is dedicated to the registry
+ *
+ * TODO: This interface has to be renamed to IQueryCreationPagePartRegistry before the release of 0.2
+ *
+ * @since 0.2
+ */
+//TODO: This interface has to be renamed to IQueryCreationPagePartRegistry before the release of 0.2
+public interface IQueryCreationPagePart2Registry {
+
+ /**
+ * Returns an instance of {@link QueryCreationPagePartRegistryImpl}.
+ */
+ IQueryCreationPagePart2Registry INSTANCE = null; //TODO cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+
+ /**
+ * Return a registered {@link IQueryCreationPagePart} corresponding to the given type name.
+ *
+ * @param managedTypeName
+ * the type we need a part for.
+ * @return a registered {@link IQueryCreationPagePart} corresponding to the given type name.
+ */
+ public IQueryCreationPagePart2 getWizardPagePartFor(EClass managedQueryType);
+
+ /**
+ * Returns every registered {@link IQueryCreationPagePart} associated with their managed type.
+ *
+ * @return
+ */
+ public Map<String, IQueryCreationPagePart2> getRegisteredWizardPageParts();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IQueryCreationPagePartRegistry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IQueryCreationPagePartRegistry.java
new file mode 100644
index 00000000000..20babae2056
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/IQueryCreationPagePartRegistry.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal;
+
+import java.util.Map;
+
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IQueryCreationPagePart;
+
+
+/**
+ * This interface is dedicated to the registry
+ * @since 0.2
+ * @deprecated This interface has been replaced by {@link IQueryCreationPagePart2Registry}. No tracking bug needed because this API has not been released yet.
+ */
+@Deprecated
+public interface IQueryCreationPagePartRegistry {
+
+ /**
+ * Returns an instance of {@link QueryCreationPagePartRegistryImpl}.
+ */
+ IQueryCreationPagePartRegistry INSTANCE = new QueryCreationPagePartRegistryImpl();
+
+ /**
+ * Return a registered {@link IQueryCreationPagePart} corresponding to the given type name.
+ *
+ * @param managedTypeName
+ * the type we need a part for.
+ * @return a registered {@link IQueryCreationPagePart} corresponding to the given type name.
+ */
+ public IQueryCreationPagePart getWizardPagePartFor(String managedTypeName);
+
+ /**
+ * Returns every registered {@link IQueryCreationPagePart} associated with their managed type.
+ *
+ * @return
+ */
+ public Map<String, IQueryCreationPagePart> getRegisteredWizardPageParts();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/ImageProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/ImageProvider.java
new file mode 100644
index 00000000000..92117455504
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/ImageProvider.java
@@ -0,0 +1,106 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software)
+ * Nicolas Bros (Mia-Software)
+ * Nicolas Guyomar (Mia-Software) - Bug 339874 - Infra QuerySelectionDialog should have a "querySet" icon
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ ********************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal;
+
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+
+/**
+ * @author Grégoire Dupé (Mia-Software)
+ */
+@Deprecated
+//Copied from org.eclipse.papyrus.emf.facet.infra.query.ui.ImageProvider
+public final class ImageProvider {
+ // private static final String MODEL_QUERY = "icons/modelQuery.png"; //$NON-NLS-1$
+ private static final String REMOVE = "icons/remove.gif"; //$NON-NLS-1$
+ private static final String REMOVE_ALL = "icons/removeAll.gif"; //$NON-NLS-1$
+ private static final String MODEL_QUERY_SET = "icons/ModelQuerySet.gif"; //$NON-NLS-1$
+
+ private static ImageProvider singleton;
+
+ private Image modelQuerySet;
+ // private Image modelQuery;
+ // private Image remove;
+ // private Image removeAll;
+
+ private ImageProvider() {
+ // This method must not be instantiated
+ }
+
+ /**
+ * Create an image descriptor from a resource
+ *
+ * @param resourcePath
+ * the path of the resource (in the bundle)
+ * @return the image descriptor
+ */
+ private ImageDescriptor createImageDescriptor(final String resourcePath) {
+ ImageDescriptor imageDescriptor = AbstractUIPlugin.imageDescriptorFromPlugin(
+ Activator.PLUGIN_ID, resourcePath);
+ if (imageDescriptor == null) {
+ Logger.logError(NLS.bind("Resource not found: {0}", resourcePath), Activator //$NON-NLS-1$
+ .getDefault());
+ return ImageDescriptor.getMissingImageDescriptor();
+ }
+ return imageDescriptor;
+ }
+
+ public static ImageProvider getInstance() {
+ if (ImageProvider.singleton == null) {
+ ImageProvider.singleton = new ImageProvider();
+ }
+ return ImageProvider.singleton;
+ }
+
+ public Image getModelQuerySet() {
+ if (this.modelQuerySet == null) {
+ this.modelQuerySet = createImageDescriptor(ImageProvider.MODEL_QUERY_SET).createImage();
+ }
+ return this.modelQuerySet;
+ }
+ //
+ // public Image getModelQuery() {
+ // if (this.modelQuery == null) {
+ // this.modelQuery =
+ // createImageDescriptor(ImageProvider.MODEL_QUERY).createImage();
+ // }
+ // return this.modelQuery;
+ // }
+
+ // public Image getRemove() {
+ // if (this.remove == null) {
+ // this.remove = createImageDescriptor(ImageProvider.REMOVE).createImage();
+ // }
+ // return this.remove;
+ // }
+ //
+ // public Image getRemoveAll() {
+ // if (this.removeAll == null) {
+ // this.removeAll =
+ // createImageDescriptor(ImageProvider.REMOVE_ALL).createImage();
+ // }
+ // return this.removeAll;
+ // }
+
+ public ImageDescriptor getRemoveImageDescriptor() {
+ return createImageDescriptor(ImageProvider.REMOVE);
+ }
+
+ public ImageDescriptor getRemoveAllImageDescriptor() {
+ return createImageDescriptor(ImageProvider.REMOVE_ALL);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/Messages.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/Messages.java
new file mode 100644
index 00000000000..1995ca49cf7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/Messages.java
@@ -0,0 +1,164 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Nicolas Bros (Mia-Software) - Bug 370442 - rewrite the Facet loading dialog for v0.2
+ * Grégoire Dupé (Mia-Software) - copied from org.eclipse.papyrus.emf.facet.infra.query.ui.Messages
+ * Nicolas Bros (Mia-Software) - copied from org.eclipse.papyrus.emf.facet.infra.query.ui.Messages
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 372732 - [Facet] Rewrite the catalog views for 0.2
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ * Vincent Lorenzo (CEA-LIST) - Bug 357621 - Improve the label displayed for Customization and Facets
+ * Nicolas Bros (Mia-Software) - Bug 379518 - NLS missing messages
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal;
+
+import org.eclipse.osgi.util.NLS;
+
+public class Messages extends NLS {
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.emf.facet.efacet.ui.internal.messages"; //$NON-NLS-1$
+
+ public static String Enter_a_nsUri;
+ public static String Please_enter_nsUri;
+
+ public static String Enter_a_prefix;
+ public static String ETypedElementSelectionControl_FlatView;
+
+ public static String ETypedElementSelectionControl_invalidSelectionAtLeastOneElement;
+ public static String ETypedElementSelectionControl_invalidSelection;
+ public static String ETypedElementSelectionControl_invalidSelectionAtMostXElements;
+ public static String ETypedElementSelectionControl_invalidSelectionETypedElementsOnly;
+ public static String ETypedElementSelectionDialog_dialogTitle;
+ public static String ETypedElementSelectionDialog_dialogTitleMultiSelection;
+ public static String ETypedElementSelectionDialog_radioButtonMultiSelection;
+ public static String ETypedElementSelectionDialog_radioButtonNoSelection;
+ public static String ETypedElementSelectionDialog_radioButtonSingleSelection;
+
+ public static String ETypedElementSelectionSortedControl_groupByMetamodelView;
+
+ public static String ETypedElementSelectionSortedControl_toolTip;
+
+ public static String Please_enter_prefix;
+
+ public static String Please_select_EPackage;
+ public static String Select_EPackage;
+
+ public static String Operation;
+ public static String Parameter_name;
+ public static String Operation_name;
+ public static String Reference_name;
+ public static String Attribute_name;
+
+ public static String Add_an_Attribute;
+ public static String Add_an_Attribute_desc;
+ public static String Add_a_Reference;
+ public static String Add_a_Reference_desc;
+ public static String Add_an_Operation;
+ public static String Add_an_Operation_desc;
+ public static String Add_an_Operation_Parameter;
+ public static String Add_an_Operation_Parameter_desc;
+
+ public static String FacetSet;
+ public static String FacetSetsCatalogView_categoriesColumn;
+ public static String FacetSetsCatalogView_documentationColumn;
+ public static String FacetSetsCatalogView_extendsColumn;
+ public static String FacetSetsCatalogView_nameColumn;
+ public static String FacetSetsCatalogView_viewTitle;
+ public static String FacetSetSelectionControl_mustSelectAtLeastOneElement;
+ public static String FacetSetSelectionControl_mustSelectAtMostNElements;
+ public static String FacetSetSelectionControl_onlyFacetSetsAllowedInSelection;
+ public static String FacetSetSelectionControl_selectionContainsInvalidElements;
+ public static String FacetSetSelectionDialog_deselectAll;
+ public static String FacetSetSelectionDialog_selectAll;
+ public static String FacetSetSelectionDialog_titleSelectFacetSet;
+ public static String FacetSetSelectionDialog_titleSelectFacetSets;
+ public static String Facet;
+
+ public static String Changeable;
+ public static String Derived;
+ public static String Ordered;
+ public static String Transient;
+ public static String Unique;
+ public static String Volatile;
+
+ public static String Lower_bound;
+ public static String Upper_bound;
+
+ public static String Select_EClass;
+ public static String Select_EClassifier;
+ public static String Select_EDataType;
+
+ public static String No_result_found;
+
+ public static String Select;
+ public static String Type;
+
+ public static String Create_FacetSet_Model;
+
+ public static String CreateFacetInFacetSetWizardPage_could_not_find_wizard_page;
+ public static String Please_enter_value_for;
+ public static String Create_facet_in_facetSet;
+
+ public static String CreateFacetInFacetSetWizardPage_Please_fill_extendedMetaClass;
+ public static String CreateFacetInFacetSetWizardPage_Sub_Typing_Facet;
+ public static String CreateFacetInFacetSetWizardPage_wizard_description;
+ public static String CreateFacetSetWizardImpl_Create_new_facet_Set;
+ public static String CreateFacetSetWizardImpl_FacetModel;
+ public static String CreateFacetSetWizardImpl_File_extension_restriction;
+
+ public static String CreateFacetSetWizardPage_Not_a_Plugin_project;
+ public static String Create_Query;
+ public static String FilteredElementSelectionControl_type_filter_text;
+ public static String Load_MetaModel_Resource;
+ public static String FacetSetSelectionDialog_selectFacetSetsMessage;
+ public static String FacetSetSelectionDialog_selectFacetSetsTitle;
+ public static String Package_Selection;
+ public static String Select_Registered_URI;
+
+ public static String ExtendedMetaClass;
+ public static String SelectQueryTypeWizardPage_No_wizard_found;
+ public static String SelectQueryTypeWizardPage_Query_Type;
+ public static String JavaQueryWizardPage_Can_be_cached;
+ public static String JavaQueryWizardPage_has_side_effect;
+ public static String JavaQueryWizardPage_Query_name;
+
+ //Begin copied from org.eclipse.papyrus.emf.facet.infra.query.ui.Messages
+ public static String QueryExecutionView_0;
+ public static String QueryExecutionView_1;
+ public static String QueryExecutionView_classpathWarning;
+ public static String QueryExecutionView_errorInBundleClasspath;
+ public static String QueryExecutionView_execEnvNotAvailable;
+ public static String QueryExecutionView_execEnvError;
+ public static String QueryExecutionView_Context;
+ public static String QueryExecutionView_DisplayResultIn;
+ public static String QueryExecutionView_dragAndDropHint;
+ public static String QueryExecutionView_ErrorExecutingQuery;
+
+ public static String QueryExecutionView_ETypedElementsGroup;
+ public static String QueryExecutionView_ExecuteButton;
+ public static String QueryExecutionView_ExecuteGroup;
+ public static String QueryExecutionView_NoQueryDisplayer;
+ public static String QueryExecutionView_NoQuerySelected;
+ public static String QueryExecutionView_NullQueryResult;
+ public static String QueryExecutionView_notImplementedYet;
+ public static String QueryExecutionView_Parameters;
+ public static String QueryExecutionView_Query;
+ public static String QueryExecutionView_QueryException;
+ public static String QueryExecutionView_QueryReturnedNull;
+ public static String QueryExecutionView_SelectQueryToExecute;
+ //End copied from org.eclipse.papyrus.emf.facet.infra.query.ui.Messages
+
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(Messages.BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/QueryCreationPagePartRegistryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/QueryCreationPagePartRegistryImpl.java
new file mode 100644
index 00000000000..311d2f910ed
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/QueryCreationPagePartRegistryImpl.java
@@ -0,0 +1,77 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.IExtension;
+import org.eclipse.core.runtime.IExtensionPoint;
+import org.eclipse.core.runtime.IExtensionRegistry;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IQueryCreationPagePart;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+@Deprecated
+public class QueryCreationPagePartRegistryImpl implements IQueryCreationPagePartRegistry {
+
+ private static final String EXTENSION_POINT_ID = "org.eclipse.papyrus.emf.facet.efacet.ui.queryFactoryWizardPageRegistration"; //$NON-NLS-1$
+ private static final String WIZARD_PAGE = "wizardPage"; //$NON-NLS-1$
+ private static final String MANAGED_TYPE_NAME = "managedQueryTypeName"; //$NON-NLS-1$
+
+ private final Map<String, IQueryCreationPagePart> queryEvaluatorFactories = new HashMap<String, IQueryCreationPagePart>();
+
+ public QueryCreationPagePartRegistryImpl() {
+ initRegisteredEntries();
+ }
+
+ private void initRegisteredEntries() {
+ IExtensionRegistry registry = Platform.getExtensionRegistry();
+ IExtensionPoint extPoint = registry.getExtensionPoint(QueryCreationPagePartRegistryImpl.EXTENSION_POINT_ID);
+ if (extPoint != null) {
+ for (IExtension ext : extPoint.getExtensions()) {
+ for (IConfigurationElement configElt : ext.getConfigurationElements()) {
+
+ IQueryCreationPagePart queryCreationWizardPage;
+ try {
+ configElt.createExecutableExtension(QueryCreationPagePartRegistryImpl.WIZARD_PAGE);
+ queryCreationWizardPage = (IQueryCreationPagePart) configElt
+ .createExecutableExtension(QueryCreationPagePartRegistryImpl.WIZARD_PAGE);
+ String managedQueryTypeName = configElt.getAttribute(QueryCreationPagePartRegistryImpl.MANAGED_TYPE_NAME);
+ if (this.queryEvaluatorFactories.containsKey(managedQueryTypeName)) {
+ Logger.logError("A conflict occurred for " //$NON-NLS-1$
+ + managedQueryTypeName + " query IQueryCreationPage. Only one creationPage is allowed at the same time.", //$NON-NLS-1$
+ Activator.getDefault());
+ } else {
+ this.queryEvaluatorFactories.put(managedQueryTypeName, queryCreationWizardPage);
+ }
+ } catch (CoreException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+ }
+ } else {
+ Logger.logError("Could not find extensionPoint: " + QueryCreationPagePartRegistryImpl.EXTENSION_POINT_ID, Activator.getDefault()); //$NON-NLS-1$
+ }
+ }
+
+ public IQueryCreationPagePart getWizardPagePartFor(final String managedTypeName) {
+ return this.queryEvaluatorFactories.get(managedTypeName);
+ }
+
+ public Map<String, IQueryCreationPagePart> getRegisteredWizardPageParts() {
+ return this.queryEvaluatorFactories;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/actions/LoadMetaModelResourceAction.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/actions/LoadMetaModelResourceAction.java
new file mode 100644
index 00000000000..972c9acfc91
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/actions/LoadMetaModelResourceAction.java
@@ -0,0 +1,100 @@
+/*******************************************************************************
+ * Copyright (c) 2009,2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire DUPE (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.actions;
+
+import java.util.Arrays;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EPackage.Registry;
+import org.eclipse.emf.ecore.provider.EcoreEditPlugin;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.edit.ui.action.LoadResourceAction;
+import org.eclipse.emf.edit.ui.provider.ExtendedImageRegistry;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.widgets.AnywhereFilterMatcher;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.dialogs.ElementListSelectionDialog;
+
+// This class has been copied from org.eclipse.papyrus.emf.facet.infra.facet.editor.presentation.LoadMetaModelResourceAction
+
+/**
+ * @author Gregoire Dupe
+ *
+ */
+public class LoadMetaModelResourceAction extends LoadResourceAction {
+
+ public LoadMetaModelResourceAction() {
+ super();
+ setText(Messages.Load_MetaModel_Resource);
+ }
+
+ @Override
+ public void run() {
+ Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
+
+ RegisteredPackageDialog registeredPackageDialog = new RegisteredPackageDialog(shell);
+ registeredPackageDialog.open();
+ Object[] results = registeredPackageDialog.getResult();
+ // if user cancel the selection of meta models, results = null
+ if (results != null) {
+ ResourceSet resourceSet = this.domain.getResourceSet();
+ for (Object result : results) {
+ URI uri = URI.createURI(result.toString());
+ Resource r = resourceSet.getResource(uri, true);
+ if (!resourceSet.getResources().contains(r)) {
+ Registry packageRegistry = resourceSet.getPackageRegistry();
+ for (EObject eObject : r.getContents()) {
+ if (eObject instanceof EPackage) {
+ EPackage ePackage = (EPackage) eObject;
+ packageRegistry.put(ePackage.getNsURI(), ePackage);
+ }
+ }
+ resourceSet.getResources().add(r);
+ }
+ }
+ }
+ }
+
+ public class RegisteredPackageDialog extends ElementListSelectionDialog {
+
+ public RegisteredPackageDialog(final Shell parent) {
+ super(parent, new LabelProvider() {
+ @Override
+ public Image getImage(final Object element) {
+ return ExtendedImageRegistry.getInstance().getImage(EcoreEditPlugin.INSTANCE.getImage("full/obj16/EPackage")); //$NON-NLS-1$
+ }
+ });
+
+ setMultipleSelection(true);
+ setMessage(Messages.Select_Registered_URI);
+ setTitle(Messages.Package_Selection);
+ Object[] result = EPackage.Registry.INSTANCE.keySet().toArray(new Object[EPackage.Registry.INSTANCE.size()]);
+ Arrays.sort(result);
+ setElements(result);
+ }
+
+ @Override
+ protected Control createDialogArea(final Composite parent) {
+ Composite composite = (Composite) super.createDialogArea(parent);
+ this.fFilteredList.setFilterMatcher(new AnywhereFilterMatcher());
+ return composite;
+ }
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/composites/BrowseComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/composites/BrowseComposite.java
new file mode 100644
index 00000000000..3330e709f2d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/composites/BrowseComposite.java
@@ -0,0 +1,124 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Gregoire Dupe (Mia-Software) - Bug 373248 - Clean PMD errors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.KeyEvent;
+import org.eclipse.swt.events.KeyListener;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Text;
+
+@SuppressWarnings("PMD.ConstructorCallsOverridableMethod")
+//@SuppressWarnings("PMD.ConstructorCallsOverridableMethod") Temporary: this class must be deeply refactored.
+//TODO remove the @SuppressWarnings("PMD.ConstructorCallsOverridableMethod")
+//cf. bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=373248
+public class BrowseComposite extends Composite {
+
+ private Text textField;
+ private Button browseButton;
+ private String browseButtonText = "..."; //$NON-NLS-1$
+
+ public BrowseComposite(final Composite parent, final int style) {
+ this(parent, style, null, true);
+ }
+
+ public BrowseComposite(final Composite parent, final int style, final String buttonName, final boolean canBeChanged) {
+ super(parent, SWT.NONE);
+ if (buttonName != null) {
+ this.browseButtonText = buttonName;
+ }
+ setEnabled(canBeChanged);
+ GridLayout layout = new GridLayout();
+ layout.marginHeight = 0;
+ layout.marginWidth = 0;
+ final int horizontalSpacing = 4;
+ layout.horizontalSpacing = horizontalSpacing;
+ layout.verticalSpacing = 0;
+ layout.makeColumnsEqualWidth = false;
+ layout.numColumns = 2;
+ setLayout(layout);
+ setLayoutData(new GridData(SWT.FILL, SWT.NONE, true, false));
+ createWidgets(style);
+ init();
+ }
+
+ public void addModifyListener(final ModifyListener modifyListener) {
+ if (this.textField != null) {
+ this.textField.addModifyListener(modifyListener);
+ }
+ }
+
+ public void removeModifyListener(final ModifyListener modifyListener) {
+ if (this.textField != null) {
+ this.textField.removeModifyListener(modifyListener);
+ }
+ }
+
+ protected void createWidgets(final int style) {
+ this.textField = new Text(this, SWT.SINGLE | style);
+ this.browseButton = new Button(this, SWT.PUSH);
+ }
+
+ private void init() {
+ this.textField.setEditable(false);
+ // We want the background white so that the user notices that there is something missing in
+ // the textField, but he has to use the "..." button
+ this.textField.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));
+ this.textField.setBounds(getBounds());
+ this.textField.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false));
+ this.textField.addKeyListener(new KeyListener() {
+ public void keyReleased(final KeyEvent e) {
+ // Nothing on release
+ }
+
+ public void keyPressed(final KeyEvent event) {
+ // Enter key pressed
+ if ((event.keyCode == SWT.CR && event.stateMask == 0) || (event.keyCode == SWT.KEYPAD_CR && event.stateMask == 0)) {
+ handleBrowse();
+ }
+ }
+ });
+
+ this.browseButton.setText(this.browseButtonText);
+ this.browseButton.setEnabled(isEnabled());
+ GridData data = new GridData(SWT.FILL, SWT.FILL, false, true);
+ this.browseButton.setLayoutData(data);
+ this.browseButton.addSelectionListener(new SelectionListener() {
+ public void widgetSelected(final SelectionEvent e) {
+ handleBrowse();
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent e) {
+ // Nothing
+ }
+ });
+ }
+
+ protected void handleBrowse() {
+ // Meant to be overridden
+ }
+
+ public void updateTextFieldContent(final String content) {
+ if (this.textField != null) {
+ this.textField.setText(content);
+ this.textField.setFocus();
+ }
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/composites/FilteredElementSelectionComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/composites/FilteredElementSelectionComposite.java
new file mode 100644
index 00000000000..38933453338
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/composites/FilteredElementSelectionComposite.java
@@ -0,0 +1,134 @@
+/*******************************************************************************
+ * Copyright (c) 2010, 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites;
+
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.KeyEvent;
+import org.eclipse.swt.events.KeyListener;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.dialogs.FilteredList;
+
+/**
+ * A control for selecting an element from a list of elements, that can be filtered using the
+ * associated text field.
+ */
+public class FilteredElementSelectionComposite extends Composite {
+
+ private final Text filterText;
+ private final FilteredList fFilteredList;
+
+ public FilteredElementSelectionComposite(final Composite parent, final boolean matchAnywhere, final boolean multiSelection) {
+ super(parent, SWT.BORDER);
+ setLayout(new GridLayout());
+
+ this.filterText = createFilterText(this);
+ this.fFilteredList = createFilteredList(this, multiSelection);
+
+ final String matchPrefix;
+ if (matchAnywhere) {
+ matchPrefix = "*"; //$NON-NLS-1$
+ } else {
+ matchPrefix = ""; //$NON-NLS-1$
+ }
+
+ this.filterText.addModifyListener(new ModifyListener() {
+ public void modifyText(final ModifyEvent e) {
+ getfFilteredList().setFilter(matchPrefix + getFilterText().getText());
+ }
+ });
+
+ this.filterText.addKeyListener(new KeyListener() {
+ public void keyPressed(final KeyEvent e) {
+ if (e.keyCode == SWT.ARROW_DOWN) {
+ getfFilteredList().setFocus();
+ }
+ }
+
+ public void keyReleased(final KeyEvent e) {
+ // nothing
+ }
+ });
+ }
+
+ public void setElements(final Object[] elements) {
+ this.fFilteredList.setElements(elements);
+ }
+
+ protected static FilteredList createFilteredList(final Composite parent, final boolean multiSelection) {
+ int multi;
+ if (multiSelection) {
+ multi = SWT.MULTI;
+ } else {
+ multi = SWT.SINGLE;
+ }
+ final FilteredList filteredList = new FilteredList(parent, SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL | multi, new LabelProvider(), true,
+ false, true);
+
+ final GridData data = new GridData();
+ data.grabExcessVerticalSpace = true;
+ data.grabExcessHorizontalSpace = true;
+ data.horizontalAlignment = GridData.FILL;
+ data.verticalAlignment = GridData.FILL;
+ filteredList.setLayoutData(data);
+ filteredList.setFilter(""); //$NON-NLS-1$
+
+ return filteredList;
+ }
+
+ protected static Text createFilterText(final Composite parent) {
+ final Text text = new Text(parent, SWT.BORDER);
+ text.setMessage(Messages.FilteredElementSelectionControl_type_filter_text);
+
+ final GridData data = new GridData();
+ data.grabExcessVerticalSpace = false;
+ data.grabExcessHorizontalSpace = true;
+ data.horizontalAlignment = GridData.FILL;
+ data.verticalAlignment = GridData.BEGINNING;
+ text.setLayoutData(data);
+
+ return text;
+ }
+
+ public Object getFirstSelectedElement() {
+ final Object[] selection = this.fFilteredList.getSelection();
+ if (selection.length > 0) {
+ return selection[0];
+ }
+ return null;
+ }
+
+ public Object[] getSelectedElements() {
+ Object[] selection = this.fFilteredList.getSelection();
+ if (selection.length == 0) {
+ return null;
+ }
+ return selection;
+ }
+
+ public FilteredList getFilteredList() {
+ return this.fFilteredList;
+ }
+
+ public Text getFilterText() {
+ return this.filterText;
+ }
+
+ protected FilteredList getfFilteredList() {
+ return this.fFilteredList;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/composites/SelectETypeComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/composites/SelectETypeComposite.java
new file mode 100644
index 00000000000..bab81f2aeee
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/composites/SelectETypeComposite.java
@@ -0,0 +1,172 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Gregoire Dupe (Mia-Software) - Bug 373248 - Clean PMD errors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.SelectETypeWizardImpl;
+import org.eclipse.jface.window.Window;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Text;
+
+@SuppressWarnings("PMD.ConstructorCallsOverridableMethod")
+//@SuppressWarnings("PMD.ConstructorCallsOverridableMethod") Temporary: this class must be deeply refactored.
+//TODO remove the @SuppressWarnings("PMD.ConstructorCallsOverridableMethod")
+//cf. bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=373248
+public class SelectETypeComposite extends Composite {
+
+ private static final int NUMBER_COLUMN = 3;
+
+ /** to be returned by the composite */
+ private EClassifier selectedEType = null;
+
+ private EditingDomain editingDomain;
+
+ private Label eTypeLabel;
+ private Button selectButton;
+ private Text eTypedTextField;
+
+ private ETypeSelectionOptions eTypeSelectionOption;
+
+ private boolean canChangeEPackage = true;
+
+ private final EPackage ePackage;
+
+ public enum ETypeSelectionOptions {
+ ECLASSIFIER, EDATATYPE, ECLASS
+ }
+
+ public SelectETypeComposite(final Composite parent, final int style, final ETypeSelectionOptions option, final boolean canChangeEPackage,
+ final EPackage ePackage) {
+ super(parent, style);
+ this.eTypeSelectionOption = option;
+ this.ePackage = ePackage;
+ this.canChangeEPackage = canChangeEPackage;
+ init();
+ }
+
+ protected void createCompositeWidget() {
+ this.eTypeLabel = new Label(this, SWT.NULL);
+ this.eTypedTextField = new Text(this, SWT.BORDER | SWT.SINGLE);
+ this.selectButton = new Button(this, SWT.PUSH);
+ }
+
+ private void init() {
+ GridLayout gridLayout = new GridLayout(SelectETypeComposite.NUMBER_COLUMN, false);
+ setLayout(gridLayout);
+ createCompositeWidget();
+ initializeWidgets();
+ initializeLabelText();
+ }
+
+ private void initializeLabelText() {
+ this.eTypeLabel.setText(Messages.Type);
+ this.selectButton.setText(Messages.Select);
+ }
+
+ protected void initializeWidgets() {
+ GridData gd = new GridData(GridData.FILL_HORIZONTAL);
+ this.eTypedTextField.setLayoutData(gd);
+
+ this.selectButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ SelectETypeComposite.this.handleBrowse();
+ }
+ });
+ }
+
+ /**
+ * This method call the SelectETypeWizardImpl
+ */
+ protected void handleBrowse() {
+ if (this.eTypeSelectionOption == null) {
+ this.eTypeSelectionOption = SelectETypeComposite.ETypeSelectionOptions.ECLASSIFIER;
+ }
+ SelectETypeWizardImpl dialog = new SelectETypeWizardImpl(this.editingDomain, this.eTypeSelectionOption, this.canChangeEPackage, this.ePackage);
+ if (dialog.open() != Window.CANCEL) {
+ setEClass(dialog.getSelectedEType());
+ eTypeSelected();
+ }
+ }
+
+ protected void eTypeSelected() {
+ // Meant to be implemented
+ }
+
+ public void setEClass(final EClassifier eClass) {
+ this.selectedEType = eClass;
+ if (eClass != null) {
+ this.eTypedTextField.setText(eClass.getName());
+ this.eTypedTextField.redraw();
+ this.eTypedTextField.setFocus();
+ }
+ }
+
+ public void canChangeEType(final boolean canChange) {
+ // this.eTypedTextField.setEditable(true);
+ // this.eTypedTextField.setEnabled(false);
+ this.selectButton.setEnabled(canChange);
+ }
+
+ public EClassifier getEType() {
+ return this.selectedEType;
+ }
+
+ protected void setQueryLabel(final Label queryLabel) {
+ this.eTypeLabel = queryLabel;
+ }
+
+ protected void setBrowseButton(final Button browseButton) {
+ this.selectButton = browseButton;
+ }
+
+ protected void setQueryNameTextField(final Text queryNameTextField) {
+ this.eTypedTextField = queryNameTextField;
+ }
+
+ public void setETypeLabel(final Label eTypeLabel) {
+ this.eTypeLabel = eTypeLabel;
+ }
+
+ public void setSelectButton(final Button selectButton) {
+ this.selectButton = selectButton;
+ }
+
+ public void setETypedTextField(final Text eTypedTextField) {
+ this.eTypedTextField = eTypedTextField;
+ }
+
+ public void setEditingDomain(final EditingDomain editingDomain2) {
+ this.editingDomain = editingDomain2;
+ }
+
+ public void setEType(final EClass type) {
+ this.selectedEType = type;
+ if (this.eTypedTextField != null) {
+ this.eTypedTextField.setText(this.selectedEType.getName());
+ this.eTypedTextField.redraw();
+ }
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/composites/SelectQueryTypeComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/composites/SelectQueryTypeComposite.java
new file mode 100644
index 00000000000..ff822dd5516
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/composites/SelectQueryTypeComposite.java
@@ -0,0 +1,101 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Gregoire Dupe (Mia-Software) - Bug 373248 - Clean PMD errors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites;
+
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.query.QueryEvaluatorFactoryRegistry;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryEvaluatorFactory;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+
+@SuppressWarnings("PMD.ConstructorCallsOverridableMethod")
+//@SuppressWarnings("PMD.ConstructorCallsOverridableMethod") This class is
+//deprecated, we won't then spend to many time to conforms to PMD rules.
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class SelectQueryTypeComposite extends Composite {
+
+ private Combo queryTypeComboBox;
+ private Label queryTypeLabel;
+ private static final int NUMBER_COLUMN = 3;
+
+ public SelectQueryTypeComposite(final Composite parent, final int style) {
+ super(parent, style);
+ init();
+ }
+
+ @Override
+ public void setEnabled(final boolean visible) {
+ this.queryTypeComboBox.setEnabled(visible);
+ this.queryTypeLabel.setEnabled(visible);
+ }
+
+ private void init() {
+ GridLayout gridLayout = new GridLayout(SelectQueryTypeComposite.NUMBER_COLUMN, false);
+ setLayout(gridLayout);
+ createCompositeWidget();
+ initializeWidgets();
+ }
+
+ protected void createCompositeWidget() {
+ this.queryTypeLabel = new Label(this, SWT.NONE);
+ this.queryTypeComboBox = new Combo(this, SWT.DROP_DOWN | SWT.READ_ONLY);
+ }
+
+ private void initializeWidgets() {
+ GridData gd = new GridData(GridData.FILL_HORIZONTAL);
+
+ this.queryTypeLabel.setText(Messages.SelectQueryTypeWizardPage_Query_Type);
+ this.queryTypeComboBox.setLayoutData(gd);
+
+ for (IQueryEvaluatorFactory factory : QueryEvaluatorFactoryRegistry.INSTANCE.getInstalledQueryFactories()) {
+ this.queryTypeComboBox.add(factory.getManagedQueryType().getName());
+ }
+ this.queryTypeComboBox.select(0);
+ this.queryTypeComboBox.addSelectionListener(new SelectionListener() {
+ public void widgetSelected(final SelectionEvent e) {
+ queryTypeSelected();
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent e) {
+ // Nothing
+ }
+ });
+ }
+
+ protected void queryTypeSelected() {
+ // Intended to be overridden
+ }
+
+ protected void setQueryTypeLabel(final Label queryTypeLabel) {
+ this.queryTypeLabel = queryTypeLabel;
+ }
+
+ protected void setQueryTypeComboBox(final Combo queryTypeComboBox) {
+ this.queryTypeComboBox = queryTypeComboBox;
+ }
+
+ public String getSelectedQueryType() {
+ if (this.queryTypeComboBox.getSelectionIndex() != -1) {
+ return this.queryTypeComboBox.getItem(this.queryTypeComboBox.getSelectionIndex());
+ }
+ return null;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/DefaultFacetLabelProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/DefaultFacetLabelProvider.java
new file mode 100644
index 00000000000..dc2eef4eb4f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/DefaultFacetLabelProvider.java
@@ -0,0 +1,46 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 370442 - rewrite the Facet loading dialog for v0.2
+ * Nicolas Bros(Mia-Software) - Bug 370806 - [table] rewrite the "allowed contents" query selection dialog for v0.2
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.dialogs;
+
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.utils.ImageUtils;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.swt.graphics.Image;
+
+public class DefaultFacetLabelProvider extends LabelProvider {
+ @Override
+ public String getText(final Object element) {
+ String label;
+ if (element instanceof FacetSet) {
+ final FacetSet facetSet = (FacetSet) element;
+ label = facetSet.getName();
+ } else if (element instanceof Facet) {
+ final Facet facet = (Facet) element;
+ label = facet.getName();
+ } else if (element instanceof ENamedElement) {
+ final ENamedElement namedElement = (ENamedElement) element;
+ label = namedElement.getName();
+ } else if (element == null) {
+ label = "null"; //$NON-NLS-1$
+ } else {
+ label = element.getClass().getName();
+ }
+ return label;
+ }
+
+ @Override
+ public Image getImage(final Object element) {
+ return ImageUtils.getImage(element);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/ETypedElementSelectionDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/ETypedElementSelectionDialog.java
new file mode 100644
index 00000000000..6290ebc4b8d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/ETypedElementSelectionDialog.java
@@ -0,0 +1,244 @@
+/*******************************************************************************
+ * Copyright (c) 2009-2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software)
+ * Nicolas Guyomar (Mia-Software) - Bug 339874 - Infra QuerySelectionDialog should have a "querySet" icon
+ * Nicolas Bros (Mia-Software) - Bug 366367 - To be able to change the "CanBePresentedInTheTable" query
+ * Nicolas Bros (Mia-Software) - Bug 370806 - [table] rewrite the "allowed contents" query selection dialog for v0.2
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ * Vincent Lorenzo (CEA-LIST) - Bug 357621 - Improve the label displayed for Customization and Facets
+ * Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List<ETypedElement>, List<FacetSet>)
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ * Nicolas Bros (Mia-Software) - Bug 370806 - [table] rewrite the "allowed contents" query selection dialog for v0.2
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.dialogs;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog.IETypedElementSelectionDialogInternal;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget.ETypedElementSelectionControlManager;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget.IETypedElementSelectionControlManager;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallbackWithPreCommit;
+import org.eclipse.jface.dialogs.IDialogSettings;
+import org.eclipse.jface.viewers.IOpenListener;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.OpenEvent;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.window.Window;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.dialogs.SelectionStatusDialog;
+
+/**
+ * A dialog to select an {@link ETypedElement} among a tree of {@link EObject}s that are children of a given set of root
+ * {@link EObject}s
+ */
+public class ETypedElementSelectionDialog<T2, D> extends SelectionStatusDialog
+ implements IETypedElementSelectionDialogInternal<D> { // NOPMD
+
+ // note: the dialog should be large enough to see the validator message
+ private static final int DEFAULT_WIDTH = 550;
+ private static final int DEFAULT_HEIGHT = 550;
+
+ private final boolean allowEmpty;
+ private final IDialogCallbackWithPreCommit<List<ETypedElement>, T2, D> callback;
+ private final Collection<? extends ETypedElement> availableElements;
+ private final int selectionMaxSize;
+ private final ICustomizationManager customManager;
+ private IETypedElementSelectionControlManager manager;
+ private final Collection<? extends EPackage> knownEPackage;
+
+ /**
+ * @param eTypedElements
+ * the list of ETypedElements that can be selected
+ * @param selectionMaxSize
+ * the maximum number of typed elements that the user can select
+ * @param allowEmpty
+ * whether to allow the user to select no ETypedElement (i.e : select <code>null</code>)
+ * @param callback
+ * called when the dialog closes
+ * @param parentShell
+ * the parent shell
+ * @param customManager
+ * the customization manager used by the ICustomizableLabelProvider
+ */
+ public ETypedElementSelectionDialog(final Collection<? extends ETypedElement> eTypedElements,
+ final int selectionMaxSize, final boolean allowEmpty,
+ final IDialogCallbackWithPreCommit<List<ETypedElement>, T2, D> callback,
+ final Shell parentShell, final ICustomizationManager customManager,
+ final Collection<? extends EPackage> knownEPackage) {
+ super(parentShell);
+ this.availableElements = eTypedElements;
+ this.selectionMaxSize = selectionMaxSize;
+ this.allowEmpty = allowEmpty;
+ this.callback = callback;
+ this.customManager = customManager;
+ this.knownEPackage = knownEPackage;
+ setHelpAvailable(false);
+
+ }
+
+ @Override
+ protected Control createDialogArea(final Composite parent) {
+ final Composite composite = (Composite) super.createDialogArea(parent);
+ this.manager = new ETypedElementSelectionControlManager(composite,
+ this.selectionMaxSize, this.allowEmpty, this.customManager,
+ this.knownEPackage);
+ this.manager.createContents();
+ this.manager.setAvailableETypedElements(this.availableElements);
+
+ // double-click or enter to choose the selected typed element
+ this.manager.addOpenListener(new IOpenListener() {
+ public void open(final OpenEvent event) {
+ ETypedElementSelectionDialog.this.okPressed();
+ }
+ });
+
+ this.manager.addSelectionChangedListener(new ISelectionChangedListener() {
+ public void selectionChanged(final SelectionChangedEvent event) {
+ updateValidationStatus();
+ }
+ });
+ return composite;
+ }
+
+ protected void updateValidationStatus() {
+ updateStatus(this.manager.getValidationStatus());
+ }
+
+ @Override
+ protected void configureShell(final Shell shell) {
+ super.configureShell(shell);
+ if (this.selectionMaxSize > 1) {
+ shell.setText(Messages.ETypedElementSelectionDialog_dialogTitleMultiSelection);
+ } else {
+ shell.setText(Messages.ETypedElementSelectionDialog_dialogTitle);
+ }
+ // TODO: image for ETypedElement
+ // shell.setImage(...);
+ }
+
+ @Override
+ protected boolean isResizable() {
+ return true;
+ }
+
+ @Override
+ protected IDialogSettings getDialogBoundsSettings() {
+ final String sectionName = this.getClass().getName() + ".settings"; //$NON-NLS-1$
+ final IDialogSettings settings = Activator.getDefault().getDialogSettings();
+ IDialogSettings section = settings.getSection(sectionName);
+ if (section == null) {
+ section = settings.addNewSection(sectionName);
+ // cf Dialog#DIALOG_WIDTH
+ section.put("DIALOG_WIDTH", ETypedElementSelectionDialog.DEFAULT_WIDTH); //$NON-NLS-1$
+ section.put("DIALOG_HEIGHT", ETypedElementSelectionDialog.DEFAULT_HEIGHT); //$NON-NLS-1$
+ }
+ return section;
+ }
+
+ public boolean isErrorStatus() {
+ final IStatus validationStatus = this.manager.getValidationStatus();
+ return validationStatus == null || validationStatus.getSeverity() >= IStatus.ERROR;
+ }
+
+ @Override
+ protected void okPressed() {
+ if (isErrorStatus()) {
+ throw new IllegalStateException("The current selection is not valid"); //$NON-NLS-1$
+ }
+ super.okPressed();
+ }
+
+ public D pressOk() {
+ okPressed();
+ return null;
+ }
+
+ public void pressCancel() {
+ setReturnCode(Window.CANCEL);
+ close();
+ }
+
+ @Override
+ public boolean close() {
+ final boolean result = super.close();
+ invokeCallback();
+ return result;
+ }
+
+ private void invokeCallback() {
+ if (this.callback == null) {
+ return;
+ }
+ if (getReturnCode() == Window.OK) {
+ this.callback.committed(getSelectedETypedElements(), null);
+ }
+ }
+
+ public List<ETypedElement> getSelectedETypedElements() {
+ List<ETypedElement> currentlySelected = new ArrayList<ETypedElement>();
+ if (this.manager.isDisposed()) {
+ final Object[] result = getResult();
+ if (result == null) {
+ throw new UnsupportedOperationException("No selection available because the dialog was canceled"); //$NON-NLS-1$
+ }
+ for (Object current : result) {
+ currentlySelected.add((ETypedElement) current);
+ }
+ } else {
+ currentlySelected = this.manager.computeResult();
+ }
+ return Collections.unmodifiableList(currentlySelected);
+ }
+
+ public ETypedElement getFirstSelectedETypedElement() {
+ ETypedElement result = null;
+ final List<ETypedElement> typedElements = getSelectedETypedElements();
+ if (typedElements != null && !typedElements.isEmpty()) {
+ result = typedElements.get(0);
+ }
+ return result;
+ }
+
+ public void setSelectedETypedElements(final List<? extends ETypedElement> newSelection) {
+ if (newSelection == null) {
+ throw new IllegalArgumentException();
+ }
+ this.manager.setSelectedETypedElements(newSelection);
+ updateValidationStatus();
+ }
+
+ public void setSelection(final IStructuredSelection selection) {
+ this.manager.setSelection(selection);
+ updateValidationStatus();
+ }
+
+ @Override
+ protected void computeResult() {
+ // we build the result
+ final List<ETypedElement> currentSelection = this.manager.computeResult();
+ setResult(currentSelection);
+ }
+
+ public boolean isOkButtonEnabled() {
+ return getOkButton().isEnabled();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/ETypedElementSelectionDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/ETypedElementSelectionDialogFactory.java
new file mode 100644
index 00000000000..5685d0f3462
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/ETypedElementSelectionDialogFactory.java
@@ -0,0 +1,50 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 370442 - rewrite the Facet loading dialog for v0.2
+ * Nicolas Bros (Mia-Software) - Bug 370806 - [table] rewrite the "allowed contents" query selection dialog for v0.2
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ * Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List<ETypedElement>, List<FacetSet>)
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.dialogs;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog.IETypedElementSelectionDialog;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog.IETypedElementSelectionDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallbackWithPreCommit;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Shell;
+
+public class ETypedElementSelectionDialogFactory implements IETypedElementSelectionDialogFactory {
+
+ public <T2, D> IETypedElementSelectionDialog<D> openETypedElementSelectionDialog(
+ final Collection<? extends ETypedElement> eTypedElements,
+ final int selectionMaxSize,
+ final boolean allowEmpty,
+ final IDialogCallbackWithPreCommit<List<ETypedElement>, T2, D> callback,
+ final Shell parentShell, final ICustomizationManager customManager,
+ final Collection<? extends EPackage> knownFacetSets) {
+ final ETypedElementSelectionDialog<T2, D> dialog = new ETypedElementSelectionDialog<T2, D>(
+ eTypedElements, selectionMaxSize, allowEmpty, callback,
+ parentShell, customManager, knownFacetSets);
+ // must be synchronous, otherwise the shell is not created before SynchronizedETypedElementSelectionDialog, and SynchronizedComposite throws a NPE
+ Display.getDefault().syncExec(new Runnable() {
+ public void run() {
+ dialog.setBlockOnOpen(false);
+ dialog.open();
+ }
+ });
+ return new SynchronizedETypedElementSelectionDialog<T2, D>(dialog);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/FacetSetSelectionDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/FacetSetSelectionDialog.java
new file mode 100644
index 00000000000..2eb897e18c6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/FacetSetSelectionDialog.java
@@ -0,0 +1,229 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.dialogs;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.core.runtime.Assert;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog.IFacetSetSelectionDialogInternal;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget.FacetSetSelectionControl;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallbackWithPreCommit;
+import org.eclipse.jface.dialogs.IDialogConstants;
+import org.eclipse.jface.dialogs.IDialogSettings;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jface.window.Window;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.dialogs.SelectionStatusDialog;
+
+/**
+ * A dialog to select {@link FacetSet}s
+ *
+ * @param <T>
+ * the type of a pre-commit dialog
+ */
+public class FacetSetSelectionDialog<T> extends SelectionStatusDialog implements IFacetSetSelectionDialogInternal<T> {
+
+ // note: the dialog should be large enough to see the validator message
+ private static final int DEFAULT_WIDTH = 800;
+ private static final int DEFAULT_HEIGHT = 600;
+
+ private final Collection<FacetSet> available;
+ private final int selectionMaxSize;
+ private final boolean allowEmpty;
+ private final IDialogCallbackWithPreCommit<List<FacetSet>, Boolean, T> callback;
+ private FacetSetSelectionControl selectionControl;
+
+ public FacetSetSelectionDialog(final Collection<FacetSet> available,
+ final int selectionMaxSize, final boolean allowEmpty,
+ final IDialogCallbackWithPreCommit<List<FacetSet>, Boolean, T> callback, final Shell parentShell) {
+ super(parentShell);
+ Assert.isLegal(callback != null, "available cannot be null"); //$NON-NLS-1$
+ Assert.isLegal(callback != null, "callback cannot be null"); //$NON-NLS-1$
+ Assert.isLegal(selectionMaxSize > 0, "selectionMaxSize must be > 0"); //$NON-NLS-1$
+ this.available = available;
+ this.selectionMaxSize = selectionMaxSize;
+ this.allowEmpty = allowEmpty;
+ this.callback = callback;
+ setHelpAvailable(false);
+ }
+
+ @Override
+ protected Control createDialogArea(final Composite parent) {
+ final Composite composite = (Composite) super.createDialogArea(parent);
+ final Runnable onChange = new Runnable() {
+ public void run() {
+ updateValidationStatus();
+ }
+ };
+ this.selectionControl = createFacetSetSelectionControl(composite, onChange);
+ this.selectionControl.createContents();
+ this.selectionControl.setAvailableFacetSets(this.available);
+ updateValidationStatus();
+ return composite;
+ }
+
+ protected FacetSetSelectionControl createFacetSetSelectionControl(final Composite parentComposite, final Runnable onChange) {
+ return new FacetSetSelectionControl(parentComposite, this.selectionMaxSize, this.allowEmpty, onChange);
+ }
+
+ @Override
+ protected void createButtonsForButtonBar(final Composite parent) {
+ createButton(parent, IDialogConstants.SELECT_ALL_ID, Messages.FacetSetSelectionDialog_selectAll, false);
+ createButton(parent, IDialogConstants.DESELECT_ALL_ID, Messages.FacetSetSelectionDialog_deselectAll, false);
+ super.createButtonsForButtonBar(parent);
+ }
+
+ @Override
+ protected void buttonPressed(final int buttonId) {
+ super.buttonPressed(buttonId);
+ if (IDialogConstants.SELECT_ALL_ID == buttonId) {
+ selectAll();
+ } else if (IDialogConstants.DESELECT_ALL_ID == buttonId) {
+ deselectAll();
+ }
+ }
+
+ protected void updateValidationStatus() {
+ updateStatus(this.selectionControl.getValidationStatus());
+ }
+
+ @Override
+ protected void configureShell(final Shell shell) {
+ super.configureShell(shell);
+ if (this.selectionMaxSize > 1) {
+ shell.setText(Messages.FacetSetSelectionDialog_titleSelectFacetSets);
+ } else {
+ shell.setText(Messages.FacetSetSelectionDialog_titleSelectFacetSet);
+ }
+ }
+
+ @Override
+ protected boolean isResizable() {
+ return true;
+ }
+
+ @Override
+ protected IDialogSettings getDialogBoundsSettings() {
+ final String sectionName = this.getClass().getName() + ".settings"; //$NON-NLS-1$
+ final IDialogSettings settings = Activator.getDefault().getDialogSettings();
+ IDialogSettings section = settings.getSection(sectionName);
+ if (section == null) {
+ section = settings.addNewSection(sectionName);
+ // cf Dialog#DIALOG_WIDTH
+ section.put("DIALOG_WIDTH", FacetSetSelectionDialog.DEFAULT_WIDTH); //$NON-NLS-1$
+ section.put("DIALOG_HEIGHT", FacetSetSelectionDialog.DEFAULT_HEIGHT); //$NON-NLS-1$
+ }
+ return section;
+ }
+
+ public boolean isErrorStatus() {
+ final IStatus validationStatus = this.selectionControl.getValidationStatus();
+ return validationStatus == null || validationStatus.getSeverity() >= IStatus.ERROR;
+ }
+
+ public T pressOk() {
+ final IDialogCallback<Boolean> precommitCallBack = new IDialogCallback<Boolean>() {
+ public void committed(final Boolean precommitResult) {
+ commit(precommitResult);
+ }
+ };
+ final T dialog = this.callback.openPrecommitDialog(
+ getSelectedFacetSets(),
+ precommitCallBack);
+ if (dialog == null) {
+ commit(Boolean.TRUE);
+ }
+ return dialog;
+ }
+
+ public void pressCancel() {
+ setReturnCode(Window.CANCEL);
+ close();
+ }
+
+ @Override
+ protected void okPressed() {
+ pressOk();
+ }
+
+ @Override
+ protected void cancelPressed() {
+ pressCancel();
+ }
+
+ protected void commit(final Boolean precommitResult) {
+ // since the callback is called from client code, we need to ensure we are running on the UI thread
+ Display.getDefault().syncExec(new Runnable() {
+ public void run() {
+ commitOnUIThread(precommitResult);
+ }
+ });
+ }
+
+ protected void commitOnUIThread(final Boolean precommitResult) {
+ final List<FacetSet> selectedFacetSets = getSelectedFacetSets();
+ setReturnCode(Window.OK);
+ close();
+ this.callback.committed(selectedFacetSets, precommitResult);
+ }
+
+ @Override
+ public int open() {
+ // so that this dialog can be manipulated programmatically
+ setBlockOnOpen(false);
+ return super.open();
+ }
+
+ public List<FacetSet> getSelectedFacetSets() {
+ if (this.selectionControl.isDisposed()) {
+ throw new UnsupportedOperationException("No selection available because the dialog is closed"); //$NON-NLS-1$
+ }
+ return this.selectionControl.getSelectedFacetSets();
+ }
+
+ public void setSelectedFacetSets(final List<? extends FacetSet> newSelection) {
+ this.selectionControl.setSelectedFacetSets(newSelection);
+ updateValidationStatus();
+ }
+
+ public void selectAll() {
+ this.selectionControl.selectAll();
+ updateValidationStatus();
+ }
+
+ public void deselectAll() {
+ this.selectionControl.deselectAll();
+ updateValidationStatus();
+ }
+
+ public boolean isOkButtonEnabled() {
+ return getOkButton().isEnabled();
+ }
+
+ @Override
+ protected void computeResult() {
+ // nothing : the dialog is not used in a standard way : use the callback
+ }
+
+ public TreeViewer getTreeViewer() {
+ return this.selectionControl.getTreeViewer();
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/FacetSetSelectionDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/FacetSetSelectionDialogFactory.java
new file mode 100644
index 00000000000..3a8a262f335
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/FacetSetSelectionDialogFactory.java
@@ -0,0 +1,72 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.dialogs;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog.IFacetSetSelectionDialog;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog.IFacetSetSelectionDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallbackWithPreCommit;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Shell;
+
+public class FacetSetSelectionDialogFactory implements IFacetSetSelectionDialogFactory {
+
+ private class DummyPrecommitDialog { // NOPMD
+ // placeholder type
+ }
+
+ public IFacetSetSelectionDialog<?> openFacetSetSelectionDialog(
+ final Collection<FacetSet> available, final int selectionMaxSize, final boolean allowEmpty,
+ final IDialogCallback<List<FacetSet>> callback, final Shell parentShell) {
+
+ final IDialogCallbackWithPreCommit<List<FacetSet>, Boolean, FacetSetSelectionDialogFactory.DummyPrecommitDialog> wrappedCallback =
+ new IDialogCallbackWithPreCommit<List<FacetSet>, Boolean, FacetSetSelectionDialogFactory.DummyPrecommitDialog>() {
+ public void committed(final List<FacetSet> result, final Boolean precommitResult) {
+ callback.committed(result);
+ }
+
+ public DummyPrecommitDialog openPrecommitDialog(final List<FacetSet> result, final IDialogCallback<Boolean> precommitCallback) {
+ return null;
+ }
+ };
+
+ final FacetSetSelectionDialog<FacetSetSelectionDialogFactory.DummyPrecommitDialog> dialog =
+ new FacetSetSelectionDialog<FacetSetSelectionDialogFactory.DummyPrecommitDialog>(
+ available, selectionMaxSize, allowEmpty, wrappedCallback, parentShell);
+ // must be synchronous, otherwise the shell is not created before SynchronizedFacetSetsSelectionDialog, and
+ // SynchronizedComposite throws a NPE
+ Display.getDefault().syncExec(new Runnable() {
+ public void run() {
+ dialog.open();
+ }
+ });
+ return new SynchronizedFacetSetSelectionDialog<FacetSetSelectionDialogFactory.DummyPrecommitDialog>(dialog);
+ }
+
+ public <T> IFacetSetSelectionDialog<T> openFacetSetSelectionDialog(
+ final Collection<FacetSet> available, final int selectionMaxSize, final boolean allowEmpty,
+ final IDialogCallbackWithPreCommit<List<FacetSet>, Boolean, T> callback, final Shell parentShell) {
+ final FacetSetSelectionDialog<T> dialog = new FacetSetSelectionDialog<T>(available,
+ selectionMaxSize, allowEmpty, callback, parentShell);
+ // must be synchronous, otherwise the shell is not created before SynchronizedFacetSetsSelectionDialog, and
+ // SynchronizedComposite throws a NPE
+ Display.getDefault().syncExec(new Runnable() {
+ public void run() {
+ dialog.open();
+ }
+ });
+ return new SynchronizedFacetSetSelectionDialog<T>(dialog);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/FacetSetTreeContentProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/FacetSetTreeContentProvider.java
new file mode 100644
index 00000000000..10259c8d155
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/FacetSetTreeContentProvider.java
@@ -0,0 +1,94 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 370442 - rewrite the Facet loading dialog for v0.2
+ * Nicolas Bros (Mia-Software) - Bug 371367 - Hierarchical FacetSets
+ * Nicolas Bros (Mia-Software) - Bug 372626 - Aggregates
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.dialogs;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.efacet.core.FacetUtils;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.Viewer;
+
+public class FacetSetTreeContentProvider implements ITreeContentProvider {
+
+ private final boolean bFacets;
+ private final boolean bContainedFS;
+ private final boolean bSubpackages;
+
+ public FacetSetTreeContentProvider(final boolean facets, final boolean containedFSs, final boolean subpackages) {
+ this.bFacets = facets;
+ this.bContainedFS = containedFSs;
+ this.bSubpackages = subpackages;
+ }
+
+ public FacetSetTreeContentProvider() {
+ this(true, true, true);
+ }
+
+ public Object[] getElements(final Object inputElement) {
+ if (inputElement == null) {
+ throw new IllegalArgumentException("inputElement must not be null"); //$NON-NLS-1$
+ }
+ if (!(inputElement instanceof Object[])) {
+ throw new IllegalArgumentException("inputElement must be an array"); //$NON-NLS-1$
+ }
+ return (Object[]) inputElement;
+ }
+
+ public void inputChanged(final Viewer viewer, final Object oldInput, final Object newInput) {
+ // Nothing to do
+ }
+
+ public Object[] getChildren(final Object parentElement) {
+ final List<Object> children = new ArrayList<Object>();
+ if (parentElement instanceof FacetSet) {
+ final FacetSet facetSet = (FacetSet) parentElement;
+ if (this.bContainedFS) {
+ children.addAll(facetSet.getFacetSets());
+ }
+ if (this.bFacets) {
+ children.addAll(FacetUtils.getFacets(facetSet));
+ }
+ if (this.bSubpackages) {
+ children.addAll(facetSet.getESubpackages());
+ }
+ }
+ return children.toArray();
+ }
+
+ public Object getParent(final Object element) {
+ Object parent = null;
+ if (element instanceof Facet) {
+ final Facet facet = (Facet) element;
+ parent = FacetUtils.getFacetSet(facet);
+ } else if (element instanceof EPackage) {
+ final EPackage ePackage = (EPackage) element;
+ parent = ePackage.getESuperPackage();
+ }
+ return parent;
+ }
+
+ public boolean hasChildren(final Object element) {
+ return getChildren(element).length > 0;
+ }
+
+ public void dispose() {
+ // Nothing to do
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/SelectQueryDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/SelectQueryDialog.java
new file mode 100644
index 00000000000..e19755604ed
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/SelectQueryDialog.java
@@ -0,0 +1,135 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.dialogs;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.QuerySet;
+import org.eclipse.papyrus.emf.facet.efacet.catalog.efacetcatalog.QuerySetCatalog;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManager;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.graphics.Font;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Tree;
+import org.eclipse.swt.widgets.TreeItem;
+import org.eclipse.ui.dialogs.SelectionDialog;
+
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class SelectQueryDialog extends SelectionDialog {
+
+ private static final int SHELL_SIZE = 300;
+ private Tree tree = null;
+ private Query selectedQuery = null;
+
+ public SelectQueryDialog(final Shell parent) {
+ super(parent);
+ }
+
+ @Override
+ public Object[] getResult() {
+ return new Object[] { this.selectedQuery };
+ }
+
+ @Override
+ protected void configureShell(final Shell shell) {
+ shell.setSize(SelectQueryDialog.SHELL_SIZE, SelectQueryDialog.SHELL_SIZE);
+ super.configureShell(shell);
+ }
+
+ @Override
+ protected Control createDialogArea(final Composite parent) {
+ Composite composite = (Composite) super.createDialogArea(parent);
+ Font font = parent.getFont();
+ composite.setFont(font);
+ GridData gd = new GridData(SWT.FILL, SWT.FILL, false, false);
+ this.tree = new Tree(composite, SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
+ this.tree.setLayoutData(gd);
+ EList<Catalog> catalogs = ICatalogSetManager.INSTANCE.getCatalogSet().getCatalogs();
+
+ QuerySetCatalog querySetCatalog = null;
+ for (Catalog catalog : catalogs) {
+ if (catalog instanceof QuerySetCatalog) {
+ querySetCatalog = (QuerySetCatalog) catalog;
+ break;
+ }
+ }
+ Image rootIcon = ImageDescriptor.createFromURL(Activator.getDefault().getBundle().getResource("icons/querySet.gif")).createImage(); //$NON-NLS-1$
+
+ if (querySetCatalog != null) {
+
+ for (QuerySet querySet : querySetCatalog.getInstalledQuerySets()) {
+ TreeItem root = new TreeItem(this.tree, 0);
+ root.setText(querySet.getName());
+ root.setData(querySet);
+ root.setImage(rootIcon);
+ // see
+ // http://dev.eclipse.org/viewcvs/viewvc.cgi/org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet8.java?view=co
+ // for this dummyTreeItem, it will be populated later in the listener
+ @SuppressWarnings("unused")
+ TreeItem dummyTreeItem = new TreeItem(root, 0);
+ }
+ this.tree.addListener(SWT.Expand, new Listener() {
+ public void handleEvent(final Event event) {
+ final TreeItem root = (TreeItem) event.item;
+ TreeItem[] items = root.getItems();
+ for (TreeItem item : items) {
+ if (item.getData() != null) {
+ return;
+ }
+ item.dispose();
+ }
+ QuerySet querySet = (QuerySet) root.getData();
+ EList<Query> queries = querySet.getQueries();
+ if (queries == null) {
+ return;
+ }
+
+ for (Query query : queries) {
+ TreeItem item = new TreeItem(root, 0);
+ item.setText(query.getName());
+ item.setData(query);
+ }
+ }
+ });
+
+ this.tree.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ if (e.item instanceof TreeItem) {
+ TreeItem treeItem = (TreeItem) e.item;
+ if (treeItem.getData() instanceof Query) {
+ setSelectedQuery((Query) treeItem.getData());
+ }
+ }
+ }
+ });
+ }
+
+ return composite;
+ }
+
+ protected void setSelectedQuery(final Query selectedQuery) {
+ this.selectedQuery = selectedQuery;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/SynchronizedETypedElementSelectionDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/SynchronizedETypedElementSelectionDialog.java
new file mode 100644
index 00000000000..87cd87a5bac
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/SynchronizedETypedElementSelectionDialog.java
@@ -0,0 +1,101 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 370442 - rewrite the Facet loading dialog for v0.2
+ * Nicolas Bros (Mia-Software) - Bug 370806 - [table] rewrite the "allowed contents" query selection dialog for v0.2
+ * Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List<ETypedElement>, List<FacetSet>)
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.dialogs;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog.IETypedElementSelectionDialog;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog.IETypedElementSelectionDialogInternal;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedComposite;
+import org.eclipse.swt.widgets.Shell;
+
+/** A synchronization facade for {@link IETypedElementSelectionDialog}. */
+public class SynchronizedETypedElementSelectionDialog<T2, D> extends
+ SynchronizedComposite<Shell> implements
+ IETypedElementSelectionDialogInternal<D> {
+
+ private final IETypedElementSelectionDialogInternal<D> dialog;
+
+ public IETypedElementSelectionDialogInternal<D> getDialog() {
+ return this.dialog;
+ }
+
+ public SynchronizedETypedElementSelectionDialog(
+ final ETypedElementSelectionDialog<T2, D> delegate) {
+ super(delegate.getShell());
+ this.dialog = delegate;
+ }
+
+ public D pressOk() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<D>() {
+ @Override
+ public D safeRun() {
+ return getDialog().pressOk();
+ }
+ });
+ }
+
+ public void pressCancel() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ getDialog().pressCancel();
+ }
+ });
+
+ }
+
+ public List<ETypedElement> getSelectedETypedElements() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<List<ETypedElement>>() {
+ @Override
+ public List<ETypedElement> safeRun() {
+ return getDialog().getSelectedETypedElements();
+ }
+ });
+ }
+
+ public ETypedElement getFirstSelectedETypedElement() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<ETypedElement>() {
+ @Override
+ public ETypedElement safeRun() {
+ return getDialog().getFirstSelectedETypedElement();
+ }
+ });
+ }
+
+ public void setSelectedETypedElements(final List<? extends ETypedElement> newSelection) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ getDialog().setSelectedETypedElements(newSelection);
+
+ }
+ });
+ }
+
+ public int getReturnCode() {
+ return getDialog().getReturnCode();
+ }
+
+ public boolean isOkButtonEnabled() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(getDialog().isOkButtonEnabled());
+ }
+ }).booleanValue();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/SynchronizedFacetSetSelectionDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/SynchronizedFacetSetSelectionDialog.java
new file mode 100644
index 00000000000..4ee0a1add95
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/dialogs/SynchronizedFacetSetSelectionDialog.java
@@ -0,0 +1,102 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.dialogs;
+
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog.IFacetSetSelectionDialog;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog.IFacetSetSelectionDialogInternal;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedComposite;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.swt.widgets.Shell;
+
+/** A synchronization facade for {@link IFacetSetSelectionDialog}. */
+public class SynchronizedFacetSetSelectionDialog<T> extends SynchronizedComposite<Shell> implements IFacetSetSelectionDialogInternal<T> {
+
+ private final IFacetSetSelectionDialogInternal<T> dialog;
+
+ public IFacetSetSelectionDialogInternal<T> getDialog() {
+ return this.dialog;
+ }
+
+ public SynchronizedFacetSetSelectionDialog(final FacetSetSelectionDialog<T> delegate) {
+ super(delegate.getShell());
+ this.dialog = delegate;
+ }
+
+ public void setSelectedFacetSets(final List<? extends FacetSet> newSelection) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ getDialog().setSelectedFacetSets(newSelection);
+
+ }
+ });
+ }
+
+ public T pressOk() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<T>() {
+ @Override
+ public T safeRun() {
+ return getDialog().pressOk();
+ }
+ });
+ }
+
+ public void pressCancel() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ getDialog().pressCancel();
+ }
+ });
+ }
+
+ public void selectAll() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ getDialog().selectAll();
+ }
+ });
+ }
+
+ public void deselectAll() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ getDialog().deselectAll();
+ }
+ });
+ }
+
+ public boolean isOkButtonEnabled() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(getDialog().isOkButtonEnabled());
+ }
+ }).booleanValue();
+ }
+
+ public TreeViewer getTreeViewer() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<TreeViewer>() {
+ @Override
+ public TreeViewer safeRun() {
+ return getDialog().getTreeViewer();
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/EFacetUIConstants.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/EFacetUIConstants.java
new file mode 100644
index 00000000000..8e244938e8f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/EFacetUIConstants.java
@@ -0,0 +1,24 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372626 - Aggregates
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported;
+
+public final class EFacetUIConstants {
+
+ private static final String CATALOG_VIEW_ID = "org.eclipse.papyrus.emf.facet.efacet.ui.view.catalog"; //$NON-NLS-1$
+
+ private EFacetUIConstants() {
+ // utility class
+ }
+
+ public static String getFacetSetsCatalogViewId() {
+ return EFacetUIConstants.CATALOG_VIEW_ID;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IETypedElementSelectionDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IETypedElementSelectionDialog.java
new file mode 100644
index 00000000000..f3e3d97da02
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IETypedElementSelectionDialog.java
@@ -0,0 +1,35 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 370806 - [table] rewrite the "allowed contents" query selection dialog for v0.2
+ * Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List<ETypedElement>, List<FacetSet>)
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.ETypedElement;
+
+/**
+ * A dialog to let the user select ETypedElements.
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ * @since 0.2.0
+ */
+public interface IETypedElementSelectionDialog<D> {
+
+ /** Set the selection to the given list of ETypedElements */
+ void setSelectedETypedElements(List<? extends ETypedElement> newSelection);
+
+ /** Emulate a press on the OK button */
+ D pressOk();
+
+ /** Emulate a press on the Cancel button */
+ void pressCancel();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IETypedElementSelectionDialogCallback.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IETypedElementSelectionDialogCallback.java
new file mode 100644
index 00000000000..3946397c9bc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IETypedElementSelectionDialogCallback.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 370806 - [table] rewrite the "allowed contents" query selection dialog for v0.2
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.ETypedElement;
+
+/**
+ * Called when a {@link IETypedElementSelectionDialog} is closed, either by OK or Cancel.
+ * <p>
+ * This interface is intended to be implemented by clients.
+ *
+ * @since 0.2.0
+ */
+public interface IETypedElementSelectionDialogCallback {
+ /** The user canceled the dialog */
+ void canceled();
+
+ /** The user committed their selection in the dialog */
+ void committed(List<ETypedElement> selection);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IETypedElementSelectionDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IETypedElementSelectionDialogFactory.java
new file mode 100644
index 00000000000..ddf090a7678
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IETypedElementSelectionDialogFactory.java
@@ -0,0 +1,62 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 370806 - [table] rewrite the "allowed contents" query selection dialog for v0.2
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ * Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List<ETypedElement>, List<FacetSet>)
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.dialogs.ETypedElementSelectionDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallbackWithPreCommit;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.swt.widgets.Shell;
+
+/**
+ * A factory to create {@link IETypedElementSelectionDialog}s
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ * @since 0.2.0
+ */
+public interface IETypedElementSelectionDialogFactory {
+
+ /** This is the default instance of this interface. */
+ IETypedElementSelectionDialogFactory DEFAULT = new ETypedElementSelectionDialogFactory();
+
+ /**
+ * Open a dialog to let the user select ETypedElements to load.
+ *
+ * @param eTypedElements
+ * the list of ETypedElements that can be selected using this dialog
+ * @param selectionMaxSize
+ * the maximum number of typed elements that the user can select
+ * @param allowEmpty
+ * whether to allow the user to select no ETypedElement (i.e : select <code>null</code>)
+ * @param callback
+ * called when the dialog closes
+ * @param parentShell
+ * the parent shell
+ * @param customManager
+ * the customization manager used by the
+ * ICustomizableLabelProvider. Can be null.
+ */
+ <T2, D> IETypedElementSelectionDialog<D> openETypedElementSelectionDialog(
+ Collection<? extends ETypedElement> eTypedElements,
+ int selectionMaxSize, boolean allowEmpty,
+ IDialogCallbackWithPreCommit<List<ETypedElement>, T2, D> callback,
+ Shell parentShell,
+ ICustomizationManager customManager,
+ Collection<? extends EPackage> knownFacetSets);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IETypedElementSelectionDialogInternal.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IETypedElementSelectionDialogInternal.java
new file mode 100644
index 00000000000..b23ad43e5f4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IETypedElementSelectionDialogInternal.java
@@ -0,0 +1,53 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 370806 - [table] rewrite the "allowed contents" query selection dialog for v0.2
+ * Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List<ETypedElement>, List<FacetSet>)
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.jface.window.Window;
+
+/**
+ * Internal interface for a dialog to let the user select ETypedElements.
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ * @since 0.2.0
+ */
+public interface IETypedElementSelectionDialogInternal<D> extends
+ IETypedElementSelectionDialog<D> {
+
+ /**
+ * @return whether the "OK" button is currently enabled. It can be disabled if a validator is set, and the current
+ * selection is not valid.
+ */
+ boolean isOkButtonEnabled();
+
+ /**
+ * @return the selected ETypedElements.
+ * @throws UnsupportedOperationException
+ * if the dialog was cancelled (check {@link IETypedElementSelectionDialogInternal#getReturnCode()
+ * getReturnCode} before calling this method
+ */
+ List<ETypedElement> getSelectedETypedElements();
+
+ /**
+ * @return the first selected ETypedElements or <code>null</code> if none.
+ * @throws UnsupportedOperationException
+ * if the dialog was cancelled (check {@link IETypedElementSelectionDialogInternal#getReturnCode()
+ * getReturnCode} before calling this method
+ */
+ ETypedElement getFirstSelectedETypedElement();
+
+ /** @return {@link Window#OK} or {@link Window#CANCEL}. */
+ int getReturnCode();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IFacetSetSelectionDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IFacetSetSelectionDialog.java
new file mode 100644
index 00000000000..44ba3ebb51e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IFacetSetSelectionDialog.java
@@ -0,0 +1,47 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog;
+
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+
+/**
+ * A dialog to let the user select facet sets to load.
+ *
+ * @param <T>
+ * the type of a pre-commit dialog
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ * @since 0.2.0
+ */
+public interface IFacetSetSelectionDialog<T> {
+
+ /** Set the selection to the given list of {@link FacetSet}s */
+ void setSelectedFacetSets(List<? extends FacetSet> newSelection);
+
+ /**
+ * Emulate a press on the OK button
+ *
+ * @return a pre-commit dialog, or <code>null</code> if no pre-commit dialog was opened
+ */
+ T pressOk();
+
+ /** Emulate a press on the Cancel button */
+ void pressCancel();
+
+ /** Check all {@link FacetSet}s */
+ void selectAll();
+
+ /** Uncheck all {@link FacetSet}s */
+ void deselectAll();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IFacetSetSelectionDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IFacetSetSelectionDialogFactory.java
new file mode 100644
index 00000000000..a9ca0662511
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IFacetSetSelectionDialogFactory.java
@@ -0,0 +1,72 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.dialogs.FacetSetSelectionDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallbackWithPreCommit;
+import org.eclipse.swt.widgets.Shell;
+
+/**
+ * A factory to create {@link IFacetSetSelectionDialog}s
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ * @since 0.2.0
+ */
+public interface IFacetSetSelectionDialogFactory {
+
+ /** This is the default instance of this interface. */
+ IFacetSetSelectionDialogFactory DEFAULT = new FacetSetSelectionDialogFactory();
+
+ /**
+ * Open a dialog to let the user select facet sets.
+ *
+ * @param available
+ * the {@link FacetSet}s the user will be able to select in the dialog
+ * @param selectionMaxSize
+ * the maximum number of {@link FacetSet}s that the user can select
+ * @param allowEmpty
+ * whether to allow the user to select no FacetSet (i.e : select <code>null</code>)
+ * @param callback
+ * called when the dialog closes
+ * @param parentShell
+ * the parent shell
+ * @return an instance of the dialog being opened
+ */
+ IFacetSetSelectionDialog<?> openFacetSetSelectionDialog(Collection<FacetSet> available,
+ int selectionMaxSize, boolean allowEmpty, IDialogCallback<List<FacetSet>> callback,
+ Shell parentShell);
+
+ /**
+ * Open a dialog to let the user select facet sets. The callback will be called before the dialog closes, to let you
+ * open a "pre-commit" dialog, to ask the user for confirmation for example.
+ *
+ * @param available
+ * the {@link FacetSet}s the user will be able to select in the dialog
+ * @param selectionMaxSize
+ * the maximum number of {@link FacetSet}s that the user can select
+ * @param allowEmpty
+ * whether to allow the user to select no FacetSet (i.e : select <code>null</code>)
+ * @param callback
+ * called before the dialog is committed, and again when the dialog is committed
+ * @param parentShell
+ * the parent shell
+ * @return an instance of the dialog being opened
+ */
+ <T> IFacetSetSelectionDialog<T> openFacetSetSelectionDialog(Collection<FacetSet> available,
+ int selectionMaxSize, boolean allowEmpty, IDialogCallbackWithPreCommit<List<FacetSet>, Boolean, T> callback,
+ Shell parentShell);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IFacetSetSelectionDialogInternal.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IFacetSetSelectionDialogInternal.java
new file mode 100644
index 00000000000..4a07a4c3557
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/dialog/IFacetSetSelectionDialogInternal.java
@@ -0,0 +1,35 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.dialog;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.jface.viewers.TreeViewer;
+
+/**
+ * Internal interface for a dialog to let the user select {@link FacetSet}s.
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ *
+ * @param <T>
+ * the type of a pre-commit dialog (can be <code>null</code> if there is no pre-commit dialog)
+ */
+public interface IFacetSetSelectionDialogInternal<T> extends IFacetSetSelectionDialog<T> {
+
+ /**
+ * @return whether the "OK" button is currently enabled. It can be disabled if a validator is set, and the current
+ * selection is not valid.
+ */
+ boolean isOkButtonEnabled();
+
+ /** @return the tree viewer */
+ TreeViewer getTreeViewer();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/view/INavigationView.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/view/INavigationView.java
new file mode 100644
index 00000000000..5a699aa847c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/view/INavigationView.java
@@ -0,0 +1,124 @@
+/**
+ * Copyright (c) 2011-2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 379395 - Navigate should replace elements
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.view;
+
+import java.io.NotActiveException;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.ui.IETypedElementResultDisplayerOpener;
+import org.eclipse.ui.part.WorkbenchPart;
+
+/**
+ * This interface presents the services provided by a navigation view.
+ *
+ * @author Gregoire Dupe
+ *
+ */
+public interface INavigationView {
+
+ /**
+ * Add {@link EObject}s to the list of sources.
+ * <p>
+ * This method is called by the drop listener to fill the the navigation source {@link EObject} list
+ *
+ * @param eObjects
+ * the model elements to add to the list of sources
+ */
+ void addEObjects(Collection<? extends EObject> eObjects);
+
+ /**
+ * This method removes one eObject from the navigation source {@link EObject} list
+ *
+ * This method must be called by the "Delete" command handler.
+ *
+ * @param eObject
+ * eObject to remove from the navigation source {@link EObject} list
+ */
+ void removeEObject(EObject eObject);
+
+ /**
+ * This method remove a list of eObject from the navigation source {@link EObject} list
+ * This method must be called by the "Delete" command handler
+ *
+ * @param eObjects
+ * eObjects to remove from the navigation source {@link EObject} list
+ */
+ void removeEObjects(List<? extends EObject> eObjects);
+
+ /**
+ * This method clear the navigation source {@link EObject} list
+ */
+ void removeAllEObjects();
+
+ /**
+ * The methods must return the classifier for which each selected EObject conforms to.
+ *
+ * @return classifiers usable to the navigation
+ */
+ List<EClassifier> getUsableEClassifiers();
+
+ /**
+ * This method selects the eTypedElement that we want to navigate through. We can navigate
+ * through an eStructuralFeature (or an eOperation) owned by a Facet or owned by an EClass.
+ *
+ * @param eTypedElement
+ * must a contained by one of the classifier returned by getUsableEClassifiers().
+ * @throws IllegalArgumentException
+ * if eTypedElement is {@link NotActiveException} contained by one of the classifier
+ * returned by getUsableEClassifiers().
+ */
+ void selectETypedElement(ETypedElement eTypedElement);
+
+ /**
+ * This method returns the eTypedElement that we want to navigate through.
+ *
+ * @return the eTypedElement that we want to navigate through.
+ */
+ ETypedElement getSelectedETypedElement();
+
+ /**
+ * This method returns the list of {@link IETypedElementResultDisplayerOpener} which have
+ * been resisted using the org.eclipse.papyrus.emf.facet.efacet.ui.displayeropener extension point.
+ *
+ * @return a list of {@link IETypedElementResultDisplayerOpener}
+ */
+ List<IETypedElementResultDisplayerOpener> getAvailableSelectedDisplayers();
+
+ /**
+ * This method has to be used to select a {@link IETypedElementResultDisplayerOpener}
+ *
+ * @param resultDisplayer
+ * must be contained in the list returned by getAvailableSelectedDisplayers().
+ */
+ void setSelectDisplayer(
+ IETypedElementResultDisplayerOpener resultDisplayer);
+
+ /**
+ * This method the selected {@link IETypedElementResultDisplayerOpener}
+ *
+ * @return an {@link IETypedElementResultDisplayerOpener} which is contained by the list
+ * returned by getAvailableSelectedDisplayers().
+ */
+ IETypedElementResultDisplayerOpener getSelectedDisplayer();
+
+ /**
+ * This method performs the navigation and return the {@link WorkbenchPart} in which the result is presented.
+ *
+ * @return
+ */
+ WorkbenchPart preform();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/view/INavigationViewFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/view/INavigationViewFactory.java
new file mode 100644
index 00000000000..ac75602f9ca
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/view/INavigationViewFactory.java
@@ -0,0 +1,38 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.view;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.view.NavigationViewFactory;
+
+/**
+ * This interface allows to get an instance of the {@link INavigationView} interface
+ *
+ * @author Gregoire Dupe
+ *
+ */
+public interface INavigationViewFactory {
+
+ /**
+ * This is the default instance of this interface.
+ */
+ INavigationViewFactory DEFAULT = new NavigationViewFactory();
+
+ /**
+ * This method is the only way to open and access the navigation view.
+ * @param editingDomain
+ *
+ * @return an instance of {@link INavigationView}
+ */
+ INavigationView openNavigationView(EditingDomain editingDomain);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/widget/IETypedElementSelectionWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/widget/IETypedElementSelectionWidget.java
new file mode 100644
index 00000000000..be0b02e0c30
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/widget/IETypedElementSelectionWidget.java
@@ -0,0 +1,42 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 370442 - rewrite the Facet loading dialog for v0.2
+ * Nicolas Bros (Mia-Software) - Bug 370806 - [table] rewrite the "allowed contents" query selection dialog for v0.2
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.widget;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.ecore.ETypedElement;
+
+/**
+ * A widget to select one or more {@link ETypedElement}s from a list
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ * @since 0.2.0
+ */
+public interface IETypedElementSelectionWidget {
+
+ /**
+ * This method can be called at any time to change the {@link ETypedElement}s which can be selected by the user.
+ *
+ * @param available
+ * the {@link ETypedElement}s that can be selected in this widget
+ */
+ void setAvailableETypedElements(Collection<? extends ETypedElement> available);
+
+ /** @return the list of selected {@link ETypedElement}s */
+ List<ETypedElement> getSelectedETypedElements();
+
+ /** Select the given {@link ETypedElement}s in this widget. */
+ void setSelectedETypedElements(Collection<? extends ETypedElement> elementsToSelect);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/widget/IETypedElementSelectionWidgetFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/widget/IETypedElementSelectionWidgetFactory.java
new file mode 100644
index 00000000000..046cad2a728
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/widget/IETypedElementSelectionWidgetFactory.java
@@ -0,0 +1,55 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 370442 - rewrite the Facet loading dialog for v0.2
+ * Nicolas Bros (Mia-Software) - Bug 370806 - [table] rewrite the "allowed contents" query selection dialog for v0.2
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.widget;
+
+import java.util.Collection;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget.ETypedElementSelectionWidgetFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Factory for {@link IETypedElementSelectionWidget}
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ * @since 0.2.0
+ */
+public interface IETypedElementSelectionWidgetFactory {
+ /** This is the default instance of this interface. */
+ IETypedElementSelectionWidgetFactory DEFAULT = new ETypedElementSelectionWidgetFactory();
+
+ /**
+ * Open a dialog to let the user select ETypedElements
+ *
+ * @param selectionMaxSize
+ * the maximum number of typed elements that the user can select.
+ * @param allowEmpty
+ * whether to allow the user to select no ETypedElement (i.e :
+ * select <code>null</code>)
+ * @param parentComposite
+ * the parent composite
+ * @param customManager
+ * the customization manager used by the
+ * ICustomizableLabelProvider
+ * @since 0.2
+ */
+ IETypedElementSelectionWidget createETypedElementSelectionWidget(
+ int selectionMaxSize,
+ boolean allowEmpty,
+ Composite parentComposite,
+ ICustomizationManager customManager,
+ Collection<? extends EObject> knownEPackage);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/widget/IFacetSetSelectionWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/widget/IFacetSetSelectionWidget.java
new file mode 100644
index 00000000000..4453c401c7b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/widget/IFacetSetSelectionWidget.java
@@ -0,0 +1,51 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.widget;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.swt.widgets.Control;
+
+/**
+ * A widget to select one or more {@link FacetSet}s from a tree
+ *
+ * @since 0.2.0
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IFacetSetSelectionWidget {
+
+ /**
+ * This method can be called at any time to change the {@link FacetSet}s which can be selected by the user.
+ *
+ * @param available
+ * the {@link FacetSet}s that can be selected in this widget
+ */
+ void setAvailableFacetSets(Collection<? extends FacetSet> available);
+
+ /** @return the list of selected {@link FacetSet}s */
+ List<FacetSet> getSelectedFacetSets();
+
+ /** Select the given {@link FacetSet}s in this widget. */
+ void setSelectedFacetSets(Collection<? extends FacetSet> newSelection);
+
+ /**
+ * @return the validation status : the selection is not valid if {@link IStatus#getSeverity()} >=
+ * {@link IStatus#ERROR}
+ */
+ IStatus getValidationStatus();
+
+ /** @return the SWT control */
+ Control getControl();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/widget/IFacetSetSelectionWidgetFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/widget/IFacetSetSelectionWidgetFactory.java
new file mode 100644
index 00000000000..8a11f38642b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/widget/IFacetSetSelectionWidgetFactory.java
@@ -0,0 +1,44 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.widget;
+
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget.FacetSetSelectionWidgetFactory;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Factory for {@link IFacetSetSelectionWidget}
+ *
+ * @since 0.2.0
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IFacetSetSelectionWidgetFactory {
+ /** This is the default instance of this interface. */
+ IFacetSetSelectionWidgetFactory DEFAULT = new FacetSetSelectionWidgetFactory();
+
+ /**
+ * Open a dialog to let the user select ETypedElements
+ *
+ * @param selectionMaxSize
+ * the maximum number of typed elements that the user can select.
+ * @param allowEmpty
+ * whether to allow the user to select no ETypedElement (i.e : select <code>null</code>)
+ * @param parentComposite
+ * the parent composite
+ * @param onChange
+ * called when the selection changes
+ */
+ IFacetSetSelectionWidget createFacetSetSelectionWidget(
+ int selectionMaxSize,
+ boolean allowEmpty,
+ Composite parentComposite,
+ Runnable onChange);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/ICreateFacetInFacetSetWizard.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/ICreateFacetInFacetSetWizard.java
new file mode 100644
index 00000000000..c1401ffce4d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/ICreateFacetInFacetSetWizard.java
@@ -0,0 +1,34 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+
+/**
+ *
+ * @deprecated This interface has been replaced by ICreateFacetInFacetSetWizard2. No tracking bug needed because this API has not been released yet.
+ * @since 0.2
+ */
+@Deprecated
+public interface ICreateFacetInFacetSetWizard {
+
+ public void setFacetSet(FacetSet facetSet);
+
+ public void canChangeFacetSet(boolean canChange);
+
+ public void setExtendedMetaClass(EClass extendedMetaClass);
+
+ public void canChangeExtendedMetaClass(boolean canChange);
+
+ public int open();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/ICreateFacetInFacetSetWizard2.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/ICreateFacetInFacetSetWizard2.java
new file mode 100644
index 00000000000..8a199d5695e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/ICreateFacetInFacetSetWizard2.java
@@ -0,0 +1,34 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Gregoire Dupe (Mia-Software) - Bug 361617 - Deprecation of APIs for the old Facet metamodels
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+
+/**
+ * TODO This interface has to be renamed to ICreateFacetInFacetSetWizard before the release of 0.2
+ * @since 0.2
+ */
+//TODO This interface has to be renamed to ICreateFacetInFacetSetWizard before the release of 0.2
+public interface ICreateFacetInFacetSetWizard2 {
+
+ public void setFacetSet(FacetSet facetSet);
+
+ public void canChangeFacetSet(boolean canChange);
+
+ public void setExtendedMetaClass(EClass extendedMetaClass);
+
+ public void canChangeExtendedMetaClass(boolean canChange);
+
+ public int open();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/ICreateFacetSetWizard.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/ICreateFacetSetWizard.java
new file mode 100644
index 00000000000..045782b4895
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/ICreateFacetSetWizard.java
@@ -0,0 +1,18 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard;
+
+public interface ICreateFacetSetWizard {
+
+ public int open();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/IFacetChildrenWizard.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/IFacetChildrenWizard.java
new file mode 100644
index 00000000000..65f35ecc286
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/IFacetChildrenWizard.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.Facet;
+
+/**
+ *
+ * @deprecated This interface has been replaced by ICreateFacetInFacetSetWizard2. No tracking bug needed because this API has not been released yet.
+ * @since 0.2
+ */
+@Deprecated
+public interface IFacetChildrenWizard {
+
+ public int open();
+
+ public void setFacet(Facet facet);
+
+ public void setChildrenName(String name);
+
+ public void setUpperBound(int upperBound);
+
+ public void setLowerBound(int lowerBound);
+
+ public void setType(EClass type);
+
+ public void canChangeFacet(boolean canChange);
+
+ public void canChangeChildrenName(boolean canChange);
+
+ public void canChangeUpperBound(boolean canChange);
+
+ public void canChangeLowerBound(boolean canChange);
+
+ public void canChangeType(boolean canChange);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/IFacetChildrenWizard2.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/IFacetChildrenWizard2.java
new file mode 100644
index 00000000000..3dae85aa85e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/IFacetChildrenWizard2.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Gregoire Dupe (Mia-Software) - Bug 361617 - Deprecation of APIs for the old Facet metamodels
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+
+/**
+ *
+ * @since 0.2
+ */
+//TODO This interface has to be renamed to ICreateFacetInFacetSetWizard before the release of 0.2
+public interface IFacetChildrenWizard2 {
+
+ public int open();
+
+ public void setFacet(Facet facet);
+
+ public void setChildrenName(String name);
+
+ public void setUpperBound(int upperBound);
+
+ public void setLowerBound(int lowerBound);
+
+ public void setType(EClass type);
+
+ public void canChangeFacet(boolean canChange);
+
+ public void canChangeChildrenName(boolean canChange);
+
+ public void canChangeUpperBound(boolean canChange);
+
+ public void canChangeLowerBound(boolean canChange);
+
+ public void canChangeType(boolean canChange);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/IQueryCreationPagePart.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/IQueryCreationPagePart.java
new file mode 100644
index 00000000000..ea7030f283c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/IQueryCreationPagePart.java
@@ -0,0 +1,167 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.IQueryCreationPagePart2;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.CreateQueryWizardPage;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This interface has to be implemented by {@link Query} factory UI Class. It is used to complete a
+ * generic {@link Query} creation wizard with specific widget.
+ * @deprecated This interface has been replaced by {@link IQueryCreationPagePart2}. No tracking bug needed because this API has not been released yet.
+ * @since 0.2
+ */
+@Deprecated
+public interface IQueryCreationPagePart {
+
+ /**
+ * Set the {@link Query}'s {@link FacetSet}.
+ *
+ * @param facetSet
+ * the given {@link FacetSet}
+ */
+ public void setFacetSet(FacetSet facetSet);
+
+ /**
+ * Set the {@link Query}'s upperBound.
+ *
+ * @param upperBound
+ * the upperBound.
+ */
+ public void setUpperBound(int upperBound);
+
+ /**
+ * Set the {@link Query}'s lowerBound.
+ *
+ * @param lowerBound
+ * the lowerBound.
+ */
+ public void setLowerBound(int lowerBound);
+
+ /**
+ * Set the {@link Query}'s {@link Query#isOrdered() <em>attribute</em>} attribute.
+ *
+ * @param ordered
+ * whether
+ */
+ public void setOrdered(final boolean ordered);
+
+ /**
+ * Set the {@link Query}'s {@link Query#isUnique() <em>unique</em>} attribute.
+ *
+ * @param unique
+ * Whether the query is unique or not.
+ */
+ public void setUnique(final boolean unique);
+
+ /**
+ * Set the {@link Query}'s type.
+ *
+ * @param queryType
+ * the {@link Query}'s type.
+ */
+ public void setQueryType(EClassifier queryType);
+
+ /**
+ * Set the {@link Query}'s name.
+ *
+ * @param name
+ * the query's name.
+ */
+ public void setQueryName(String name);
+
+ /**
+ * Set the {@link Query}'s {@link Query#isCanBeCached() <em>Can Be Cached</em>}.
+ *
+ * @param canBeCached
+ * whether the query result can be cached.
+ */
+ public void setCanBeCached(boolean canBeCached);
+
+ /**
+ * Set the {@link Query}'s {@link Query#isHasSideEffect() <em>Has Side Effect</em>}.
+ *
+ * @param hasSideEffect
+ * whether the query has side effect, such as modifying a model when applied on it.
+ */
+ public void setHasSideEffect(boolean hasSideEffect);
+
+ /**
+ * Set the {@link Query}'s '{@link Query#getScope <em>Scope</em>}'.
+ *
+ * @param type
+ * the {@link Query}'s '{@link Query#getScope <em>Scope</em>}'.
+ */
+ public void setQueryScope(EClass scope);
+
+ /**
+ * This method is dedicated to create a {@link Query} with every attribute set by the others
+ * methods of {@link IQueryCreationPagePart}.
+ *
+ * @return the newly created {@link Query}
+ */
+ public Query performFinish();
+
+ /**
+ * This method is called by the {@link CreateQueryWizardPage}.
+ *
+ * @param parent
+ * the Wizard's composite to be completed with specific widget for this {@link Query} creation.
+ */
+ public void completeComposite(Composite parent);
+
+ /**
+ * Returns <code>true</code> if the composite is complete.
+ *
+ * @return <code>true</code> if the composite is complete.
+ */
+ public boolean isCompositeComplete();
+
+ /**
+ * Returns the error messages generated by the part, or null if none.
+ *
+ * @return the error messages generated by the part, or null if none.
+ */
+ public String getErrorMessage();
+
+ /**
+ * Add a {@link ModifyListener} on the part.
+ *
+ * @param listener
+ * a {@link ModifyListener}
+ */
+ public void addModifyListener(ModifyListener listener);
+
+ /**
+ * Remove an existing {@link ModifyListener} from the part's listener.
+ *
+ * @param listener
+ * an existing {@link ModifyListener} listener.
+ */
+ public void removeModifyListener(ModifyListener listener);
+
+ /**
+ * Notify the registered listener that something has been modified in the part. It should only
+ * be used as a way to update the buttons' state of the containing wizard dialog.
+ *
+ * @param modifiedComposite
+ * the composite on which the modification occured.
+ */
+ public void notifyCompositeListeners(Composite modifiedComposite);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/ISelectETypeWizard.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/ISelectETypeWizard.java
new file mode 100644
index 00000000000..f6c451bc42c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/exported/wizard/ISelectETypeWizard.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard;
+
+import org.eclipse.emf.ecore.EClassifier;
+
+public interface ISelectETypeWizard {
+ public int open();
+
+ public EClassifier getSelectedEType();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/AddFacetAttributeHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/AddFacetAttributeHandler.java
new file mode 100644
index 00000000000..6d1e3a094ca
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/AddFacetAttributeHandler.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.handlers;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.IFacetUIFactory;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IFacetChildrenWizard;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.PlatformUI;
+
+/**
+ * This class handle the action "Add facet attribute"
+ */
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class AddFacetAttributeHandler extends AbstractHandler {
+
+ public Object execute(final ExecutionEvent event) throws ExecutionException {
+ ISelection selection = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getSelectionService().getSelection();
+
+ // Retrieve the editor
+ IEditorPart editor = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor();
+ // Retrieve the editing domain
+ EditingDomain editingDomain = ((IEditingDomainProvider) editor).getEditingDomain();
+
+ IFacetChildrenWizard dialog = IFacetUIFactory.INSTANCE.createAddFacetAttributeWizardDialog(selection, editingDomain);
+ dialog.canChangeFacet(false);
+ dialog.setLowerBound(0);
+ dialog.setUpperBound(0);
+ dialog.open();
+ return null;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/AddFacetOperationHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/AddFacetOperationHandler.java
new file mode 100644
index 00000000000..f142f49f9ca
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/AddFacetOperationHandler.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.handlers;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.IFacetUIFactory;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IFacetChildrenWizard;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.PlatformUI;
+
+/**
+ * This class handle the action "Add facet operation"
+ */
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class AddFacetOperationHandler extends AbstractHandler {
+
+ public Object execute(final ExecutionEvent event) throws ExecutionException {
+ ISelection selection = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getSelectionService().getSelection();
+
+ // Retrieve the editor
+ IEditorPart editor = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor();
+ // Retrieve the editing domain
+ EditingDomain editingDomain = ((IEditingDomainProvider) editor).getEditingDomain();
+
+ IFacetChildrenWizard dialog = IFacetUIFactory.INSTANCE.createAddFacetOperationWizardDialog(selection, editingDomain);
+ dialog.canChangeFacet(false);
+ dialog.setLowerBound(0);
+ dialog.setUpperBound(0);
+ dialog.open();
+ return null;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/AddFacetParameterOperationHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/AddFacetParameterOperationHandler.java
new file mode 100644
index 00000000000..faf10a6f8e4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/AddFacetParameterOperationHandler.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.handlers;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.IFacetUIFactory;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IFacetChildrenWizard;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.PlatformUI;
+
+/**
+ * This class handle the action "Add facet operation parameter"
+ */
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class AddFacetParameterOperationHandler extends AbstractHandler {
+
+ public Object execute(final ExecutionEvent event) throws ExecutionException {
+ ISelection selection = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getSelectionService().getSelection();
+
+ // Retrieve the editor
+ IEditorPart editor = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor();
+ // Retrieve the editing domain
+ EditingDomain editingDomain = ((IEditingDomainProvider) editor).getEditingDomain();
+
+ IFacetChildrenWizard dialog = IFacetUIFactory.INSTANCE.createAddFacetOperationParameterWizardDialog(selection, editingDomain);
+ dialog.canChangeFacet(false);
+ dialog.setLowerBound(0);
+ dialog.setUpperBound(0);
+ dialog.open();
+ return null;
+ }
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/AddFacetReferenceHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/AddFacetReferenceHandler.java
new file mode 100644
index 00000000000..8879b581440
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/AddFacetReferenceHandler.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.handlers;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.IFacetUIFactory;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IFacetChildrenWizard;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.PlatformUI;
+
+/**
+ * This class handle the action "Add facet reference"
+ */
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class AddFacetReferenceHandler extends AbstractHandler {
+
+ public Object execute(final ExecutionEvent event) throws ExecutionException {
+ ISelection selection = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getSelectionService().getSelection();
+
+ // Retrieve the editor
+ IEditorPart editor = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor();
+ // Retrieve the editing domain
+ EditingDomain editingDomain = ((IEditingDomainProvider) editor).getEditingDomain();
+
+ IFacetChildrenWizard dialog = IFacetUIFactory.INSTANCE.createAddFacetReferenceWizardDialog(selection, editingDomain);
+ dialog.canChangeFacet(false);
+ dialog.setLowerBound(0);
+ dialog.setUpperBound(0);
+ dialog.open();
+ return null;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/CreateFacetInFacetSetHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/CreateFacetInFacetSetHandler.java
new file mode 100644
index 00000000000..5cbb76b7317
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/CreateFacetInFacetSetHandler.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.handlers;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.IFacetUIFactory;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.ICreateFacetInFacetSetWizard;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.PlatformUI;
+
+/**
+ * This class handle the action "Create a facet in a facetSet"
+ */
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class CreateFacetInFacetSetHandler extends AbstractHandler {
+
+ public Object execute(final ExecutionEvent event) throws ExecutionException {
+ ISelection selection = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getSelectionService().getSelection();
+
+ // Retrieve the editor
+ IEditorPart editor = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor();
+ // Retrieve the editing domain
+ EditingDomain editingDomain = ((IEditingDomainProvider) editor).getEditingDomain();
+
+ ICreateFacetInFacetSetWizard dialog = IFacetUIFactory.INSTANCE.createCreateFacetInFacetSetWizardDialog(selection, editingDomain);
+ dialog.open();
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/FacetPropertyTester.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/FacetPropertyTester.java
new file mode 100644
index 00000000000..e4426e6b7c2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/FacetPropertyTester.java
@@ -0,0 +1,54 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.handlers;
+
+import org.eclipse.core.expressions.PropertyTester;
+import org.eclipse.papyrus.emf.facet.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+import org.eclipse.jface.viewers.StructuredSelection;
+
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class FacetPropertyTester extends PropertyTester {
+
+ private static final String IS_FACET = "isFacet"; //$NON-NLS-1$
+ private static final String IS_FACET_SET = "isFacetSet"; //$NON-NLS-1$
+ private static final String IS_FACET_OP = "isFacetOperation"; //$NON-NLS-1$
+ private static final String IS_FACET_ATT = "isFacetAttribute"; //$NON-NLS-1$
+ private static final String IS_FACET_REF = "isFacetReference"; //$NON-NLS-1$
+
+ public boolean test(final Object receiver, final String property, final Object[] args, final Object expectedValue) {
+ boolean result = false;
+ if (expectedValue instanceof Boolean && receiver instanceof StructuredSelection) {
+ final StructuredSelection selection = (StructuredSelection) receiver;
+ Boolean test = null;
+ if (property.equalsIgnoreCase(FacetPropertyTester.IS_FACET)) {
+ test = Boolean.valueOf(selection.getFirstElement() instanceof Facet);
+ } else if (property.equalsIgnoreCase(FacetPropertyTester.IS_FACET_ATT)) {
+ test = Boolean.valueOf(selection.getFirstElement() instanceof FacetAttribute);
+ } else if (property.equalsIgnoreCase(FacetPropertyTester.IS_FACET_OP)) {
+ test = Boolean.valueOf(selection.getFirstElement() instanceof FacetOperation);
+ } else if (property.equalsIgnoreCase(FacetPropertyTester.IS_FACET_REF)) {
+ test = Boolean.valueOf(selection.getFirstElement() instanceof FacetReference);
+ } else if (property.equalsIgnoreCase(FacetPropertyTester.IS_FACET_SET)) {
+ test = Boolean.valueOf(selection.getFirstElement() instanceof FacetSet);
+ }
+ if (test != null) {
+ result = expectedValue.equals(test);
+ }
+ }
+ return result;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/NavigationHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/NavigationHandler.java
new file mode 100644
index 00000000000..1e00cd1557e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/handlers/NavigationHandler.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) 2011-2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Nicolas Bros (Mia-Software) - Bug 379395 - Navigate should replace elements
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.handlers;
+
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.view.INavigationView;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.view.INavigationViewFactory;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.PlatformUI;
+
+/**
+ * This class handle the action "Add facet attribute"
+ */
+public class NavigationHandler extends AbstractHandler {
+
+ public Object execute(final ExecutionEvent event) throws ExecutionException {
+ final ISelection selection = PlatformUI.getWorkbench()
+ .getActiveWorkbenchWindow().getSelectionService()
+ .getSelection();
+
+ // Retrieve the editor
+ final IEditorPart editor = PlatformUI.getWorkbench()
+ .getActiveWorkbenchWindow().getActivePage().getActiveEditor();
+ // Retrieve the editing domain
+
+ EditingDomain editingDomain = null;
+ if (editor instanceof IEditingDomainProvider) {
+ final IEditingDomainProvider edProvider = (IEditingDomainProvider) editor;
+ editingDomain = edProvider.getEditingDomain();
+ }
+
+ final List<EObject> eObjects = new LinkedList<EObject>();
+ final INavigationView view = INavigationViewFactory.DEFAULT
+ .openNavigationView(editingDomain);
+ if (selection instanceof IStructuredSelection) {
+ final IStructuredSelection sSelection = (IStructuredSelection) selection;
+ for (Object object : sSelection.toList()) {
+ if (object instanceof EObject) {
+ final EObject eObject = (EObject) object;
+ eObjects.add(eObject);
+ }
+ }
+ }
+ view.removeAllEObjects();
+ view.addEObjects(eObjects);
+ return null;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/messages.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/messages.properties
new file mode 100644
index 00000000000..f30cb8fba77
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/messages.properties
@@ -0,0 +1,127 @@
+##########################################################################
+# Copyright (c) 2011, 2012 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+# Nicolas Bros (Mia-Software) - Bug 370442 - rewrite the Facet loading dialog for v0.2
+# Grégoire Dupé (Mia-Software) - copied from /org.eclipse.papyrus.emf.facet.infra.query.ui/src/org/eclipse/emf/facet/infra/query/ui/messages.properties
+# Nicolas Bros (Mia-Software) - copied from /org.eclipse.papyrus.emf.facet.infra.query.ui/src/org/eclipse/emf/facet/infra/query/ui/messages.properties
+# Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+# Nicolas Bros (Mia-Software) - Bug 372732 - [Facet] Rewrite the catalog views for 0.2
+# Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+# Vincent Lorenzo (CEA-LIST) - Bug 357621 - Improve the label displayed for Customization and Facets
+###########################################################################
+Changeable=Changeable
+Derived=Derived
+Ordered=Ordered
+Transient=Transient
+Unique=Unique
+Volatile=Volatile
+Enter_a_nsUri=Enter a nsUri :
+Please_enter_nsUri=Please enter a nsUri
+Enter_a_prefix=Enter a prefix :
+ETypedElementSelectionControl_FlatView=Flat
+ETypedElementSelectionControl_invalidSelection=The selection contains invalid elements
+ETypedElementSelectionControl_invalidSelectionAtLeastOneElement=You must select at least 1 element
+ETypedElementSelectionControl_invalidSelectionAtMostXElements=You must select at most {0} elements
+ETypedElementSelectionControl_invalidSelectionETypedElementsOnly=Only ETypedElements can be selected
+ETypedElementSelectionDialog_dialogTitle=Select ETypedElement
+ETypedElementSelectionDialog_dialogTitleMultiSelection=Select ETypedElements
+ETypedElementSelectionDialog_radioButtonMultiSelection=ETypedElements selected below:
+ETypedElementSelectionDialog_radioButtonNoSelection=No selection
+ETypedElementSelectionDialog_radioButtonSingleSelection=ETypedElement selected below:
+ETypedElementSelectionSortedControl_groupByMetamodelView=Grouped By Metamodel
+ETypedElementSelectionSortedControl_toolTip=Display available ETypedElement sorted by extended metamodels
+Please_enter_prefix=Please enter a prefix
+Please_select_EPackage=Please, select an EPackage
+Add_an_Attribute=Add an attribute
+Add_an_Attribute_desc=Add a new attribute to the selected facet
+Attribute_name=Attribute name:
+Operation=Operation :
+Facet=Facet :
+FacetSet=FacetSet :
+FacetSetsCatalogView_categoriesColumn=Categories
+FacetSetsCatalogView_documentationColumn=Documentation
+FacetSetsCatalogView_extendsColumn=Extends
+FacetSetsCatalogView_nameColumn=Name
+FacetSetsCatalogView_viewTitle=Facet Sets
+FacetSetSelectionControl_mustSelectAtLeastOneElement=You must select at least 1 element
+FacetSetSelectionControl_mustSelectAtMostNElements=You must select at most {0} elements
+FacetSetSelectionControl_onlyFacetSetsAllowedInSelection=Only FacetSets can be selected
+FacetSetSelectionControl_selectionContainsInvalidElements=The selection contains invalid elements
+FacetSetSelectionDialog_deselectAll=Deselect All
+FacetSetSelectionDialog_selectAll=Select All
+FacetSetSelectionDialog_titleSelectFacetSet=Select FacetSet
+FacetSetSelectionDialog_titleSelectFacetSets=Select FacetSets
+Lower_bound=Lower Bound :
+Upper_bound=Upper Bound :
+Add_a_Reference=Add a reference
+Add_an_Operation=Add an Operation
+Add_an_Operation_desc=Add a new operation to the selected facet
+Add_an_Operation_Parameter=Add an Operation Parameter
+Add_an_Operation_Parameter_desc=Add a new operation's parameter to the selected operation
+Operation_name=Operation Name:
+Parameter_name=Parameter Name:
+Add_a_Reference_desc=Add a reference to the selected facet
+Create_FacetSet_Model=Create FacetSet Model
+CreateFacetInFacetSetWizardPage_could_not_find_wizard_page=Could not find the wizard for this query type
+Create_facet_in_facetSet=Create a Facet in a FacetSet
+Please_enter_value_for=Please enter a value for {0}
+CreateFacetInFacetSetWizardPage_Please_fill_extendedMetaClass=Please fill the extendedMetaClass field
+CreateFacetInFacetSetWizardPage_Sub_Typing_Facet=SubTyping Facet
+CreateFacetInFacetSetWizardPage_wizard_description=This wizard creates a new facet in a facetSet.
+CreateFacetSetWizardImpl_Create_new_facet_Set=Create a new Facet Set
+CreateFacetSetWizardImpl_FacetModel=Facet Set
+CreateFacetSetWizardImpl_File_extension_restriction=File extension has to be ".efacet"
+CreateFacetSetWizardPage_Not_a_Plugin_project=Warning : you are creating this FacetSet in a non-Plugin project. It will not be available until moved to a Plugin project.
+Create_Query=Create Query:
+FilteredElementSelectionControl_type_filter_text=type filter text
+Load_MetaModel_Resource=Load Meta-model Resource
+FacetSetSelectionDialog_selectFacetSetsMessage=Choose FacetSets:
+FacetSetSelectionDialog_selectFacetSetsTitle=Select FacetSets
+Package_Selection=Package Selection
+Select_Registered_URI=&Select a registered package URI:
+Select_EClass=Select an EClass
+Select_EClassifier=Select an EClassifier
+Select_EDataType=Select an EDataType
+Select_EPackage=Select an EPackage
+Select=Select
+Type=Type :
+ExtendedMetaClass=&Extended Meta-Class:
+SelectQueryTypeWizardPage_No_wizard_found=No wizard page extension was found for the selected query type. Wizard pages have to be registered using queryFactoryWizardPageRegistration extension point
+SelectQueryTypeWizardPage_Query_Type=Query Type :
+JavaQueryWizardPage_Can_be_cached=Can be cached :
+JavaQueryWizardPage_has_side_effect=Has side effect :
+JavaQueryWizardPage_Query_name=Query name :
+No_result_found=No result found
+Reference_name=Reference name:
+
+#### Begin: copied from /org.eclipse.papyrus.emf.facet.infra.query.ui/src/org/eclipse/emf/facet/infra/query/ui/messages.properties
+QueryExecutionView_0=Missing bundle...
+QueryExecutionView_1=To execute the query, the depending bundle {0} must be installed. It will not be hot loaded.
+QueryExecutionView_classpathWarning=The output location of the Java project "{0}" was not found in its Bundle-ClassPath. This prevents the Java queries implementations it contains from being loaded.
+QueryExecutionView_errorInBundleClasspath=Error in Bundle-ClassPath
+QueryExecutionView_execEnvNotAvailable=Execution environment not available
+QueryExecutionView_execEnvError=To execute the query the execution environment {0} is required but not available. The available execution environments are: {1}
+QueryExecutionView_Context=Context
+QueryExecutionView_DisplayResultIn=Display result in:
+QueryExecutionView_dragAndDropHint=drag&drop model elements here
+QueryExecutionView_ErrorExecutingQuery=Error executing query
+QueryExecutionView_ETypedElementsGroup=ETypedElements
+QueryExecutionView_ExecuteButton=E&xecute
+QueryExecutionView_ExecuteGroup=Execute
+QueryExecutionView_NoQueryDisplayer=No Query Displayer
+QueryExecutionView_NoQuerySelected=No query
+QueryExecutionView_notImplementedYet=<Not implemented yet>
+QueryExecutionView_NullQueryResult=Null query result
+QueryExecutionView_Parameters=Parameters
+QueryExecutionView_Query=Query
+QueryExecutionView_QueryException=Query exception
+QueryExecutionView_QueryReturnedNull=Query returned a null result (see error log)
+QueryExecutionView_SelectQueryToExecute=You must select a query to execute
+#### End: copied from /org.eclipse.papyrus.emf.facet.infra.query.ui/src/org/eclipse/emf/facet/infra/query/ui/messages.properties \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/preferences/PreferenceConstants.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/preferences/PreferenceConstants.java
new file mode 100644
index 00000000000..76891b88b6c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/preferences/PreferenceConstants.java
@@ -0,0 +1,22 @@
+/**
+ * Copyright (c) 2012 CEA-LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA-LIST) - Bug 357621 - Improve the label displayed for Customization and Facets
+ * Gregoire Dupe (CEA-LIST) - Bug 357621 - Improve the label displayed for Customization and Facets
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.preferences;
+
+public final class PreferenceConstants {
+
+ public static final String TE_SELECTION_TAB = "ETypedElementSelectionDialogPreferedTab"; //$NON-NLS-1$
+
+ private PreferenceConstants() {
+ //nothing to do
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/preferences/PreferencesInitializer.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/preferences/PreferencesInitializer.java
new file mode 100644
index 00000000000..76901f4bff2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/preferences/PreferencesInitializer.java
@@ -0,0 +1,27 @@
+/**
+ * Copyright (c) 2012 CEA-LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA-LIST) - Bug 357621 - Improve the label displayed for Customization and Facets
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.preferences;
+
+import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget.ETypedElementSelectionControl;
+import org.eclipse.jface.preference.IPreferenceStore;
+
+public class PreferencesInitializer extends AbstractPreferenceInitializer {
+
+ @Override
+ public void initializeDefaultPreferences() {
+ IPreferenceStore store = Activator.getDefault().getPreferenceStore();
+ store.setDefault(PreferenceConstants.TE_SELECTION_TAB,ETypedElementSelectionControl.TAB_ID );
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/utils/ImageProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/utils/ImageProvider.java
new file mode 100644
index 00000000000..ce934298392
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/utils/ImageProvider.java
@@ -0,0 +1,95 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Vincent Lorenzo (CEA-LIST) - Bug 357621 - Improve the label displayed for Customization and Facets
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.utils;
+
+import java.net.URL;
+
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.swt.graphics.Image;
+
+public class ImageProvider {
+
+ private static ImageProvider instance;
+
+ public static ImageProvider getInstance() {
+ if (ImageProvider.instance == null) {
+ ImageProvider.instance = new ImageProvider();
+ }
+ return ImageProvider.instance;
+ }
+
+ private static final String QUERY_SET_ICON_PATH = "/icons/querySet.gif"; //$NON-NLS-1$
+ private static final String FACET_ICON_PATH = "/icons/facet.gif"; //$NON-NLS-1$
+ private static final String FLAT_VIEW_ICON_PATH = "/icons/flatView.gif"; //$NON-NLS-1$
+ private static final String TREE_VIEW_ICON_PATH = "/icons/treeView.gif"; //$NON-NLS-1$
+
+ private Image facetIcon;
+ private Image queryIcon;
+ private Image flatViewIcon;
+ private Image treeViewIcon;
+
+ /**
+ * Create an image descriptor from a resource
+ *
+ * @param resourcePath
+ * the path of the resource (in the bundle)
+ * @return the image descriptor
+ */
+ private static ImageDescriptor createImageDescriptor(final String resourcePath) {
+ final URL url = Activator.getDefault().getBundle().getResource(resourcePath);
+ if (url == null) {
+ Logger.logError(NLS.bind("Resource not found: {0}", //$NON-NLS-1$
+ resourcePath), Activator.getDefault());
+ return ImageDescriptor.getMissingImageDescriptor();
+ }
+ return ImageDescriptor.createFromURL(url);
+ }
+
+ /** Return the icon representing a query */
+ public Image getFacetIcon() {
+ if (this.facetIcon == null) {
+ this.facetIcon = createImageDescriptor(ImageProvider.FACET_ICON_PATH).createImage();
+ }
+ return this.facetIcon;
+ }
+
+ /** Return the descriptor representing a query */
+ public static ImageDescriptor getFacetIconDescriptor() {
+ return createImageDescriptor(ImageProvider.FACET_ICON_PATH);
+ }
+
+ /** Return the icon representing a querySet */
+ public Image getQuerySetIcon() {
+ if (this.queryIcon == null) {
+ this.queryIcon = createImageDescriptor(ImageProvider.QUERY_SET_ICON_PATH).createImage();
+ }
+ return this.queryIcon;
+ }
+
+ public Image getFlatViewIcon(){
+ if (this.flatViewIcon == null) {
+ this.flatViewIcon = createImageDescriptor(ImageProvider.FLAT_VIEW_ICON_PATH).createImage();
+ }
+ return this.flatViewIcon;
+ }
+ public Image getTreeViewIcon(){
+ if (this.treeViewIcon == null) {
+ this.treeViewIcon = createImageDescriptor(ImageProvider.TREE_VIEW_ICON_PATH).createImage();
+ }
+ return this.treeViewIcon;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/ContextPaneMenuManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/ContextPaneMenuManager.java
new file mode 100644
index 00000000000..17e16ef74ab
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/ContextPaneMenuManager.java
@@ -0,0 +1,94 @@
+/*******************************************************************************
+ * Copyright (c) 2010, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software)
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.view;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.ImageProvider;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.view.NavigationView.ContextInfo;
+import org.eclipse.jface.action.Action;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.action.IMenuListener;
+import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.KeyAdapter;
+import org.eclipse.swt.events.KeyEvent;
+
+@SuppressWarnings("synthetic-access")
+//Copied from org.eclipse.papyrus.emf.facet.infra.query.ui.views.queryExecution.internal.ContextPaneMenuManager
+public class ContextPaneMenuManager extends MenuManager implements IMenuListener {
+
+ private final EditableContext context;
+ private final NavigationView queryExecutionView;
+
+ public ContextPaneMenuManager(final NavigationView queryExecutionView,
+ final EditableContext context, final TreeViewer treeViewer) {
+ this.queryExecutionView = queryExecutionView;
+ this.context = context;
+ addMenuActions();
+ addMenuListener(this);
+ addKeyShortcuts(treeViewer);
+ }
+
+ private void addKeyShortcuts(final TreeViewer treeViewer) {
+ treeViewer.getTree().addKeyListener(new KeyAdapter() {
+ @Override
+ public void keyPressed(final KeyEvent e) {
+ if (e.keyCode == SWT.DEL) {
+ ContextPaneMenuManager.this.removeSelectedElementsAction.run();
+ }
+ }
+ });
+ }
+
+ private void addMenuActions() {
+ this.add(this.removeSelectedElementsAction);
+ this.add(this.removeAllAction);
+ }
+
+ /** This action removes all model elements from the context */
+ private final IAction removeAllAction = new Action("Remove all") {
+ {
+ setImageDescriptor(ImageProvider.getInstance().getRemoveAllImageDescriptor());
+ }
+
+ @Override
+ public void run() {
+ ContextPaneMenuManager.this.context.clear();
+ ContextPaneMenuManager.this.context.done();
+ }
+ };
+
+ /** This action removes selected model elements from the context */
+ private final IAction removeSelectedElementsAction = new Action("Remove") {
+ {
+ setImageDescriptor(ImageProvider.getInstance().getRemoveImageDescriptor());
+ }
+
+ @Override
+ public void run() {
+ ContextInfo contextInfo = ContextPaneMenuManager.this.queryExecutionView
+ .getContextInfo();
+ for (EObject eObject : contextInfo.getSelectedEObjects()) {
+ ContextPaneMenuManager.this.context.remove(eObject);
+ }
+ ContextPaneMenuManager.this.context.done();
+ }
+ };
+
+ public void menuAboutToShow(final IMenuManager manager) {
+ ContextInfo contextInfo = ContextPaneMenuManager.this.queryExecutionView.getContextInfo();
+ this.removeAllAction.setEnabled(contextInfo.getEObjects().size() > 0);
+ this.removeSelectedElementsAction.setEnabled(contextInfo.getSelectedEObjects().size() > 0);
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/DropAdapter.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/DropAdapter.java
new file mode 100644
index 00000000000..effe895f767
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/DropAdapter.java
@@ -0,0 +1,93 @@
+/*******************************************************************************
+ * Copyright (c) 2010, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software)
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.view;
+
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.Set;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.edit.ui.dnd.LocalTransfer;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.swt.dnd.DND;
+import org.eclipse.swt.dnd.DropTargetEvent;
+import org.eclipse.swt.dnd.DropTargetListener;
+
+/**
+ * Implements a {@link DropTargetListener} that accepts {@link EObject}s
+ * transferred locally (i.e. through {@link LocalTransfer}), and calls the given
+ * {@link DropAction} with the dropped {@link EObject}s.
+ */
+//Copied from org.eclipse.papyrus.emf.facet.infra.query.ui.views.queryExecution.internal.DropAdapter
+public class DropAdapter implements DropTargetListener {
+
+ private final DropAction dropAction;
+
+ public abstract static class DropAction {
+ /** The given EObjects are being dropped */
+ public abstract void dropped(Set<EObject> eObjects);
+ }
+
+ /**
+ * @param dropAction
+ * the action that will be called when model elements are dropped
+ */
+ public DropAdapter(final DropAction dropAction) {
+ this.dropAction = dropAction;
+ }
+
+ public void drop(final DropTargetEvent event) {
+ this.dropAction.dropped(getTransferredEObjects(event));
+ }
+
+ private Set<EObject> getTransferredEObjects(final DropTargetEvent event) {
+ Set<EObject> eObjects = new HashSet<EObject>();
+ if (LocalTransfer.getInstance().isSupportedType(event.currentDataType)) {
+ if (event.data instanceof StructuredSelection) {
+ StructuredSelection structuredSelection = (StructuredSelection) event.data;
+ Iterator<?> iterator = structuredSelection.iterator();
+ while (iterator.hasNext()) {
+ Object element = iterator.next();
+ if (element instanceof EObject) {
+ EObject eObject = (EObject) element;
+ eObjects.add(eObject);
+ }
+ }
+ }
+ }
+ return eObjects;
+ }
+
+ public void dropAccept(final DropTargetEvent event) {
+ // nothing
+ }
+
+ public void dragOver(final DropTargetEvent event) {
+ // if (getTransferredEObjects(event).size() == 0) {
+ // // don't allow the drop
+ // event.detail = DND.DROP_NONE;
+ // }
+ // event.feedback = DND.FEEDBACK_SELECT | DND.FEEDBACK_SCROLL;
+ }
+
+ public void dragOperationChanged(final DropTargetEvent event) {
+ // nothing
+ }
+
+ public void dragLeave(final DropTargetEvent event) {
+ // nothing
+ }
+
+ public void dragEnter(final DropTargetEvent event) {
+ event.detail = DND.DROP_LINK;
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/EditableContext.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/EditableContext.java
new file mode 100644
index 00000000000..2ebb385e2e2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/EditableContext.java
@@ -0,0 +1,27 @@
+/*******************************************************************************
+ * Copyright (c) 2010, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software)
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.view;
+
+import org.eclipse.emf.ecore.EObject;
+
+/** An interface that supports editing the query context */
+//Copied from org.eclipse.papyrus.emf.facet.infra.query.ui.views.queryExecution.internal.EditableContext
+public interface EditableContext {
+ void add(EObject eObject);
+
+ void remove(EObject eObject);
+
+ void clear();
+
+ /** must be called after editing to refresh the viewers */
+ void done();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/FacetSetsCatalogView.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/FacetSetsCatalogView.java
new file mode 100644
index 00000000000..fb0ea4c572a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/FacetSetsCatalogView.java
@@ -0,0 +1,211 @@
+/*******************************************************************************
+ * Copyright (c) 2009-2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Grégoire Dupé (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 372732 - [Facet] Rewrite the catalog views for 0.2
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.view;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IExecutableExtensionFactory;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.papyrus.emf.facet.efacet.core.FacetUtils;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetSetCatalogManagerFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DocumentedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.dialogs.FacetSetTreeContentProvider;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.utils.ImageProvider;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.utils.ImageUtils;
+import org.eclipse.jface.viewers.ColumnLabelProvider;
+import org.eclipse.jface.viewers.IOpenListener;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.OpenEvent;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.exported.views.IColumnDescription;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.exported.views.IElementsViewFactory;
+import org.eclipse.swt.graphics.Image;
+
+/**
+ * An Eclipse view that displays a list of available facet sets. Clicking on a facet set opens it in the facet set
+ * editor.
+ */
+public class FacetSetsCatalogView implements IExecutableExtensionFactory, IOpenListener {
+
+ public Object create() throws CoreException {
+ final Collection<IColumnDescription> columnDescriptions = new ArrayList<IColumnDescription>();
+ columnDescriptions.add(createNameColumnDescription());
+ columnDescriptions.add(createExtendsColumnDescription());
+ columnDescriptions.add(createCategoriesColumnDescription());
+ columnDescriptions.add(createDocumentationColumnDescription());
+ return IElementsViewFactory.DEFAULT.createElementsView(columnDescriptions, getContentProvider(), getInput(),
+ Messages.FacetSetsCatalogView_viewTitle, ImageProvider.getInstance().getFacetIcon(), this);
+ }
+
+ private static final String NAME_COLUMN = "FacetView_NameColumn"; //$NON-NLS-1$
+ private static final String DOCUMENTATION_COLUMN = "FacetView_LocationColumn"; //$NON-NLS-1$
+ private static final String CATEGORIES_COLUMN = "FacetView_DefaultColumn"; //$NON-NLS-1$
+ private static final String EXTENDS_COLUMN = "FacetView_ExtendsColumn"; //$NON-NLS-1$
+
+ private static final int NAME_COLUMN_WIDTH = 300;
+ private static final int EXTENDS_COLUMN_WIDTH = 200;
+ private static final int CATEGORIES_COLUMN_WIDTH = 200;
+ private static final int DOCUMENTATION_COLUMN_WIDTH = 400;
+
+ private static IColumnDescription createNameColumnDescription() {
+ final ColumnLabelProvider columnLabelProvider = new ColumnLabelProvider() {
+ @Override
+ public String getText(final Object element) {
+ if (element instanceof FacetSet) {
+ final FacetSet facetSet = (FacetSet) element;
+ return facetSet.getName();
+ } else if (element instanceof Facet) {
+ final Facet facet = (Facet) element;
+ return facet.getName();
+ } else if (element instanceof EStructuralFeature) {
+ final EStructuralFeature feature = (EStructuralFeature) element;
+ return feature.getName();
+ } else {
+ return ""; //$NON-NLS-1$
+ }
+
+ }
+
+ @Override
+ public Image getImage(final Object element) {
+ return ImageUtils.getImage(element);
+ }
+ };
+ return IElementsViewFactory.DEFAULT.createColumnDescription(Messages.FacetSetsCatalogView_nameColumn, FacetSetsCatalogView.NAME_COLUMN, FacetSetsCatalogView.NAME_COLUMN_WIDTH,
+ columnLabelProvider);
+ }
+
+ private static IColumnDescription createExtendsColumnDescription() {
+ final ColumnLabelProvider columnLabelProvider = new ColumnLabelProvider() {
+ @Override
+ public String getText(final Object element) {
+ String result = null;
+ if (element instanceof FacetSet) {
+ final FacetSet facetSet = (FacetSet) element;
+ final EPackage extendedEPackage = FacetUtils
+ .getExtendedEPackage(facetSet);
+ if (extendedEPackage != null) {
+ result = extendedEPackage.getName() + " " + extendedEPackage.getNsURI(); //$NON-NLS-1$
+ }
+ }
+ return result;
+ }
+
+ };
+ return IElementsViewFactory.DEFAULT.createColumnDescription(Messages.FacetSetsCatalogView_extendsColumn, FacetSetsCatalogView.EXTENDS_COLUMN, FacetSetsCatalogView.EXTENDS_COLUMN_WIDTH,
+ columnLabelProvider);
+
+ }
+
+ private static IColumnDescription createCategoriesColumnDescription() {
+ final ColumnLabelProvider columnLabelProvider = new ColumnLabelProvider() {
+ @Override
+ public String getText(final Object element) {
+ String result = null;
+ if (element instanceof FacetSet) {
+ final FacetSet facetSet = (FacetSet) element;
+ final StringBuilder strCategories = new StringBuilder();
+ final EList<Category> categories = facetSet.getCategories();
+ for (final Category category : categories) {
+ if (strCategories.length() > 0) {
+ strCategories.append("; "); //$NON-NLS-1$
+ }
+ strCategories.append(category.getName());
+ }
+ result = strCategories.toString();
+ }
+ return result;
+ }
+ };
+ return IElementsViewFactory.DEFAULT.createColumnDescription(Messages.FacetSetsCatalogView_categoriesColumn, FacetSetsCatalogView.CATEGORIES_COLUMN, FacetSetsCatalogView.CATEGORIES_COLUMN_WIDTH,
+ columnLabelProvider);
+ }
+
+ private static IColumnDescription createDocumentationColumnDescription() {
+ final ColumnLabelProvider columnLabelProvider = new ColumnLabelProvider() {
+ @Override
+ public String getText(final Object element) {
+ String result = null;
+ if (element instanceof DocumentedElement) {
+ final DocumentedElement documentedElement = (DocumentedElement) element;
+ result = documentedElement.getDocumentation();
+ }
+ return result;
+ }
+ };
+ return IElementsViewFactory.DEFAULT.createColumnDescription(Messages.FacetSetsCatalogView_documentationColumn, FacetSetsCatalogView.DOCUMENTATION_COLUMN,
+ FacetSetsCatalogView.DOCUMENTATION_COLUMN_WIDTH, columnLabelProvider);
+
+ }
+
+ protected static ITreeContentProvider getContentProvider() {
+ return new FacetSetTreeContentProvider();
+ }
+
+ public void open(final OpenEvent event) {
+ // TODO: re-enable when there is a FacetSet editor
+
+ // final EObject modelElement = (EObject) element;
+ // EPackage facetSet = null;
+ // if (modelElement instanceof FacetSet) {
+ // facetSet = (FacetSet) modelElement;
+ // } else if (modelElement instanceof Facet) {
+ // Facet facet = (Facet) modelElement;
+ // facetSet = facet.getEPackage();
+ // }
+ // if (facetSet != null) {
+ // // open facet set in editor
+ // URI uri = null;
+ // try {
+ // String uriString = FacetSetCatalog.getSingleton().getURI(facetSet.getName())
+ // .toString();
+ // uri = URI.create(uriString);
+ // IEditorPart editor = null;
+ // if ("file".equals(uri.getScheme())) { //$NON-NLS-1$
+ // editor = IDE.openEditor(PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+ // .getActivePage(), new URI(facetSet.eResource().getURI().toString()),
+ // Activator.FACET_EDITOR_ID, true);
+ // } else {
+ // URIEditorInput uriEditorInput = new URIEditorInput(
+ // org.eclipse.emf.common.util.URI.createURI(uri.toString()));
+ // editor = IDE.openEditor(PlatformUI.getWorkbench().getActiveWorkbenchWindow()
+ // .getActivePage(), uriEditorInput, Activator.FACET_EDITOR_ID, true);
+ // }
+ // if (editor instanceof FacetEditor) {
+ // FacetEditor facetEditor = (FacetEditor) editor;
+ // facetEditor.setSelectionToViewer(modelElement);
+ // }
+ //
+ // } catch (Exception e) {
+ // Logger.logError(e, "Failed to open: " + uri, Activator.getDefault()); //$NON-NLS-1$
+ // }
+ // }
+ }
+
+ protected static Object getInput() {
+ return IFacetSetCatalogManagerFactory.DEFAULT
+ .getOrCreateFacetSetCatalogManager(new ResourceSetImpl())
+ .getRegisteredFacetSets().toArray();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/NavigationView.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/NavigationView.java
new file mode 100644
index 00000000000..d7615133ea1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/NavigationView.java
@@ -0,0 +1,689 @@
+/*******************************************************************************
+ * Copyright (c) 2010, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software)
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ * Gregoire Dupe (Mia-Software) - Bug 373510 - EditingDomain, ResourceSet, Catalogs, etc. have to be properly managed between editors and views
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ * Olivier Remaud (Soft-Maint) - Bug 377615 - Query View filtering
+ * Gregoire Dupe (Mia-Software) - Bug 378498 - Navigation view sometimes lacks an EditingDomain
+ * Nicolas Bros (Mia-Software) - Bug 379395 - Navigate should replace elements
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.view;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.emf.common.command.BasicCommandStack;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.ui.dnd.LocalTransfer;
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomizedLabelProviderFactory;
+import org.eclipse.papyrus.emf.facet.efacet.core.FacetUtils;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManagerFactory;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetSetCatalogManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetSetCatalogManagerFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.runtime.ETypedElementResult;
+import org.eclipse.papyrus.emf.facet.efacet.ui.IETypedElementResultDisplayer;
+import org.eclipse.papyrus.emf.facet.efacet.ui.IETypedElementResultDisplayerOpener;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.view.INavigationView;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.widget.IETypedElementSelectionWidget;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.widget.IETypedElementSelectionWidgetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.view.DropAdapter.DropAction;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.jface.action.GroupMarker;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.viewers.IContentProvider;
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.jface.viewers.ViewerComparator;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManagerFactory;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.custom.SashForm;
+import org.eclipse.swt.dnd.DND;
+import org.eclipse.swt.dnd.DropTargetListener;
+import org.eclipse.swt.dnd.Transfer;
+import org.eclipse.swt.events.ControlAdapter;
+import org.eclipse.swt.events.ControlEvent;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Group;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Menu;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IWorkbenchActionConstants;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.part.ViewPart;
+import org.eclipse.ui.part.WorkbenchPart;
+
+//Copied from org.eclipse.papyrus.emf.facet.infra.query.ui.views.queryExecution.internal.QueryExecutionView
+public class NavigationView extends ViewPart implements INavigationView {
+
+ /**
+ * Execution button minimal width.
+ */
+ private static final int EXEC_BT_MIN_WIDTH = 100;
+
+ private TreeViewer contextViewer;
+ private Composite mainComposite;
+ private Composite parentComposite;
+
+ private final Set<EObject> fContext = new HashSet<EObject>();
+ private LayoutStyle layoutStyle = NavigationView.LayoutStyle.Horizontal;
+ private IETypedElementSelectionWidget navSelection;
+ private Combo comboDisplayer;
+ private EditingDomain editingDomain = null;
+ private ILabelProvider labelProvider;
+ private final IContentProvider contextCP = new ITreeContentProvider() {
+
+ public void inputChanged(final Viewer viewer, final Object oldInput,
+ final Object newInput) {
+ // nothing
+ }
+
+ public void dispose() {
+ // nothing
+ }
+
+ public Object[] getElements(final Object inputElement) {
+ Object[] result = new Object[0];
+ if (inputElement instanceof Set<?>) {
+ final Set<?> set = ((Set<?>) inputElement);
+ if (set.isEmpty()) {
+ result = new Object[] { Messages.QueryExecutionView_dragAndDropHint };
+ } else {
+ result = set.toArray();
+ }
+ }
+ return result;
+ }
+
+ public boolean hasChildren(final Object element) {
+ return false;
+ }
+
+ public Object getParent(final Object element) {
+ return null;
+ }
+
+ public Object[] getChildren(final Object parentElement) {
+ return new Object[]{};
+ }
+ };
+
+ private enum LayoutStyle {
+ Horizontal, Vertical
+ }
+
+ public NavigationView() {
+ super();
+ updateEditingDomain();
+ }
+
+ @Override
+ public void createPartControl(final Composite parent) {
+ this.parentComposite = parent;
+ parent.setLayout(gridLayoutWithNoMargins());
+ this.layoutStyle = NavigationView.LayoutStyle.Horizontal;
+ createMainComposite();
+ parent.addControlListener(new ControlAdapter() {
+ @Override
+ public void controlResized(final ControlEvent event) {
+ NavigationView.this.controlResized(parent);
+ }
+ });
+ createContextMenu();
+ }
+
+ public void controlResized(final Composite parent) {
+ final LayoutStyle oldLayoutStyle = NavigationView.this.layoutStyle;
+ final Point size = parent.getSize();
+ if (size.x > size.y) {
+ this.layoutStyle = NavigationView.LayoutStyle.Horizontal;
+ } else {
+ this.layoutStyle = NavigationView.LayoutStyle.Vertical;
+ }
+ if (this.layoutStyle != oldLayoutStyle) {
+ createMainComposite();
+ }
+ }
+
+ protected static void createContextMenu() {
+ final MenuManager contextMenu = new MenuManager("#PopUp"); //$NON-NLS-1$
+ contextMenu.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
+ }
+
+ private void createMainComposite() {
+ if (this.mainComposite != null) {
+ this.mainComposite.dispose();
+ }
+ this.mainComposite = new Composite(this.parentComposite, SWT.NONE);
+ this.mainComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ this.mainComposite.setLayout(gridLayoutWithNoMargins());
+
+ int direction;
+ if (this.layoutStyle == NavigationView.LayoutStyle.Horizontal) {
+ direction = SWT.HORIZONTAL;
+ } else {
+ direction = SWT.VERTICAL;
+ }
+
+ final SashForm sashForm = new SashForm(this.mainComposite, SWT.SMOOTH
+ | direction);
+ sashForm.setLayout(new FillLayout());
+ sashForm.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+
+ createContextGroup(sashForm);
+ // createQueryGroup(sashForm);
+ final Composite lastGroup = new Composite(sashForm, SWT.NONE);
+ createQueryGroup(lastGroup);
+ lastGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+
+ GridLayout gridLayout;
+ if (this.layoutStyle == NavigationView.LayoutStyle.Horizontal) {
+ gridLayout = new GridLayout(2, false);
+ } else {
+ gridLayout = new GridLayout();
+ }
+ gridLayout.marginHeight = 0;
+ gridLayout.marginWidth = 0;
+ lastGroup.setLayout(gridLayout);
+ // TODO: implement parameters (hidden in the meantime)
+ // /!\ when it is added back, put the QueryGroup back in the sashForm
+ // instead of lastGroup
+ // createParametersGroup(lastGroup);
+ createExecuteGroup(lastGroup);
+ }
+
+ private static GridLayout gridLayoutWithNoMargins() {
+ final GridLayout gridLayout = new GridLayout();
+ gridLayout.marginWidth = 0;
+ gridLayout.marginHeight = 0;
+ return gridLayout;
+ }
+
+ private void createQueryGroup(final Composite parent) {
+ final Group queryGroup = new Group(parent, SWT.NONE);
+ queryGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ queryGroup.setText(Messages.QueryExecutionView_ETypedElementsGroup);
+ final GridLayout groupLayout = new GridLayout();
+ queryGroup.setLayout(groupLayout);
+ final Collection<ETypedElement> eTypedElements = new ArrayList<ETypedElement>(
+ FacetUtils.getETypedElements(getResourceSet()));
+ final Collection<? extends EObject> knownEPackages = IFacetSetCatalogManagerFactory.DEFAULT
+ .getOrCreateFacetSetCatalogManager(this.getResourceSet())
+ .getRegisteredFacetSets();
+ this.navSelection = IETypedElementSelectionWidgetFactory.DEFAULT
+ .createETypedElementSelectionWidget(
+ 1,
+ false,
+ queryGroup,
+ getCustomizationManager(),
+ knownEPackages);
+ this.navSelection.setAvailableETypedElements(eTypedElements);
+ }
+
+ private void createContextGroup(final Composite parent) {
+ final Group contextGroup = new Group(parent, SWT.NONE);
+ contextGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ contextGroup.setText(Messages.QueryExecutionView_Context);
+ final GridLayout groupLayout = new GridLayout();
+ contextGroup.setLayout(groupLayout);
+ createContextViewer(contextGroup);
+ }
+
+ private void createContextViewer(final Group contextGroup) {
+ this.contextViewer = new TreeViewer(contextGroup, SWT.MULTI | SWT.BORDER);
+ final GridData listData = new GridData(SWT.FILL, SWT.FILL, true, true);
+ this.contextViewer.getTree().setLayoutData(listData);
+ addDropSupport(this.contextViewer);
+ createContextMenu(this.contextViewer);
+ this.contextViewer.setContentProvider(this.contextCP);
+ changeEditingDomain(this.editingDomain);
+ this.contextViewer.setLabelProvider(this.labelProvider);
+ this.contextViewer.setInput(this.fContext);
+ this.contextViewer.setComparator(new ViewerComparator() {
+ @Override
+ public int compare(final Viewer viewer, final Object object1,
+ final Object object2) {
+ return NavigationView.this.compare(object1, object2);
+ }
+ });
+ }
+
+ protected int compare(final Object object1, final Object object2) {
+ final String label1 = this.labelProvider.getText(object1);
+ final String label2 = this.labelProvider.getText(object2);
+ return label1.compareToIgnoreCase(label2);
+ }
+
+ private EditableContext createEditableContext() {
+ return new EditableContext() {
+ public void add(final EObject eObject) {
+ NavigationView.this.dropEObject(eObject);
+ }
+
+ public void remove(final EObject eObject) {
+ NavigationView.this.removeEObject(eObject);
+ }
+
+ public void clear() {
+ NavigationView.this.removeAllEObjects();
+ }
+
+ public void done() {
+ NavigationView.this.refreshContextViewer();
+ }
+ };
+ }
+
+ protected void dropEObject(final EObject eObject) {
+ this.fContext.add(eObject);
+ }
+
+ /** Create a context menu on the context pane */
+ private void createContextMenu(final TreeViewer treeViewer) {
+ final ContextPaneMenuManager menuManager = new ContextPaneMenuManager(this,
+ createEditableContext(), treeViewer);
+ final Menu menu = menuManager.createContextMenu(treeViewer.getTree());
+ treeViewer.getTree().setMenu(menu);
+ }
+
+ private void addDropSupport(final TreeViewer viewer) {
+ final DropTargetListener dropListener = new DropAdapter(
+ new DropAction() {
+ @Override
+ public void dropped(final Set<EObject> eObjects) {
+ addEObjects(eObjects);
+ }
+ });
+ final int dndOperations = DND.DROP_LINK | DND.DROP_COPY | DND.DROP_MOVE;
+ final Transfer[] transfers = new Transfer[] { LocalTransfer
+ .getInstance() };
+ viewer.addDropSupport(dndOperations, transfers, dropListener);
+ }
+
+ protected final void refreshContextViewer() {
+ if (this.contextViewer != null) {
+ this.contextViewer.refresh();
+ final Set<EObject> toBeRemoved = new HashSet<EObject>();
+ for (EObject eObject : this.fContext) {
+ if (eObject.eResource().getResourceSet() != getResourceSet()) {
+ toBeRemoved.add(eObject);
+ }
+ }
+ this.fContext.remove(toBeRemoved);
+ this.contextViewer.setInput(this.fContext);
+ this.contextViewer.setLabelProvider(this.labelProvider);
+ updateQueriesInput();
+ }
+ }
+
+ private void updateQueriesInput() {
+ final Collection<ETypedElement> result = new ArrayList<ETypedElement>();
+ final ResourceSet resourceSet = this.editingDomain.getResourceSet();
+ final IFacetSetCatalogManager catalog = IFacetSetCatalogManagerFactory.DEFAULT
+ .getOrCreateFacetSetCatalogManager(resourceSet);
+ final Collection<FacetSet> registeredFS = catalog
+ .getRegisteredFacetSets();
+ for (FacetSet facetSet : registeredFS) {
+ result.addAll(getETypedElements(facetSet));
+ }
+ this.navSelection.setAvailableETypedElements(result);
+ }
+
+ private Collection<? extends ETypedElement> getETypedElements(
+ final FacetSet facetSet) {
+ final Collection<ETypedElement> result = new ArrayList<ETypedElement>();
+ for (EClassifier eClassifier : facetSet.getEClassifiers()) {
+ if (eClassifier instanceof Facet) {
+ final Facet facet = (Facet) eClassifier;
+ if (isApplicableFacet(facet)) {
+ result.addAll(facet.getFacetElements());
+ result.addAll(facet.getFacetOperations());
+ }
+ }
+ }
+ for (FacetSet subFacetSet : facetSet.getFacetSets()) {
+ result.addAll(getETypedElements(subFacetSet));
+ }
+ for (EPackage subPackage : facetSet.getESubpackages()) {
+ if (subPackage instanceof FacetSet) {
+ final FacetSet subFacetSet = (FacetSet) subPackage;
+ result.addAll(getETypedElements(subFacetSet));
+ }
+ }
+ return result;
+ }
+
+ private void createExecuteGroup(final Composite parent) {
+ final Group executeGroup = new Group(parent, SWT.NONE);
+ executeGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));
+ executeGroup.setText(Messages.QueryExecutionView_ExecuteGroup);
+ executeGroup.setLayout(new GridLayout());
+ createDisplayStyleComposite(executeGroup);
+ final Button buttonExecute = new Button(executeGroup, SWT.PUSH);
+ buttonExecute.setText(Messages.QueryExecutionView_ExecuteButton);
+ final GridData buttonData = new GridData(SWT.CENTER, SWT.NONE, true,
+ false);
+ buttonData.minimumWidth = NavigationView.EXEC_BT_MIN_WIDTH;
+ buttonExecute.setLayoutData(buttonData);
+ buttonExecute.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ executeClicked();
+ }
+ });
+ }
+
+ protected void executeClicked() {
+ final ETypedElement selectedQuery = getSelectedQuery();
+ if (selectedQuery == null) {
+ MessageDialog.openInformation(getSite().getShell(),
+ Messages.QueryExecutionView_NoQuerySelected,
+ Messages.QueryExecutionView_SelectQueryToExecute);
+ } else {
+ try {
+ final IFacetManager facetMgr = IFacetManagerFactory.DEFAULT
+ .getOrCreateFacetManager(getResourceSet());
+ final List<ETypedElementResult> results = facetMgr
+ .batchGetOrInvoke(this.fContext, selectedQuery,
+ Object.class);
+ if (checkResult(results)) {
+ displayResult(results);
+ }
+ } catch (final Exception e) {
+ final StackTraceElement[] stackTrace = e.getStackTrace();
+ String stack = ""; //$NON-NLS-1$
+ if (stackTrace.length > 0) {
+ stack = "\nat:" + stackTrace[0].toString(); //$NON-NLS-1$
+ }
+ String message;
+ if (e.getMessage() == null) {
+ message = ""; //$NON-NLS-1$
+ } else {
+ message = " : " + e.getMessage(); //$NON-NLS-1$
+ }
+ MessageDialog.openError(getSite().getShell(),
+ Messages.QueryExecutionView_ErrorExecutingQuery, e.getClass()
+ .getSimpleName() + message + stack);
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+ }
+
+ private boolean checkResult(final List<ETypedElementResult> results) {
+ boolean result = true;
+ for (ETypedElementResult modelQueryResult : results) {
+ final Throwable exc = modelQueryResult.getException();
+ if (exc != null) {
+ Logger.logError(exc, "Query exception", Activator.getDefault()); //$NON-NLS-1$
+ MessageDialog.openError(this.mainComposite.getShell(),
+ Messages.QueryExecutionView_QueryException, exc.getClass().getSimpleName()
+ + " : " + exc.getMessage()); //$NON-NLS-1$
+ result = false;
+ break;
+ }
+ }
+ return result;
+ }
+
+ private void displayResult(final List<ETypedElementResult> result) {
+ final String displayerName = this.comboDisplayer.getText();
+ final IETypedElementResultDisplayer displayer = QueryResultDisplayersRegistry
+ .getInstance().getQueryResultDisplayer(displayerName);
+ if (displayer == null) {
+ final String message = NLS
+ .bind("Query Displayer with name \"{0}\" not found", displayerName); //$NON-NLS-1$
+ Logger.logError(message, Activator.getDefault());
+ MessageDialog.openWarning(getSite().getShell(),
+ Messages.QueryExecutionView_NoQueryDisplayer, message);
+ } else {
+ displayer.displayETypedElementResults(result, this.editingDomain);
+ }
+ }
+
+ private ETypedElement getSelectedQuery() {
+ final ETypedElement selectedQuery = this.navSelection
+ .getSelectedETypedElements().get(0);
+ return selectedQuery;
+ }
+
+ private void createDisplayStyleComposite(final Group executeGroup) {
+ final Composite displayStyle = new Composite(executeGroup,
+ SWT.NONE);
+ displayStyle.setLayoutData(new GridData(SWT.FILL, SWT.NONE, true, false));
+ displayStyle.setLayout(new GridLayout(2, false));
+ final Label label = new Label(displayStyle, SWT.NONE);
+ label.setText(Messages.QueryExecutionView_DisplayResultIn);
+ this.comboDisplayer = new Combo(displayStyle, SWT.DROP_DOWN | SWT.READ_ONLY);
+
+ final List<IETypedElementResultDisplayer> resultDisplayers = QueryResultDisplayersRegistry
+ .getInstance().getQueryResultDisplayers();
+ for (IETypedElementResultDisplayer namedQueryResultDisplayer : resultDisplayers) {
+ this.comboDisplayer.add(namedQueryResultDisplayer.getName());
+ }
+
+ this.comboDisplayer.select(0);
+ this.comboDisplayer.setLayoutData(new GridData(SWT.FILL, SWT.NONE, true, false));
+ }
+
+ @Override
+ public void setFocus() {
+ updateEditingDomain();
+ this.refreshContextViewer();
+ }
+
+ private void updateEditingDomain() {
+ final IWorkbenchPage activePage = PlatformUI.getWorkbench()
+ .getActiveWorkbenchWindow().getActivePage();
+ if (activePage != null) {
+ final IWorkbenchPart part = activePage.getActivePart();
+ if (part instanceof IEditingDomainProvider) {
+ final IEditingDomainProvider edProvider = (IEditingDomainProvider) part;
+ final EditingDomain newEditingDomain = edProvider
+ .getEditingDomain();
+ if ((this.editingDomain != newEditingDomain)
+ || (this.editingDomain == null)) {
+ changeEditingDomain(newEditingDomain);
+ }
+ }
+ }
+ }
+
+ private void changeEditingDomain(final EditingDomain newEditingDomain) {
+ this.editingDomain = newEditingDomain;
+ if (this.editingDomain == null) {
+ final ComposedAdapterFactory adapterFactory = new ComposedAdapterFactory(
+ ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
+ final BasicCommandStack commandStack = new BasicCommandStack();
+ this.editingDomain = new AdapterFactoryEditingDomain(
+ adapterFactory, commandStack,
+ new HashMap<Resource, Boolean>());
+ }
+ final ICustomizationManager customMgr = ICustomizationManagerFactory.DEFAULT
+ .getOrCreateICustomizationManager(this.editingDomain
+ .getResourceSet());
+ this.labelProvider = ICustomizedLabelProviderFactory.DEFAULT
+ .createCustomizedLabelProvider(customMgr);
+ }
+
+ public void setContext(final List<EObject> selectedEObjects) {
+ this.fContext.clear();
+ this.fContext.addAll(selectedEObjects);
+ refreshContextViewer();
+ }
+
+ public void setSelectedQueries(final List<ETypedElement> queries) {
+ this.navSelection.setSelectedETypedElements(queries);
+ }
+
+ public ContextInfo getContextInfo() {
+ final ContextInfo contextInfo = new ContextInfo(
+ new ArrayList<EObject>(this.fContext));
+ final ISelection selection = this.contextViewer.getSelection();
+ if (selection instanceof IStructuredSelection) {
+ final IStructuredSelection structSelection = (IStructuredSelection) selection;
+ final Iterator<?> iterator = structSelection.iterator();
+ while (iterator.hasNext()) {
+ final Object selectedElement = iterator.next();
+ if (selectedElement instanceof EObject) {
+ final EObject eObject = (EObject) selectedElement;
+ contextInfo.addSelectedEObject(eObject);
+ }
+ }
+ }
+ return contextInfo;
+ }
+
+ public final class ContextInfo {
+ private final List<EObject> eObjects;
+ private final List<EObject> selectedEObjects = new ArrayList<EObject>();
+
+ public ContextInfo(final List<EObject> eObjects) {
+ this.eObjects = eObjects;
+ }
+
+ public List<EObject> getEObjects() {
+ return this.eObjects;
+ }
+
+ public void addSelectedEObject(final EObject eObject) {
+ this.selectedEObjects.add(eObject);
+ }
+
+ public List<EObject> getSelectedEObjects() {
+ return this.selectedEObjects;
+ }
+
+ }
+
+ public void addEObjects(final Collection<? extends EObject> eObjects) {
+ updateEditingDomain();
+ for (EObject eObject : eObjects) {
+ final ResourceSet eObjectRS = eObject.eResource().getResourceSet();
+ final ResourceSet currentRS = getResourceSet();
+ if (!eObjectRS.equals(currentRS)) {
+ throw new IllegalStateException("Invalid resourceSet"); //$NON-NLS-1$
+ }
+ }
+ this.fContext.addAll(eObjects);
+ refreshContextViewer();
+ }
+
+ public void removeEObject(final EObject eObject) {
+ this.fContext.remove(eObject);
+ }
+
+ public void removeEObjects(final List<? extends EObject> eObjects) {
+ this.fContext.removeAll(eObjects);
+ }
+
+ public void removeAllEObjects() {
+ this.fContext.clear();
+ }
+
+ public List<EClassifier> getUsableEClassifiers() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public void selectETypedElement(final ETypedElement eTypedElement) {
+ // TODO Auto-generated method stub
+
+ }
+
+ public ETypedElement getSelectedETypedElement() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public List<IETypedElementResultDisplayerOpener> getAvailableSelectedDisplayers() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public void setSelectDisplayer(final IETypedElementResultDisplayerOpener resultDisplayer) {
+ // TODO Auto-generated method stub
+
+ }
+
+ public IETypedElementResultDisplayerOpener getSelectedDisplayer() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public WorkbenchPart preform() {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ private ResourceSet getResourceSet() {
+ return this.editingDomain.getResourceSet();
+ }
+
+ private ICustomizationManager getCustomizationManager() {
+ return ICustomizationManagerFactory.DEFAULT
+ .getOrCreateICustomizationManager(getResourceSet());
+ }
+
+ private boolean isApplicableFacet(final Facet facet) {
+ final EClass eobjectClass = EcorePackage.eINSTANCE.getEObject();
+ boolean result = false;
+ for (final EObject object : this.fContext) {
+ if (facet.getExtendedMetaclass() == null
+ || facet.getExtendedMetaclass() == eobjectClass
+ || facet.getExtendedMetaclass().isSuperTypeOf(object.eClass())
+ ) {
+ result = true;
+ break;
+ }
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/NavigationViewFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/NavigationViewFactory.java
new file mode 100644
index 00000000000..89520afbe26
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/NavigationViewFactory.java
@@ -0,0 +1,46 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software)
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.view;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.view.INavigationView;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.view.INavigationViewFactory;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
+
+public class NavigationViewFactory implements INavigationViewFactory {
+
+ public static final String VIEW_ID = "org.eclipse.papyrus.emf.facet.efacet.ui.view.navigation"; //$NON-NLS-1$
+
+ public INavigationView openNavigationView(final EditingDomain editingDomain) {
+ INavigationView result = null;
+ try {
+ final IWorkbenchWindow window = PlatformUI.getWorkbench()
+ .getActiveWorkbenchWindow();
+ if (window != null) {
+ final IWorkbenchPage activePage = window.getActivePage();
+ if (activePage != null) {
+ result = (INavigationView) activePage
+ .showView(NavigationViewFactory.VIEW_ID);
+ }
+ }
+ } catch (final PartInitException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/QueryResultDisplayersRegistry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/QueryResultDisplayersRegistry.java
new file mode 100644
index 00000000000..8accf39d8be
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/view/QueryResultDisplayersRegistry.java
@@ -0,0 +1,108 @@
+/*******************************************************************************
+ * Copyright (c) 2008, 2010, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Gregoire Dupe (Mia-Software) - Bug 364325 - [Restructuring] The user must be able to navigate into a model using the Facet.
+ *******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.view;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.papyrus.emf.facet.efacet.ui.IETypedElementResultDisplayer;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.core.internal.exported.AbstractRegistry;
+import org.eclipse.osgi.util.NLS;
+
+/**
+ * The singleton registry of {@link IETypedElementResultDisplayer}s, which initializes
+ * the registry by reading extensions when first accessed.
+ */
+//Copied from org.eclipse.papyrus.emf.facet.infra.query.ui.views.queryExecution.internal.QueryResultDisplayersRegistry
+public class QueryResultDisplayersRegistry extends AbstractRegistry {
+
+ private static final String EXTENSION_POINT_NAME = "eTypedElementResultDisplay"; //$NON-NLS-1$
+ private static final String ELEMENT_QUERY_RESULT_DISPLAYER = "displayer"; //$NON-NLS-1$
+ private static final String ATTRIBUTE_CLASS = "class"; //$NON-NLS-1$
+
+ private static QueryResultDisplayersRegistry instance = null;
+
+ private final List<IETypedElementResultDisplayer> queryResultDisplayers;
+
+ public QueryResultDisplayersRegistry() {
+ this.queryResultDisplayers = new ArrayList<IETypedElementResultDisplayer>();
+ initialize();
+ }
+
+ public static QueryResultDisplayersRegistry getInstance() {
+ if (QueryResultDisplayersRegistry.instance == null) {
+ QueryResultDisplayersRegistry.instance = new QueryResultDisplayersRegistry();
+ }
+ return QueryResultDisplayersRegistry.instance;
+ }
+
+ public List<IETypedElementResultDisplayer> getQueryResultDisplayers() {
+ return this.queryResultDisplayers;
+ }
+
+ public IETypedElementResultDisplayer getQueryResultDisplayer(final String name) {
+ for (IETypedElementResultDisplayer namedQueryResultDisplayer : this.queryResultDisplayers) {
+ if (name.equals(namedQueryResultDisplayer.getName())) {
+ return namedQueryResultDisplayer;
+ }
+ }
+ return null;
+ }
+
+ @Override
+ protected String getExtensionPointName() {
+ return QueryResultDisplayersRegistry.EXTENSION_POINT_NAME;
+ }
+
+ @Override
+ protected String getExtensionPointNamespace() {
+ return Activator.getDefault().getBundle().getSymbolicName();
+ }
+
+ @Override
+ protected void handleRootElement(final IConfigurationElement configurationElement) {
+ final String name = configurationElement.getName();
+ if (name.equalsIgnoreCase(QueryResultDisplayersRegistry.ELEMENT_QUERY_RESULT_DISPLAYER)) {
+ readQueryResultDisplayer(configurationElement);
+ } else {
+ logUnknownElement(configurationElement);
+ }
+ }
+
+ private void readQueryResultDisplayer(final IConfigurationElement configurationElement) {
+ Object queryResultDisplayerObject = null;
+ try {
+ queryResultDisplayerObject = configurationElement
+ .createExecutableExtension(QueryResultDisplayersRegistry.ATTRIBUTE_CLASS);
+ } catch (final CoreException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ if (queryResultDisplayerObject == null) {
+ logMissingAttribute(configurationElement, QueryResultDisplayersRegistry.ATTRIBUTE_CLASS);
+ return;
+ }
+
+ if (queryResultDisplayerObject instanceof IETypedElementResultDisplayer) {
+ IETypedElementResultDisplayer queryResultDisplayer = (IETypedElementResultDisplayer) queryResultDisplayerObject;
+ this.queryResultDisplayers.add(queryResultDisplayer);
+ } else {
+ logError(configurationElement, NLS.bind("The given class is not a {0}.", //$NON-NLS-1$
+ IETypedElementResultDisplayer.class.getSimpleName()));
+ }
+
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/EClassifierSelectionControl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/EClassifierSelectionControl.java
new file mode 100644
index 00000000000..3fee0d0bb99
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/EClassifierSelectionControl.java
@@ -0,0 +1,90 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites.FilteredElementSelectionComposite;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites.SelectETypeComposite.ETypeSelectionOptions;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * A control to select an {@link EClass}, that can be filtered using the associated text field.
+ */
+public class EClassifierSelectionControl extends FilteredElementSelectionComposite {
+
+ private final Map<String, EClassifier> stringToEClassifierMap = new HashMap<String, EClassifier>();
+ private final ETypeSelectionOptions eTypeSelectionOption;
+ private String metamodelNsUri;
+
+ public EClassifierSelectionControl(final Composite parent, final String metamodelNsUri, final ETypeSelectionOptions eTypeSelectionOption) {
+ super(parent, true, false);
+ this.eTypeSelectionOption = eTypeSelectionOption;
+ this.metamodelNsUri = metamodelNsUri;
+ }
+
+ public void updateList(final String metamodelNsUri2) {
+ this.metamodelNsUri = metamodelNsUri2;
+ EPackage ePackage = EPackage.Registry.INSTANCE.getEPackage(this.metamodelNsUri);
+ if (ePackage != null) {
+ List<String> eClasses = new ArrayList<String>();
+ EList<EClassifier> eClassifiers = ePackage.getEClassifiers();
+ if (this.eTypeSelectionOption == ETypeSelectionOptions.ECLASS) {
+ for (EClassifier eClassifier : eClassifiers) {
+ if (eClassifier instanceof EClass) {
+ eClasses.add(eClassifier.getName());
+ this.stringToEClassifierMap.put(eClassifier.getName(), eClassifier);
+ }
+ }
+ } else if (this.eTypeSelectionOption == ETypeSelectionOptions.EDATATYPE) {
+ for (EClassifier eClassifier : eClassifiers) {
+ if (eClassifier instanceof EDataType) {
+ eClasses.add(eClassifier.getName());
+ this.stringToEClassifierMap.put(eClassifier.getName(), eClassifier);
+ }
+ }
+
+ } else {
+ for (EClassifier eClassifier : eClassifiers) {
+ eClasses.add(eClassifier.getName());
+ this.stringToEClassifierMap.put(eClassifier.getName(), eClassifier);
+ }
+ }
+ if (eClasses.isEmpty()) {
+ eClasses.add(Messages.No_result_found);
+ setEnabled(false);
+ } else {
+ setEnabled(true);
+ }
+ setElements(eClasses.toArray());
+ }
+ }
+
+ public EClassifier getSelectedEClassifier() {
+ Object[] selectElements = getSelectedElements();
+ if (selectElements != null && selectElements.length > 0) {
+ if (this.stringToEClassifierMap.containsKey(selectElements[0])) {
+ return this.stringToEClassifierMap.get(selectElements[0]);
+ }
+ }
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionControl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionControl.java
new file mode 100644
index 00000000000..33f8373d22e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionControl.java
@@ -0,0 +1,431 @@
+/*******************************************************************************
+ * Copyright (c) 2010, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 370806 - [table] rewrite the "allowed contents" query selection dialog for v0.2
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ * Gregoire Dupe (Mia-Software) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Vincent Lorenzo (CEA-LIST) - Bug 357621 - Improve the label displayed for Customization and Facets
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ * Olivier Remaud (Soft-Maint) - Bug 377615 - Query View filtering
+ * Vincent Lorenzo (CEA-LIST) - Bug 357621 - Improve the label displayed for Customization and Facets
+ * Vincent Lorenzo (CEA-LIST) - Bug 377909 - The elements displayed in the ETypedElement dialog are not sorted by alphabetic order
+*******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomizedLabelProviderFactory;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.utils.ImageProvider;
+import org.eclipse.papyrus.emf.facet.util.core.internal.exported.IFilter;
+import org.eclipse.jface.viewers.ColumnViewerToolTipSupport;
+import org.eclipse.jface.viewers.IBaseLabelProvider;
+import org.eclipse.jface.viewers.IContentProvider;
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.jface.viewers.IOpenListener;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.OpenEvent;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.viewers.StructuredViewer;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.jface.viewers.ViewerComparator;
+import org.eclipse.jface.viewers.ViewerFilter;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManagerFactory;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.dialogs.FilteredTree;
+import org.eclipse.ui.dialogs.PatternFilter;
+
+/**
+ * A control that displays a tree of ETypedElements under a list of containers (EPackages for example), with a filter
+ * text field.
+ */
+public class ETypedElementSelectionControl implements IETypedElementTabSelectionWidgetInternal {
+
+ public static final String TAB_ID = "flat.view.id"; //$NON-NLS-1$
+
+ public static final String TITLE = Messages.ETypedElementSelectionControl_FlatView;
+
+ /** An OK status, but without the "OK" message, because we don't want "OK" to appear in the status bar */
+ private static final IStatus OK_STATUS = new Status(IStatus.OK, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+
+ private FilteredTree filteredTree;
+ protected Collection<? extends ETypedElement> available;
+ private final int selectionMaxSize;
+ private final boolean allowEmpty;
+ private Button rbNoSelection;
+ private Button rbSelection;
+ private IStatus validationStatus;
+ private final IBaseLabelProvider labelProvider;
+ private final Composite cParent;
+ private final Collection<? extends EObject> knownEPackage;
+
+ /** Create a tree with a filter text field to select ETypedElements. */
+ public ETypedElementSelectionControl(final Composite parentComposite,
+ final int selectionMaxSize, final boolean allowEmpty,
+ final ICustomizationManager customManager,
+ final Collection<? extends EObject> knownEPackage) {
+ this.cParent = parentComposite;
+ this.knownEPackage = knownEPackage;
+ this.selectionMaxSize = selectionMaxSize;
+ this.allowEmpty = allowEmpty;
+ ICustomizationManager tempCustomManager;
+ if (customManager == null) {
+ tempCustomManager = ICustomizationManagerFactory.DEFAULT.getOrCreateICustomizationManager(new ResourceSetImpl());
+ } else {
+ tempCustomManager = customManager;
+ }
+ this.labelProvider = ICustomizedLabelProviderFactory.DEFAULT
+ .createCustomizedLabelProvider(tempCustomManager);
+ }
+
+ public void createContents() {
+ final Composite composite = new Composite(this.cParent, SWT.NONE);
+ composite.setLayout(new GridLayout());
+ composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+
+ if (this.allowEmpty) {
+ this.rbNoSelection = new Button(composite, SWT.RADIO);
+ this.rbNoSelection.setText(Messages.ETypedElementSelectionDialog_radioButtonNoSelection);
+ this.rbNoSelection.setSelection(true);
+ this.rbNoSelection.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ final boolean selected = getRadioButtonNoSelection().getSelection();
+ setETypedElementSelectionEnabled(!selected);
+ if (selected) {
+ setSelection(StructuredSelection.EMPTY);
+ }
+ }
+ });
+ this.rbSelection = new Button(composite, SWT.RADIO);
+ if (this.selectionMaxSize > 1) {
+ this.rbSelection.setText(Messages.ETypedElementSelectionDialog_radioButtonMultiSelection);
+ } else {
+ this.rbSelection.setText(Messages.ETypedElementSelectionDialog_radioButtonSingleSelection);
+ }
+ this.rbSelection.setSelection(false);
+ this.rbSelection.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ final boolean selected = getRadioButtonSelection().getSelection();
+ setETypedElementSelectionEnabled(selected);
+ if (!selected) {
+ setSelection(StructuredSelection.EMPTY);
+ }
+ }
+ });
+ }
+
+ createFilteredTree(composite);
+
+ this.filteredTree.getViewer().addSelectionChangedListener(new ISelectionChangedListener() {
+ public void selectionChanged(final SelectionChangedEvent event) {
+ updateValidationStatus();
+ }
+ });
+
+ if (this.allowEmpty) {
+ setETypedElementSelectionEnabled(false);
+ }
+
+ updateValidationStatus();
+ }
+
+ public void addOpenListener(final IOpenListener openListener) {
+ // double-click or enter to choose the selected typed element
+ this.filteredTree.getViewer().addOpenListener(new IOpenListener() {
+ public void open(final OpenEvent event) {
+ // only if the selection is valid
+ if (!isErrorStatus()) {
+ openListener.open(event);
+ }
+ }
+ });
+ }
+
+ public void addSelectionChangedListener(final ISelectionChangedListener listener) {
+ this.filteredTree.getViewer().addSelectionChangedListener(listener);
+ }
+
+ private void createFilteredTree(final Composite parentComposite) {
+ this.filteredTree = new FilteredTree(parentComposite, selectionStyle(this.selectionMaxSize) | SWT.H_SCROLL | SWT.V_SCROLL
+ | SWT.BORDER, createPatternFilter(), true);
+ // allow tooltip for this viewer
+ ColumnViewerToolTipSupport.enableFor(this.filteredTree.getViewer());
+ this.filteredTree.getViewer().setContentProvider(createContentProvider());
+ this.filteredTree.getViewer().setLabelProvider(this.labelProvider);
+ this.filteredTree.getViewer().setFilters(new ViewerFilter[] { this.filteredTree.getPatternFilter() });
+ this.filteredTree.getViewer().setComparator(new ViewerComparator());
+ }
+
+ protected void updateValidationStatus() {
+ if (this.filteredTree == null) {
+ return;
+ }
+
+ final Status errorElements = new Status(IStatus.ERROR, Activator.PLUGIN_ID,
+ Messages.ETypedElementSelectionControl_invalidSelectionETypedElementsOnly);
+ final Status errorSelection = new Status(IStatus.ERROR, Activator.PLUGIN_ID, Messages.ETypedElementSelectionControl_invalidSelection);
+
+ final IStructuredSelection selection = (IStructuredSelection) this.filteredTree.getViewer().getSelection();
+ IStatus newStatus = ETypedElementSelectionControl.OK_STATUS;
+ if (!this.allowEmpty && selection.isEmpty()) {
+ newStatus = new Status(IStatus.ERROR, Activator.PLUGIN_ID, NLS.bind(Messages.ETypedElementSelectionControl_invalidSelectionAtLeastOneElement,
+ Integer.valueOf(this.selectionMaxSize)));
+ } else if (selection.size() > this.selectionMaxSize) {
+ newStatus = new Status(IStatus.ERROR, Activator.PLUGIN_ID, NLS.bind(Messages.ETypedElementSelectionControl_invalidSelectionAtMostXElements,
+ Integer.valueOf(this.selectionMaxSize)));
+ } else {
+ final Iterator<?> iterator = selection.iterator();
+ while (iterator.hasNext()) {
+ final Object selectedElement = iterator.next();
+ if (!(selectedElement instanceof ETypedElement)) {
+ newStatus = errorElements;
+ break;
+ }
+ }
+ }
+ setValidationStatus(newStatus);
+ }
+
+ protected void setValidationStatus(final IStatus status) {
+ this.validationStatus = status;
+ }
+
+ public IStatus getValidationStatus() {
+ return this.validationStatus;
+ }
+
+ public boolean isErrorStatus() {
+ return this.validationStatus == null || this.validationStatus.getSeverity() >= IStatus.ERROR;
+ }
+
+ public void setAvailableETypedElements(final Collection<? extends ETypedElement> newAvailable) {
+ this.available = newAvailable;
+ final Set<EObject> containers = new HashSet<EObject>();
+ for (final ETypedElement eTypedElement : newAvailable) {
+ final EObject container = getTopmostContainer(eTypedElement);
+ if (container != null && containsETypedElement(container)) {
+ containers.add(container);
+ }
+ }
+ for (EObject eObject : this.knownEPackage) {
+ if (containsETypedElement(eObject)) {
+ containers.add(eObject);
+ }
+ }
+ setInput(containers);
+ }
+
+ protected static EObject getTopmostContainer(final EObject eObject) {
+ EObject container = eObject.eContainer();
+ EObject result = container;
+ while (container != null) {
+ result = container;
+ container = container.eContainer();
+ }
+ return result;
+ }
+
+ public List<ETypedElement> getSelectedETypedElements() {
+ final List<ETypedElement> currentlySelected = new ArrayList<ETypedElement>();
+ if (this.filteredTree.isDisposed()) {
+ throw new IllegalStateException("Cannot get the selection since the viewer is disposed."); //$NON-NLS-1$
+ }
+ final IStructuredSelection selection = (IStructuredSelection) this.filteredTree.getViewer()
+ .getSelection();
+ final Iterator<?> iterator = selection.iterator();
+ while (iterator.hasNext()) {
+ final Object element = iterator.next();
+ if (element instanceof ETypedElement) {
+ final ETypedElement eTypedElement = (ETypedElement) element;
+ currentlySelected.add(eTypedElement);
+ }
+ }
+ return currentlySelected;
+ }
+
+ public void setSelectedETypedElements(final Collection<? extends ETypedElement> newSelection) {
+ if (newSelection == null) {
+ throw new IllegalArgumentException();
+ }
+ final List<ETypedElement> filteredSelection = new ArrayList<ETypedElement>();
+ filteredSelection.addAll(newSelection);
+ // only keep available elements
+ filteredSelection.retainAll(this.available);
+ setSelection(new StructuredSelection(filteredSelection));
+ }
+
+ public void setSelection(final IStructuredSelection selection) {
+ setETypedElementSelectionEnabled(!selection.isEmpty());
+ this.filteredTree.getViewer().setSelection(selection);
+ updateValidationStatus();
+ }
+
+ protected void setETypedElementSelectionEnabled(final boolean enabled) {
+ getRadioButtonNoSelection().setSelection(!enabled);
+ getRadioButtonSelection().setSelection(enabled);
+ this.filteredTree.getViewer().getTree().setEnabled(enabled);
+ this.filteredTree.getFilterControl().setEnabled(enabled);
+ }
+
+ public void setInput(final Collection<? extends EObject> containers) {
+ this.filteredTree.getViewer().setInput(containers);
+ }
+
+ // @SuppressWarnings("unchecked") : this is the input type
+ @SuppressWarnings("unchecked")
+ public Collection<? extends EObject> getInput() {
+ return (Collection<? extends EObject>) this.filteredTree.getViewer().getInput();
+ }
+
+ protected IContentProvider createContentProvider() {
+ return new ETypedElementSelectionControlContentProvider(new IFilter<EObject>() {
+ public boolean filter(final EObject eObject) {
+ return filterChild(eObject);
+ }
+ });
+ }
+
+ protected boolean filterChild(final EObject eObject) {
+ boolean selected;
+ if (containsETypedElement(eObject)) {
+ selected = true;
+ } else if (eObject instanceof ETypedElement) {
+ selected = isAvailable(eObject);
+ } else {
+ selected = false;
+ }
+ return selected;
+ }
+
+ protected boolean isAvailable(final EObject eObject) {
+ return this.available.contains(eObject);
+ }
+
+ protected boolean containsETypedElement(final EObject eObject) {
+ boolean result = false;
+ final TreeIterator<EObject> eAllContents = eObject.eAllContents();
+ while (eAllContents.hasNext()) {
+ final EObject element = eAllContents.next();
+ if (element instanceof ETypedElement) {
+ final ETypedElement typedElement = (ETypedElement) element;
+ if (isAvailable(typedElement)) {
+ result = true;
+ break;
+ }
+ } else {
+ result = containsETypedElement(element);
+ if (result) {
+ break;
+ }
+ }
+ }
+ return result;
+ }
+
+ private static int selectionStyle(final int selectionMaxSize) {
+ int selectionStyle;
+ if (selectionMaxSize > 1) {
+ selectionStyle = SWT.MULTI;
+ } else {
+ selectionStyle = SWT.SINGLE;
+ }
+ return selectionStyle;
+ }
+
+ private static PatternFilter createPatternFilter() {
+ return new PatternFilter() {
+ @Override
+ protected boolean isLeafMatch(final Viewer viewer, final Object element) {
+ final String labelText = ((ILabelProvider) ((StructuredViewer) viewer).getLabelProvider())
+ .getText(element);
+
+ if (labelText == null) {
+ return false;
+ }
+ return wordMatches(labelText) || parentMatches(viewer, element);
+ }
+
+ private boolean parentMatches(final Viewer viewer, final Object element) {
+ final ITreeContentProvider contentProvider = (ITreeContentProvider) ((StructuredViewer) viewer)
+ .getContentProvider();
+ final Object parent = contentProvider.getParent(element);
+ if (parent == null) {
+ return false;
+ }
+ return isLeafMatch(viewer, parent);
+ }
+ };
+ }
+
+ public IStructuredSelection getSelection() {
+ return (IStructuredSelection) this.filteredTree.getViewer().getSelection();
+ }
+
+ protected Button getRadioButtonNoSelection() {
+ return this.rbNoSelection;
+ }
+
+ protected Button getRadioButtonSelection() {
+ return this.rbSelection;
+ }
+
+ public FilteredTree getFilteredTree() {
+ return this.filteredTree;
+ }
+
+ public boolean isDisposed() {
+ return this.filteredTree.isDisposed();
+ }
+
+ public String getTitle() {
+ return ETypedElementSelectionControl.TITLE;
+ }
+
+ public String getToolTipText() {
+ return getTitle();
+ }
+
+ public Image getImage() {
+ return ImageProvider.getInstance().getFlatViewIcon();
+ }
+
+ public String getTabId() {
+ return ETypedElementSelectionControl.TAB_ID;
+ }
+
+ public Collection<? extends EObject> getKnownEPackage() {
+ return this.knownEPackage;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionControlContentProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionControlContentProvider.java
new file mode 100644
index 00000000000..6e2dbc00cc2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionControlContentProvider.java
@@ -0,0 +1,99 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 370806 - [table] rewrite the "allowed contents" query selection dialog for v0.2
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.util.core.internal.exported.IFilter;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.Viewer;
+
+public class ETypedElementSelectionControlContentProvider implements ITreeContentProvider {
+
+ private final IFilter<EObject> childrenFilter;
+
+ public ETypedElementSelectionControlContentProvider(final IFilter<EObject> childrenFilter) {
+ this.childrenFilter = childrenFilter;
+ }
+
+ private Object input;
+
+ public Object[] getElements(final Object inputElement) {
+ // @SuppressWarnings("unchecked") : this is the type setInput accepts
+ @SuppressWarnings("unchecked")
+ final Collection<? extends EObject> containers = (Collection<? extends EObject>) inputElement;
+ return containers.toArray();
+ }
+
+ public Object[] getChildren(final Object parentElement) {
+ Object[] children;
+ if (parentElement instanceof EObject) {
+ final EObject container = (EObject) parentElement;
+ final List<EObject> filteredChildren = computeFilteredChildren(container);
+ children = filteredChildren.toArray();
+ } else {
+ children = new Object[0];
+ }
+ return children;
+ }
+
+ public Object getParent(final Object element) {
+ Object parent = null;
+ if (element instanceof EObject) {
+ parent = ((EObject) element).eContainer();
+ }
+ return parent;
+ }
+
+ // @SuppressWarnings("unchecked") : the input type is checked by setInput
+ @SuppressWarnings("unchecked")
+ public boolean hasChildren(final Object element) {
+ boolean result;
+ final Collection<? extends EObject> rootElements = (Collection<? extends EObject>) this.input;
+ if (rootElements.contains(element)) {
+ // avoid computing all the children of all the top-level elements
+ // since this could be very expensive
+ result = true;
+ } else if (element instanceof EObject) {
+ result = getChildren(element).length > 0;
+ } else {
+ result = false;
+ }
+ return result;
+ }
+
+ public void inputChanged(final Viewer viewer, final Object oldInput,
+ final Object newInput) {
+ this.input = newInput;
+ }
+
+ public void dispose() {
+ // nothing
+ }
+
+ protected List<EObject> computeFilteredChildren(final EObject parentEObject) {
+ final List<EObject> children = new ArrayList<EObject>();
+ final EList<EObject> eContents = parentEObject.eContents();
+ children.addAll(eContents);
+ final List<EObject> filteredChildren = new ArrayList<EObject>();
+ for (final EObject eObject : children) {
+ if (this.childrenFilter.filter(eObject)) {
+ filteredChildren.add(eObject);
+ }
+ }
+ return filteredChildren;
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionControlManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionControlManager.java
new file mode 100644
index 00000000000..bd0a2cbc1e6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionControlManager.java
@@ -0,0 +1,219 @@
+/**
+ * Copyright (c) 2012 CEA-LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA-LIST) - Bug 357621 - Improve the label displayed for Customization and Facets
+ * Gregoire Dupe (Mia-Software) - Bug 357621 - Improve the label displayed for Customization and Facets
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ * Nicolas Bros (Mia-Software) - Bug 370806 - [table] rewrite the "allowed contents" query selection dialog for v0.2
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.preferences.PreferenceConstants;
+import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.jface.viewers.IOpenListener;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.TabFolder;
+import org.eclipse.swt.widgets.TabItem;
+import org.eclipse.ui.dialogs.FilteredTree;
+
+public class ETypedElementSelectionControlManager implements
+ IETypedElementSelectionControlManager {
+
+ // this map does the link between the tabItem and the filtered trees
+ private final Map<TabItem, IETypedElementTabSelectionWidgetInternal> trees;
+ private TabFolder tabFolder;
+ private final Composite parentComposite;
+ private final int selectionMaxSize;
+
+ /**
+ * true if empty selection is allowed
+ */
+ private final boolean emptySelection;
+ private final ICustomizationManager customManager;
+ private Collection<? extends ETypedElement> availableElements;
+ private final Collection<? extends EObject> knownEPackage;
+
+ public ETypedElementSelectionControlManager(
+ final Composite parentComposite, final int selectionMaxSize,
+ final boolean emptySelection,
+ final ICustomizationManager customManager,
+ final Collection<? extends EObject> knownEPackage) {
+
+ this.trees = new HashMap<TabItem, IETypedElementTabSelectionWidgetInternal>();
+ this.parentComposite = parentComposite;
+ this.selectionMaxSize = selectionMaxSize;
+ this.emptySelection = emptySelection;
+ this.customManager = customManager;
+ this.knownEPackage = knownEPackage;
+ }
+
+ private static Composite createComposite(final Composite parent) {
+ final Composite composite = new Composite(parent, SWT.NONE);
+ final GridLayout layout = new GridLayout();
+ composite.setLayout(layout);
+ composite.setLayoutData(new GridData(GridData.FILL_BOTH));
+ return composite;
+ }
+
+ private void init() {
+ this.tabFolder = new TabFolder(this.parentComposite, SWT.TOP);
+ this.tabFolder.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true,
+ true));
+
+ // we create the flat tree
+ final TabItem flatItem = new TabItem(this.tabFolder, SWT.NONE);
+
+ final Composite flatComposite = createComposite(this.tabFolder);
+ IETypedElementTabSelectionWidgetInternal filteredTree = new ETypedElementSelectionControl(
+ flatComposite, this.selectionMaxSize, this.emptySelection,
+ this.customManager, this.knownEPackage);
+ flatItem.setText(filteredTree.getTitle());
+ flatItem.setToolTipText(filteredTree.getToolTipText());
+ flatItem.setImage(filteredTree.getImage());
+ this.trees.put(flatItem, filteredTree);
+ flatItem.setControl(flatComposite);
+ // we create the sortedTabItem
+ final TabItem sortedItem = new TabItem(this.tabFolder, SWT.NONE);
+ final Composite sortedComposite = createComposite(this.tabFolder);
+ filteredTree = new ETypedElementSelectionSortedControl(sortedComposite,
+ this.selectionMaxSize, this.emptySelection, this.customManager,
+ this.knownEPackage);
+ sortedItem.setText(filteredTree.getTitle());
+ sortedItem.setToolTipText(filteredTree.getToolTipText());
+ sortedItem.setImage(filteredTree.getImage());
+ sortedItem.setControl(sortedComposite);
+ this.trees.put(sortedItem, filteredTree);
+ initSelectedTabItem();
+ }
+
+ private IETypedElementTabSelectionWidgetInternal getActiveTree() {
+ // selectionIndex: Index of the selected tab
+ final int selectionIndex = this.tabFolder.getSelectionIndex();
+ final TabItem currentTabItem = this.tabFolder
+ .getItem(selectionIndex);
+ return this.trees.get(currentTabItem);
+ }
+
+ public void addOpenListener(final IOpenListener openListener) {
+ for (IETypedElementSelectionWidgetInternal tree : this.trees.values()) {
+ tree.addOpenListener(openListener);
+ }
+ }
+
+ public void addSelectionChangedListener(
+ final ISelectionChangedListener listener) {
+ for (IETypedElementSelectionWidgetInternal tree : this.trees.values()) {
+ tree.addSelectionChangedListener(listener);
+ }
+ }
+
+ /**
+ * Set the focus on the last selected TabItem
+ */
+ private void initSelectedTabItem() {
+ final IPreferenceStore store = Activator.getDefault()
+ .getPreferenceStore();
+ final String value = store
+ .getString(PreferenceConstants.TE_SELECTION_TAB);
+ for (TabItem item : this.tabFolder.getItems()) {
+ if (item.getText().equals(value)) {
+ this.tabFolder.setSelection(item);
+ return;
+ }
+ }
+ }
+
+ public IStatus getValidationStatus() {
+ return getActiveTree().getValidationStatus();
+ }
+
+ public void setAvailableETypedElements(
+ final Collection<? extends ETypedElement> availableTE) {
+ this.availableElements = availableTE;
+ for (IETypedElementSelectionWidgetInternal current : this.trees
+ .values()) {
+ current.setAvailableETypedElements(availableTE);
+ }
+ }
+
+ public List<ETypedElement> getSelectedETypedElements() {
+ return getActiveTree().getSelectedETypedElements();
+ }
+
+ private void updatePreferenceValue() {
+ final IPreferenceStore store = Activator.getDefault()
+ .getPreferenceStore();
+ final String value = getActiveTree().getTitle();
+ store.setValue(
+ PreferenceConstants.TE_SELECTION_TAB,
+ value);
+ }
+
+ public void setSelectedETypedElements(
+ final Collection<? extends ETypedElement> newSelection) {
+ if (newSelection == null) {
+ throw new IllegalArgumentException();
+ }
+ // only select elements that match the filter
+ final List<ETypedElement> filteredSelection = new ArrayList<ETypedElement>();
+ for (ETypedElement typedElement : newSelection) {
+ if (this.availableElements.contains(typedElement)) {
+ filteredSelection.add(typedElement);
+ }
+ }
+ setSelection(new StructuredSelection(filteredSelection));
+ }
+
+ public void setSelection(final IStructuredSelection selection) {
+ for (IETypedElementSelectionWidgetInternal filteredTree : this.trees
+ .values()) {
+ filteredTree.setSelection(selection);
+ }
+ }
+
+ public List<ETypedElement> computeResult() {
+ // we save the last visible item :
+ updatePreferenceValue();
+ return getActiveTree().getSelectedETypedElements();
+ }
+
+ public boolean isDisposed() {
+ return this.tabFolder == null || this.tabFolder.isDisposed() || getActiveTree().isDisposed();
+ }
+
+ public FilteredTree getFilteredTree() {
+ return getActiveTree().getFilteredTree();
+ }
+
+ public void createContents() {
+ init();
+ for (IETypedElementSelectionWidgetInternal current : this.trees
+ .values()) {
+ current.createContents();
+ }
+ }
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionSortedControl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionSortedControl.java
new file mode 100644
index 00000000000..119e714817f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionSortedControl.java
@@ -0,0 +1,206 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA-LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA-LIST) - Bug 357621 - Improve the label displayed for Customization and Facets
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List<ETypedElement>, List<FacetSet>)
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ * Vincent Lorenzo (CEA-LIST) - Bug 357621 - Improve the label displayed for Customization and Facets
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.core.FacetUtils;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.utils.ImageProvider;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.core.internal.exported.IFilter;
+import org.eclipse.jface.viewers.IContentProvider;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * A control that displays a tree of ETypedElements under a list of containers
+ * (EPackages for example), with a filter text field.
+ *
+ * the result should be : Ecore - FacetSet/Custom/... UML - FacetSet/Custom/...
+ * Aggregate - FacetSet/Custom/...
+ */
+public class ETypedElementSelectionSortedControl extends
+ ETypedElementSelectionControl {
+
+ /** this groupByMap is used to define the input of the treeviewer */
+ private final Map<EPackage, Set<EObject>> groupByMap;
+
+ /** the name of the tabs */
+ private static final String NAME = Messages.ETypedElementSelectionSortedControl_groupByMetamodelView;
+
+ public static final String GROUPED_TAB_ID = "group.by.metamodel.view.id"; //$NON-NLS-1$
+
+ public static final String TOOLTIP = Messages.ETypedElementSelectionSortedControl_toolTip;
+
+ /**
+ *
+ * @param parentComposite
+ * @param selectionMaxSize
+ * @param allowEmptySelection
+ * @param customizationMgr
+ */
+ public ETypedElementSelectionSortedControl(final Composite parentComposite,
+ final int selectionMaxSize, final boolean allowEmpty,
+ final ICustomizationManager customizationMgr,
+ final Collection<? extends EObject> knownEPackage) {
+ super(parentComposite, selectionMaxSize, allowEmpty,
+ customizationMgr, knownEPackage);
+ this.groupByMap = new HashMap<EPackage, Set<EObject>>();
+ }
+
+ @Override
+ public void setAvailableETypedElements(
+ final Collection<? extends ETypedElement> newAvailable) {
+ this.available = newAvailable;
+ prepareInput();
+ setInput(this.groupByMap.keySet());
+ }
+
+ /**
+ * this method is used to organize the input
+ */
+ private void prepareInput() {
+ if (this.available != null) {
+ for (ETypedElement eTypedElement : this.available) {
+ final EObject container = getTopmostContainer(eTypedElement);
+ if (container != null && containsETypedElement(container)) {
+ addContainer(container);
+ }
+ }
+ }
+ for (EObject current : getKnownEPackage()) {
+ if (containsETypedElement(current)) {
+ addContainer(current);
+ }
+ }
+ }
+
+
+ /**
+ * Add a container to the groupByMap
+ *
+ * @param container
+ * a container to add
+ */
+ private void addContainer(final EObject container) {
+ if (container instanceof FacetSet) { //we show only FacetSet in this view
+ final FacetSet facetSet = (FacetSet) container;
+ final Set<EPackage> packs = FacetUtils
+ .getAllExtendedEPackage(facetSet);
+ if (packs.isEmpty()) {
+ Logger.logError(NLS.bind("Package not found: {0}", //$NON-NLS-1$
+ container), Activator.getDefault());
+ }
+ for (EPackage current : packs) {
+ getValues(current).add(container);
+ }
+ }
+ }
+
+ /**
+ *
+ * @param pack
+ * an EPackage
+ * @return the values associated to the EPackage
+ */
+ private Collection<EObject> getValues(final EPackage pack) {
+ if (!this.groupByMap.containsKey(pack)) {
+ final Set<EObject> values = new HashSet<EObject>();
+ this.groupByMap.put(pack, values);
+ }
+ return this.groupByMap.get(pack);
+ }
+
+ @Override
+ protected IContentProvider createContentProvider() {
+ return new SortedContentProvider(new IFilter<EObject>() {
+ public boolean filter(final EObject eObject) {
+ return filterChild(eObject);
+ }
+ });
+ }
+
+ @Override
+ public String getTitle() {
+ return ETypedElementSelectionSortedControl.NAME;
+ }
+
+ @Override
+ public Image getImage() {
+ return ImageProvider.getInstance().getTreeViewIcon();
+ }
+
+ @Override
+ public String getToolTipText() {
+ return ETypedElementSelectionSortedControl.TOOLTIP;
+ }
+
+ @Override
+ public String getTabId() {
+ return ETypedElementSelectionSortedControl.GROUPED_TAB_ID;
+ }
+
+ public Set<EObject> getChlidren(final Object parentElement) {
+ return this.groupByMap
+ .get(parentElement);
+ }
+
+ private class SortedContentProvider extends
+ ETypedElementSelectionControlContentProvider {
+
+ public SortedContentProvider(final IFilter<EObject> childrenFilter) {
+ super(childrenFilter);
+ }
+
+ @Override
+ public Object[] getChildren(final Object parentElement) {
+ Object[] children;
+ final Set<EObject> list = ETypedElementSelectionSortedControl.this
+ .getChlidren(parentElement);
+ if (list == null) {
+ children = super.getChildren(parentElement);
+ } else {
+ children = list.toArray();
+ }
+ return children;
+ }
+
+ @Override
+ public Object getParent(final Object element) {
+ Object parent = super.getParent(element);
+ if (parent == null && element instanceof FacetSet) {
+ final Set<EPackage> packs = FacetUtils
+ .getAllExtendedEPackage((FacetSet) element);
+ if (!packs.isEmpty()) {
+ parent = packs.iterator().next();
+ }
+ }
+ return parent;
+ }
+
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionWidgetFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionWidgetFactory.java
new file mode 100644
index 00000000000..bb83caafb02
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/ETypedElementSelectionWidgetFactory.java
@@ -0,0 +1,43 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 370806 - [table] rewrite the "allowed contents" query selection dialog for v0.2
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget;
+
+import java.util.Collection;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.widget.IETypedElementSelectionWidget;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.widget.IETypedElementSelectionWidgetFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+
+public class ETypedElementSelectionWidgetFactory implements IETypedElementSelectionWidgetFactory {
+
+ public IETypedElementSelectionWidget createETypedElementSelectionWidget(
+ final int selectionMaxSize, final boolean allowEmpty,
+ final Composite parentComposite,
+ final ICustomizationManager customManager,
+ final Collection<? extends EObject> knownEPackage) {
+ final ETypedElementSelectionControlManager[] control = new ETypedElementSelectionControlManager[1];
+ // must be synchronous, otherwise the shell is not created before SynchronizedETypedElementSelectionWidget, and SynchronizedComposite throws a NPE
+ Display.getDefault().syncExec(new Runnable() {
+ public void run() {
+ control[0] = new ETypedElementSelectionControlManager(parentComposite,
+ selectionMaxSize, allowEmpty,
+ customManager, knownEPackage);
+ control[0].createContents();
+ }
+ });
+ return new SynchronizedETypedElementSelectionWidget(control[0]);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/FacetSetSelectionControl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/FacetSetSelectionControl.java
new file mode 100644
index 00000000000..d33ae497538
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/FacetSetSelectionControl.java
@@ -0,0 +1,333 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ * Nicolas Bros (Mia-Software) - Bug 372626 - Aggregates
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.exported.IResolverManager;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.dialogs.FacetSetTreeContentProvider;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.widget.IFacetSetSelectionWidget;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.utils.ImageUtils;
+import org.eclipse.jface.viewers.CheckStateChangedEvent;
+import org.eclipse.jface.viewers.CheckboxTreeViewer;
+import org.eclipse.jface.viewers.ICheckStateListener;
+import org.eclipse.jface.viewers.ICheckStateProvider;
+import org.eclipse.jface.viewers.IContentProvider;
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+/** A control that displays a tree of FacetSets with checkboxes to select them. */
+public class FacetSetSelectionControl implements IFacetSetSelectionWidget {
+
+ /** An OK status, but without the "OK" message, because we don't want "OK" to appear in the status bar */
+ protected static final IStatus OK_STATUS = new Status(IStatus.OK, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ protected static final String INVALID_ELEMENTS = Messages.FacetSetSelectionControl_selectionContainsInvalidElements;
+ protected static final String ONLY_FACET_SETS = Messages.FacetSetSelectionControl_onlyFacetSetsAllowedInSelection;
+
+ private final Composite cParent;
+ private CheckboxTreeViewer treeViewer;
+ private Collection<? extends FacetSet> available;
+
+ private final int selectionMaxSize;
+ private final boolean allowEmpty;
+ private IStatus validationStatus;
+ private final Runnable onChange;
+ private final Set<FacetSet> selected = new HashSet<FacetSet>();
+
+ /** Create a checkbox tree to select FacetSets. */
+ public FacetSetSelectionControl(final Composite parentComposite, final int selectionMaxSize, final boolean allowEmpty, final Runnable onChange) {
+ this.cParent = parentComposite;
+ this.selectionMaxSize = selectionMaxSize;
+ this.allowEmpty = allowEmpty;
+ this.onChange = onChange;
+ }
+
+ public void createContents() {
+ final Composite composite = new Composite(this.cParent, SWT.NONE);
+ composite.setLayout(new GridLayout());
+ composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ createCheckboxTreeViewer(composite);
+ updateValidationStatus();
+ }
+
+ protected void notifyChanged() {
+ if (this.onChange != null) {
+ this.onChange.run();
+ }
+ }
+
+ public void setAvailableFacetSets(final Collection<? extends FacetSet> newAvailable) {
+ this.available = newAvailable;
+ this.treeViewer.setInput(newAvailable.toArray());
+ updateValidationStatus();
+ notifyChanged();
+ }
+
+ public Collection<? extends FacetSet> getAvailableFacetSets() {
+ return Collections.unmodifiableCollection(this.available);
+ }
+
+ public List<FacetSet> getSelectedFacetSets() {
+ return Collections.unmodifiableList(new ArrayList<FacetSet>(this.selected));
+ }
+
+ public void setSelectedFacetSets(final Collection<? extends FacetSet> facetSetsToSelect) {
+ if (facetSetsToSelect == null) {
+ throw new IllegalArgumentException();
+ }
+ this.selected.clear();
+ this.selected.addAll(facetSetsToSelect);
+ updateValidationStatus();
+ notifyChanged();
+ this.treeViewer.refresh();
+ }
+
+ public final void addCheckStateListener(final ICheckStateListener listener) {
+ this.treeViewer.addCheckStateListener(listener);
+ }
+
+ protected void createCheckboxTreeViewer(final Composite parentComposite) {
+ this.treeViewer = new CheckboxTreeViewer(parentComposite, SWT.BORDER);
+ this.treeViewer.setContentProvider(createContentProvider());
+ this.treeViewer.setLabelProvider(createLabelProvider());
+ this.treeViewer.getTree().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+
+ getTreeViewer().setCheckStateProvider(createCheckStateProvider());
+ addCheckStateListener(new ICheckStateListener() {
+ public void checkStateChanged(final CheckStateChangedEvent event) {
+ FacetSetSelectionControl.this.checkStateChanged(event);
+ }
+ });
+ getTreeViewer().refresh();
+ }
+
+ protected void checkStateChanged(final CheckStateChangedEvent event) {
+ handleCheckStateChange(event);
+ getTreeViewer().refresh();
+ updateValidationStatus();
+ notifyChanged();
+ }
+
+ protected void handleCheckStateChange(final CheckStateChangedEvent event) {
+ final Object element = event.getElement();
+ if (event.getElement() instanceof FacetSet) {
+ final FacetSet facetSet = (FacetSet) event.getElement();
+ FacetSet propagation = IResolverManager.DEFAULT
+ .selectionRoot(element, FacetSet.class);
+ if (propagation == null) {
+ propagation = facetSet;
+ }
+ if (event.getChecked()) {
+ this.selected.add(propagation);
+ } else {
+ this.selected.remove(propagation);
+ }
+ }
+ this.treeViewer.refresh();
+ }
+
+ protected boolean isUnderCheckedSuperPackage(final Object element) {
+ boolean result = false;
+ if (element instanceof FacetSet) {
+ final FacetSet facetSet = (FacetSet) element;
+ EObject eSuperPackage = facetSet.eContainer();
+ while (eSuperPackage != null) {
+ if (this.selected.contains(eSuperPackage)) {
+ result = true;
+ break;
+ }
+ eSuperPackage = eSuperPackage.eContainer();
+ }
+ }
+ return result;
+ }
+
+ protected ICheckStateProvider createCheckStateProvider() {
+ return new ICheckStateProvider() {
+ public boolean isGrayed(final Object element) {
+ return FacetSetSelectionControl.this.isGrayed(element);
+ }
+
+ public boolean isChecked(final Object element) {
+ return FacetSetSelectionControl.this.isChecked(element);
+ }
+ };
+ }
+
+ protected boolean isGrayed(final Object element) {
+ final List<FacetSet> propagation = IResolverManager.DEFAULT
+ .selectionPropagation(element, FacetSet.class);
+ boolean contains = false;
+ if (element instanceof EObject) {
+ final EObject eObject = (EObject) element;
+ contains = containsSelectedElement(eObject);
+ }
+ return (contains || isUnderCheckedSuperPackage(element) || propagation
+ .contains(element)) && !this.selected.contains(element);
+ }
+
+ protected boolean containsSelectedElement(final EObject eObject) {
+ boolean contains = false;
+ final Iterator<EObject> iterator = eObject.eAllContents();
+ while (iterator.hasNext()) {
+ final EObject subObject = iterator.next();
+ contains = this.selected.contains(subObject);
+ if (contains) {
+ break;
+ }
+ }
+ return contains;
+ }
+
+ protected boolean isChecked(final Object element) {
+ // This "|| isGrayed(element)" has been added avoid problems with
+ // Windows 7.
+ return this.selected.contains(element) || isGrayed(element);
+ }
+
+ protected void updateValidationStatus() {
+ if (this.treeViewer == null) {
+ return;
+ }
+ final Object[] checkedElements = this.treeViewer.getCheckedElements();
+ IStatus newStatus = FacetSetSelectionControl.OK_STATUS;
+ if (!this.allowEmpty && checkedElements.length == 0) {
+ newStatus = new Status(IStatus.ERROR, Activator.PLUGIN_ID, NLS.bind(Messages.FacetSetSelectionControl_mustSelectAtLeastOneElement,
+ Integer.valueOf(this.selectionMaxSize)));
+ } else if (checkedElements.length > this.selectionMaxSize) {
+ newStatus = new Status(IStatus.ERROR, Activator.PLUGIN_ID, NLS.bind(Messages.FacetSetSelectionControl_mustSelectAtMostNElements,
+ Integer.valueOf(this.selectionMaxSize)));
+ } else {
+ for (final Object checkedElement : checkedElements) {
+ final IStatus elementStatus = validateElement(checkedElement);
+ if (elementStatus.getSeverity() >= IStatus.ERROR) {
+ newStatus = elementStatus;
+ break;
+ }
+ }
+ }
+ setValidationStatus(newStatus);
+ }
+
+ protected static IStatus validateElement(final Object checkedElement) {
+ IStatus status = FacetSetSelectionControl.OK_STATUS;
+ if (!(checkedElement instanceof FacetSet)) {
+ status = new Status(IStatus.ERROR, Activator.PLUGIN_ID, FacetSetSelectionControl.ONLY_FACET_SETS);
+ }
+ return status;
+ }
+
+ protected boolean isAvailable(final FacetSet facetSet) {
+ boolean bAvailable = false;
+ if (this.available.contains(facetSet)) {
+ bAvailable = true;
+ } else {
+ EPackage parent = facetSet.getESuperPackage();
+ while (parent != null) {
+ if (this.available.contains(parent)) {
+ bAvailable = true;
+ break;
+ }
+ parent = parent.getESuperPackage();
+ }
+ }
+ return bAvailable;
+ }
+
+ protected void setValidationStatus(final IStatus status) {
+ this.validationStatus = status;
+ }
+
+ public IStatus getValidationStatus() {
+ return this.validationStatus;
+ }
+
+ public boolean isErrorStatus() {
+ return this.validationStatus == null || this.validationStatus.getSeverity() >= IStatus.ERROR;
+ }
+
+ protected ILabelProvider createLabelProvider() {
+ return new LabelProvider() {
+ @Override
+ public String getText(final Object element) {
+ String text;
+ if (element instanceof ENamedElement) {
+ final ENamedElement namedElement = (ENamedElement) element;
+ text = namedElement.getName();
+ } else {
+ text = super.getText(element);
+ }
+ return text;
+ }
+
+ @Override
+ public Image getImage(final Object element) {
+ return ImageUtils.getImage(element);
+ }
+ };
+ }
+
+ // @SuppressWarnings("static-method") : meant to be overridden
+ @SuppressWarnings("static-method")
+ protected IContentProvider createContentProvider() {
+ return new FacetSetTreeContentProvider(false, true, true);
+ }
+
+ public CheckboxTreeViewer getTreeViewer() {
+ return this.treeViewer;
+ }
+
+ public boolean isDisposed() {
+ return this.treeViewer.getTree().isDisposed();
+ }
+
+ public void selectAll() {
+ this.selected.clear();
+ this.selected.addAll(this.available);
+ this.treeViewer.refresh();
+ }
+
+ public void deselectAll() {
+ this.selected.clear();
+ this.treeViewer.refresh();
+ }
+
+ public Control getControl() {
+ Control control = null;
+ if (this.treeViewer != null) {
+ control = this.treeViewer.getTree();
+ }
+ return control;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/FacetSetSelectionWidgetFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/FacetSetSelectionWidgetFactory.java
new file mode 100644
index 00000000000..447f1f4c552
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/FacetSetSelectionWidgetFactory.java
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget;
+
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.widget.IFacetSetSelectionWidget;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.widget.IFacetSetSelectionWidgetFactory;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+
+public class FacetSetSelectionWidgetFactory implements IFacetSetSelectionWidgetFactory {
+
+ public IFacetSetSelectionWidget createFacetSetSelectionWidget(final int selectionMaxSize, final boolean allowEmpty,
+ final Composite parentComposite, final Runnable onChange) {
+ final FacetSetSelectionControl[] control = new FacetSetSelectionControl[1];
+ // must be synchronous, otherwise the shell is not created before SynchronizedFacetSetSelectionWidget, and
+ // SynchronizedComposite throws a NPE
+ Display.getDefault().syncExec(new Runnable() {
+ public void run() {
+ control[0] = new FacetSetSelectionControl(parentComposite, selectionMaxSize, allowEmpty, onChange);
+ control[0].createContents();
+ }
+ });
+ return new SynchronizedFacetSetSelectionWidget(control[0]);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/IETypedElementSelectionControlManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/IETypedElementSelectionControlManager.java
new file mode 100644
index 00000000000..58ce04285f8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/IETypedElementSelectionControlManager.java
@@ -0,0 +1,51 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA-LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ * Gregoire Dupe (Mia-Software) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.jface.viewers.IStructuredSelection;
+
+public interface IETypedElementSelectionControlManager extends
+ IETypedElementSelectionWidgetInternal {
+
+ /**
+ * @return the validation status
+ */
+ IStatus getValidationStatus();
+
+ /**
+ * Set the available elements
+ *
+ * @param eTypedElements
+ * available eTypedElements
+ */
+ void setAvailableETypedElements(
+ Collection<? extends ETypedElement> eTypedElements);
+
+ /**
+ *
+ * @param selection
+ * the selection
+ */
+ void setSelection(final IStructuredSelection selection);
+
+ /**
+ *
+ * @return the selection
+ */
+ List<ETypedElement> computeResult();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/IETypedElementSelectionWidgetInternal.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/IETypedElementSelectionWidgetInternal.java
new file mode 100644
index 00000000000..e84a12f3389
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/IETypedElementSelectionWidgetInternal.java
@@ -0,0 +1,41 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 370806 - [table] rewrite the "allowed contents" query selection dialog for v0.2
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.widget.IETypedElementSelectionWidget;
+import org.eclipse.jface.viewers.IOpenListener;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.dialogs.FilteredTree;
+
+public interface IETypedElementSelectionWidgetInternal extends IETypedElementSelectionWidget {
+
+ /** Adds a listener that is notified when an element is double-clicked or the Enter key is pressed */
+ void addOpenListener(IOpenListener openListener);
+
+ /** Adds a listener that is notified when the selection changes */
+ void addSelectionChangedListener(ISelectionChangedListener listener);
+
+ /** @return the validation status : the selection is not valid if {@link IStatus#getSeverity()} >= {@link IStatus#ERROR} */
+ IStatus getValidationStatus();
+
+ /** @return whether the widget is disposed */
+ boolean isDisposed();
+
+ FilteredTree getFilteredTree();
+
+ void createContents();
+
+ void setSelection(IStructuredSelection selection);
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/IETypedElementTabSelectionWidgetInternal.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/IETypedElementTabSelectionWidgetInternal.java
new file mode 100644
index 00000000000..04687d85c38
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/IETypedElementTabSelectionWidgetInternal.java
@@ -0,0 +1,47 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA-LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget;
+
+import org.eclipse.swt.graphics.Image;
+
+/**
+ *
+ * Each tab in ETypedElementSectionDialog should implements this interface
+ *
+ */
+public interface IETypedElementTabSelectionWidgetInternal extends
+ IETypedElementSelectionWidgetInternal {
+
+ /**
+ *
+ * @return the title for the tab
+ */
+ String getTitle();
+
+ /**
+ *
+ * @return the tooltip for the tab
+ */
+ String getToolTipText();
+
+ /**
+ *
+ * @return the image for the tab
+ */
+ Image getImage();
+
+ /**
+ *
+ * @return the id for the tab
+ */
+ String getTabId();
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/MetamodelSelectionControl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/MetamodelSelectionControl.java
new file mode 100644
index 00000000000..0bdd559cf26
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/MetamodelSelectionControl.java
@@ -0,0 +1,37 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget;
+
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeSet;
+
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites.FilteredElementSelectionComposite;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * A control to select a metamodel from a list of metamodels, that can be filtered using the
+ * associated text field.
+ */
+public class MetamodelSelectionControl extends FilteredElementSelectionComposite {
+
+ public MetamodelSelectionControl(final Composite parent) {
+ super(parent, true, false);
+
+ final Set<String> uris = new TreeSet<String>();
+ for (final Object name : ((Map<?, ?>) EPackage.Registry.INSTANCE).keySet()) {
+ uris.add((name).toString());
+ }
+ setElements(uris.toArray());
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/SynchronizedETypedElementSelectionWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/SynchronizedETypedElementSelectionWidget.java
new file mode 100644
index 00000000000..15fb55b6641
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/SynchronizedETypedElementSelectionWidget.java
@@ -0,0 +1,123 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 370806 - [table] rewrite the "allowed contents" query selection dialog for v0.2
+ * Vincent Lorenzo (CEA-LIST) - Bug 372644 - Create Customizable tooltips for the TreeViewer using a CustomizableLabelProvider
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.jface.viewers.IOpenListener;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.dialogs.FilteredTree;
+
+public class SynchronizedETypedElementSelectionWidget extends SynchronizedObject<ETypedElementSelectionControlManager> implements
+ IETypedElementSelectionWidgetInternal {
+
+ private final ETypedElementSelectionControlManager control;
+
+ protected IETypedElementSelectionWidgetInternal getControl() {
+ return this.control;
+ }
+
+ public SynchronizedETypedElementSelectionWidget(final ETypedElementSelectionControlManager control) {
+ super(control, control.getFilteredTree().getDisplay());
+ this.control = control;
+ }
+
+ public void setAvailableETypedElements(final Collection<? extends ETypedElement> available) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ getControl().setAvailableETypedElements(available);
+ }
+ });
+ }
+
+ public List<ETypedElement> getSelectedETypedElements() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<List<ETypedElement>>() {
+ @Override
+ public List<ETypedElement> safeRun() {
+ return getControl().getSelectedETypedElements();
+ }
+ });
+ }
+
+ public void setSelectedETypedElements(final Collection<? extends ETypedElement> elementsToSelect) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ getControl().setSelectedETypedElements(elementsToSelect);
+ }
+ });
+ }
+
+ public void addOpenListener(final IOpenListener openListener) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ getControl().addOpenListener(openListener);
+ }
+ });
+ }
+
+ public void addSelectionChangedListener(final ISelectionChangedListener listener) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ getControl().addSelectionChangedListener(listener);
+ }
+ });
+ }
+
+ public IStatus getValidationStatus() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<IStatus>() {
+ @Override
+ public IStatus safeRun() {
+ return getControl().getValidationStatus();
+ }
+ });
+ }
+
+ public boolean isDisposed() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(getControl().isDisposed());
+ }
+ }).booleanValue();
+ }
+
+ public FilteredTree getFilteredTree() {
+ // should not be used!
+ throw new UnsupportedOperationException();
+ }
+
+ public void createContents() {
+ // //nothing to do
+ throw new UnsupportedOperationException();
+ }
+
+ public void setSelection(final IStructuredSelection selection) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ getControl().setSelection(selection);
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/SynchronizedFacetSetSelectionWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/SynchronizedFacetSetSelectionWidget.java
new file mode 100644
index 00000000000..c917df782af
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/widget/SynchronizedFacetSetSelectionWidget.java
@@ -0,0 +1,90 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.widget.IFacetSetSelectionWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.swt.widgets.Control;
+
+public class SynchronizedFacetSetSelectionWidget extends SynchronizedObject<FacetSetSelectionControl> implements IFacetSetSelectionWidget {
+
+ private final FacetSetSelectionControl control;
+
+ protected FacetSetSelectionControl getDelegate() {
+ return this.control;
+ }
+
+ public SynchronizedFacetSetSelectionWidget(final FacetSetSelectionControl control) {
+ super(control, control.getTreeViewer().getTree().getDisplay());
+ this.control = control;
+ }
+
+ public void setAvailableFacetSets(final Collection<? extends FacetSet> available) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ getDelegate().setAvailableFacetSets(available);
+ }
+ });
+ }
+
+ public List<FacetSet> getSelectedFacetSets() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<List<FacetSet>>() {
+ @Override
+ public List<FacetSet> safeRun() {
+ return getDelegate().getSelectedFacetSets();
+ }
+ });
+ }
+
+ public void setSelectedFacetSets(final Collection<? extends FacetSet> facetSetsToSelect) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ getDelegate().setSelectedFacetSets(facetSetsToSelect);
+ }
+ });
+ }
+
+ public IStatus getValidationStatus() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<IStatus>() {
+ @Override
+ public IStatus safeRun() {
+ return getDelegate().getValidationStatus();
+ }
+ });
+ }
+
+ public boolean isDisposed() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(getDelegate().isDisposed());
+ }
+ }).booleanValue();
+ }
+
+ public Control getControl() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Control>() {
+ @Override
+ public Control safeRun() {
+ return getDelegate().getControl();
+ }
+ });
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AbstractAddFacetChildrenWizard.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AbstractAddFacetChildrenWizard.java
new file mode 100644
index 00000000000..9b4d50619f8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AbstractAddFacetChildrenWizard.java
@@ -0,0 +1,175 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Grégoire Dupe (Mia-Software) - Bug 373248 - Clean PMD errors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards;
+
+import java.util.Map;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.IQueryCreationPagePartRegistry;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IFacetChildrenWizard;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IQueryCreationPagePart;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.AbstractFacetWizardPage;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.CreateQueryWizardPage;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.window.Window;
+import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.jface.wizard.WizardDialog;
+
+@SuppressWarnings("PMD.ConstructorCallsOverridableMethod")
+//@SuppressWarnings("PMD.ConstructorCallsOverridableMethod") This class is
+//deprecated, we won't then spend to many time to conforms to PMD rules.
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public abstract class AbstractAddFacetChildrenWizard extends Wizard implements IFacetChildrenWizard {
+
+ private final ISelection selection;
+ private final EditingDomain editingDomain;
+ private final WizardDialog dialog;
+ private FacetSet facetSet;
+ private Facet facet;
+ private final Map<String, IQueryCreationPagePart> queryTypeNameToQueryCreationPage;
+
+ private AbstractFacetWizardPage facetCreationPage;
+ private CreateQueryWizardPage queryCreationPage;
+
+ public AbstractAddFacetChildrenWizard(final ISelection selection, final EditingDomain editingDomain) {
+ this.selection = selection;
+ this.editingDomain = editingDomain;
+ initializeSelection();
+ this.queryTypeNameToQueryCreationPage = IQueryCreationPagePartRegistry.INSTANCE.getRegisteredWizardPageParts();
+ this.dialog = new WizardDialog(getShell(), this);
+ addQueryCreationPage();
+ }
+
+ protected void addQueryCreationPage() {
+ this.queryCreationPage = new CreateQueryWizardPage(this.queryTypeNameToQueryCreationPage, getFacetSet(), this.facet);
+ }
+
+ private void initializeSelection() {
+ if (this.selection != null && !this.selection.isEmpty() && this.selection instanceof IStructuredSelection) {
+ IStructuredSelection ssel = (IStructuredSelection) this.selection;
+ if (ssel.size() > 1) {
+ return;
+ }
+ Object obj = ssel.getFirstElement();
+ if (obj instanceof FacetSet) {
+ this.facetSet = (FacetSet) obj;
+ } else {
+ if (obj instanceof Facet) {
+ this.facetSet = ((Facet) obj).getFacetSet();
+ this.facet = (Facet) obj;
+ }
+ }
+ }
+ }
+
+ @Override
+ public void addPages() {
+ if (this.facetCreationPage != null) {
+ addPage(this.facetCreationPage);
+ }
+ if (this.queryCreationPage != null) {
+ this.queryCreationPage.canChangeCanBeCached(false);
+ this.queryCreationPage.canChangeHasSideEffect(false);
+ this.queryCreationPage.canChangeLowerBound(false);
+ this.queryCreationPage.canChangeUpperBound(false);
+ this.queryCreationPage.canChangeQueryName(false);
+ this.queryCreationPage.setFacetSet(getFacetSet());
+ addPage(this.queryCreationPage);
+ }
+ }
+
+ @Override
+ public boolean canFinish() {
+ return getContainer().getCurrentPage() == this.queryCreationPage && this.queryCreationPage.isPageComplete();
+ }
+
+ public int open() {
+ if (this.dialog != null) {
+ return this.dialog.open();
+ }
+ return Window.CANCEL;
+ }
+
+ public void setFacet(final Facet facet) {
+ this.facetCreationPage.setFacet(facet);
+ }
+
+ public void setChildrenName(final String referenceName) {
+ this.facetCreationPage.setChildrenName(referenceName);
+ }
+
+ public void setUpperBound(final int upperBound) {
+ this.facetCreationPage.setUpperBound(upperBound);
+ }
+
+ public void setLowerBound(final int lowerBound) {
+ this.facetCreationPage.setLowerBound(lowerBound);
+ }
+
+ public void setType(final EClass type) {
+ this.facetCreationPage.setType(type);
+ }
+
+ public void canChangeFacet(final boolean canChange) {
+ this.facetCreationPage.canChangeParentName(canChange);
+ }
+
+ public void canChangeChildrenName(final boolean canChange) {
+ this.facetCreationPage.canChangeChildrenName(canChange);
+ }
+
+ public void canChangeUpperBound(final boolean canChange) {
+ this.facetCreationPage.canChangeUpperBound(canChange);
+ }
+
+ public void canChangeLowerBound(final boolean canChange) {
+ this.facetCreationPage.canChangeLowerBound(canChange);
+ }
+
+ public void canChangeType(final boolean canChange) {
+ this.facetCreationPage.canChangeType(canChange);
+ }
+
+ public EditingDomain getEditingDomain() {
+ return this.editingDomain;
+ }
+
+ protected final FacetSet getFacetSet() {
+ return this.facetSet;
+ }
+
+ protected final CreateQueryWizardPage getQueryCreationPage() {
+ return this.queryCreationPage;
+ }
+
+ protected void setFacetCreationPage(final AbstractFacetWizardPage facetCreationPage) {
+ this.facetCreationPage = facetCreationPage;
+ }
+
+ protected ISelection getSelection() {
+ return this.selection;
+ }
+
+ protected Map<String, IQueryCreationPagePart> getQueryTypeNameToQueryCreationPage() {
+ return this.queryTypeNameToQueryCreationPage;
+ }
+
+ protected AbstractFacetWizardPage getFacetCreationPage() {
+ return this.facetCreationPage;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AddFacetAttributeWizardImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AddFacetAttributeWizardImpl.java
new file mode 100644
index 00000000000..d7c97cb8d1b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AddFacetAttributeWizardImpl.java
@@ -0,0 +1,76 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetAction;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IQueryCreationPagePart;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.AbstractFacetWizardPage;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.AddAttributeInFacetWizardPage;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.CreateQueryWizardPage;
+import org.eclipse.jface.viewers.ISelection;
+
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class AddFacetAttributeWizardImpl extends AbstractAddFacetChildrenWizard {
+
+ public AddFacetAttributeWizardImpl(final ISelection selection, final EditingDomain editingDomain) {
+ super(selection, editingDomain);
+ setWindowTitle(Messages.Add_an_Attribute);
+ setFacetCreationPage(new AddAttributeInFacetWizardPage(getSelection(), getEditingDomain(), getQueryTypeNameToQueryCreationPage()));
+ }
+
+ @Override
+ public boolean performFinish() {
+ Query query = null;
+ AbstractFacetWizardPage facetPage = getFacetCreationPage();
+
+ if (facetPage.isSubTypingFacet()) {
+ CreateQueryWizardPage queryPage = getQueryCreationPage();
+
+ IQueryCreationPagePart iQueryPage = queryPage.getQueryCreationPage();
+ iQueryPage.setCanBeCached(queryPage.getCanBeCached());
+ iQueryPage.setHasSideEffect(queryPage.getHasSideEffect());
+ iQueryPage.setQueryName(queryPage.getQueryName());
+ iQueryPage.setLowerBound(queryPage.getLowerBound());
+ iQueryPage.setUpperBound(queryPage.getUpperBound());
+ iQueryPage.setQueryScope(facetPage.getFacet().getExtendedMetaclass());
+ iQueryPage.setQueryType(facetPage.getType());
+
+ iQueryPage.setUnique(facetPage.isUnique());
+ iQueryPage.setOrdered(facetPage.isOrdered());
+
+ query = iQueryPage.performFinish();
+ }
+
+ FacetAttribute facetAttribute = EFacetFactory.eINSTANCE.createFacetAttribute();
+ facetAttribute.setName(facetPage.getChildrenName());
+ facetAttribute.setEType(facetPage.getType());
+ facetAttribute.setQuery(query);
+ facetAttribute.setLowerBound(facetPage.getLowerBound());
+ facetAttribute.setUpperBound(facetPage.getUpperBound());
+
+ facetAttribute.setUnique(facetPage.isUnique());
+ facetAttribute.setOrdered(facetPage.isOrdered());
+ facetAttribute.setTransient(facetPage.isTransient());
+ facetAttribute.setChangeable(facetPage.isChangeable());
+ facetAttribute.setDerived(facetPage.isDerived());
+ facetAttribute.setVolatile(facetPage.isVolatile());
+
+ IFacetAction.INSTANCE.addAttributeInFacet(facetPage.getFacet(), facetAttribute, getEditingDomain());
+ return true;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AddFacetOperationParameterWizardImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AddFacetOperationParameterWizardImpl.java
new file mode 100644
index 00000000000..90eb037da9d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AddFacetOperationParameterWizardImpl.java
@@ -0,0 +1,60 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards;
+
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.ecore.EcoreFactory;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetAction;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.AbstractFacetWizardPage;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.AddOperationParameterInFacetWizardPage;
+import org.eclipse.jface.viewers.ISelection;
+
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class AddFacetOperationParameterWizardImpl extends AbstractAddFacetChildrenWizard {
+
+ public AddFacetOperationParameterWizardImpl(final ISelection selection, final EditingDomain editingDomain) {
+ super(selection, editingDomain);
+ setFacetCreationPage(new AddOperationParameterInFacetWizardPage(getSelection(), getEditingDomain()));
+ setWindowTitle(Messages.Add_an_Operation_Parameter);
+ }
+
+ @Override
+ protected void addQueryCreationPage() {
+ // We do not want to create a query for the operation's parameter
+ }
+
+ @Override
+ public boolean canFinish() {
+ return getFacetCreationPage().isPageComplete();
+ }
+
+ @Override
+ public boolean performFinish() {
+ AbstractFacetWizardPage page = getFacetCreationPage();
+ FacetOperation facetOperation = (FacetOperation) page.getQueryFacetElement();
+
+ EParameter parameter = EcoreFactory.eINSTANCE.createEParameter();
+ parameter.setName(page.getChildrenName());
+ parameter.setEType(page.getType());
+ parameter.setLowerBound(page.getLowerBound());
+ parameter.setUpperBound(page.getUpperBound());
+ parameter.setUnique(page.isUnique());
+ parameter.setOrdered(page.isOrdered());
+
+ IFacetAction.INSTANCE.addParameterInOperation(facetOperation, parameter, getEditingDomain());
+ return true;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AddFacetOperationWizardImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AddFacetOperationWizardImpl.java
new file mode 100644
index 00000000000..45e36b92a97
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AddFacetOperationWizardImpl.java
@@ -0,0 +1,71 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetAction;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IQueryCreationPagePart;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.AbstractFacetWizardPage;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.AddOperationInFacetWizardPage;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.CreateQueryWizardPage;
+import org.eclipse.jface.viewers.ISelection;
+
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class AddFacetOperationWizardImpl extends AbstractAddFacetChildrenWizard {
+
+ public AddFacetOperationWizardImpl(final ISelection selection, final EditingDomain editingDomain) {
+ super(selection, editingDomain);
+ setWindowTitle(Messages.Add_an_Operation);
+ setFacetCreationPage(new AddOperationInFacetWizardPage(getSelection(), getEditingDomain(), getQueryTypeNameToQueryCreationPage()));
+ }
+
+ @Override
+ public boolean performFinish() {
+ Query conformanceQuery = null;
+ AbstractFacetWizardPage facetPage = getFacetCreationPage();
+
+ if (facetPage.isSubTypingFacet()) {
+ CreateQueryWizardPage queryPage = getQueryCreationPage();
+
+ IQueryCreationPagePart iQueryPage = queryPage.getQueryCreationPage();
+ iQueryPage.setCanBeCached(queryPage.getCanBeCached());
+ iQueryPage.setHasSideEffect(queryPage.getHasSideEffect());
+ iQueryPage.setQueryName(queryPage.getQueryName());
+ iQueryPage.setLowerBound(queryPage.getLowerBound());
+ iQueryPage.setUpperBound(queryPage.getUpperBound());
+ iQueryPage.setQueryScope(facetPage.getFacet().getExtendedMetaclass());
+ iQueryPage.setQueryType(facetPage.getType());
+
+ iQueryPage.setUnique(facetPage.isUnique());
+ iQueryPage.setOrdered(facetPage.isOrdered());
+
+ conformanceQuery = iQueryPage.performFinish();
+ }
+
+ FacetOperation facetOperation = EFacetFactory.eINSTANCE.createFacetOperation();
+ facetOperation.setName(facetPage.getChildrenName());
+ facetOperation.setEType(facetPage.getType());
+ facetOperation.setQuery(conformanceQuery);
+ facetOperation.setLowerBound(facetPage.getLowerBound());
+ facetOperation.setUpperBound(facetPage.getUpperBound());
+ facetOperation.setUnique(facetPage.isUnique());
+ facetOperation.setOrdered(facetPage.isOrdered());
+
+ IFacetAction.INSTANCE.addOperationInFacet(facetPage.getFacet(), facetOperation, getEditingDomain());
+ return true;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AddFacetReferenceWizardImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AddFacetReferenceWizardImpl.java
new file mode 100644
index 00000000000..91ed5ec1076
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/AddFacetReferenceWizardImpl.java
@@ -0,0 +1,78 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetAction;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IQueryCreationPagePart;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.AbstractFacetWizardPage;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.AddReferenceInFacetWizardPage;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.CreateQueryWizardPage;
+import org.eclipse.jface.viewers.ISelection;
+
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class AddFacetReferenceWizardImpl extends AbstractAddFacetChildrenWizard {
+
+ public AddFacetReferenceWizardImpl(final ISelection selection, final EditingDomain editingDomain) {
+ super(selection, editingDomain);
+ setWindowTitle(Messages.Add_a_Reference);
+
+ setFacetCreationPage(new AddReferenceInFacetWizardPage(getSelection(), getEditingDomain(), getQueryTypeNameToQueryCreationPage()));
+ }
+
+ @Override
+ public boolean performFinish() {
+ Query conformanceQuery = null;
+ AbstractFacetWizardPage facetPage = getFacetCreationPage();
+
+ if (facetPage.isSubTypingFacet()) {
+ CreateQueryWizardPage queryPage = getQueryCreationPage();
+
+ IQueryCreationPagePart iQueryPage = queryPage.getQueryCreationPage();
+ iQueryPage.setCanBeCached(queryPage.getCanBeCached());
+ iQueryPage.setHasSideEffect(queryPage.getHasSideEffect());
+ iQueryPage.setQueryName(queryPage.getQueryName());
+ iQueryPage.setLowerBound(queryPage.getLowerBound());
+ iQueryPage.setUpperBound(queryPage.getUpperBound());
+ iQueryPage.setQueryScope(facetPage.getFacet().getExtendedMetaclass());
+ iQueryPage.setQueryType(facetPage.getType());
+
+ iQueryPage.setUnique(facetPage.isUnique());
+ iQueryPage.setOrdered(facetPage.isOrdered());
+
+ conformanceQuery = iQueryPage.performFinish();
+ }
+
+ FacetReference facetReference = EFacetFactory.eINSTANCE.createFacetReference();
+ facetReference.setName(facetPage.getChildrenName());
+ facetReference.setEType(facetPage.getType());
+ facetReference.setQuery(conformanceQuery);
+ facetReference.setLowerBound(facetPage.getLowerBound());
+ facetReference.setUpperBound(facetPage.getUpperBound());
+
+ facetReference.setUnique(facetPage.isUnique());
+ facetReference.setOrdered(facetPage.isOrdered());
+ facetReference.setTransient(facetPage.isTransient());
+ facetReference.setChangeable(facetPage.isChangeable());
+ facetReference.setDerived(facetPage.isDerived());
+ facetReference.setVolatile(facetPage.isVolatile());
+
+ IFacetAction.INSTANCE.addReferenceInFacet(facetPage.getFacet(), facetReference, getEditingDomain());
+ return true;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/CreateFacetInFacetSetWizardImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/CreateFacetInFacetSetWizardImpl.java
new file mode 100644
index 00000000000..bf499213ced
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/CreateFacetInFacetSetWizardImpl.java
@@ -0,0 +1,163 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards;
+
+import java.util.Map;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetAction;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.IQueryCreationPagePartRegistry;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.ICreateFacetInFacetSetWizard;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IQueryCreationPagePart;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.CreateFacetInFacetSetWizardPage;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.CreateQueryWizardPage;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.window.Window;
+import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.jface.wizard.WizardDialog;
+
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class CreateFacetInFacetSetWizardImpl extends Wizard implements ICreateFacetInFacetSetWizard {
+
+ private WizardDialog dialog = null;
+ private final CreateFacetInFacetSetWizardPage facetCreationPage;
+ private final CreateQueryWizardPage queryCreationPage;
+
+ private final ISelection selection;
+ private final EditingDomain editingDomain;
+
+ private FacetSet facetSet;
+ private boolean canChangeFacetSet;
+
+ private final Facet facet;
+
+ private boolean canChangeExtendedMetaClass = true;
+
+ private final Map<String, IQueryCreationPagePart> queryTypeNameToQueryCreationPage;
+
+ public CreateFacetInFacetSetWizardImpl(final ISelection selection2, final EditingDomain editingDomain2) {
+ super();
+ this.facet = EFacetFactory.eINSTANCE.createFacet();
+ setWindowTitle(Messages.Create_facet_in_facetSet);
+ this.selection = selection2;
+ initializeSelection();
+ this.editingDomain = editingDomain2;
+
+ this.queryTypeNameToQueryCreationPage = IQueryCreationPagePartRegistry.INSTANCE.getRegisteredWizardPageParts();
+
+ this.dialog = new WizardDialog(getShell(), this);
+
+ this.facetCreationPage = new CreateFacetInFacetSetWizardPage(this.facet, this.selection, this.editingDomain,
+ this.queryTypeNameToQueryCreationPage);
+
+ this.queryCreationPage = new CreateQueryWizardPage(this.queryTypeNameToQueryCreationPage, this.facetSet, this.facet);
+
+ }
+
+ private void initializeSelection() {
+ if (this.selection != null && !this.selection.isEmpty() && this.selection instanceof IStructuredSelection) {
+ IStructuredSelection ssel = (IStructuredSelection) this.selection;
+ if (ssel.size() > 1) {
+ return;
+ }
+ Object obj = ssel.getFirstElement();
+ if (obj instanceof FacetSet) {
+ this.facetSet = (FacetSet) obj;
+ }
+ }
+ }
+
+ @Override
+ public void addPages() {
+ this.facetCreationPage.setFacetSet(this.facetSet);
+ this.facetCreationPage.canChangeParentName(this.canChangeFacetSet);
+ this.facetCreationPage.setExtendedMetaClass(this.facet.getExtendedMetaclass());
+ this.facetCreationPage.canChangeExtendedMetaClass(this.canChangeExtendedMetaClass);
+ addPage(this.facetCreationPage);
+
+ this.queryCreationPage.canChangeCanBeCached(false);
+ this.queryCreationPage.canChangeHasSideEffect(false);
+ this.queryCreationPage.canChangeLowerBound(false);
+ this.queryCreationPage.canChangeUpperBound(false);
+ this.queryCreationPage.canChangeQueryName(false);
+ this.queryCreationPage.setFacetSet(this.facetSet);
+ addPage(this.queryCreationPage);
+ }
+
+ @Override
+ public boolean canFinish() {
+ if (getContainer().getCurrentPage() == this.facetCreationPage && !this.facetCreationPage.isSubTypingFacet()
+ && this.facetCreationPage.isPageComplete()) {
+ return true;
+ }
+ return getContainer().getCurrentPage() == this.queryCreationPage && getContainer().getCurrentPage().isPageComplete();
+ }
+
+ public int open() {
+ if (this.dialog != null) {
+ return this.dialog.open();
+ }
+ return Window.CANCEL;
+ }
+
+ @Override
+ public boolean performFinish() {
+ final String facetName = this.facetCreationPage.getChildrenName();
+ Query conformanceQuery = null;
+ if (this.facetCreationPage.isSubTypingFacet()) {
+ IQueryCreationPagePart iQueryPage = this.queryCreationPage.getQueryCreationPage();
+ iQueryPage.setCanBeCached(this.queryCreationPage.getCanBeCached());
+ iQueryPage.setHasSideEffect(this.queryCreationPage.getHasSideEffect());
+ iQueryPage.setQueryName(this.queryCreationPage.getQueryName());
+ iQueryPage.setLowerBound(this.queryCreationPage.getLowerBound());
+ iQueryPage.setUpperBound(this.queryCreationPage.getUpperBound());
+ iQueryPage.setQueryScope(this.facetCreationPage.getExtendedMetaclass());
+ iQueryPage.setQueryType(EcorePackage.eINSTANCE.getEBoolean());
+ conformanceQuery = iQueryPage.performFinish();
+ }
+
+ this.facet.setName(facetName);
+ this.facet.setExtendedMetaclass(this.facetCreationPage.getExtendedMetaclass());
+ this.facet.setConformanceQuery(conformanceQuery);
+
+ IFacetAction.INSTANCE.createFacetInFacetSet(this.facetCreationPage.getFacetSet(), this.facet, this.editingDomain);
+ return true;
+ }
+
+ public void setFacetSet(final FacetSet facetSet2) {
+ this.facetSet = facetSet2;
+ this.queryCreationPage.setFacetSet(facetSet2);
+ }
+
+ public void canChangeFacetSet(final boolean canChange) {
+ this.canChangeFacetSet = canChange;
+
+ }
+
+ public void setExtendedMetaClass(final EClass extendedMetaClass) {
+ this.facet.setExtendedMetaclass(extendedMetaClass);
+
+ }
+
+ public void canChangeExtendedMetaClass(final boolean canChange) {
+ this.canChangeExtendedMetaClass = canChange;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/CreateFacetSetWizardImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/CreateFacetSetWizardImpl.java
new file mode 100644
index 00000000000..3868e41b4e7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/CreateFacetSetWizardImpl.java
@@ -0,0 +1,189 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetAction;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.ICreateFacetSetWizard;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.utils.ImageProvider;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.FacetSetPropertyWizardPage;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.CreateFacetSetWizardPage;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.window.Window;
+import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.jface.wizard.WizardDialog;
+import org.eclipse.ui.INewWizard;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.actions.WorkspaceModifyOperation;
+import org.eclipse.ui.part.FileEditorInput;
+import org.eclipse.ui.part.ISetSelectionTarget;
+
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class CreateFacetSetWizardImpl extends Wizard implements INewWizard, ICreateFacetSetWizard {
+
+ public static final String FILE_EXTENSION = "efacet"; //$NON-NLS-1$
+
+ private final CreateFacetSetWizardPage newFileCreationPage;
+ private final FacetSetPropertyWizardPage facetSetPropertyWizardPage;
+
+ private IStructuredSelection selection;
+
+ private IWorkbench workbench;
+
+ private final WizardDialog dialog;
+
+ private boolean openCreatedFacet = true;
+
+ public CreateFacetSetWizardImpl() {
+ this(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getSelectionService().getSelection());
+ }
+
+ public CreateFacetSetWizardImpl(final ISelection selection2, final boolean openCreatedFacetSet) {
+ this(selection2);
+ this.openCreatedFacet = openCreatedFacetSet;
+ }
+
+ public CreateFacetSetWizardImpl(final ISelection selection2) {
+ super();
+ this.dialog = new WizardDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), this);
+ if (selection2 != null && selection2 instanceof IStructuredSelection) {
+ this.selection = (IStructuredSelection) selection2;
+ }
+ setWindowTitle(Messages.Create_FacetSet_Model);
+ ImageProvider.getInstance();
+ setDefaultPageImageDescriptor(ImageProvider.getFacetIconDescriptor());
+
+ this.newFileCreationPage = new CreateFacetSetWizardPage("Whatever", this.selection); //$NON-NLS-1$
+
+ this.facetSetPropertyWizardPage = new FacetSetPropertyWizardPage(null);
+ }
+
+ public void init(final IWorkbench workbench2, final IStructuredSelection selection2) {
+ this.workbench = workbench2;
+ this.selection = selection2;
+ }
+
+ protected FacetSet createInitialFacet() {
+ FacetSet facetSet = EFacetPackage.eINSTANCE.getEFacetFactory().createFacetSet();
+ String modelFacetSetName = getModelFile().getName().replaceAll(".facetSet$", ""); //$NON-NLS-1$ //$NON-NLS-2$
+ facetSet.setName(modelFacetSetName);
+ facetSet.setNsURI(this.facetSetPropertyWizardPage.getNsUri());
+ facetSet.setNsPrefix(this.facetSetPropertyWizardPage.getPrefix());
+ facetSet.setExtendedEPackage(this.facetSetPropertyWizardPage.getFirstSelectedEPackage());
+ return facetSet;
+ }
+
+ @Override
+ public boolean performFinish() {
+ if (this.facetSetPropertyWizardPage.isPageComplete()) {
+ try {
+ // Remember the file.
+ //
+ final IFile modelFile = getModelFile();
+
+ // Do the work within an operation.
+ //
+ WorkspaceModifyOperation operation = new WorkspaceModifyOperation() {
+ @Override
+ protected void execute(final IProgressMonitor progressMonitor) {
+ try {
+ FacetSet facetSet = createInitialFacet();
+ IFacetAction.INSTANCE.createFacetSet(facetSet, modelFile);
+ } catch (Exception exception) {
+ Logger.logError(exception, Activator.getDefault());
+ } finally {
+ progressMonitor.done();
+ }
+ }
+ };
+
+ getContainer().run(false, false, operation);
+
+ if (this.openCreatedFacet) {
+ // Select the new file resource in the current view.
+ if (this.workbench == null) {
+ this.workbench = PlatformUI.getWorkbench();
+ }
+ IWorkbenchWindow workbenchWindow = this.workbench.getActiveWorkbenchWindow();
+ IWorkbenchPage page = workbenchWindow.getActivePage();
+ final IWorkbenchPart activePart = page.getActivePart();
+ if (activePart instanceof ISetSelectionTarget) {
+ final ISelection targetSelection = new StructuredSelection(modelFile);
+ getShell().getDisplay().asyncExec(new Runnable() {
+ public void run() {
+ ((ISetSelectionTarget) activePart).selectReveal(targetSelection);
+ }
+ });
+ }
+
+ // Open an editor on the new file.
+ //
+ try {
+ page.openEditor(new FileEditorInput(modelFile),
+ this.workbench.getEditorRegistry().getDefaultEditor(modelFile.getFullPath().toString()).getId());
+ } catch (PartInitException exception) {
+ MessageDialog.openError(workbenchWindow.getShell(), "Open Editor", exception.getMessage()); //$NON-NLS-1$
+ return false;
+ }
+ }
+
+ return true;
+ } catch (Exception exception) {
+ Logger.logError(exception, Activator.getDefault());
+ return false;
+ }
+ }
+ return false;
+ }
+
+ @Override
+ public boolean canFinish() {
+ return getContainer().getCurrentPage() == this.facetSetPropertyWizardPage && this.facetSetPropertyWizardPage.isPageComplete();
+ }
+
+ @Override
+ public boolean isHelpAvailable() {
+ return false;
+ }
+
+ @Override
+ public void addPages() {
+ addPage(this.newFileCreationPage);
+ addPage(this.facetSetPropertyWizardPage);
+ }
+
+ public IFile getModelFile() {
+ return this.newFileCreationPage.getModelFile();
+ }
+
+ public int open() {
+ if (this.dialog != null) {
+ return this.dialog.open();
+ }
+ return Window.CANCEL;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/SelectETypeWizardImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/SelectETypeWizardImpl.java
new file mode 100644
index 00000000000..e312c8ca6a3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/SelectETypeWizardImpl.java
@@ -0,0 +1,82 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites.SelectETypeComposite.ETypeSelectionOptions;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.ISelectETypeWizard;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.SelectEClassifierWizardPage;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages.SelectEPackageWizardPage;
+import org.eclipse.jface.window.Window;
+import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.jface.wizard.WizardDialog;
+import org.eclipse.ui.PlatformUI;
+
+public class SelectETypeWizardImpl extends Wizard implements ISelectETypeWizard {
+
+ private final WizardDialog dialog;
+
+ private final SelectEPackageWizardPage selectEPackagePage;
+ private final SelectEClassifierWizardPage selectETypePage;
+
+ private final EditingDomain editingDomain;
+
+ private EClassifier selectedEType;
+
+ private boolean canChangeEPackage = true;
+
+ public SelectETypeWizardImpl(final EditingDomain editingDomain, final ETypeSelectionOptions eTypeSelectionOption,
+ final boolean canChangeEPackage, final EPackage ePackage) {
+ super();
+ this.editingDomain = editingDomain;
+ this.canChangeEPackage = canChangeEPackage;
+ this.dialog = new WizardDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), this);
+ this.selectEPackagePage = new SelectEPackageWizardPage(this.editingDomain);
+ this.selectETypePage = new SelectEClassifierWizardPage(eTypeSelectionOption, ePackage);
+ if (eTypeSelectionOption == ETypeSelectionOptions.ECLASS) {
+ setWindowTitle(Messages.Select_EClass);
+ } else if (eTypeSelectionOption == ETypeSelectionOptions.EDATATYPE) {
+ setWindowTitle(Messages.Select_EDataType);
+ } else {
+ setWindowTitle(Messages.Select_EClassifier);
+ }
+ }
+
+ @Override
+ public void addPages() {
+ if (this.canChangeEPackage) {
+ addPage(this.selectEPackagePage);
+ }
+ addPage(this.selectETypePage);
+ }
+
+ public int open() {
+ if (this.dialog != null) {
+ return this.dialog.open();
+ }
+ return Window.CANCEL;
+ }
+
+ @Override
+ public boolean performFinish() {
+ this.selectedEType = this.selectETypePage.getSelectedEclassifier();
+ return true;
+ }
+
+ public EClassifier getSelectedEType() {
+ return this.selectedEType;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AbstractFacetWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AbstractFacetWizardPage.java
new file mode 100644
index 00000000000..66adae1ff00
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AbstractFacetWizardPage.java
@@ -0,0 +1,786 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Gregoire Dupe (Mia-Software) - Bug 373248 - Clean PMD errors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages;
+
+import java.util.Map;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.QueryFacetElement;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites.SelectETypeComposite;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites.SelectETypeComposite.ETypeSelectionOptions;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites.SelectQueryTypeComposite;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IQueryCreationPagePart;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.core.composite.registries.ICompositeEditorFactoriesRegistry;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.wizard.IWizardPage;
+import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Group;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Text;
+
+@SuppressWarnings("PMD.ConstructorCallsOverridableMethod")
+// @SuppressWarnings("PMD.ConstructorCallsOverridableMethod") This class is
+// deprecated, we won't then spend to many time to conforms to PMD rules.
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public abstract class AbstractFacetWizardPage extends WizardPage {
+
+ private static final int QUERY_SELECTION_GROUP_COLUMN_NUMBER = 4;
+ private static final int NUMBER_COLUMN_PROPERTY = 3;
+ protected static final int NUMBER_COLUMN = 3;
+ protected static final int VERTICAL_SPACING = 9;
+
+ private ISelection selection;
+ private EditingDomain editingDomain;
+
+ // USER PERMISSION
+ private boolean canChangeParentName = true;
+ private boolean canChangeChildrenName = true;
+ private boolean canChangeUpperBound = true;
+ private boolean canChangeLowerBound = true;
+ private boolean canChangeType = true;
+ private final boolean canChangeVolatile = false;
+ private final boolean canChangeChangeable = false;
+ private final boolean canChangeDerived = false;
+ private final boolean canChangeTransient = false;
+ private final boolean canChangeOrdered = true;
+ private final boolean canChangeUnique = true;
+ private boolean canChangeEPackage = true;
+
+ private boolean showUpperBound = true;
+ private boolean showLowerBound = true;
+ private boolean showParentName = true;
+ private boolean showChildrenName = true;
+ private boolean showQueryTypeSelection = true;
+ private boolean showEType = true;
+ private boolean showVolatile = true;
+ private boolean showChangeable = true;
+ private boolean showDerived = true;
+ private boolean showTransient = true;
+ private boolean showOrdered = true;
+ private boolean showUnique = true;
+
+ // DATA
+ private FacetSet facetSet;
+ private Facet facet;
+ private String facetName;
+ private QueryFacetElement queryFacetElement;
+ private EClass type;
+ private String parentName = ""; //$NON-NLS-1$
+ private String childrenName = ""; //$NON-NLS-1$
+ private int lowerBound;
+ private int upperBound;
+ private boolean fVolatile = true;
+ private boolean fChangeable = false;
+ private boolean fDerived = true;
+ private boolean fTransient = true;
+ private boolean fOrdered = false;
+ private boolean fUnique = false;
+
+ // COMPOSITE
+ private Label parentNameLabel;
+ private Label childrenNameLabel;
+ private Label lowerBoundLabel;
+ private Label upperBoundLabel;
+ private SelectETypeComposite selectETypeComposite;
+ private Text parentNameTextField;
+ private Text childrenNameTextField;
+ private AbstractCellEditorComposite<Integer> lowerBoundTextField;
+ private AbstractCellEditorComposite<Integer> upperBoundTextField;
+ private SelectQueryTypeComposite selectQueryTypeComposite;
+ private Button subClassingQueryButton;
+
+ private Map<String, IQueryCreationPagePart> queryTypeNameToWizardPage;
+ private boolean wizardNeedsQuery = true;
+ private ETypeSelectionOptions eTypeSelectionOption;
+
+ public AbstractFacetWizardPage(final ISelection selection, final EditingDomain editingDomain,
+ final Map<String, IQueryCreationPagePart> queryTypeNameToWizardPage,
+ final ETypeSelectionOptions eTypeSelectionOption) {
+ this(selection, editingDomain);
+ this.queryTypeNameToWizardPage = queryTypeNameToWizardPage;
+ this.eTypeSelectionOption = eTypeSelectionOption;
+ }
+
+ public AbstractFacetWizardPage(final ISelection selection, final EditingDomain editingDomain) {
+ super("whatever"); //$NON-NLS-1$
+ this.selection = selection;
+ this.editingDomain = editingDomain;
+ initializeWithSelection();
+ }
+
+ @Override
+ public void setVisible(final boolean visible) {
+ updatePageButtons();
+ super.setVisible(visible);
+ }
+
+ protected Composite createControlParts(final Composite parent) {
+
+ final Composite threeColumnContainer = new Composite(parent, SWT.NONE);
+ GridLayout layout3Column = new GridLayout(AbstractFacetWizardPage.NUMBER_COLUMN, false);
+ threeColumnContainer.setLayout(layout3Column);
+ GridData fillGridData = new GridData(GridData.FILL_HORIZONTAL);
+
+ threeColumnContainer.setLayoutData(fillGridData);
+
+ if (this.showParentName) {
+ this.parentNameLabel = new Label(threeColumnContainer, SWT.NONE);
+ this.parentNameTextField = new Text(threeColumnContainer, SWT.BORDER | SWT.SINGLE);
+ this.parentNameTextField.setText(this.parentName);
+ this.parentNameTextField.setEnabled(this.canChangeParentName);
+ this.parentNameTextField.setLayoutData(fillGridData);
+ this.parentNameTextField.addModifyListener(new ModifyListener() {
+ public void modifyText(final ModifyEvent e) {
+ setParentName(((Text) e.getSource()).getText(), false);
+ updatePageButtons();
+ }
+ });
+ Label dummyLabel = new Label(threeColumnContainer, SWT.NONE);
+ dummyLabel.setText(""); //$NON-NLS-1$
+ }
+
+ if (this.showChildrenName) {
+ this.childrenNameLabel = new Label(threeColumnContainer, SWT.NONE);
+ this.childrenNameTextField = new Text(threeColumnContainer, SWT.BORDER | SWT.SINGLE);
+ this.childrenNameTextField.setText(this.childrenName);
+ this.childrenNameTextField.setEnabled(canChangeChildrenName());
+ this.childrenNameTextField.setLayoutData(fillGridData);
+ this.childrenNameTextField.addModifyListener(new ModifyListener() {
+ public void modifyText(final ModifyEvent e) {
+ setChildrenName(((Text) e.getSource()).getText());
+ updatePageButtons();
+ }
+ });
+ Label dummyLabel2 = new Label(threeColumnContainer, SWT.NONE);
+ dummyLabel2.setText(""); //$NON-NLS-1$
+ }
+ ICompositeEditorFactory<Integer> compositeFactory = ICompositeEditorFactoriesRegistry.INSTANCE
+ .getCompositeEditorFactory(Integer.class);
+ if (this.showLowerBound) {
+ this.lowerBoundLabel = new Label(threeColumnContainer, SWT.NONE);
+ this.lowerBoundTextField = compositeFactory.createCompositeEditor(threeColumnContainer, SWT.BORDER
+ | SWT.SINGLE);
+ this.lowerBoundTextField.setLayoutData(fillGridData);
+ this.lowerBoundTextField.setEnabled(canChangeLowerBound());
+ setLowerBound(this.lowerBound);
+ Label dummyLabel5 = new Label(threeColumnContainer, SWT.NONE);
+ dummyLabel5.setText(""); //$NON-NLS-1$
+ }
+ if (this.showUpperBound) {
+ this.upperBoundLabel = new Label(threeColumnContainer, SWT.NONE);
+ this.upperBoundTextField = compositeFactory.createCompositeEditor(threeColumnContainer, SWT.BORDER
+ | SWT.SINGLE);
+ this.upperBoundTextField.setLayoutData(fillGridData);
+ this.upperBoundTextField.setEnabled(this.canChangeUpperBound);
+ setUpperBound(this.upperBound);
+ Label dummyLabel6 = new Label(threeColumnContainer, SWT.NONE);
+ dummyLabel6.setText(""); //$NON-NLS-1$
+ }
+ if (this.showEType) {
+ this.selectETypeComposite = new SelectETypeComposite(parent, SWT.NONE, this.eTypeSelectionOption,
+ this.canChangeEPackage, this.facetSet) {
+ @Override
+ protected void createCompositeWidget() {
+ setETypeLabel(new Label(threeColumnContainer, SWT.NULL));
+ setETypedTextField(new Text(threeColumnContainer, SWT.BORDER | SWT.SINGLE | SWT.READ_ONLY));
+ setSelectButton(new Button(threeColumnContainer, SWT.PUSH));
+ }
+
+ @Override
+ protected void eTypeSelected() {
+ updatePageButtons();
+ }
+ };
+ if (this.type != null) {
+ this.selectETypeComposite.setEType(this.type);
+ }
+ this.selectETypeComposite.setEditingDomain(getEditingDomain());
+ this.selectETypeComposite.canChangeEType(this.canChangeType);
+ }
+
+ createPropertyControls(threeColumnContainer);
+
+ if (this.wizardNeedsQuery) {
+ createQueryComposite(parent, threeColumnContainer);
+ }
+ return threeColumnContainer;
+ }
+
+ /**
+ * @param parent
+ * @param threeColumnContainer
+ */
+ protected void createQueryComposite(final Composite parent, final Composite threeColumnContainer) {
+ if (this.showQueryTypeSelection) {
+ final Group group = new Group(threeColumnContainer, SWT.SHADOW_ETCHED_OUT);
+ group.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false, AbstractFacetWizardPage.NUMBER_COLUMN, 1));
+ group.setLayout(new GridLayout(AbstractFacetWizardPage.QUERY_SELECTION_GROUP_COLUMN_NUMBER, false));
+ Label subClassingQueryButtonText = new Label(group, SWT.NONE);
+ subClassingQueryButtonText.setText(Messages.CreateFacetInFacetSetWizardPage_Sub_Typing_Facet);
+
+ this.subClassingQueryButton = new Button(group, SWT.CHECK);
+ this.subClassingQueryButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ this.subClassingQueryButton.addSelectionListener(new SelectionListener() {
+ public void widgetSelected(final SelectionEvent e) {
+ setQueryTypeSelectionVisible(getSubClassingQueryButton().getSelection());
+ updatePageButtons();
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent e) {
+ // nothing
+ }
+ });
+
+ // Query Type Composite
+ this.selectQueryTypeComposite = new SelectQueryTypeComposite(parent, SWT.NONE) {
+ @Override
+ protected void createCompositeWidget() {
+ setQueryTypeLabel(new Label(group, SWT.NONE));
+ setQueryTypeComboBox(new Combo(group, SWT.DROP_DOWN));
+ }
+
+ @Override
+ protected void queryTypeSelected() {
+ updatePageButtons();
+ }
+ };
+
+ setQueryTypeSelectionVisible(false);
+ } else {
+ // Query Type Composite
+ this.selectQueryTypeComposite = new SelectQueryTypeComposite(parent, SWT.NONE) {
+ @Override
+ protected void createCompositeWidget() {
+ setQueryTypeLabel(new Label(threeColumnContainer, SWT.NONE));
+ setQueryTypeComboBox(new Combo(threeColumnContainer, SWT.DROP_DOWN | SWT.READ_ONLY));
+ }
+
+ @Override
+ protected void queryTypeSelected() {
+ updatePageButtons();
+ }
+ };
+ }
+ }
+
+ /**
+ * @param threeColumnContainer
+ */
+ protected void createPropertyControls(final Composite threeColumnContainer) {
+ Label dummyLabel = new Label(threeColumnContainer, SWT.NONE);
+ dummyLabel.setText(""); //$NON-NLS-1$
+ Composite composite = new Composite(threeColumnContainer, SWT.NONE);
+ GridLayout layout = new GridLayout();
+ layout.numColumns = AbstractFacetWizardPage.NUMBER_COLUMN_PROPERTY;
+ composite.setLayout(layout);
+ composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1));
+ if (this.showVolatile) {
+ final Button button = new Button(composite, SWT.CHECK);
+ button.setText(Messages.Volatile);
+ button.setEnabled(this.canChangeVolatile);
+ button.setSelection(this.fVolatile);
+ button.addSelectionListener(new SelectionListener() {
+ public void widgetSelected(final SelectionEvent e) {
+ setVolatile(button.getSelection());
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent e) {
+ // Nothing
+ }
+ });
+ }
+ if (this.showChangeable) {
+ final Button button = new Button(composite, SWT.CHECK);
+ button.setText(Messages.Changeable);
+ button.setSelection(this.fChangeable);
+ button.setEnabled(this.canChangeChangeable);
+ button.addSelectionListener(new SelectionListener() {
+ public void widgetSelected(final SelectionEvent e) {
+ setChangeable(button.getSelection());
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent e) {
+ // Nothing
+ }
+ });
+ }
+ if (this.showDerived) {
+ final Button button = new Button(composite, SWT.CHECK);
+ button.setText(Messages.Derived);
+ button.setEnabled(this.canChangeDerived);
+ button.setSelection(this.fDerived);
+ button.addSelectionListener(new SelectionListener() {
+ public void widgetSelected(final SelectionEvent e) {
+ setDerived(button.getSelection());
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent e) {
+ // Nothing
+ }
+ });
+ }
+ if (this.showTransient) {
+ final Button button = new Button(composite, SWT.CHECK);
+ button.setText(Messages.Transient);
+ button.setEnabled(this.canChangeTransient);
+ button.setSelection(this.fTransient);
+ button.addSelectionListener(new SelectionListener() {
+ public void widgetSelected(final SelectionEvent e) {
+ setTransient(button.getSelection());
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent e) {
+ // Nothing
+ }
+ });
+ }
+ if (this.showOrdered) {
+ final Button button = new Button(composite, SWT.CHECK);
+ button.setText(Messages.Ordered);
+ button.setSelection(this.fOrdered);
+ button.setEnabled(this.canChangeOrdered);
+ button.addSelectionListener(new SelectionListener() {
+ public void widgetSelected(final SelectionEvent e) {
+ setOrdered(button.getSelection());
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent e) {
+ // Nothing
+ }
+ });
+ }
+ if (this.showUnique) {
+ final Button button = new Button(composite, SWT.CHECK);
+ button.setText(Messages.Unique);
+ button.setSelection(this.fUnique);
+ button.setEnabled(this.canChangeUnique);
+ button.addSelectionListener(new SelectionListener() {
+ public void widgetSelected(final SelectionEvent e) {
+ setUnique(button.getSelection());
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent e) {
+ // Nothing
+ }
+ });
+ }
+ }
+
+ public boolean isSubTypingFacet() {
+ if (getSubClassingQueryButton() == null) {
+ return true;
+ }
+ return getSubClassingQueryButton().getSelection();
+ }
+
+ protected void initializeWithSelection() {
+ if (getSelection() != null && !getSelection().isEmpty() && getSelection() instanceof IStructuredSelection) {
+ IStructuredSelection ssel = (IStructuredSelection) getSelection();
+ if (ssel.size() > 1) {
+ return;
+ }
+ Object obj = ssel.getFirstElement();
+ if (obj instanceof Facet) {
+ setFacet((Facet) obj);
+ setFacetSet(((Facet) obj).getFacetSet());
+ if (((Facet) obj).getName() != null) {
+ setParentName(((Facet) obj).getName(), true);
+ }
+ }
+ }
+ }
+
+ @Override
+ public IWizardPage getNextPage() {
+ if (this.showQueryTypeSelection) {
+ if (this.queryTypeNameToWizardPage != null && this.subClassingQueryButton != null) {
+ if (this.subClassingQueryButton.getSelection()) {
+ IQueryCreationPagePart wizard = this.queryTypeNameToWizardPage.get(getSelectedQueryType());
+ if (wizard != null) {
+ return super.getNextPage();
+ }
+ setErrorMessage(Messages.SelectQueryTypeWizardPage_No_wizard_found);
+ }
+ }
+ } else {
+ if (this.queryTypeNameToWizardPage != null) {
+ IQueryCreationPagePart wizard = this.queryTypeNameToWizardPage.get(getSelectedQueryType());
+ if (wizard != null) {
+ return super.getNextPage();
+ }
+ setErrorMessage(Messages.SelectQueryTypeWizardPage_No_wizard_found);
+ }
+ }
+ return null;
+ }
+
+ @Override
+ protected void setControl(final Control newControl) {
+ updatePageButtons();
+ super.setControl(newControl);
+ }
+
+ protected void setQueryTypeSelectionVisible(final boolean visible) {
+ this.selectQueryTypeComposite.setEnabled(visible);
+ }
+
+ public String getSelectedQueryType() {
+ return this.selectQueryTypeComposite.getSelectedQueryType();
+ }
+
+ protected void updatePageButtons() {
+ if (getContainer() != null && getContainer().getCurrentPage() != null) {
+ getContainer().updateButtons();
+ }
+ }
+
+ public void initializeTextContent(final String parentName2, final String childrenName2) {
+ if (parentName2 != null) {
+ this.parentNameLabel.setText(parentName2);
+ }
+ this.childrenNameLabel.setText(childrenName2);
+ if (this.showLowerBound) {
+ this.lowerBoundLabel.setText(Messages.Lower_bound);
+ }
+ if (this.showUpperBound) {
+ this.upperBoundLabel.setText(Messages.Upper_bound);
+ }
+ }
+
+ @Override
+ public boolean isPageComplete() {
+ if (getChildrenName() == null) {
+ return false;
+ }
+ if (this.showChildrenName && getChildrenName().length() == 0) {
+ setErrorMessage(NLS.bind(Messages.Please_enter_value_for, this.childrenNameLabel.getText()));
+ return false;
+ }
+ if (this.showLowerBound && this.lowerBoundTextField.getValue() == null) {
+ setErrorMessage(NLS.bind(Messages.Please_enter_value_for, this.lowerBoundLabel.getText()));
+ return false;
+ }
+ if (this.showUpperBound && this.upperBoundTextField.getValue() == null) {
+ setErrorMessage(NLS.bind(Messages.Please_enter_value_for, this.upperBoundLabel.getText()));
+ return false;
+ }
+ if (this.showEType && getType() == null) {
+ setErrorMessage(NLS.bind(Messages.Please_enter_value_for, "Type")); //$NON-NLS-1$
+ return false;
+ }
+ if (this.wizardNeedsQuery) {
+ if (this.subClassingQueryButton != null && !this.subClassingQueryButton.getSelection()) {
+ setErrorMessage(null);
+ return true;
+ }
+ if (getNextPage() == null) {
+ setErrorMessage(Messages.CreateFacetInFacetSetWizardPage_could_not_find_wizard_page);
+ return false;
+ }
+ }
+ setErrorMessage(null);
+ return true;
+ }
+
+ // CanChange section
+ public void canChangeParentName(final boolean canChange) {
+ this.canChangeParentName = canChange;
+ }
+
+ public boolean canChangeParentName() {
+ return this.canChangeParentName;
+ }
+
+ public void canChangeChildrenName(final boolean canChange) {
+ this.canChangeChildrenName = canChange;
+ }
+
+ public boolean canChangeChildrenName() {
+ return this.canChangeChildrenName;
+ }
+
+ public void canChangeUpperBound(final boolean canChange) {
+ this.canChangeUpperBound = canChange;
+ }
+
+ public boolean canChangeUpperBound() {
+ return this.canChangeUpperBound;
+ }
+
+ public void canChangeLowerBound(final boolean canChange) {
+ this.canChangeLowerBound = canChange;
+ }
+
+ public boolean canChangeLowerBound() {
+ return this.canChangeLowerBound;
+ }
+
+ public void canChangeType(final boolean canChange) {
+ this.canChangeType = canChange;
+ }
+
+ public boolean canChangeType() {
+ return this.canChangeType;
+ }
+
+ public void canChangeEPackage(final boolean canChangeEPackage2) {
+ this.canChangeEPackage = canChangeEPackage2;
+ }
+
+ public EditingDomain getEditingDomain() {
+ return this.editingDomain;
+ }
+
+ public void setEditingDomain(final EditingDomain editingDomain) {
+ this.editingDomain = editingDomain;
+ }
+
+ public final ISelection getSelection() {
+ return this.selection;
+ }
+
+ public void setSelection(final ISelection selection) {
+ this.selection = selection;
+ }
+
+ public final FacetSet getFacetSet() {
+ return this.facetSet;
+ }
+
+ public final void setFacetSet(final FacetSet facetSet) {
+ this.facetSet = facetSet;
+ }
+
+ public Facet getFacet() {
+ return this.facet;
+ }
+
+ public final void setFacet(final Facet facet) {
+ this.facet = facet;
+ }
+
+ public String getFacetName() {
+ return this.facetName;
+ }
+
+ public void setFacetName(final String facetName) {
+ this.facetName = facetName;
+ }
+
+ public int getLowerBound() {
+ try {
+ return (this.lowerBoundTextField.getValue()).intValue();
+ } catch (Exception e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ return 0;
+ }
+
+ public void setLowerBound(final int lowerBound) {
+ this.lowerBound = lowerBound;
+ if (this.lowerBoundTextField != null) {
+ (this.lowerBoundTextField).setValue(Integer.valueOf(lowerBound));
+ }
+ }
+
+ public int getUpperBound() {
+ try {
+ return (this.upperBoundTextField.getValue()).intValue();
+ } catch (Exception e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ return 0;
+ }
+
+ public void setUpperBound(final int upperBound) {
+ this.upperBound = upperBound;
+ if (this.upperBoundTextField != null) {
+ this.upperBoundTextField.setValue(Integer.valueOf(upperBound));
+ }
+ }
+
+ public EClassifier getType() {
+ return this.selectETypeComposite.getEType();
+ }
+
+ public void setType(final EClass eType) {
+ this.type = eType;
+ if (this.selectETypeComposite != null) {
+ this.selectETypeComposite.setEType(eType);
+ }
+ }
+
+ public String getParentName() {
+ return this.parentName;
+ }
+
+ /**
+ * Set the parent(container) name
+ *
+ * @param parentName
+ * the new parent's name
+ * @param updateTextField
+ * whether to update the corresponding textField
+ */
+ public final void setParentName(final String parentName2, final boolean updateTextField) {
+ this.parentName = parentName2;
+ if (this.parentNameTextField != null) {
+ if (updateTextField) {
+ this.parentNameTextField.setText(parentName2);
+ }
+ }
+ }
+
+ public String getChildrenName() {
+ return this.childrenName;
+ }
+
+ public void setChildrenName(final String childrenName) {
+ this.childrenName = childrenName;
+ }
+
+ public Button getSubClassingQueryButton() {
+ return this.subClassingQueryButton;
+ }
+
+ public void showUpperBound(final boolean showUpperBound2) {
+ this.showUpperBound = showUpperBound2;
+ }
+
+ public void showLowerBound(final boolean showLOwerBound2) {
+ this.showLowerBound = showLOwerBound2;
+ }
+
+ public void showParentName(final boolean showParentName2) {
+ this.showParentName = showParentName2;
+ }
+
+ public void showChildrenName(final boolean showChildrenName2) {
+ this.showChildrenName = showChildrenName2;
+ }
+
+ public void showQueryTypeSelection(final boolean showQueryTypeSelection2) {
+ this.showQueryTypeSelection = showQueryTypeSelection2;
+ }
+
+ public void showEType(final boolean showEType2) {
+ this.showEType = showEType2;
+ }
+
+ public boolean isVolatile() {
+ return this.fVolatile;
+ }
+
+ public void showVolatile(final boolean fVolatile1) {
+ this.showVolatile = fVolatile1;
+ }
+
+ public boolean isChangeable() {
+ return this.fChangeable;
+ }
+
+ public void showChangeable(final boolean fChangeable1) {
+ this.showChangeable = fChangeable1;
+ }
+
+ public boolean isDerived() {
+ return this.fDerived;
+ }
+
+ public void showDerived(final boolean fDerived1) {
+ this.showDerived = fDerived1;
+ }
+
+ public boolean isTransient() {
+ return this.fTransient;
+ }
+
+ public void showTransient(final boolean fTransient1) {
+ this.showTransient = fTransient1;
+ }
+
+ public boolean isOrdered() {
+ return this.fOrdered;
+ }
+
+ public void showOrdered(final boolean fOrdered1) {
+ this.showOrdered = fOrdered1;
+ }
+
+ public boolean isUnique() {
+ return this.fUnique;
+ }
+
+ public void showUnique(final boolean fUnique1) {
+ this.showUnique = fUnique1;
+ }
+
+ public void setVolatile(final boolean fVolatile2) {
+ this.fVolatile = fVolatile2;
+ }
+
+ public void setChangeable(final boolean fChangeable2) {
+ this.fChangeable = fChangeable2;
+ }
+
+ public void setDerived(final boolean fDerived2) {
+ this.fDerived = fDerived2;
+ }
+
+ public void setTransient(final boolean fTransient2) {
+ this.fTransient = fTransient2;
+ }
+
+ public void setOrdered(final boolean ordered) {
+ this.fOrdered = ordered;
+ }
+
+ public void setUnique(final boolean fUnique2) {
+ this.fUnique = fUnique2;
+ }
+
+ public void setWizardNeedsQuery(final boolean wizardNeedsQuery) {
+ this.wizardNeedsQuery = wizardNeedsQuery;
+ }
+
+ public QueryFacetElement getQueryFacetElement() {
+ return this.queryFacetElement;
+ }
+
+ public void setQueryFacetElement(final QueryFacetElement queryFacetElement) {
+ this.queryFacetElement = queryFacetElement;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AddAttributeInFacetWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AddAttributeInFacetWizardPage.java
new file mode 100644
index 00000000000..8b0be16723a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AddAttributeInFacetWizardPage.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages;
+
+import java.util.Map;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites.SelectETypeComposite.ETypeSelectionOptions;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IQueryCreationPagePart;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class AddAttributeInFacetWizardPage extends AbstractFacetWizardPage {
+
+ public AddAttributeInFacetWizardPage(final ISelection selection, final EditingDomain editingDomain,
+ final Map<String, IQueryCreationPagePart> queryTypeNameToWizardPage) {
+ super(selection, editingDomain, queryTypeNameToWizardPage, ETypeSelectionOptions.EDATATYPE);
+ setTitle(Messages.Add_an_Attribute);
+ setDescription(Messages.Add_an_Attribute_desc);
+ }
+
+ public void createControl(final Composite parent) {
+ final Composite container = new Composite(parent, SWT.NULL);
+
+ GridLayout layout = new GridLayout();
+ container.setLayout(layout);
+ layout.numColumns = 1;
+ layout.verticalSpacing = AbstractFacetWizardPage.VERTICAL_SPACING;
+
+ showQueryTypeSelection(false);
+
+ createControlParts(container);
+ initializeTextContent(Messages.Facet, Messages.Attribute_name);
+
+ setControl(container);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AddOperationInFacetWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AddOperationInFacetWizardPage.java
new file mode 100644
index 00000000000..11117be0a05
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AddOperationInFacetWizardPage.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages;
+
+import java.util.Map;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites.SelectETypeComposite.ETypeSelectionOptions;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IQueryCreationPagePart;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class AddOperationInFacetWizardPage extends AbstractFacetWizardPage {
+
+ public AddOperationInFacetWizardPage(final ISelection selection, final EditingDomain editingDomain,
+ final Map<String, IQueryCreationPagePart> queryTypeNameToWizardPage) {
+ super(selection, editingDomain, queryTypeNameToWizardPage, ETypeSelectionOptions.ECLASSIFIER);
+ setTitle(Messages.Add_an_Operation);
+ setDescription(Messages.Add_an_Operation_desc);
+ }
+
+ public void createControl(final Composite parent) {
+ final Composite container = new Composite(parent, SWT.NULL);
+
+ GridLayout layout = new GridLayout();
+ container.setLayout(layout);
+ layout.numColumns = 1;
+ layout.verticalSpacing = AbstractFacetWizardPage.VERTICAL_SPACING;
+
+ showQueryTypeSelection(false);
+
+ createControlParts(container);
+ initializeTextContent(Messages.Facet, Messages.Operation_name);
+
+ setControl(container);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AddOperationParameterInFacetWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AddOperationParameterInFacetWizardPage.java
new file mode 100644
index 00000000000..af80063a451
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AddOperationParameterInFacetWizardPage.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class AddOperationParameterInFacetWizardPage extends AbstractFacetWizardPage {
+
+ public AddOperationParameterInFacetWizardPage(final ISelection selection, final EditingDomain editingDomain) {
+ super(selection, editingDomain);
+ setTitle(Messages.Add_an_Operation_Parameter);
+ setDescription(Messages.Add_an_Operation_Parameter_desc);
+ }
+
+ @Override
+ protected void initializeWithSelection() {
+ if (getSelection() != null && !getSelection().isEmpty() && getSelection() instanceof IStructuredSelection) {
+ IStructuredSelection ssel = (IStructuredSelection) getSelection();
+ if (ssel.size() > 1) {
+ return;
+ }
+ Object obj = ssel.getFirstElement();
+ if (obj instanceof FacetOperation) {
+ FacetOperation facetOperation = (FacetOperation) obj;
+ setQueryFacetElement(facetOperation);
+ setFacet(facetOperation.getFacet());
+ setFacetSet(facetOperation.getFacet().getFacetSet());
+ if (facetOperation.getName() != null) {
+ setParentName(facetOperation.getName(), true);
+ }
+ }
+ }
+ }
+
+ public void createControl(final Composite parent) {
+ final Composite container = new Composite(parent, SWT.NULL);
+
+ GridLayout layout = new GridLayout();
+ container.setLayout(layout);
+ layout.numColumns = 1;
+ layout.verticalSpacing = AbstractFacetWizardPage.VERTICAL_SPACING;
+
+ setWizardNeedsQuery(false);
+
+ createControlParts(container);
+ initializeTextContent(Messages.Operation, Messages.Parameter_name);
+
+ setControl(container);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AddReferenceInFacetWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AddReferenceInFacetWizardPage.java
new file mode 100644
index 00000000000..c55d5f5617a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/AddReferenceInFacetWizardPage.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages;
+
+import java.util.Map;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites.SelectETypeComposite.ETypeSelectionOptions;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IQueryCreationPagePart;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class AddReferenceInFacetWizardPage extends AbstractFacetWizardPage {
+
+ public AddReferenceInFacetWizardPage(final ISelection selection, final EditingDomain editingDomain,
+ final Map<String, IQueryCreationPagePart> queryTypeNameToWizardPage) {
+ super(selection, editingDomain, queryTypeNameToWizardPage, ETypeSelectionOptions.ECLASS);
+ setTitle(Messages.Add_a_Reference);
+ setDescription(Messages.Add_a_Reference_desc);
+ }
+
+ public void createControl(final Composite parent) {
+ final Composite container = new Composite(parent, SWT.NULL);
+
+ GridLayout layout = new GridLayout();
+ container.setLayout(layout);
+ layout.numColumns = 1;
+ layout.verticalSpacing = AbstractFacetWizardPage.VERTICAL_SPACING;
+
+ showQueryTypeSelection(false);
+
+ createControlParts(container);
+ initializeTextContent(Messages.Facet, Messages.Reference_name);
+
+ setControl(container);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/CreateFacetInFacetSetWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/CreateFacetInFacetSetWizardPage.java
new file mode 100644
index 00000000000..d5b536c1652
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/CreateFacetInFacetSetWizardPage.java
@@ -0,0 +1,139 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages;
+
+import java.util.Map;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites.BrowseComposite;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites.SelectETypeComposite.ETypeSelectionOptions;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IQueryCreationPagePart;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.SelectETypeWizardImpl;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.window.Window;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class CreateFacetInFacetSetWizardPage extends AbstractFacetWizardPage {
+
+ private boolean canChangeExtendedMetaClass;
+ private final Facet facet;
+
+ public CreateFacetInFacetSetWizardPage(final Facet facet, final ISelection selection, final EditingDomain editingDomain2,
+ final Map<String, IQueryCreationPagePart> queryTypeNameToWizardPage) {
+ super(selection, editingDomain2, queryTypeNameToWizardPage, ETypeSelectionOptions.ECLASS);
+ this.facet = facet;
+ setTitle(Messages.Create_facet_in_facetSet);
+ setDescription(Messages.CreateFacetInFacetSetWizardPage_wizard_description);
+ }
+
+ @Override
+ public boolean canFlipToNextPage() {
+ return isPageComplete() && isSubTypingFacet();
+ }
+
+ @Override
+ public boolean isPageComplete() {
+ if (super.isPageComplete()) {
+ if (getExtendedMetaclass() == null) {
+ setErrorMessage(Messages.CreateFacetInFacetSetWizardPage_Please_fill_extendedMetaClass);
+ return false;
+ }
+ return true;
+ }
+ return false;
+ }
+
+ @Override
+ protected void initializeWithSelection() {
+ if (getSelection() != null && !getSelection().isEmpty() && getSelection() instanceof IStructuredSelection) {
+ IStructuredSelection ssel = (IStructuredSelection) getSelection();
+ if (ssel.size() > 1) {
+ return;
+ }
+ Object obj = ssel.getFirstElement();
+ if (obj instanceof FacetSet) {
+ FacetSet facetSet = (FacetSet) obj;
+ setFacetSet(facetSet);
+ if (facetSet.getName() != null) {
+ setParentName(facetSet.getName(), true);
+ }
+ }
+ }
+ }
+
+ public void createControl(final Composite parent) {
+ final Composite container = new Composite(parent, SWT.NULL);
+ GridLayout layout = new GridLayout();
+ container.setLayout(layout);
+ layout.numColumns = 1;
+ layout.verticalSpacing = AbstractFacetWizardPage.VERTICAL_SPACING;
+ showLowerBound(false);
+ showUpperBound(false);
+ showEType(false);
+ showVolatile(false);
+ showOrdered(false);
+ showChangeable(false);
+ showUnique(false);
+ showTransient(false);
+ showDerived(false);
+
+ Composite container2 = createControlParts(container);
+
+ Label label = new Label(container2, SWT.NONE);
+ label.setText(Messages.ExtendedMetaClass);
+ @SuppressWarnings("unused")
+ // this composite is never read because it only takes care of the UI
+ BrowseComposite browseComposite = new BrowseComposite(container2, SWT.BORDER, null, this.canChangeExtendedMetaClass) {
+ @Override
+ protected void handleBrowse() {
+ SelectETypeWizardImpl dialog = new SelectETypeWizardImpl(getEditingDomain(), ETypeSelectionOptions.ECLASS, false, getFacetSet()
+ .getExtendedEPackage());
+ if (dialog.open() != Window.CANCEL) {
+ EClass eClass = (EClass) dialog.getSelectedEType();
+ setExtendedMetaClass(eClass);
+ if (eClass.getInstanceClassName() != null) {
+ updateTextFieldContent(eClass.getInstanceClassName());
+ } else {
+ updateTextFieldContent(eClass.getName());
+ }
+ updatePageButtons();
+ }
+ }
+ };
+
+ initializeTextContent(Messages.FacetSet, Messages.Facet);
+
+ setControl(container);
+ }
+
+ public void setExtendedMetaClass(final EClass extendedMetaClass) {
+ this.facet.setExtendedMetaclass(extendedMetaClass);
+ }
+
+ public void canChangeExtendedMetaClass(final boolean canChange2) {
+ this.canChangeExtendedMetaClass = canChange2;
+ }
+
+ public EClass getExtendedMetaclass() {
+ return this.facet.getExtendedMetaclass();
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/CreateFacetSetWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/CreateFacetSetWizardPage.java
new file mode 100644
index 00000000000..ebccd715fdb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/CreateFacetSetWizardPage.java
@@ -0,0 +1,107 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages;
+
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.CreateFacetSetWizardImpl;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.pde.core.internal.exported.PluginUtils;
+import org.eclipse.jface.dialogs.IMessageProvider;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.dialogs.WizardNewFileCreationPage;
+
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class CreateFacetSetWizardPage extends WizardNewFileCreationPage {
+
+ public CreateFacetSetWizardPage(final String pageId, final IStructuredSelection selection) {
+ super(pageId, selection);
+
+ setTitle(Messages.CreateFacetSetWizardImpl_FacetModel);
+ setDescription(Messages.CreateFacetSetWizardImpl_Create_new_facet_Set);
+ setFileName("My" //$NON-NLS-1$
+ + "." + CreateFacetSetWizardImpl.FILE_EXTENSION); //$NON-NLS-1$
+
+ // Try and get the resource selection to determine a current directory
+ // for the file dialog.
+ if (selection != null && !selection.isEmpty()) {
+ // Get the resource...
+ //
+ Object selectedElement = selection.iterator().next();
+ if (selectedElement instanceof IResource) {
+ // Get the resource parent, if its a file.
+ IResource selectedResource = (IResource) selectedElement;
+ if (selectedResource.getType() == IResource.FILE) {
+ selectedResource = selectedResource.getParent();
+ }
+
+ // This gives us a directory...
+ if (selectedResource instanceof IFolder || selectedResource instanceof IProject) {
+ // Set this for the container.
+ setContainerFullPath(selectedResource.getFullPath());
+
+ // Make up a unique new name here.
+ //
+ String defaultModelBaseFilename = "My"; //$NON-NLS-1$
+ String defaultModelFilenameExtension = CreateFacetSetWizardImpl.FILE_EXTENSION;
+ String modelFilename = defaultModelBaseFilename + "." + defaultModelFilenameExtension; //$NON-NLS-1$
+ for (int i = 1; ((IContainer) selectedResource).findMember(modelFilename) != null; ++i) {
+ modelFilename = defaultModelBaseFilename + i + "." + defaultModelFilenameExtension; //$NON-NLS-1$
+ }
+ setFileName(modelFilename);
+ }
+ }
+ }
+ }
+
+ @Override
+ protected boolean validatePage() {
+ boolean valid = super.validatePage();
+
+ if (valid) {
+ String extension = new Path(getFileName()).getFileExtension();
+ if (extension == null || !CreateFacetSetWizardImpl.FILE_EXTENSION.equalsIgnoreCase((extension))) {
+ setErrorMessage(Messages.CreateFacetSetWizardImpl_File_extension_restriction);
+ valid = false;
+ }
+ }
+
+ if (valid) {
+
+ IPath containerFullPath = getContainerFullPath();
+ try {
+ if (!PluginUtils.isInPluginProject(containerFullPath)) {
+ setMessage(Messages.CreateFacetSetWizardPage_Not_a_Plugin_project, IMessageProvider.WARNING);
+ }
+ } catch (CoreException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+
+ return valid;
+ }
+
+ public IFile getModelFile() {
+ return ResourcesPlugin.getWorkspace().getRoot().getFile(getContainerFullPath().append(getFileName()));
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/CreateQueryWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/CreateQueryWizardPage.java
new file mode 100644
index 00000000000..f37109cfe8d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/CreateQueryWizardPage.java
@@ -0,0 +1,286 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Gregoire Dupe (Mia-Software) - Bug 373248 - Clean PMD errors
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages;
+
+import java.util.Map;
+
+import org.eclipse.papyrus.emf.facet.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.exported.wizard.IQueryCreationPagePart;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.core.composite.registries.ICompositeEditorFactoriesRegistry;
+import org.eclipse.jface.wizard.IWizardPage;
+import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Text;
+
+@Deprecated
+//TODO @Deprecated must be removed after a refactoring planed by https://bugs.eclipse.org/bugs/show_bug.cgi?id=364601
+public class CreateQueryWizardPage extends WizardPage {
+
+ private static final int NUMBER_COLUMN = 3;
+
+ private Map<String, IQueryCreationPagePart> queryTypeNameToQueryCreationPage;
+
+ private Text queryNameText;
+ private boolean canChangeQueryName = true;
+
+ private Button canBeCachedButton;
+ private boolean canChangeCanBeCached = true;
+
+ private Button hasSideEffectButton;
+ private boolean canChangeHasSideEffect = true;
+
+ private AbstractCellEditorComposite<Integer> lowerBoundText;
+ private boolean canChangeLowerBound = true;
+
+ private AbstractCellEditorComposite<Integer> upperBoundText;
+ private boolean canChangeUpperBound = true;
+
+ private String queryName;
+ private FacetSet facetSet;
+ private Facet facet;
+ private String queryType;
+
+ private Composite parentComposite;
+ private IQueryCreationPagePart queryCreationPage;
+
+ public CreateQueryWizardPage(final Map<String, IQueryCreationPagePart> queryTypeNameToQueryCreationPage,
+ final FacetSet facetSet, final Facet facet) {
+ this("Whatever", facetSet); //$NON-NLS-1$
+ this.facet = facet;
+ this.queryTypeNameToQueryCreationPage = queryTypeNameToQueryCreationPage;
+ }
+
+ @Override
+ public void setVisible(final boolean visible) {
+ if (visible) {
+ setFocus();
+ IWizardPage previousPage = getPreviousPage();
+ if (previousPage instanceof AbstractFacetWizardPage) {
+ AbstractFacetWizardPage createFacetInFacetSetWizardPage = (AbstractFacetWizardPage) getPreviousPage();
+ this.queryType = createFacetInFacetSetWizardPage.getSelectedQueryType();
+ String childrenName = createFacetInFacetSetWizardPage.getChildrenName();
+ String childrenNameFirstLetterToUpperCase = childrenName.substring(0, 1).toUpperCase()
+ + childrenName.substring(1);
+ if (previousPage instanceof CreateFacetInFacetSetWizardPage) {
+ setQueryName("is" + childrenNameFirstLetterToUpperCase); //$NON-NLS-1$
+ } else if (previousPage instanceof AddReferenceInFacetWizardPage
+ || previousPage instanceof AddAttributeInFacetWizardPage) {
+ setQueryName("get" + childrenNameFirstLetterToUpperCase); //$NON-NLS-1$
+ } else {
+ setQueryName(childrenNameFirstLetterToUpperCase);
+ }
+ deleteAllControls(this.parentComposite);
+ createControl2(this.parentComposite);
+ this.parentComposite.layout();
+ }
+ }
+ super.setVisible(visible);
+ }
+
+ private void setFocus() {
+ this.queryNameText.setFocus();
+ }
+
+ public CreateQueryWizardPage(final String pageName, final FacetSet facetSet) {
+ super(pageName);
+ setTitle(Messages.Create_Query);
+ this.facetSet = facetSet;
+ }
+
+ private static void deleteAllControls(final Composite comp) {
+ for (Control c : comp.getChildren()) {
+ c.dispose();
+ }
+ }
+
+ @Override
+ public boolean isPageComplete() {
+ if (this.queryCreationPage != null) {
+ if (!this.queryCreationPage.isCompositeComplete()) {
+ setErrorMessage(this.queryCreationPage.getErrorMessage());
+ return false;
+ }
+ setErrorMessage(null);
+ }
+ return super.isPageComplete();
+ }
+
+ private void createControl2(final Composite parent) {
+ Composite threeColumnContainer = new Composite(parent, SWT.NONE);
+ GridLayout layout = new GridLayout(CreateQueryWizardPage.NUMBER_COLUMN, false);
+ threeColumnContainer.setLayout(layout);
+ GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
+ threeColumnContainer.setLayoutData(gridData);
+ Label label = new Label(threeColumnContainer, SWT.NONE);
+ label.setText(Messages.JavaQueryWizardPage_Query_name);
+ this.queryNameText = new Text(threeColumnContainer, SWT.BORDER);
+ this.queryNameText.setEditable(this.canChangeQueryName);
+ this.queryNameText.setLayoutData(gridData);
+ if (this.queryName != null) {
+ this.queryNameText.setText(this.queryName);
+ }
+ this.queryNameText.addModifyListener(new ModifyListener() {
+ public void modifyText(final ModifyEvent e) {
+ updateQueryName();
+ }
+ });
+ Label dummyLabel = new Label(threeColumnContainer, SWT.NONE);
+ dummyLabel.setText(""); //$NON-NLS-1$
+ Label canBeCachedLabel = new Label(threeColumnContainer, SWT.NONE);
+ canBeCachedLabel.setText(Messages.JavaQueryWizardPage_Can_be_cached);
+ this.canBeCachedButton = new Button(threeColumnContainer, SWT.CHECK);
+ this.canBeCachedButton.setEnabled(this.canChangeCanBeCached);
+
+ Label dummyLabel1 = new Label(threeColumnContainer, SWT.NONE);
+ dummyLabel1.setText(""); //$NON-NLS-1$
+
+ Label hasSideEffectLabel = new Label(threeColumnContainer, SWT.NONE);
+ hasSideEffectLabel.setText(Messages.JavaQueryWizardPage_has_side_effect);
+ this.hasSideEffectButton = new Button(threeColumnContainer, SWT.CHECK);
+ this.hasSideEffectButton.setEnabled(this.canChangeHasSideEffect);
+
+ Label dummyLabel2 = new Label(threeColumnContainer, SWT.NONE);
+ dummyLabel2.setText(""); //$NON-NLS-1$
+ ICompositeEditorFactory<Integer> compositeFactory = ICompositeEditorFactoriesRegistry.INSTANCE
+ .getCompositeEditorFactory(Integer.class);
+
+ Label lowerBoundLabel = new Label(threeColumnContainer, SWT.NONE);
+ lowerBoundLabel.setText(Messages.Lower_bound);
+ this.lowerBoundText = compositeFactory.createCompositeEditor(threeColumnContainer, SWT.BORDER | SWT.SINGLE);
+ this.lowerBoundText.setLayoutData(gridData);
+ this.lowerBoundText.setEnabled(this.canChangeLowerBound);
+ this.lowerBoundText.setValue(Integer.valueOf(1));
+ Label dummyLabel3 = new Label(threeColumnContainer, SWT.NONE);
+ dummyLabel3.setText(""); //$NON-NLS-1$
+
+ Label upperBoundLabel = new Label(threeColumnContainer, SWT.NONE);
+ upperBoundLabel.setText(Messages.Upper_bound);
+ this.upperBoundText = compositeFactory.createCompositeEditor(threeColumnContainer, SWT.BORDER | SWT.SINGLE);
+ this.upperBoundText.setLayoutData(gridData);
+ this.upperBoundText.setEnabled(this.canChangeUpperBound);
+ this.upperBoundText.setValue(Integer.valueOf(1));
+ Label dummyLabel4 = new Label(threeColumnContainer, SWT.NONE);
+ dummyLabel4.setText(""); //$NON-NLS-1$
+
+ // Add the composite provided by extension point for the chosen Query type
+ if (this.queryTypeNameToQueryCreationPage != null) {
+ this.queryCreationPage = this.queryTypeNameToQueryCreationPage.get(this.queryType);
+ if (this.queryCreationPage != null) {
+ this.queryCreationPage.completeComposite(threeColumnContainer);
+ this.queryCreationPage.setFacetSet(getFacetSet());
+ this.queryCreationPage.setQueryType(this.facet.getExtendedMetaclass());
+ this.queryCreationPage.setQueryName(this.queryName);
+ this.queryCreationPage.addModifyListener(new ModifyListener() {
+
+ public void modifyText(final ModifyEvent e) {
+ updateButtons();
+ }
+ });
+ }
+ }
+
+ setControl(threeColumnContainer);
+ }
+
+ private FacetSet getFacetSet() {
+ return this.facetSet;
+ }
+
+ public void createControl(final Composite parent) {
+ this.parentComposite = new Composite(parent, SWT.NONE);
+ this.parentComposite.setLayout(new GridLayout(1, false));
+ createControl2(this.parentComposite);
+ }
+
+ protected void updateButtons() {
+ if (getContainer() != null && getContainer().getCurrentPage() != null) {
+ getContainer().updateButtons();
+ this.queryNameText.setFocus();
+ }
+ }
+
+ protected void updateQueryName() {
+ if (this.queryNameText != null) {
+ this.queryName = this.queryNameText.getText();
+ this.queryNameText.setFocus();
+ }
+ }
+
+ public void setQueryName(final String queryName) {
+ this.queryName = queryName;
+ if (this.queryNameText != null) {
+ this.queryNameText.setText(queryName);
+ this.queryNameText.redraw();
+ }
+ }
+
+ public String getQueryName() {
+ return this.queryName;
+ }
+
+ public void canChangeUpperBound(final boolean canChange) {
+ this.canChangeUpperBound = canChange;
+ }
+
+ public void canChangeQueryName(final boolean canChange) {
+ this.canChangeQueryName = canChange;
+ }
+
+ public void canChangeLowerBound(final boolean canChange) {
+ this.canChangeLowerBound = canChange;
+ }
+
+ public void canChangeHasSideEffect(final boolean canChange) {
+ this.canChangeHasSideEffect = canChange;
+ }
+
+ public void canChangeCanBeCached(final boolean canChange) {
+ this.canChangeCanBeCached = canChange;
+ }
+
+ public boolean getCanBeCached() {
+ return this.canBeCachedButton.getSelection();
+ }
+
+ public boolean getHasSideEffect() {
+ return this.hasSideEffectButton.getSelection();
+ }
+
+ public int getLowerBound() {
+ return this.lowerBoundText.getValue().intValue();
+ }
+
+ public int getUpperBound() {
+ return this.upperBoundText.getValue().intValue();
+ }
+
+ public IQueryCreationPagePart getQueryCreationPage() {
+ return this.queryCreationPage;
+ }
+
+ public void setFacetSet(final FacetSet facetSet) {
+ this.facetSet = facetSet;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/FacetSetPropertyWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/FacetSetPropertyWizardPage.java
new file mode 100644
index 00000000000..12885f827eb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/FacetSetPropertyWizardPage.java
@@ -0,0 +1,106 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ */
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages;
+
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Text;
+
+/**
+ * Wizard page to enter a NsURI, a prefix and an extended EPackage to a facetSet
+ */
+public class FacetSetPropertyWizardPage extends SelectEPackageWizardPage {
+
+ private Text nsUriTextField;
+ private Text prefixTextField;
+
+ public FacetSetPropertyWizardPage(final EditingDomain editingDomain) {
+ super(editingDomain);
+ }
+
+ @Override
+ public void createControl(final Composite parent) {
+
+ // Extends the SelectEPackageWizardPage to add a NsURI and a Prefix textField
+ Composite container = new Composite(parent, SWT.NONE);
+ container.setLayout(new GridLayout(1, false));
+ container.setLayoutData(new GridData(GridData.FILL_HORIZONTAL, GridData.FILL_VERTICAL, true, true));
+
+ Composite nsURiContainer = new Composite(container, SWT.NONE);
+ nsURiContainer.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ nsURiContainer.setLayout(new GridLayout(2, false));
+
+ // NsURI
+ Label nsUriLabel = new Label(nsURiContainer, SWT.NONE);
+ nsUriLabel.setText(Messages.Enter_a_nsUri);
+ this.nsUriTextField = new Text(nsURiContainer, SWT.BORDER | SWT.SINGLE);
+ this.nsUriTextField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ this.nsUriTextField.addListener(SWT.Modify, new Listener() {
+ public void handleEvent(final Event event) {
+ updateButtons();
+ }
+ });
+
+ // PREFIX
+ Label prefixLabel = new Label(nsURiContainer, SWT.NONE);
+ prefixLabel.setText(Messages.Enter_a_prefix);
+ this.prefixTextField = new Text(nsURiContainer, SWT.BORDER | SWT.SINGLE);
+ this.prefixTextField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ this.prefixTextField.addListener(SWT.Modify, new Listener() {
+ public void handleEvent(final Event event) {
+ updateButtons();
+ }
+ });
+
+ super.createControl(container);
+ }
+
+ @Override
+ public boolean isPageComplete() {
+ if (this.nsUriTextField.getText().length() == 0) {
+ setErrorMessage(Messages.Please_enter_nsUri);
+ return false;
+ }
+
+ if (this.prefixTextField.getText().length() == 0) {
+ setErrorMessage(Messages.Please_enter_prefix);
+ return false;
+ }
+ if (super.isPageComplete()) {
+ setErrorMessage(null);
+ return true;
+ }
+ setErrorMessage(Messages.Please_select_EPackage);
+
+ return false;
+ }
+
+ public String getNsUri() {
+ return this.nsUriTextField.getText();
+ }
+
+ public String getPrefix() {
+ return this.prefixTextField.getText();
+ }
+
+ protected void updateButtons() {
+ getContainer().updateButtons();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/SelectEClassifierWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/SelectEClassifierWizardPage.java
new file mode 100644
index 00000000000..f7e360e8abe
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/SelectEClassifierWizardPage.java
@@ -0,0 +1,114 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.composites.SelectETypeComposite.ETypeSelectionOptions;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget.EClassifierSelectionControl;
+import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.dialogs.FilteredList;
+
+public class SelectEClassifierWizardPage extends WizardPage {
+
+ private EClassifierSelectionControl eClassSelectionControl;
+ private final ETypeSelectionOptions eTypeSelectionOption;
+ private String metamodelNsUri;
+
+ public SelectEClassifierWizardPage(final ETypeSelectionOptions eTypeSelectionOption, final EPackage ePackage) {
+ super("Whatever"); //$NON-NLS-1$
+ if (eTypeSelectionOption == ETypeSelectionOptions.ECLASS) {
+ setTitle(Messages.Select_EClass);
+ } else if (eTypeSelectionOption == ETypeSelectionOptions.EDATATYPE) {
+ setTitle(Messages.Select_EDataType);
+ } else {
+ setTitle(Messages.Select_EClassifier);
+ }
+ if (ePackage != null) {
+ this.metamodelNsUri = ePackage.getNsURI();
+ }
+ this.eTypeSelectionOption = eTypeSelectionOption;
+ }
+
+ @Override
+ public boolean isPageComplete() {
+ return this.eClassSelectionControl.getSelectedEClassifier() != null;
+ }
+
+ @Override
+ public void setVisible(final boolean visible) {
+ super.setVisible(visible);
+ if (getPreviousPage() instanceof SelectEPackageWizardPage) {
+ SelectEPackageWizardPage selectEPackageWizardPage = (SelectEPackageWizardPage) getPreviousPage();
+ this.metamodelNsUri = selectEPackageWizardPage.getFirstSelectedEPackage().getNsURI();
+ if (this.metamodelNsUri != null) {
+ setDescription(selectEPackageWizardPage.getFirstSelectedEPackage().getNsURI());
+ }
+ }
+ this.eClassSelectionControl.updateList(this.metamodelNsUri);
+ }
+
+ public void createControl(final Composite parent) {
+ this.eClassSelectionControl = new EClassifierSelectionControl(parent, this.metamodelNsUri, this.eTypeSelectionOption);
+ final FilteredList filteredList = this.eClassSelectionControl.getFilteredList();
+
+ filteredList.addSelectionListener(new SelectionListener() {
+ public void widgetSelected(final SelectionEvent e) {
+ if (e.item != null) {
+ updateButton();
+ // setPageComplete(filteredList.getSelection().length == 1);
+ }
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent e) {
+ if (getWizard().canFinish()) {
+ getWizard().performFinish();
+ }
+ if (getNextPage() != null) {
+ goToNextPage();
+ }
+ }
+ });
+
+ this.eClassSelectionControl.getFilterText().addModifyListener(new ModifyListener() {
+
+ public void modifyText(final ModifyEvent e) {
+ updateButton();
+ }
+ });
+
+ // avoid the page being "complete" when still on a previous page
+ filteredList.setSelection(new int[0]);
+ setPageComplete(false);
+
+ setControl(this.eClassSelectionControl);
+ }
+
+ protected void goToNextPage() {
+ getContainer().showPage(getNextPage());
+ }
+
+ protected void updateButton() {
+ if (getContainer() != null && getContainer().getCurrentPage() != null) {
+ getContainer().updateButtons();
+ }
+ }
+
+ public EClassifier getSelectedEclassifier() {
+ return this.eClassSelectionControl.getSelectedEClassifier();
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/SelectEPackageWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/SelectEPackageWizardPage.java
new file mode 100644
index 00000000000..4d89be376a4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet.ui/src/org/eclipse/papyrus/emf/facet/efacet/ui/internal/wizards/pages/SelectEPackageWizardPage.java
@@ -0,0 +1,114 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.efacet.ui.internal.wizards.pages;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EPackage.Registry;
+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.facet.efacet.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.efacet.ui.internal.widget.MetamodelSelectionControl;
+import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.dialogs.FilteredList;
+
+public class SelectEPackageWizardPage extends WizardPage {
+
+ private MetamodelSelectionControl metamodelSelectionControl;
+ private final EditingDomain editingDomain;
+
+ public SelectEPackageWizardPage(final EditingDomain editingDomain) {
+ super("Whatever"); //$NON-NLS-1$
+ setTitle(Messages.Select_EPackage);
+ this.editingDomain = editingDomain;
+ }
+
+ @Override
+ public void setVisible(final boolean visible) {
+ super.setVisible(visible);
+ if (visible) {
+ this.metamodelSelectionControl.getFilterText().setFocus();
+ setPageComplete(true);
+ }
+ }
+
+ public void createControl(final Composite parent) {
+ this.metamodelSelectionControl = new MetamodelSelectionControl(parent);
+ this.metamodelSelectionControl.setLayoutData(new GridData(GridData.FILL_BOTH));
+ final FilteredList filteredList = this.metamodelSelectionControl.getFilteredList();
+
+ filteredList.addSelectionListener(new SelectionListener() {
+ public void widgetSelected(final SelectionEvent e) {
+ if (e.item != null) {
+ setPageComplete(filteredList.getSelection().length == 1);
+ }
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent e) {
+ if (getWizard().canFinish()) {
+ getWizard().performFinish();
+ }
+ if (getNextPage() != null) {
+ goToNextPage();
+ }
+ }
+ });
+
+ // prevent the page from being "complete" when still on a previous page
+ filteredList.setSelection(new int[0]);
+ setPageComplete(false);
+
+ setControl(this.metamodelSelectionControl);
+ }
+
+ protected void goToNextPage() {
+ getContainer().showPage(getNextPage());
+ }
+
+ public EPackage getFirstSelectedEPackage() {
+ // Only one result
+ if (this.metamodelSelectionControl.getSelectedElements() != null) {
+ Object result = this.metamodelSelectionControl.getSelectedElements()[0];
+ if (EPackage.Registry.INSTANCE.containsKey(result.toString())) {
+ return EPackage.Registry.INSTANCE.getEPackage(result.toString());
+ }
+ }
+ return null;
+ }
+
+ public void loadSelectedMetamodel() {
+ Object[] results = this.metamodelSelectionControl.getSelectedElements();
+ // if user cancel the selection of meta models, results = null
+ if (results != null) {
+ ResourceSet resourceSet = this.editingDomain.getResourceSet();
+ for (Object result : results) {
+ URI uri = URI.createURI(result.toString());
+ Resource r = resourceSet.getResource(uri, true);
+ if (!resourceSet.getResources().contains(r)) {
+ Registry packageRegistry = resourceSet.getPackageRegistry();
+ for (EObject eObject : r.getContents()) {
+ if (eObject instanceof EPackage) {
+ EPackage ePackage = (EPackage) eObject;
+ packageRegistry.put(ePackage.getNsURI(), ePackage);
+ }
+ }
+ resourceSet.getResources().add(r);
+ }
+ }
+ }
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.checkstyle
new file mode 100644
index 00000000000..69f6665c938
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.checkstyle
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2011 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Guyomar (Mia-Software) - initial API and implementation
+-->
+<fileset-config file-format-version="1.2.0" simple-config="true">
+ <local-check-config name="EmfFacet" location="../org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+ <filter name="FilesFromPackage" enabled="true">
+ <filter-data value="src/org/eclipse/emf/facet/efacet"/>
+ </filter>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.classpath
new file mode 100644
index 00000000000..45f024e850e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.project
new file mode 100644
index 00000000000..a2e7fbaaf6a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.efacet</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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..7a5d03c68de
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,14 @@
+###########################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software)
+###########################################################################
+#Fri Jan 07 10:54:39 CET 2011
+eclipse.preferences.version=1
+encoding//model/efacet.ecorediag=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..f1b777daa7e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,74 @@
+#Thu Jan 13 10:03:26 CET 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.deadCode=warning
+org.eclipse.jdt.core.compiler.problem.deprecation=warning
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
+org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=ignore
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=ignore
+org.eclipse.jdt.core.compiler.problem.nullReference=warning
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=ignore
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=enabled
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=ignore
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=warning
+org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
+org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..be13956cb0c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/META-INF/MANIFEST.MF
@@ -0,0 +1,15 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.efacet;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: %Bundle-Vendor
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore
+Bundle-ActivationPolicy: lazy
+Bundle-Activator: org.eclipse.papyrus.emf.facet.efacet.plugin.Activator
+Bundle-Name: %Bundle-Name
+Export-Package: org.eclipse.papyrus.emf.facet.efacet,
+ org.eclipse.papyrus.emf.facet.efacet.impl;x-friends:="org.eclipse.papyrus.emf.facet.query.java",
+ org.eclipse.papyrus.emf.facet.efacet.util;x-friends:="org.eclipse.papyrus.emf.facet.query.java.edit"
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..ea8f255193b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,14 @@
+############################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - design
+# Nicolas Guyomar (Mia-Software) - implementation
+############################################################################
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Model (Deprecated) (Incubation) \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/about.html
new file mode 100644
index 00000000000..d1714826b27
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/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>January 4, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/build.properties
new file mode 100644
index 00000000000..45e08e997b3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/build.properties
@@ -0,0 +1,22 @@
+############################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - design
+# Nicolas Guyomar (Mia-Software) - implementation
+############################################################################
+bin.includes = .,\
+ model/,\
+ plugin.xml,\
+ META-INF/,\
+ OSGI-INF/,\
+ about.html
+jars.compile.order = .
+source.. = src/
+output.. = bin/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/model/efacet.ecore b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/model/efacet.ecore
new file mode 100644
index 00000000000..50644c6c985
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/model/efacet.ecore
@@ -0,0 +1,188 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="efacet"
+ nsURI="http://www.eclipse.org/papyrus/emf/facet/efacet/0.1.incubation" nsPrefix="efacet">
+ <eClassifiers xsi:type="ecore:EClass" name="FacetAttribute" eSuperTypes="http://www.eclipse.org/emf/2002/Ecore#//EAttribute #//QueryFacetElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A facetAttribute is a virtual attribute added to all the eObjets which are conform to the facet owning the &quot;facetAttribute&quot;."/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="FacetReference" eSuperTypes="http://www.eclipse.org/emf/2002/Ecore#//EReference #//QueryFacetElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A &quot;facetReference&quot; is a virtual reference added to all the eObjets which are conform to the facet owning the &quot;facetReference&quot;."/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="FacetOperation" eSuperTypes="http://www.eclipse.org/emf/2002/Ecore#//EOperation #//QueryFacetElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A &quot;facetOperation&quot; is a virtual operation added to all the eObjets which are conform to the facet owning the facetOperation&quot;."/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="FacetSet" eSuperTypes="http://www.eclipse.org/emf/2002/Ecore#//EPackage">
+ <eAnnotations source="GenModel">
+ <details key="documentation" value="A &quot;FacetSet&quot; is the root element of a facet model. It contains a list of &quot;Facet&quot;."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="facets" upperBound="-1"
+ eType="#//Facet" containment="true" eOpposite="#//Facet/facetSet"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="categories" upperBound="-1"
+ eType="#//Category" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="extendedEPackage" lowerBound="1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EPackage"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Facet" eSuperTypes="http://www.eclipse.org/emf/2002/Ecore#//EClassifier">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
+ <details key="validationDelegates" value="( self.query.scope = self.facet.extendedMetaClass ) and ( self.query.name = self.name )"/>
+ </eAnnotations>
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A facet is a virtual sub type of an existing EClass. A Facet cannot be instantiated."/>
+ </eAnnotations>
+ <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
+ <details key="validationDelegates" value="self.conformanceQuery.scope = self.extendedMetaClass"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="facetSet" eType="#//FacetSet"
+ eOpposite="#//FacetSet/facets"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="conformanceQuery" eType="#//Query"
+ containment="true">
+ <eAnnotations source="GenModel">
+ <details key="documentation" value="The &quot;conformanceQuery&quot; references points to the ModelQuery class. The model queries pointed to by the &quot;conformanceQuery&quot; reference must return a Boolean. Those queries are used to specify how to decide whether an instance conforms to a facet. If the &quot;conditionQuery&quot; is empty then all the instances of the class referred to by the facet instance through the eSuperType reference conform to this facet. "/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="extendedMetaclass" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EClass">
+ <eAnnotations source="GenModel">
+ <details key="documentation" value="The &quot;extendedMetaclass&quot; reference references the virtually subtyped EClass."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="facetElements" upperBound="-1"
+ eType="#//FacetElement" containment="true" eOpposite="#//FacetElement/facet">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This composite reference contains virtual attributes, references and operations."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Query" abstract="true" eSuperTypes="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A query is the abstract representation of the concept query. This class has to be sub-classed for each existing query language (Java, OCL,)"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="scope" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EClass">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The query's scope defines the type of model elements a query can be applied on."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="hasSideEffect" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+ defaultValueLiteral="false">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This attribute has to be true if the query modify the model."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="canBeCached" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+ defaultValueLiteral="false">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The attribute &quot;canBeCached&quot; has to be true if calling a query on the same model element will always return the same result."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1"
+ eType="#//Parameter" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="QueryResult">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This class represents the result of a query execution."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="query" lowerBound="1" eType="#//Query">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The reference &quot;query&quot; references the executed query."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="scope" lowerBound="1" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The scope references the model elements on which the query has been applied."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="parameterValues" upperBound="-1"
+ eType="#//ParameterValue" containment="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This is the list of the values given as parameters for the query execution."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="result" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This is the result returned by the query execution."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="exception" eType="#//JavaException"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="source" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Category"/>
+ <eClassifiers xsi:type="ecore:EClass" name="FacetElement" abstract="true" eSuperTypes="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A facet element is owned by a facet. It can be a facet reference, a facet attribute or a facet operation."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="categories" upperBound="-1"
+ eType="#//Category"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="facet" lowerBound="1" eType="#//Facet"
+ eOpposite="#//Facet/facetElements"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="override" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="QueryFacetElement" abstract="true" eSuperTypes="#//FacetElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value=" A query facet element is a virtual structural feature which value is computed using a query."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="query" eType="#//Query"
+ containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="OppositeReference" eSuperTypes="#//FacetElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This is a virtual opposite reference of an existing reference."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="fOpposite" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EReference"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="QuerySet">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
+ <details key="validationDelegates" value="not(self.queries->exists(q1|self.queries->exists(q2|q2&amp;lt;>q1 and q2.name = q1.name and q2.scope=q1.scope and q2.parameters = q1.parameters) and self.queries->forAll(q|q.scope = null)"/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="queries" upperBound="-1"
+ eType="#//Query" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Literal" eSuperTypes="#//Query">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value=" A query return a static literal."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" 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 literal value is stored in a string."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="TypedElementRef" eSuperTypes="#//Query">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This query can result in content of another attribute, reference or operation."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="typedElement" lowerBound="1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//ETypedElement"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Parameter" eSuperTypes="http://www.eclipse.org/emf/2002/Ecore#//ETypedElement">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This is the declaration of a query parameter."/>
+ </eAnnotations>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ParameterValue">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This is the value given as a parameter to execute a query."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="parameter" lowerBound="1"
+ eType="#//Parameter"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" upperBound="-1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="QueryContext">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This is a class used to evaluate a query on every given model element."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="selectedModelElements"
+ upperBound="-1" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="selectedModels" upperBound="-1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EResource"
+ transient="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EDataType" name="JavaException" instanceClassName="java.lang.Exception"/>
+</ecore:EPackage>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/model/efacet.ecorediag b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/model/efacet.ecorediag
new file mode 100644
index 00000000000..da036644a6c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/model/efacet.ecorediag
@@ -0,0 +1,624 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmi:id="_IkrKYRpEEeCJ48ST48m98A" type="EcoreTools" name="efacet.ecorediag" measurementUnit="Pixel">
+ <children xmi:type="notation:Node" xmi:id="_ImTiEBpEEeCJ48ST48m98A" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_IosHsBpEEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_Io_psBpEEeCJ48ST48m98A" type="5001">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Io_psRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Io_pshpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Io_psxpEEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Io_ptBpEEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Io_ptRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Io_pthpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Io_ptxpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_ImTiERpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet.ecore#//FacetAttribute"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ImTiEhpEEeCJ48ST48m98A" x="145" y="295"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ip4agBpEEeCJ48ST48m98A" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_Ip4agxpEEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_Ip4ahBpEEeCJ48ST48m98A" type="5001">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ip4ahRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ip4ahhpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ip4ahxpEEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ip4aiBpEEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ip4aiRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ip4aihpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ip4aixpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Ip4agRpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet.ecore#//FacetReference"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ip4aghpEEeCJ48ST48m98A" x="270" y="295"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ip4ajBpEEeCJ48ST48m98A" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_Ip4ajxpEEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_Ip4akBpEEeCJ48ST48m98A" type="5001">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ip4akRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ip4akhpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ip4akxpEEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ip4alBpEEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ip4alRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ip4alhpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ip4alxpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Ip4ajRpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet.ecore#//FacetOperation"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ip4ajhpEEeCJ48ST48m98A" x="395" y="295"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ip4amBpEEeCJ48ST48m98A" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_Ip4amxpEEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_Ip4anBpEEeCJ48ST48m98A" type="5001">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ip4anRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ip4anhpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ip4anxpEEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ip4aoBpEEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ip4aoRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ip4aohpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ip4aoxpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Ip4amRpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet.ecore#//FacetSet"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ip4amhpEEeCJ48ST48m98A" x="-5" y="-35"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ip4apBpEEeCJ48ST48m98A" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_Ip4apxpEEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_Ip4aqBpEEeCJ48ST48m98A" type="5001">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ip4aqRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ip4aqhpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ip4aqxpEEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ip4arBpEEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ip4arRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ip4arhpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ip4arxpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Ip4apRpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet.ecore#//Facet"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ip4aphpEEeCJ48ST48m98A" x="-10" y="90"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IqCLgBpEEeCJ48ST48m98A" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_IqCLgxpEEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_IqCLhBpEEeCJ48ST48m98A" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_Ivi9ohpEEeCJ48ST48m98A" type="2001">
+ <element xmi:type="ecore:EAttribute" href="efacet.ecore#//Query/hasSideEffect"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Ivi9oxpEEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ivi9pBpEEeCJ48ST48m98A" type="2001">
+ <element xmi:type="ecore:EAttribute" href="efacet.ecore#//Query/canBeCached"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Ivi9pRpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_IqCLhRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IqCLhhpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IqCLhxpEEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IqCLiBpEEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_IqCLiRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IqCLihpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IqCLixpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_IqCLgRpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet.ecore#//Query"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IqCLghpEEeCJ48ST48m98A" x="580" y="170"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ivi9phpEEeCJ48ST48m98A" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_Ivi9qRpEEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_Ivi9qhpEEeCJ48ST48m98A" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_Ivi9shpEEeCJ48ST48m98A" type="2001">
+ <element xmi:type="ecore:EAttribute" href="efacet.ecore#//QueryResult/result"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Ivi9sxpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ivi9qxpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ivi9rBpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ivi9rRpEEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ivi9rhpEEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ivi9rxpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ivi9sBpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ivi9sRpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Ivi9pxpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet.ecore#//QueryResult"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ivi9qBpEEeCJ48ST48m98A" x="940" y="355"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ivi9tBpEEeCJ48ST48m98A" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_Ivi9txpEEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_Ivi9uBpEEeCJ48ST48m98A" type="5001">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ivi9uRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ivi9uhpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ivi9uxpEEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ivi9vBpEEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ivi9vRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ivi9vhpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ivi9vxpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Ivi9tRpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet.ecore#//Category"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ivi9thpEEeCJ48ST48m98A" x="195" y="-30"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ivi9wBpEEeCJ48ST48m98A" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_Ivi9wxpEEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_Ivi9xBpEEeCJ48ST48m98A" type="5001">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ivi9xRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ivi9xhpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ivi9xxpEEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ivi9yBpEEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ivi9yRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ivi9yhpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ivi9yxpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Ivi9wRpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet.ecore#//FacetElement"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ivi9whpEEeCJ48ST48m98A" x="295" y="90"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ivi9zBpEEeCJ48ST48m98A" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_Ivi9zxpEEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_Ivi90BpEEeCJ48ST48m98A" type="5001">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ivi90RpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ivi90hpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ivi90xpEEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ivi91BpEEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ivi91RpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ivi91hpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ivi91xpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Ivi9zRpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet.ecore#//QueryFacetElement"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ivi9zhpEEeCJ48ST48m98A" x="320" y="180"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ivi92BpEEeCJ48ST48m98A" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_Ivi92xpEEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_IvsuoBpEEeCJ48ST48m98A" type="5001">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_IvsuoRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IvsuohpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IvsuoxpEEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IvsupBpEEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_IvsupRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IvsuphpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IvsupxpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Ivi92RpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet.ecore#//OppositeReference"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ivi92hpEEeCJ48ST48m98A" x="135" y="185"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IvsuqBpEEeCJ48ST48m98A" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_IvsuqxpEEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_IvsurBpEEeCJ48ST48m98A" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_IvsutBpEEeCJ48ST48m98A" type="2001">
+ <element xmi:type="ecore:EAttribute" href="efacet.ecore#//QuerySet/name"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IvsutRpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_IvsurRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IvsurhpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IvsurxpEEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IvsusBpEEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_IvsusRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IvsushpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IvsusxpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_IvsuqRpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet.ecore#//QuerySet"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IvsuqhpEEeCJ48ST48m98A" x="610" y="10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IvsuthpEEeCJ48ST48m98A" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_IvsuuRpEEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_IvsuuhpEEeCJ48ST48m98A" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_IvsuwhpEEeCJ48ST48m98A" type="2001">
+ <element xmi:type="ecore:EAttribute" href="efacet.ecore#//Literal/value"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IvsuwxpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_IvsuuxpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IvsuvBpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IvsuvRpEEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IvsuvhpEEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_IvsuvxpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IvsuwBpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IvsuwRpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_IvsutxpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet.ecore#//Literal"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IvsuuBpEEeCJ48ST48m98A" x="770" y="355"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IvsuxBpEEeCJ48ST48m98A" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_IvsuxxpEEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_IvsuyBpEEeCJ48ST48m98A" type="5001">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_IvsuyRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IvsuyhpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IvsuyxpEEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IvsuzBpEEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_IvsuzRpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_IvsuzhpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_IvsuzxpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_IvsuxRpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet.ecore#//TypedElementRef"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IvsuxhpEEeCJ48ST48m98A" x="610" y="360"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ivsu0BpEEeCJ48ST48m98A" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_Ivsu0xpEEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_Ivsu1BpEEeCJ48ST48m98A" type="5001">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ivsu1RpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ivsu1hpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ivsu1xpEEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ivsu2BpEEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ivsu2RpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ivsu2hpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ivsu2xpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Ivsu0RpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet.ecore#//Parameter"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ivsu0hpEEeCJ48ST48m98A" x="880" y="150"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ivsu3BpEEeCJ48ST48m98A" type="1001">
+ <children xmi:type="notation:Node" xmi:id="_Ivsu3xpEEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_Ivsu4BpEEeCJ48ST48m98A" type="5001">
+ <children xmi:type="notation:Node" xmi:id="_Ivsu6BpEEeCJ48ST48m98A" type="2001">
+ <element xmi:type="ecore:EAttribute" href="efacet.ecore#//ParameterValue/value"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Ivsu6RpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ivsu4RpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ivsu4hpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ivsu4xpEEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_Ivsu5BpEEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_Ivsu5RpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_Ivsu5hpEEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_Ivsu5xpEEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_Ivsu3RpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="efacet.ecore#//ParameterValue"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ivsu3hpEEeCJ48ST48m98A" x="1210" y="350"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_kPKa0BpMEeCJ48ST48m98A" type="1001">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kPwQsBpMEeCJ48ST48m98A" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kPwQsRpMEeCJ48ST48m98A" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_kPTkwBpMEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_kPTkwRpMEeCJ48ST48m98A" type="5001">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_kPTkwhpMEeCJ48ST48m98A" collapsed="true"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kPTkwxpMEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kPTkxBpMEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_kPTkxRpMEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_kPTkxhpMEeCJ48ST48m98A" collapsed="true"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kPTkxxpMEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kPTkyBpMEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_kPKa0RpMEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EClass"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kPKa0hpMEeCJ48ST48m98A" x="515" y="465"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_o-OVgBpNEeCJ48ST48m98A" type="1001">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_o-hQcBpNEeCJ48ST48m98A" source="Shortcut">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_o-hQcRpNEeCJ48ST48m98A" key="modelID" value="EcoreTools"/>
+ </eAnnotations>
+ <children xmi:type="notation:Node" xmi:id="_o-YGgBpNEeCJ48ST48m98A" type="4001"/>
+ <children xmi:type="notation:Node" xmi:id="_o-YGgRpNEeCJ48ST48m98A" type="5001">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_o-YGghpNEeCJ48ST48m98A" collapsed="true"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_o-YGgxpNEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_o-YGhBpNEeCJ48ST48m98A"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_o-YGhRpNEeCJ48ST48m98A" type="5002">
+ <styles xmi:type="notation:DrawerStyle" xmi:id="_o-YGhhpNEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_o-YGhxpNEeCJ48ST48m98A"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_o-YGiBpNEeCJ48ST48m98A"/>
+ </children>
+ <styles xmi:type="notation:ShapeStyle" xmi:id="_o-OVgRpNEeCJ48ST48m98A" fontColor="4210752" fontHeight="10" fillColor="13761016" lineColor="8421504"/>
+ <element xmi:type="ecore:EClass" href="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//ETypedElement"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_o-OVghpNEeCJ48ST48m98A" x="260" y="-205" width="159"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_IkrKYhpEEeCJ48ST48m98A"/>
+ <element xmi:type="ecore:EPackage" href="efacet.ecore#/"/>
+ <edges xmi:type="notation:Edge" xmi:id="_IwJakBpEEeCJ48ST48m98A" type="3003" source="_ImTiEBpEEeCJ48ST48m98A" target="_Ivi9zBpEEeCJ48ST48m98A">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwJakRpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwJakhpEEeCJ48ST48m98A"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwJakxpEEeCJ48ST48m98A" points="[8, 0, -150, 75]$[8, -35, -150, 40]$[190, -35, 32, 40]$[190, -75, 32, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVSBpEEeCJ48ST48m98A" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVSRpEEeCJ48ST48m98A" id="(0.24812030075187969,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwJalBpEEeCJ48ST48m98A" type="3003" source="_Ip4agBpEEeCJ48ST48m98A" target="_Ivi9zBpEEeCJ48ST48m98A">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwJalRpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwJalhpEEeCJ48ST48m98A"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwJalxpEEeCJ48ST48m98A" points="[33, 0, -29, 75]$[33, -35, -29, 40]$[61, -35, -1, 40]$[61, -75, -1, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVUhpEEeCJ48ST48m98A" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVUxpEEeCJ48ST48m98A" id="(0.49624060150375937,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwJamBpEEeCJ48ST48m98A" type="3003" source="_Ip4ajBpEEeCJ48ST48m98A" target="_Ivi9zBpEEeCJ48ST48m98A">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwJamRpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwJamhpEEeCJ48ST48m98A"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwJamxpEEeCJ48ST48m98A" points="[35, 0, 64, 75]$[35, -35, 64, 40]$[-63, -35, -34, 40]$[-63, -75, -34, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVOBpEEeCJ48ST48m98A" id="(0.4954128440366973,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVORpEEeCJ48ST48m98A" id="(0.7443609022556391,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwJanBpEEeCJ48ST48m98A" type="3002" source="_Ip4amBpEEeCJ48ST48m98A" target="_Ip4apBpEEeCJ48ST48m98A">
+ <children xmi:type="notation:Node" xmi:id="_IwJaoBpEEeCJ48ST48m98A" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwJaoRpEEeCJ48ST48m98A" x="1" y="-22"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IwmGgBpEEeCJ48ST48m98A" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwmGgRpEEeCJ48ST48m98A" x="1" y="14"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwJanRpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwJanhpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet.ecore#//FacetSet/facets"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwJanxpEEeCJ48ST48m98A" points="[5, 40, -17, -125]$[5, 125, -17, -40]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9foEYhpKEeCJ48ST48m98A" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9foEYxpKEeCJ48ST48m98A" id="(0.7745098039215687,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwmGghpEEeCJ48ST48m98A" type="3002" source="_Ip4amBpEEeCJ48ST48m98A" target="_Ivi9tBpEEeCJ48ST48m98A">
+ <children xmi:type="notation:Node" xmi:id="_IwmGhhpEEeCJ48ST48m98A" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwmGhxpEEeCJ48ST48m98A" x="-10" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IwmGiBpEEeCJ48ST48m98A" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwmGiRpEEeCJ48ST48m98A" x="1" y="9"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwmGgxpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwmGhBpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet.ecore#//FacetSet/categories"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwmGhRpEEeCJ48ST48m98A" points="[26, 19, -149, -26]$[126, 19, -49, -26]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVVhpEEeCJ48ST48m98A" id="(0.7450980392156863,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JL3GMBpEEeCJ48ST48m98A" id="(0.49019607843137253,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwmGihpEEeCJ48ST48m98A" type="3002" source="_Ip4apBpEEeCJ48ST48m98A" target="_Ip4amBpEEeCJ48ST48m98A">
+ <children xmi:type="notation:Node" xmi:id="_IwmGjhpEEeCJ48ST48m98A" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwmGjxpEEeCJ48ST48m98A" x="-5" y="-26"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IwmGkBpEEeCJ48ST48m98A" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwmGkRpEEeCJ48ST48m98A" x="-5" y="16"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwmGixpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwmGjBpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet.ecore#//Facet/facetSet"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwmGjRpEEeCJ48ST48m98A" points="[-17, -40, 5, 125]$[-17, -125, 5, 40]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVMhpEEeCJ48ST48m98A" id="(0.7745098039215687,1.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVMxpEEeCJ48ST48m98A" id="(0.5,0.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwmGkhpEEeCJ48ST48m98A" type="3002" source="_Ip4apBpEEeCJ48ST48m98A" target="_IqCLgBpEEeCJ48ST48m98A">
+ <children xmi:type="notation:Node" xmi:id="_IwmGlhpEEeCJ48ST48m98A" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwmGlxpEEeCJ48ST48m98A" x="112" y="-16"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IwmGmBpEEeCJ48ST48m98A" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwmGmRpEEeCJ48ST48m98A" x="95" y="21"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwmGkxpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwmGlBpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet.ecore#//Facet/conformanceQuery"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwmGlRpEEeCJ48ST48m98A" points="[-12, 40, -548, -104]$[-12, 304, -548, 160]$[476, 304, -60, 160]$[476, 132, -60, -12]$[516, 132, -20, -12]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVNBpEEeCJ48ST48m98A" id="(0.7450980392156863,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVNRpEEeCJ48ST48m98A" id="(0.1206896551724138,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwmGmhpEEeCJ48ST48m98A" type="3002" source="_Ip4apBpEEeCJ48ST48m98A" target="_Ivi9wBpEEeCJ48ST48m98A">
+ <children xmi:type="notation:Node" xmi:id="_IwmGnhpEEeCJ48ST48m98A" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwmGnxpEEeCJ48ST48m98A" x="-18" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IwmGoBpEEeCJ48ST48m98A" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwmGoRpEEeCJ48ST48m98A" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwmGmxpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwmGnBpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet.ecore#//Facet/facetElements"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwmGnRpEEeCJ48ST48m98A" points="[50, 30, -255, -10]$[255, 30, -50, -10]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_122NwhpNEeCJ48ST48m98A" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_122NwxpNEeCJ48ST48m98A" id="(0.5,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwmGohpEEeCJ48ST48m98A" type="3002" source="_IqCLgBpEEeCJ48ST48m98A" target="_Ivsu0BpEEeCJ48ST48m98A">
+ <children xmi:type="notation:Node" xmi:id="_IwmGphpEEeCJ48ST48m98A" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwmGpxpEEeCJ48ST48m98A" x="-18" y="-9"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IwmGqBpEEeCJ48ST48m98A" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwmGqRpEEeCJ48ST48m98A" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwmGoxpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwmGpBpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet.ecore#//Query/parameters"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwmGpRpEEeCJ48ST48m98A" points="[86, 6, -161, -14]$[214, 6, -33, -14]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVUBpEEeCJ48ST48m98A" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVURpEEeCJ48ST48m98A" id="(0.3333333333333333,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwmGqhpEEeCJ48ST48m98A" type="3002" source="_Ivi9phpEEeCJ48ST48m98A" target="_IqCLgBpEEeCJ48ST48m98A">
+ <children xmi:type="notation:Node" xmi:id="_IwmGrhpEEeCJ48ST48m98A" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwmGrxpEEeCJ48ST48m98A" x="-10" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IwmGsBpEEeCJ48ST48m98A" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwmGsRpEEeCJ48ST48m98A" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwmGqxpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwmGrBpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet.ecore#//QueryResult/query"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwmGrRpEEeCJ48ST48m98A" points="[8, 0, 272, 121]$[8, -130, 272, -9]$[-235, -130, 29, -9]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVRhpEEeCJ48ST48m98A" id="(0.3287671232876712,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVRxpEEeCJ48ST48m98A" id="(0.8333333333333334,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwmGshpEEeCJ48ST48m98A" type="3002" source="_Ivi9phpEEeCJ48ST48m98A" target="_Ivsu3BpEEeCJ48ST48m98A">
+ <children xmi:type="notation:Node" xmi:id="_IwmGthpEEeCJ48ST48m98A" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwmGtxpEEeCJ48ST48m98A" x="-32" y="-12"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IwmGuBpEEeCJ48ST48m98A" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwmGuRpEEeCJ48ST48m98A" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwmGsxpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwmGtBpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet.ecore#//QueryResult/parameterValues"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwmGtRpEEeCJ48ST48m98A" points="[49, 25, -197, -17]$[175, 25, -71, -17]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVRBpEEeCJ48ST48m98A" id="(0.6643835616438356,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVRRpEEeCJ48ST48m98A" id="(0.5,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwvQcBpEEeCJ48ST48m98A" type="3002" source="_Ivi9wBpEEeCJ48ST48m98A" target="_Ivi9tBpEEeCJ48ST48m98A">
+ <children xmi:type="notation:Node" xmi:id="_IwvQdBpEEeCJ48ST48m98A" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwvQdRpEEeCJ48ST48m98A" x="1" y="-35"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IwvQdhpEEeCJ48ST48m98A" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwvQdxpEEeCJ48ST48m98A" x="-16" y="-19"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwvQcRpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwvQchpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet.ecore#//FacetElement/categories"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwvQcxpEEeCJ48ST48m98A" points="[-95, -6, 76, 91]$[-150, -6, 21, 91]$[-150, -97, 21, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVQhpEEeCJ48ST48m98A" id="(0.9509803921568627,0.42857142857142855)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVQxpEEeCJ48ST48m98A" id="(0.24509803921568626,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwvQeBpEEeCJ48ST48m98A" type="3002" source="_Ivi9wBpEEeCJ48ST48m98A" target="_Ip4apBpEEeCJ48ST48m98A">
+ <children xmi:type="notation:Node" xmi:id="_IwvQfBpEEeCJ48ST48m98A" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwvQfRpEEeCJ48ST48m98A" x="-10" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IwvQfhpEEeCJ48ST48m98A" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwvQfxpEEeCJ48ST48m98A" x="3" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwvQeRpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwvQehpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet.ecore#//FacetElement/facet"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwvQexpEEeCJ48ST48m98A" points="[-50, -10, 255, 30]$[-255, -10, 50, 30]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVQBpEEeCJ48ST48m98A" id="(0.5,1.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVQRpEEeCJ48ST48m98A" id="(0.5,0.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwvQgBpEEeCJ48ST48m98A" type="3002" source="_Ivi9zBpEEeCJ48ST48m98A" target="_IqCLgBpEEeCJ48ST48m98A">
+ <children xmi:type="notation:Node" xmi:id="_IwvQhBpEEeCJ48ST48m98A" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwvQhRpEEeCJ48ST48m98A" x="-10" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IwvQhhpEEeCJ48ST48m98A" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwvQhxpEEeCJ48ST48m98A" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwvQgRpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwvQghpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet.ecore#//QueryFacetElement/query"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwvQgxpEEeCJ48ST48m98A" points="[46, 11, -168, -42]$[172, 11, -42, -42]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVTBpEEeCJ48ST48m98A" id="(0.6616541353383458,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVTRpEEeCJ48ST48m98A" id="(0.2471264367816092,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwvQiBpEEeCJ48ST48m98A" type="3003" source="_Ivi9zBpEEeCJ48ST48m98A" target="_Ivi9wBpEEeCJ48ST48m98A">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwvQiRpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwvQihpEEeCJ48ST48m98A"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwvQixpEEeCJ48ST48m98A" points="[51, 0, 106, 50]$[51, -15, 106, 35]$[-89, -15, -34, 35]$[-89, -50, -34, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVShpEEeCJ48ST48m98A" id="(0.3308270676691729,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVSxpEEeCJ48ST48m98A" id="(0.7450980392156863,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwvQjBpEEeCJ48ST48m98A" type="3003" source="_Ivi92BpEEeCJ48ST48m98A" target="_Ivi9wBpEEeCJ48ST48m98A">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwvQjRpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwvQjhpEEeCJ48ST48m98A"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwvQjxpEEeCJ48ST48m98A" points="[-30, 0, -91, 55]$[-30, -20, -91, 35]$[77, -20, 16, 35]$[77, -55, 16, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVOhpEEeCJ48ST48m98A" id="(0.49612403100775193,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVOxpEEeCJ48ST48m98A" id="(0.24509803921568626,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwvQkBpEEeCJ48ST48m98A" type="3002" source="_IvsuqBpEEeCJ48ST48m98A" target="_IqCLgBpEEeCJ48ST48m98A">
+ <children xmi:type="notation:Node" xmi:id="_IwvQlBpEEeCJ48ST48m98A" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwvQlRpEEeCJ48ST48m98A" x="-9" y="24"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IwvQlhpEEeCJ48ST48m98A" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwvQlxpEEeCJ48ST48m98A" x="5" y="17"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwvQkRpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwvQkhpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet.ecore#//QuerySet/queries"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwvQkxpEEeCJ48ST48m98A" points="[-5, 47, 19, -192]$[-5, 160, 19, -79]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVNhpEEeCJ48ST48m98A" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVNxpEEeCJ48ST48m98A" id="(0.3735632183908046,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwvQmBpEEeCJ48ST48m98A" type="3003" source="_IvsuthpEEeCJ48ST48m98A" target="_IqCLgBpEEeCJ48ST48m98A">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwvQmRpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwvQmhpEEeCJ48ST48m98A"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwvQmxpEEeCJ48ST48m98A" points="[0, 0, 161, 122]$[0, -55, 161, 67]$[-133, -55, 28, 67]$[-133, -122, 28, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVPhpEEeCJ48ST48m98A" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVPxpEEeCJ48ST48m98A" id="(0.5,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwvQnBpEEeCJ48ST48m98A" type="3003" source="_IvsuxBpEEeCJ48ST48m98A" target="_IqCLgBpEEeCJ48ST48m98A">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwvQnRpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwvQnhpEEeCJ48ST48m98A"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwvQnxpEEeCJ48ST48m98A" points="[0, 0, -25, 127]$[0, -60, -25, 67]$[25, -60, 0, 67]$[25, -127, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVVBpEEeCJ48ST48m98A" id="(0.49645390070921985,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVVRpEEeCJ48ST48m98A" id="(0.6666666666666666,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_IwvQoBpEEeCJ48ST48m98A" type="3002" source="_Ivsu3BpEEeCJ48ST48m98A" target="_Ivsu0BpEEeCJ48ST48m98A">
+ <children xmi:type="notation:Node" xmi:id="_IwvQpBpEEeCJ48ST48m98A" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwvQpRpEEeCJ48ST48m98A" x="-10" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_IwvQphpEEeCJ48ST48m98A" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_IwvQpxpEEeCJ48ST48m98A" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_IwvQoRpEEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_IwvQohpEEeCJ48ST48m98A" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet.ecore#//ParameterValue/parameter"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_IwvQoxpEEeCJ48ST48m98A" points="[0, 0, 335, 160]$[0, -185, 335, -25]$[-301, -185, 34, -25]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVPBpEEeCJ48ST48m98A" id="(0.5,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JLtVPRpEEeCJ48ST48m98A" id="(0.6666666666666666,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_kPmfwBpMEeCJ48ST48m98A" type="3002" source="_Ip4apBpEEeCJ48ST48m98A" target="_kPKa0BpMEeCJ48ST48m98A">
+ <children xmi:type="notation:Node" xmi:id="_kPmfxBpMEeCJ48ST48m98A" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kPmfxRpMEeCJ48ST48m98A" x="-10" y="-10"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_kPmfxhpMEeCJ48ST48m98A" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kPmfxxpMEeCJ48ST48m98A" x="10" y="10"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_kPmfwRpMEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kPmfwhpMEeCJ48ST48m98A" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet.ecore#//Facet/extendedMetaclass"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kPmfwxpMEeCJ48ST48m98A" points="[-26, 20, -551, -363]$[-26, 379, -551, -4]$[475, 379, -50, -4]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_kPmfyBpMEeCJ48ST48m98A" type="3002" source="_IqCLgBpEEeCJ48ST48m98A" target="_kPKa0BpMEeCJ48ST48m98A">
+ <children xmi:type="notation:Node" xmi:id="_kPmfzBpMEeCJ48ST48m98A" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kPmfzRpMEeCJ48ST48m98A" x="-5" y="-18"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_kPmfzhpMEeCJ48ST48m98A" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_kPmfzxpMEeCJ48ST48m98A" x="15" y="-18"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_kPmfyRpMEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_kPmfyhpMEeCJ48ST48m98A" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet.ecore#//Query/scope"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kPmfyxpMEeCJ48ST48m98A" points="[-73, 40, 28, -244]$[-73, 256, 28, -28]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_o-YGlRpNEeCJ48ST48m98A" type="3002" source="_Ivi9wBpEEeCJ48ST48m98A" target="_o-OVgBpNEeCJ48ST48m98A">
+ <children xmi:type="notation:Node" xmi:id="_o-YGmRpNEeCJ48ST48m98A" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_o-YGmhpNEeCJ48ST48m98A" x="-1" y="30"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_o-YGmxpNEeCJ48ST48m98A" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_o-YGnBpNEeCJ48ST48m98A" x="19" y="18"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_o-YGlhpNEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_o-YGlxpNEeCJ48ST48m98A" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet.ecore#//FacetElement/override"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_o-YGmBpNEeCJ48ST48m98A" points="[-31, -20, -28, 177]$[-31, -169, -28, 28]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_o-YGnRpNEeCJ48ST48m98A" type="3003" source="_Ivi9wBpEEeCJ48ST48m98A" target="_o-OVgBpNEeCJ48ST48m98A">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_o-YGnhpNEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_o-YGnxpNEeCJ48ST48m98A"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_o-YGoBpNEeCJ48ST48m98A" points="[24, -20, 31, 267]$[24, -259, 31, 28]"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_-PIHUBpNEeCJ48ST48m98A" type="3003" source="_IqCLgBpEEeCJ48ST48m98A" target="_o-OVgBpNEeCJ48ST48m98A">
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_-PIHURpNEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_-PIHUhpNEeCJ48ST48m98A"/>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-PIHUxpNEeCJ48ST48m98A" points="[-13, -9, 265, 333]$[-13, -275, 265, 67]$[-232, -275, 46, 67]$[-232, -328, 46, 14]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-PIHVBpNEeCJ48ST48m98A" id="(0.12643678160919541,0.14814814814814814)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-PIHVRpNEeCJ48ST48m98A" id="(0.4025157232704403,0.7586206896551724)"/>
+ </edges>
+ <edges xmi:type="notation:Edge" xmi:id="_j9rXXBpOEeCJ48ST48m98A" type="3002" source="_IvsuxBpEEeCJ48ST48m98A" target="_o-OVgBpNEeCJ48ST48m98A">
+ <children xmi:type="notation:Node" xmi:id="_j9rXYBpOEeCJ48ST48m98A" type="4011">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_j9rXYRpOEeCJ48ST48m98A" x="162" y="-34"/>
+ </children>
+ <children xmi:type="notation:Node" xmi:id="_j9rXYhpOEeCJ48ST48m98A" type="4012">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_j9rXYxpOEeCJ48ST48m98A" x="154" y="-15"/>
+ </children>
+ <styles xmi:type="notation:ConnectorStyle" xmi:id="_j9rXXRpOEeCJ48ST48m98A" routing="Rectilinear" lineColor="4210752"/>
+ <styles xmi:type="notation:FontStyle" xmi:id="_j9rXXhpOEeCJ48ST48m98A" fontColor="4210752" fontHeight="10"/>
+ <element xmi:type="ecore:EReference" href="efacet.ecore#//TypedElementRef/typedElement"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_j9rXXxpOEeCJ48ST48m98A" points="[25, 20, 321, 581]$[25, 60, 321, 621]$[701, 60, 997, 621]$[701, -556, 997, 5]$[-262, -556, 34, 5]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Uh37MBpPEeCJ48ST48m98A" id="(0.7861635220125787,0.43103448275862066)"/>
+ </edges>
+</notation:Diagram>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/model/efacet.genmodel b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/model/efacet.genmodel
new file mode 100644
index 00000000000..0fb0ed2e556
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/model/efacet.genmodel
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText=" Copyright (c) 2011 Mia-Software.&#xD;&#xA; &#xD;&#xA; All rights reserved. This program and the accompanying materials&#xD;&#xA; are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA; which accompanies this distribution, and is available at&#xD;&#xA; http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA; &#xD;&#xA; Contributors:&#xD;&#xA;&#x9;Gregoire Dupe (Mia-Software) - Design&#xD;&#xA;&#x9;Nicolas Guyomar (Mia-Software) - Implementation&#xD;&#xA; "
+ modelDirectory="/org.eclipse.papyrus.emf.facet.efacet/src" modelPluginID="org.eclipse.papyrus.emf.facet.efacet"
+ modelName="Efacet" nonNLSMarkers="true" importerID="org.eclipse.emf.importer.ecore"
+ complianceLevel="5.0" copyrightFields="false" runtimeVersion="2.6" usedGenPackages="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore">
+ <foreignModel>efacet.ecore</foreignModel>
+ <genPackages prefix="EFacet" basePackage="org.eclipse.papyrus.emf.facet" disposableProviderFactory="true"
+ extensibleProviderFactory="true" ecorePackage="efacet.ecore#/">
+ <genDataTypes ecoreDataType="efacet.ecore#//JavaException"/>
+ <genClasses ecoreClass="efacet.ecore#//FacetAttribute"/>
+ <genClasses ecoreClass="efacet.ecore#//FacetReference"/>
+ <genClasses ecoreClass="efacet.ecore#//FacetOperation"/>
+ <genClasses ecoreClass="efacet.ecore#//FacetSet">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet.ecore#//FacetSet/facets"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet.ecore#//FacetSet/categories"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet.ecore#//FacetSet/extendedEPackage"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet.ecore#//Facet">
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference efacet.ecore#//Facet/facetSet"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet.ecore#//Facet/conformanceQuery"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet.ecore#//Facet/extendedMetaclass"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet.ecore#//Facet/facetElements"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet.ecore#//Query">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet.ecore#//Query/scope"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet.ecore#//Query/hasSideEffect"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet.ecore#//Query/canBeCached"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet.ecore#//Query/parameters"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet.ecore#//QueryResult">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet.ecore#//QueryResult/query"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet.ecore#//QueryResult/scope"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet.ecore#//QueryResult/parameterValues"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet.ecore#//QueryResult/result"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet.ecore#//QueryResult/exception"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet.ecore#//QueryResult/source"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet.ecore#//Category"/>
+ <genClasses ecoreClass="efacet.ecore#//FacetElement">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet.ecore#//FacetElement/categories"/>
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference efacet.ecore#//FacetElement/facet"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet.ecore#//FacetElement/override"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet.ecore#//QueryFacetElement">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet.ecore#//QueryFacetElement/query"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet.ecore#//OppositeReference">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet.ecore#//OppositeReference/fOpposite"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet.ecore#//QuerySet">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference efacet.ecore#//QuerySet/queries"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet.ecore#//QuerySet/name"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet.ecore#//Literal">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet.ecore#//Literal/value"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet.ecore#//TypedElementRef">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet.ecore#//TypedElementRef/typedElement"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet.ecore#//Parameter"/>
+ <genClasses ecoreClass="efacet.ecore#//ParameterValue">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet.ecore#//ParameterValue/parameter"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet.ecore#//ParameterValue/value"/>
+ </genClasses>
+ <genClasses ecoreClass="efacet.ecore#//QueryContext">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference efacet.ecore#//QueryContext/selectedModelElements"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute efacet.ecore#//QueryContext/selectedModels"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/plugin.xml
new file mode 100644
index 00000000000..ead140eae42
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/plugin.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Gregoire Dupe (Mia-Software) - design
+ Nicolas Guyomar (Mia-Software) - implementation
+
+-->
+
+<plugin>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri="http://www.eclipse.org/papyrus/emf/facet/efacet/0.1.incubation"
+ class="org.eclipse.papyrus.emf.facet.efacet.EFacetPackage"
+ genModel="model/efacet.genmodel"/>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Category.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Category.java
new file mode 100644
index 00000000000..b62b44b6625
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Category.java
@@ -0,0 +1,31 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '<em><b>Category</b></em>'. <!--
+ * end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getCategory()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface Category extends EObject {
+} // Category
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/EFacetFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/EFacetFactory.java
new file mode 100644
index 00000000000..d60da22179b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/EFacetFactory.java
@@ -0,0 +1,205 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface EFacetFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EFacetFactory eINSTANCE = org.eclipse.papyrus.emf.facet.efacet.impl.EFacetFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Facet Attribute</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Facet Attribute</em>'.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ FacetAttribute createFacetAttribute();
+
+ /**
+ * Returns a new object of class '<em>Facet Reference</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Facet Reference</em>'.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ FacetReference createFacetReference();
+
+ /**
+ * Returns a new object of class '<em>Facet Operation</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Facet Operation</em>'.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ FacetOperation createFacetOperation();
+
+ /**
+ * Returns a new object of class '<em>Facet Set</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Facet Set</em>'.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ FacetSet createFacetSet();
+
+ /**
+ * Returns a new object of class '<em>Facet</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Facet</em>'.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ Facet createFacet();
+
+ /**
+ * Returns a new object of class '<em>Query Result</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Query Result</em>'.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ QueryResult createQueryResult();
+
+ /**
+ * Returns a new object of class '<em>Category</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Category</em>'.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ Category createCategory();
+
+ /**
+ * Returns a new object of class '<em>Opposite Reference</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Opposite Reference</em>'.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ OppositeReference createOppositeReference();
+
+ /**
+ * Returns a new object of class '<em>Query Set</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Query Set</em>'.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ QuerySet createQuerySet();
+
+ /**
+ * Returns a new object of class '<em>Literal</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Literal</em>'.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ Literal createLiteral();
+
+ /**
+ * Returns a new object of class '<em>Typed Element Ref</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Typed Element Ref</em>'.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ TypedElementRef createTypedElementRef();
+
+ /**
+ * Returns a new object of class '<em>Parameter</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Parameter</em>'.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ Parameter createParameter();
+
+ /**
+ * Returns a new object of class '<em>Parameter Value</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Parameter Value</em>'.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ ParameterValue createParameterValue();
+
+ /**
+ * Returns a new object of class '<em>Query Context</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Query Context</em>'.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ QueryContext createQueryContext();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EFacetPackage getEFacetPackage();
+
+} //EFacetFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/EFacetPackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/EFacetPackage.java
new file mode 100644
index 00000000000..d7830e6bca8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/EFacetPackage.java
@@ -0,0 +1,3848 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetFactory
+ * @model kind="package"
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface EFacetPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ String eNAME = "efacet"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/efacet/0.1.incubation"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ String eNS_PREFIX = "efacet"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EFacetPackage eINSTANCE = org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetAttributeImpl <em>Facet Attribute</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.FacetAttributeImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getFacetAttribute()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE = 0;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__EANNOTATIONS = EcorePackage.EATTRIBUTE__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__NAME = EcorePackage.EATTRIBUTE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ordered</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__ORDERED = EcorePackage.EATTRIBUTE__ORDERED;
+
+ /**
+ * The feature id for the '<em><b>Unique</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__UNIQUE = EcorePackage.EATTRIBUTE__UNIQUE;
+
+ /**
+ * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__LOWER_BOUND = EcorePackage.EATTRIBUTE__LOWER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__UPPER_BOUND = EcorePackage.EATTRIBUTE__UPPER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Many</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__MANY = EcorePackage.EATTRIBUTE__MANY;
+
+ /**
+ * The feature id for the '<em><b>Required</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__REQUIRED = EcorePackage.EATTRIBUTE__REQUIRED;
+
+ /**
+ * The feature id for the '<em><b>EType</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__ETYPE = EcorePackage.EATTRIBUTE__ETYPE;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Type</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__EGENERIC_TYPE = EcorePackage.EATTRIBUTE__EGENERIC_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Changeable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__CHANGEABLE = EcorePackage.EATTRIBUTE__CHANGEABLE;
+
+ /**
+ * The feature id for the '<em><b>Volatile</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__VOLATILE = EcorePackage.EATTRIBUTE__VOLATILE;
+
+ /**
+ * The feature id for the '<em><b>Transient</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__TRANSIENT = EcorePackage.EATTRIBUTE__TRANSIENT;
+
+ /**
+ * The feature id for the '<em><b>Default Value Literal</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__DEFAULT_VALUE_LITERAL = EcorePackage.EATTRIBUTE__DEFAULT_VALUE_LITERAL;
+
+ /**
+ * The feature id for the '<em><b>Default Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__DEFAULT_VALUE = EcorePackage.EATTRIBUTE__DEFAULT_VALUE;
+
+ /**
+ * The feature id for the '<em><b>Unsettable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__UNSETTABLE = EcorePackage.EATTRIBUTE__UNSETTABLE;
+
+ /**
+ * The feature id for the '<em><b>Derived</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__DERIVED = EcorePackage.EATTRIBUTE__DERIVED;
+
+ /**
+ * The feature id for the '<em><b>EContaining Class</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__ECONTAINING_CLASS = EcorePackage.EATTRIBUTE__ECONTAINING_CLASS;
+
+ /**
+ * The feature id for the '<em><b>ID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__ID = EcorePackage.EATTRIBUTE__ID;
+
+ /**
+ * The feature id for the '<em><b>EAttribute Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__EATTRIBUTE_TYPE = EcorePackage.EATTRIBUTE__EATTRIBUTE_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Categories</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__CATEGORIES = EcorePackage.EATTRIBUTE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Facet</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__FACET = EcorePackage.EATTRIBUTE_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Override</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__OVERRIDE = EcorePackage.EATTRIBUTE_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Query</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE__QUERY = EcorePackage.EATTRIBUTE_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>Facet Attribute</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ATTRIBUTE_FEATURE_COUNT = EcorePackage.EATTRIBUTE_FEATURE_COUNT + 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetReferenceImpl <em>Facet Reference</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.FacetReferenceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getFacetReference()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int FACET_REFERENCE = 1;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__EANNOTATIONS = EcorePackage.EREFERENCE__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__NAME = EcorePackage.EREFERENCE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ordered</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__ORDERED = EcorePackage.EREFERENCE__ORDERED;
+
+ /**
+ * The feature id for the '<em><b>Unique</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__UNIQUE = EcorePackage.EREFERENCE__UNIQUE;
+
+ /**
+ * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__LOWER_BOUND = EcorePackage.EREFERENCE__LOWER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__UPPER_BOUND = EcorePackage.EREFERENCE__UPPER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Many</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__MANY = EcorePackage.EREFERENCE__MANY;
+
+ /**
+ * The feature id for the '<em><b>Required</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__REQUIRED = EcorePackage.EREFERENCE__REQUIRED;
+
+ /**
+ * The feature id for the '<em><b>EType</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__ETYPE = EcorePackage.EREFERENCE__ETYPE;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Type</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__EGENERIC_TYPE = EcorePackage.EREFERENCE__EGENERIC_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Changeable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__CHANGEABLE = EcorePackage.EREFERENCE__CHANGEABLE;
+
+ /**
+ * The feature id for the '<em><b>Volatile</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__VOLATILE = EcorePackage.EREFERENCE__VOLATILE;
+
+ /**
+ * The feature id for the '<em><b>Transient</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__TRANSIENT = EcorePackage.EREFERENCE__TRANSIENT;
+
+ /**
+ * The feature id for the '<em><b>Default Value Literal</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__DEFAULT_VALUE_LITERAL = EcorePackage.EREFERENCE__DEFAULT_VALUE_LITERAL;
+
+ /**
+ * The feature id for the '<em><b>Default Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__DEFAULT_VALUE = EcorePackage.EREFERENCE__DEFAULT_VALUE;
+
+ /**
+ * The feature id for the '<em><b>Unsettable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__UNSETTABLE = EcorePackage.EREFERENCE__UNSETTABLE;
+
+ /**
+ * The feature id for the '<em><b>Derived</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__DERIVED = EcorePackage.EREFERENCE__DERIVED;
+
+ /**
+ * The feature id for the '<em><b>EContaining Class</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__ECONTAINING_CLASS = EcorePackage.EREFERENCE__ECONTAINING_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Containment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__CONTAINMENT = EcorePackage.EREFERENCE__CONTAINMENT;
+
+ /**
+ * The feature id for the '<em><b>Container</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__CONTAINER = EcorePackage.EREFERENCE__CONTAINER;
+
+ /**
+ * The feature id for the '<em><b>Resolve Proxies</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__RESOLVE_PROXIES = EcorePackage.EREFERENCE__RESOLVE_PROXIES;
+
+ /**
+ * The feature id for the '<em><b>EOpposite</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__EOPPOSITE = EcorePackage.EREFERENCE__EOPPOSITE;
+
+ /**
+ * The feature id for the '<em><b>EReference Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__EREFERENCE_TYPE = EcorePackage.EREFERENCE__EREFERENCE_TYPE;
+
+ /**
+ * The feature id for the '<em><b>EKeys</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__EKEYS = EcorePackage.EREFERENCE__EKEYS;
+
+ /**
+ * The feature id for the '<em><b>Categories</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__CATEGORIES = EcorePackage.EREFERENCE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Facet</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__FACET = EcorePackage.EREFERENCE_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Override</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__OVERRIDE = EcorePackage.EREFERENCE_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Query</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE__QUERY = EcorePackage.EREFERENCE_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>Facet Reference</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_REFERENCE_FEATURE_COUNT = EcorePackage.EREFERENCE_FEATURE_COUNT + 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetOperationImpl <em>Facet Operation</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.FacetOperationImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getFacetOperation()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int FACET_OPERATION = 2;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__EANNOTATIONS = EcorePackage.EOPERATION__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__NAME = EcorePackage.EOPERATION__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ordered</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__ORDERED = EcorePackage.EOPERATION__ORDERED;
+
+ /**
+ * The feature id for the '<em><b>Unique</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__UNIQUE = EcorePackage.EOPERATION__UNIQUE;
+
+ /**
+ * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__LOWER_BOUND = EcorePackage.EOPERATION__LOWER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__UPPER_BOUND = EcorePackage.EOPERATION__UPPER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Many</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__MANY = EcorePackage.EOPERATION__MANY;
+
+ /**
+ * The feature id for the '<em><b>Required</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__REQUIRED = EcorePackage.EOPERATION__REQUIRED;
+
+ /**
+ * The feature id for the '<em><b>EType</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__ETYPE = EcorePackage.EOPERATION__ETYPE;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Type</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__EGENERIC_TYPE = EcorePackage.EOPERATION__EGENERIC_TYPE;
+
+ /**
+ * The feature id for the '<em><b>EContaining Class</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__ECONTAINING_CLASS = EcorePackage.EOPERATION__ECONTAINING_CLASS;
+
+ /**
+ * The feature id for the '<em><b>EType Parameters</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__ETYPE_PARAMETERS = EcorePackage.EOPERATION__ETYPE_PARAMETERS;
+
+ /**
+ * The feature id for the '<em><b>EParameters</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__EPARAMETERS = EcorePackage.EOPERATION__EPARAMETERS;
+
+ /**
+ * The feature id for the '<em><b>EExceptions</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__EEXCEPTIONS = EcorePackage.EOPERATION__EEXCEPTIONS;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Exceptions</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__EGENERIC_EXCEPTIONS = EcorePackage.EOPERATION__EGENERIC_EXCEPTIONS;
+
+ /**
+ * The feature id for the '<em><b>Categories</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__CATEGORIES = EcorePackage.EOPERATION_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Facet</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__FACET = EcorePackage.EOPERATION_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Override</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__OVERRIDE = EcorePackage.EOPERATION_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Query</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION__QUERY = EcorePackage.EOPERATION_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>Facet Operation</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_OPERATION_FEATURE_COUNT = EcorePackage.EOPERATION_FEATURE_COUNT + 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetSetImpl <em>Facet Set</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.FacetSetImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getFacetSet()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int FACET_SET = 3;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_SET__EANNOTATIONS = EcorePackage.EPACKAGE__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_SET__NAME = EcorePackage.EPACKAGE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ns URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_SET__NS_URI = EcorePackage.EPACKAGE__NS_URI;
+
+ /**
+ * The feature id for the '<em><b>Ns Prefix</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_SET__NS_PREFIX = EcorePackage.EPACKAGE__NS_PREFIX;
+
+ /**
+ * The feature id for the '<em><b>EFactory Instance</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_SET__EFACTORY_INSTANCE = EcorePackage.EPACKAGE__EFACTORY_INSTANCE;
+
+ /**
+ * The feature id for the '<em><b>EClassifiers</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_SET__ECLASSIFIERS = EcorePackage.EPACKAGE__ECLASSIFIERS;
+
+ /**
+ * The feature id for the '<em><b>ESubpackages</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_SET__ESUBPACKAGES = EcorePackage.EPACKAGE__ESUBPACKAGES;
+
+ /**
+ * The feature id for the '<em><b>ESuper Package</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_SET__ESUPER_PACKAGE = EcorePackage.EPACKAGE__ESUPER_PACKAGE;
+
+ /**
+ * The feature id for the '<em><b>Facets</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_SET__FACETS = EcorePackage.EPACKAGE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Categories</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_SET__CATEGORIES = EcorePackage.EPACKAGE_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Extended EPackage</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_SET__EXTENDED_EPACKAGE = EcorePackage.EPACKAGE_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the '<em>Facet Set</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_SET_FEATURE_COUNT = EcorePackage.EPACKAGE_FEATURE_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetImpl <em>Facet</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.FacetImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getFacet()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int FACET = 4;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET__EANNOTATIONS = EcorePackage.ECLASSIFIER__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET__NAME = EcorePackage.ECLASSIFIER__NAME;
+
+ /**
+ * The feature id for the '<em><b>Instance Class Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET__INSTANCE_CLASS_NAME = EcorePackage.ECLASSIFIER__INSTANCE_CLASS_NAME;
+
+ /**
+ * The feature id for the '<em><b>Instance Class</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET__INSTANCE_CLASS = EcorePackage.ECLASSIFIER__INSTANCE_CLASS;
+
+ /**
+ * The feature id for the '<em><b>Default Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET__DEFAULT_VALUE = EcorePackage.ECLASSIFIER__DEFAULT_VALUE;
+
+ /**
+ * The feature id for the '<em><b>Instance Type Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET__INSTANCE_TYPE_NAME = EcorePackage.ECLASSIFIER__INSTANCE_TYPE_NAME;
+
+ /**
+ * The feature id for the '<em><b>EPackage</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET__EPACKAGE = EcorePackage.ECLASSIFIER__EPACKAGE;
+
+ /**
+ * The feature id for the '<em><b>EType Parameters</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET__ETYPE_PARAMETERS = EcorePackage.ECLASSIFIER__ETYPE_PARAMETERS;
+
+ /**
+ * The feature id for the '<em><b>Facet Set</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET__FACET_SET = EcorePackage.ECLASSIFIER_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Conformance Query</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET__CONFORMANCE_QUERY = EcorePackage.ECLASSIFIER_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Extended Metaclass</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET__EXTENDED_METACLASS = EcorePackage.ECLASSIFIER_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Facet Elements</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET__FACET_ELEMENTS = EcorePackage.ECLASSIFIER_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>Facet</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_FEATURE_COUNT = EcorePackage.ECLASSIFIER_FEATURE_COUNT + 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryImpl <em>Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.QueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getQuery()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int QUERY = 5;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY__EANNOTATIONS = EcorePackage.ETYPED_ELEMENT__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY__NAME = EcorePackage.ETYPED_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ordered</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY__ORDERED = EcorePackage.ETYPED_ELEMENT__ORDERED;
+
+ /**
+ * The feature id for the '<em><b>Unique</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY__UNIQUE = EcorePackage.ETYPED_ELEMENT__UNIQUE;
+
+ /**
+ * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY__LOWER_BOUND = EcorePackage.ETYPED_ELEMENT__LOWER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY__UPPER_BOUND = EcorePackage.ETYPED_ELEMENT__UPPER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Many</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY__MANY = EcorePackage.ETYPED_ELEMENT__MANY;
+
+ /**
+ * The feature id for the '<em><b>Required</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY__REQUIRED = EcorePackage.ETYPED_ELEMENT__REQUIRED;
+
+ /**
+ * The feature id for the '<em><b>EType</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY__ETYPE = EcorePackage.ETYPED_ELEMENT__ETYPE;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Type</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY__EGENERIC_TYPE = EcorePackage.ETYPED_ELEMENT__EGENERIC_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Scope</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY__SCOPE = EcorePackage.ETYPED_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Has Side Effect</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY__HAS_SIDE_EFFECT = EcorePackage.ETYPED_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY__CAN_BE_CACHED = EcorePackage.ETYPED_ELEMENT_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY__PARAMETERS = EcorePackage.ETYPED_ELEMENT_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>Query</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_FEATURE_COUNT = EcorePackage.ETYPED_ELEMENT_FEATURE_COUNT + 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryResultImpl <em>Query Result</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.QueryResultImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getQueryResult()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int QUERY_RESULT = 6;
+
+ /**
+ * The feature id for the '<em><b>Query</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_RESULT__QUERY = 0;
+
+ /**
+ * The feature id for the '<em><b>Scope</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_RESULT__SCOPE = 1;
+
+ /**
+ * The feature id for the '<em><b>Parameter Values</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_RESULT__PARAMETER_VALUES = 2;
+
+ /**
+ * The feature id for the '<em><b>Result</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_RESULT__RESULT = 3;
+
+ /**
+ * The feature id for the '<em><b>Exception</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_RESULT__EXCEPTION = 4;
+
+ /**
+ * The feature id for the '<em><b>Source</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_RESULT__SOURCE = 5;
+
+ /**
+ * The number of structural features of the '<em>Query Result</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_RESULT_FEATURE_COUNT = 6;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.CategoryImpl <em>Category</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.CategoryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getCategory()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int CATEGORY = 7;
+
+ /**
+ * The number of structural features of the '<em>Category</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int CATEGORY_FEATURE_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetElementImpl <em>Facet Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.FacetElementImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getFacetElement()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int FACET_ELEMENT = 8;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ELEMENT__EANNOTATIONS = EcorePackage.ETYPED_ELEMENT__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ELEMENT__NAME = EcorePackage.ETYPED_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ordered</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ELEMENT__ORDERED = EcorePackage.ETYPED_ELEMENT__ORDERED;
+
+ /**
+ * The feature id for the '<em><b>Unique</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ELEMENT__UNIQUE = EcorePackage.ETYPED_ELEMENT__UNIQUE;
+
+ /**
+ * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ELEMENT__LOWER_BOUND = EcorePackage.ETYPED_ELEMENT__LOWER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ELEMENT__UPPER_BOUND = EcorePackage.ETYPED_ELEMENT__UPPER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Many</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ELEMENT__MANY = EcorePackage.ETYPED_ELEMENT__MANY;
+
+ /**
+ * The feature id for the '<em><b>Required</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ELEMENT__REQUIRED = EcorePackage.ETYPED_ELEMENT__REQUIRED;
+
+ /**
+ * The feature id for the '<em><b>EType</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ELEMENT__ETYPE = EcorePackage.ETYPED_ELEMENT__ETYPE;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Type</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ELEMENT__EGENERIC_TYPE = EcorePackage.ETYPED_ELEMENT__EGENERIC_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Categories</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ELEMENT__CATEGORIES = EcorePackage.ETYPED_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Facet</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ELEMENT__FACET = EcorePackage.ETYPED_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Override</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ELEMENT__OVERRIDE = EcorePackage.ETYPED_ELEMENT_FEATURE_COUNT + 2;
+
+ /**
+ * The number of structural features of the '<em>Facet Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int FACET_ELEMENT_FEATURE_COUNT = EcorePackage.ETYPED_ELEMENT_FEATURE_COUNT + 3;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryFacetElementImpl <em>Query Facet Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.QueryFacetElementImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getQueryFacetElement()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int QUERY_FACET_ELEMENT = 9;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_FACET_ELEMENT__EANNOTATIONS = EFacetPackage.FACET_ELEMENT__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_FACET_ELEMENT__NAME = EFacetPackage.FACET_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ordered</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_FACET_ELEMENT__ORDERED = EFacetPackage.FACET_ELEMENT__ORDERED;
+
+ /**
+ * The feature id for the '<em><b>Unique</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_FACET_ELEMENT__UNIQUE = EFacetPackage.FACET_ELEMENT__UNIQUE;
+
+ /**
+ * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_FACET_ELEMENT__LOWER_BOUND = EFacetPackage.FACET_ELEMENT__LOWER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_FACET_ELEMENT__UPPER_BOUND = EFacetPackage.FACET_ELEMENT__UPPER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Many</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_FACET_ELEMENT__MANY = EFacetPackage.FACET_ELEMENT__MANY;
+
+ /**
+ * The feature id for the '<em><b>Required</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_FACET_ELEMENT__REQUIRED = EFacetPackage.FACET_ELEMENT__REQUIRED;
+
+ /**
+ * The feature id for the '<em><b>EType</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_FACET_ELEMENT__ETYPE = EFacetPackage.FACET_ELEMENT__ETYPE;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Type</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_FACET_ELEMENT__EGENERIC_TYPE = EFacetPackage.FACET_ELEMENT__EGENERIC_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Categories</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_FACET_ELEMENT__CATEGORIES = EFacetPackage.FACET_ELEMENT__CATEGORIES;
+
+ /**
+ * The feature id for the '<em><b>Facet</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_FACET_ELEMENT__FACET = EFacetPackage.FACET_ELEMENT__FACET;
+
+ /**
+ * The feature id for the '<em><b>Override</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_FACET_ELEMENT__OVERRIDE = EFacetPackage.FACET_ELEMENT__OVERRIDE;
+
+ /**
+ * The feature id for the '<em><b>Query</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_FACET_ELEMENT__QUERY = EFacetPackage.FACET_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Query Facet Element</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_FACET_ELEMENT_FEATURE_COUNT = EFacetPackage.FACET_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.OppositeReferenceImpl <em>Opposite Reference</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.OppositeReferenceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getOppositeReference()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int OPPOSITE_REFERENCE = 10;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int OPPOSITE_REFERENCE__EANNOTATIONS = EFacetPackage.FACET_ELEMENT__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int OPPOSITE_REFERENCE__NAME = EFacetPackage.FACET_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ordered</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int OPPOSITE_REFERENCE__ORDERED = EFacetPackage.FACET_ELEMENT__ORDERED;
+
+ /**
+ * The feature id for the '<em><b>Unique</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int OPPOSITE_REFERENCE__UNIQUE = EFacetPackage.FACET_ELEMENT__UNIQUE;
+
+ /**
+ * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int OPPOSITE_REFERENCE__LOWER_BOUND = EFacetPackage.FACET_ELEMENT__LOWER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int OPPOSITE_REFERENCE__UPPER_BOUND = EFacetPackage.FACET_ELEMENT__UPPER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Many</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int OPPOSITE_REFERENCE__MANY = EFacetPackage.FACET_ELEMENT__MANY;
+
+ /**
+ * The feature id for the '<em><b>Required</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int OPPOSITE_REFERENCE__REQUIRED = EFacetPackage.FACET_ELEMENT__REQUIRED;
+
+ /**
+ * The feature id for the '<em><b>EType</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int OPPOSITE_REFERENCE__ETYPE = EFacetPackage.FACET_ELEMENT__ETYPE;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Type</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int OPPOSITE_REFERENCE__EGENERIC_TYPE = EFacetPackage.FACET_ELEMENT__EGENERIC_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Categories</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int OPPOSITE_REFERENCE__CATEGORIES = EFacetPackage.FACET_ELEMENT__CATEGORIES;
+
+ /**
+ * The feature id for the '<em><b>Facet</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int OPPOSITE_REFERENCE__FACET = EFacetPackage.FACET_ELEMENT__FACET;
+
+ /**
+ * The feature id for the '<em><b>Override</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int OPPOSITE_REFERENCE__OVERRIDE = EFacetPackage.FACET_ELEMENT__OVERRIDE;
+
+ /**
+ * The feature id for the '<em><b>FOpposite</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int OPPOSITE_REFERENCE__FOPPOSITE = EFacetPackage.FACET_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Opposite Reference</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int OPPOSITE_REFERENCE_FEATURE_COUNT = EFacetPackage.FACET_ELEMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.QuerySetImpl <em>Query Set</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.QuerySetImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getQuerySet()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int QUERY_SET = 11;
+
+ /**
+ * The feature id for the '<em><b>Queries</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_SET__QUERIES = 0;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_SET__NAME = 1;
+
+ /**
+ * The number of structural features of the '<em>Query Set</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_SET_FEATURE_COUNT = 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.LiteralImpl <em>Literal</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.LiteralImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getLiteral()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int LITERAL = 12;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int LITERAL__EANNOTATIONS = EFacetPackage.QUERY__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int LITERAL__NAME = EFacetPackage.QUERY__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ordered</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int LITERAL__ORDERED = EFacetPackage.QUERY__ORDERED;
+
+ /**
+ * The feature id for the '<em><b>Unique</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int LITERAL__UNIQUE = EFacetPackage.QUERY__UNIQUE;
+
+ /**
+ * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int LITERAL__LOWER_BOUND = EFacetPackage.QUERY__LOWER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int LITERAL__UPPER_BOUND = EFacetPackage.QUERY__UPPER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Many</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int LITERAL__MANY = EFacetPackage.QUERY__MANY;
+
+ /**
+ * The feature id for the '<em><b>Required</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int LITERAL__REQUIRED = EFacetPackage.QUERY__REQUIRED;
+
+ /**
+ * The feature id for the '<em><b>EType</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int LITERAL__ETYPE = EFacetPackage.QUERY__ETYPE;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Type</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int LITERAL__EGENERIC_TYPE = EFacetPackage.QUERY__EGENERIC_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Scope</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int LITERAL__SCOPE = EFacetPackage.QUERY__SCOPE;
+
+ /**
+ * The feature id for the '<em><b>Has Side Effect</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int LITERAL__HAS_SIDE_EFFECT = EFacetPackage.QUERY__HAS_SIDE_EFFECT;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int LITERAL__CAN_BE_CACHED = EFacetPackage.QUERY__CAN_BE_CACHED;
+
+ /**
+ * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int LITERAL__PARAMETERS = EFacetPackage.QUERY__PARAMETERS;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int LITERAL__VALUE = EFacetPackage.QUERY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Literal</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int LITERAL_FEATURE_COUNT = EFacetPackage.QUERY_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.TypedElementRefImpl <em>Typed Element Ref</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.TypedElementRefImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getTypedElementRef()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int TYPED_ELEMENT_REF = 13;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int TYPED_ELEMENT_REF__EANNOTATIONS = EFacetPackage.QUERY__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int TYPED_ELEMENT_REF__NAME = EFacetPackage.QUERY__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ordered</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int TYPED_ELEMENT_REF__ORDERED = EFacetPackage.QUERY__ORDERED;
+
+ /**
+ * The feature id for the '<em><b>Unique</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int TYPED_ELEMENT_REF__UNIQUE = EFacetPackage.QUERY__UNIQUE;
+
+ /**
+ * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int TYPED_ELEMENT_REF__LOWER_BOUND = EFacetPackage.QUERY__LOWER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int TYPED_ELEMENT_REF__UPPER_BOUND = EFacetPackage.QUERY__UPPER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Many</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int TYPED_ELEMENT_REF__MANY = EFacetPackage.QUERY__MANY;
+
+ /**
+ * The feature id for the '<em><b>Required</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int TYPED_ELEMENT_REF__REQUIRED = EFacetPackage.QUERY__REQUIRED;
+
+ /**
+ * The feature id for the '<em><b>EType</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int TYPED_ELEMENT_REF__ETYPE = EFacetPackage.QUERY__ETYPE;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Type</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int TYPED_ELEMENT_REF__EGENERIC_TYPE = EFacetPackage.QUERY__EGENERIC_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Scope</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int TYPED_ELEMENT_REF__SCOPE = EFacetPackage.QUERY__SCOPE;
+
+ /**
+ * The feature id for the '<em><b>Has Side Effect</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int TYPED_ELEMENT_REF__HAS_SIDE_EFFECT = EFacetPackage.QUERY__HAS_SIDE_EFFECT;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int TYPED_ELEMENT_REF__CAN_BE_CACHED = EFacetPackage.QUERY__CAN_BE_CACHED;
+
+ /**
+ * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int TYPED_ELEMENT_REF__PARAMETERS = EFacetPackage.QUERY__PARAMETERS;
+
+ /**
+ * The feature id for the '<em><b>Typed Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int TYPED_ELEMENT_REF__TYPED_ELEMENT = EFacetPackage.QUERY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Typed Element Ref</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int TYPED_ELEMENT_REF_FEATURE_COUNT = EFacetPackage.QUERY_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.ParameterImpl <em>Parameter</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.ParameterImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getParameter()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int PARAMETER = 14;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int PARAMETER__EANNOTATIONS = EcorePackage.ETYPED_ELEMENT__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int PARAMETER__NAME = EcorePackage.ETYPED_ELEMENT__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ordered</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int PARAMETER__ORDERED = EcorePackage.ETYPED_ELEMENT__ORDERED;
+
+ /**
+ * The feature id for the '<em><b>Unique</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int PARAMETER__UNIQUE = EcorePackage.ETYPED_ELEMENT__UNIQUE;
+
+ /**
+ * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int PARAMETER__LOWER_BOUND = EcorePackage.ETYPED_ELEMENT__LOWER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int PARAMETER__UPPER_BOUND = EcorePackage.ETYPED_ELEMENT__UPPER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Many</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int PARAMETER__MANY = EcorePackage.ETYPED_ELEMENT__MANY;
+
+ /**
+ * The feature id for the '<em><b>Required</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int PARAMETER__REQUIRED = EcorePackage.ETYPED_ELEMENT__REQUIRED;
+
+ /**
+ * The feature id for the '<em><b>EType</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int PARAMETER__ETYPE = EcorePackage.ETYPED_ELEMENT__ETYPE;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Type</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int PARAMETER__EGENERIC_TYPE = EcorePackage.ETYPED_ELEMENT__EGENERIC_TYPE;
+
+ /**
+ * The number of structural features of the '<em>Parameter</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int PARAMETER_FEATURE_COUNT = EcorePackage.ETYPED_ELEMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.ParameterValueImpl <em>Parameter Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.ParameterValueImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getParameterValue()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int PARAMETER_VALUE = 15;
+
+ /**
+ * The feature id for the '<em><b>Parameter</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int PARAMETER_VALUE__PARAMETER = 0;
+
+ /**
+ * The feature id for the '<em><b>Value</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int PARAMETER_VALUE__VALUE = 1;
+
+ /**
+ * The number of structural features of the '<em>Parameter Value</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int PARAMETER_VALUE_FEATURE_COUNT = 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryContextImpl <em>Query Context</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.QueryContextImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getQueryContext()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int QUERY_CONTEXT = 16;
+
+ /**
+ * The feature id for the '<em><b>Selected Model Elements</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_CONTEXT__SELECTED_MODEL_ELEMENTS = 0;
+
+ /**
+ * The feature id for the '<em><b>Selected Models</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_CONTEXT__SELECTED_MODELS = 1;
+
+ /**
+ * The number of structural features of the '<em>Query Context</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ int QUERY_CONTEXT_FEATURE_COUNT = 2;
+
+ /**
+ * The meta object id for the '<em>Java Exception</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see java.lang.Exception
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getJavaException()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ int JAVA_EXCEPTION = 17;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.FacetAttribute <em>Facet Attribute</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Facet Attribute</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.FacetAttribute
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getFacetAttribute();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.FacetReference <em>Facet Reference</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Facet Reference</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.FacetReference
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getFacetReference();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.FacetOperation <em>Facet Operation</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Facet Operation</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.FacetOperation
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getFacetOperation();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.FacetSet <em>Facet Set</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Facet Set</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.FacetSet
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getFacetSet();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.efacet.FacetSet#getFacets <em>Facets</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Facets</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.FacetSet#getFacets()
+ * @see #getFacetSet()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getFacetSet_Facets();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.efacet.FacetSet#getCategories <em>Categories</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Categories</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.FacetSet#getCategories()
+ * @see #getFacetSet()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getFacetSet_Categories();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.FacetSet#getExtendedEPackage <em>Extended EPackage</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Extended EPackage</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.FacetSet#getExtendedEPackage()
+ * @see #getFacetSet()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getFacetSet_ExtendedEPackage();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.Facet <em>Facet</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Facet</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.Facet
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getFacet();
+
+ /**
+ * Returns the meta object for the container reference '{@link org.eclipse.papyrus.emf.facet.efacet.Facet#getFacetSet <em>Facet Set</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the container reference '<em>Facet Set</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.Facet#getFacetSet()
+ * @see #getFacet()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getFacet_FacetSet();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.emf.facet.efacet.Facet#getConformanceQuery <em>Conformance Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Conformance Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.Facet#getConformanceQuery()
+ * @see #getFacet()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getFacet_ConformanceQuery();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.Facet#getExtendedMetaclass <em>Extended Metaclass</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Extended Metaclass</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.Facet#getExtendedMetaclass()
+ * @see #getFacet()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getFacet_ExtendedMetaclass();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.efacet.Facet#getFacetElements <em>Facet Elements</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Facet Elements</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.Facet#getFacetElements()
+ * @see #getFacet()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getFacet_FacetElements();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.Query <em>Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.Query
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getQuery();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.Query#getScope <em>Scope</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Scope</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.Query#getScope()
+ * @see #getQuery()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getQuery_Scope();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.efacet.Query#isHasSideEffect <em>Has Side Effect</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Has Side Effect</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.Query#isHasSideEffect()
+ * @see #getQuery()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EAttribute getQuery_HasSideEffect();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.efacet.Query#isCanBeCached <em>Can Be Cached</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Can Be Cached</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.Query#isCanBeCached()
+ * @see #getQuery()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EAttribute getQuery_CanBeCached();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.efacet.Query#getParameters <em>Parameters</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Parameters</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.Query#getParameters()
+ * @see #getQuery()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getQuery_Parameters();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult <em>Query Result</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Query Result</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.QueryResult
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getQueryResult();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult#getQuery <em>Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.QueryResult#getQuery()
+ * @see #getQueryResult()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getQueryResult_Query();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult#getScope <em>Scope</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Scope</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.QueryResult#getScope()
+ * @see #getQueryResult()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getQueryResult_Scope();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult#getParameterValues <em>Parameter Values</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Parameter Values</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.QueryResult#getParameterValues()
+ * @see #getQueryResult()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getQueryResult_ParameterValues();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult#getResult <em>Result</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Result</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.QueryResult#getResult()
+ * @see #getQueryResult()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EAttribute getQueryResult_Result();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult#getException <em>Exception</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Exception</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.QueryResult#getException()
+ * @see #getQueryResult()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EAttribute getQueryResult_Exception();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult#getSource <em>Source</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Source</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.QueryResult#getSource()
+ * @see #getQueryResult()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getQueryResult_Source();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.Category <em>Category</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Category</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.Category
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getCategory();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.FacetElement <em>Facet Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Facet Element</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.FacetElement
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getFacetElement();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.emf.facet.efacet.FacetElement#getCategories <em>Categories</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Categories</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.FacetElement#getCategories()
+ * @see #getFacetElement()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getFacetElement_Categories();
+
+ /**
+ * Returns the meta object for the container reference '{@link org.eclipse.papyrus.emf.facet.efacet.FacetElement#getFacet <em>Facet</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the container reference '<em>Facet</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.FacetElement#getFacet()
+ * @see #getFacetElement()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getFacetElement_Facet();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.FacetElement#getOverride <em>Override</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Override</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.FacetElement#getOverride()
+ * @see #getFacetElement()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getFacetElement_Override();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.QueryFacetElement <em>Query Facet Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Query Facet Element</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.QueryFacetElement
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getQueryFacetElement();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.emf.facet.efacet.QueryFacetElement#getQuery <em>Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference '<em>Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.QueryFacetElement#getQuery()
+ * @see #getQueryFacetElement()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getQueryFacetElement_Query();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.OppositeReference <em>Opposite Reference</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Opposite Reference</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.OppositeReference
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getOppositeReference();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.OppositeReference#getFOpposite <em>FOpposite</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>FOpposite</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.OppositeReference#getFOpposite()
+ * @see #getOppositeReference()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getOppositeReference_FOpposite();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.QuerySet <em>Query Set</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Query Set</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.QuerySet
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getQuerySet();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.efacet.QuerySet#getQueries <em>Queries</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Queries</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.QuerySet#getQueries()
+ * @see #getQuerySet()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getQuerySet_Queries();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.efacet.QuerySet#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.QuerySet#getName()
+ * @see #getQuerySet()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EAttribute getQuerySet_Name();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.Literal <em>Literal</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Literal</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.Literal
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getLiteral();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.efacet.Literal#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Value</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.Literal#getValue()
+ * @see #getLiteral()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EAttribute getLiteral_Value();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.TypedElementRef <em>Typed Element Ref</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Typed Element Ref</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.TypedElementRef
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getTypedElementRef();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.TypedElementRef#getTypedElement <em>Typed Element</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Typed Element</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.TypedElementRef#getTypedElement()
+ * @see #getTypedElementRef()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getTypedElementRef_TypedElement();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.Parameter <em>Parameter</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Parameter</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.Parameter
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getParameter();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.ParameterValue <em>Parameter Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Parameter Value</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.ParameterValue
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getParameterValue();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.efacet.ParameterValue#getParameter <em>Parameter</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Parameter</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.ParameterValue#getParameter()
+ * @see #getParameterValue()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getParameterValue_Parameter();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.emf.facet.efacet.ParameterValue#getValue <em>Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Value</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.ParameterValue#getValue()
+ * @see #getParameterValue()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EAttribute getParameterValue_Value();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.efacet.QueryContext <em>Query Context</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Query Context</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.QueryContext
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getQueryContext();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.emf.facet.efacet.QueryContext#getSelectedModelElements <em>Selected Model Elements</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Selected Model Elements</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.QueryContext#getSelectedModelElements()
+ * @see #getQueryContext()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getQueryContext_SelectedModelElements();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.emf.facet.efacet.QueryContext#getSelectedModels <em>Selected Models</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Selected Models</em>'.
+ * @see org.eclipse.papyrus.emf.facet.efacet.QueryContext#getSelectedModels()
+ * @see #getQueryContext()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EAttribute getQueryContext_SelectedModels();
+
+ /**
+ * Returns the meta object for data type '{@link java.lang.Exception <em>Java Exception</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for data type '<em>Java Exception</em>'.
+ * @see java.lang.Exception
+ * @model instanceClass="java.lang.Exception"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EDataType getJavaException();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EFacetFactory getEFacetFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetAttributeImpl <em>Facet Attribute</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.FacetAttributeImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getFacetAttribute()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass FACET_ATTRIBUTE = EFacetPackage.eINSTANCE.getFacetAttribute();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetReferenceImpl <em>Facet Reference</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.FacetReferenceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getFacetReference()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass FACET_REFERENCE = EFacetPackage.eINSTANCE.getFacetReference();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetOperationImpl <em>Facet Operation</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.FacetOperationImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getFacetOperation()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass FACET_OPERATION = EFacetPackage.eINSTANCE.getFacetOperation();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetSetImpl <em>Facet Set</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.FacetSetImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getFacetSet()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass FACET_SET = EFacetPackage.eINSTANCE.getFacetSet();
+
+ /**
+ * The meta object literal for the '<em><b>Facets</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference FACET_SET__FACETS = EFacetPackage.eINSTANCE.getFacetSet_Facets();
+
+ /**
+ * The meta object literal for the '<em><b>Categories</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference FACET_SET__CATEGORIES = EFacetPackage.eINSTANCE.getFacetSet_Categories();
+
+ /**
+ * The meta object literal for the '<em><b>Extended EPackage</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference FACET_SET__EXTENDED_EPACKAGE = EFacetPackage.eINSTANCE.getFacetSet_ExtendedEPackage();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetImpl <em>Facet</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.FacetImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getFacet()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass FACET = EFacetPackage.eINSTANCE.getFacet();
+
+ /**
+ * The meta object literal for the '<em><b>Facet Set</b></em>' container reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference FACET__FACET_SET = EFacetPackage.eINSTANCE.getFacet_FacetSet();
+
+ /**
+ * The meta object literal for the '<em><b>Conformance Query</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference FACET__CONFORMANCE_QUERY = EFacetPackage.eINSTANCE.getFacet_ConformanceQuery();
+
+ /**
+ * The meta object literal for the '<em><b>Extended Metaclass</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference FACET__EXTENDED_METACLASS = EFacetPackage.eINSTANCE.getFacet_ExtendedMetaclass();
+
+ /**
+ * The meta object literal for the '<em><b>Facet Elements</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference FACET__FACET_ELEMENTS = EFacetPackage.eINSTANCE.getFacet_FacetElements();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryImpl <em>Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.QueryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getQuery()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass QUERY = EFacetPackage.eINSTANCE.getQuery();
+
+ /**
+ * The meta object literal for the '<em><b>Scope</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference QUERY__SCOPE = EFacetPackage.eINSTANCE.getQuery_Scope();
+
+ /**
+ * The meta object literal for the '<em><b>Has Side Effect</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EAttribute QUERY__HAS_SIDE_EFFECT = EFacetPackage.eINSTANCE.getQuery_HasSideEffect();
+
+ /**
+ * The meta object literal for the '<em><b>Can Be Cached</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EAttribute QUERY__CAN_BE_CACHED = EFacetPackage.eINSTANCE.getQuery_CanBeCached();
+
+ /**
+ * The meta object literal for the '<em><b>Parameters</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference QUERY__PARAMETERS = EFacetPackage.eINSTANCE.getQuery_Parameters();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryResultImpl <em>Query Result</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.QueryResultImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getQueryResult()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass QUERY_RESULT = EFacetPackage.eINSTANCE.getQueryResult();
+
+ /**
+ * The meta object literal for the '<em><b>Query</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference QUERY_RESULT__QUERY = EFacetPackage.eINSTANCE.getQueryResult_Query();
+
+ /**
+ * The meta object literal for the '<em><b>Scope</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference QUERY_RESULT__SCOPE = EFacetPackage.eINSTANCE.getQueryResult_Scope();
+
+ /**
+ * The meta object literal for the '<em><b>Parameter Values</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference QUERY_RESULT__PARAMETER_VALUES = EFacetPackage.eINSTANCE.getQueryResult_ParameterValues();
+
+ /**
+ * The meta object literal for the '<em><b>Result</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EAttribute QUERY_RESULT__RESULT = EFacetPackage.eINSTANCE.getQueryResult_Result();
+
+ /**
+ * The meta object literal for the '<em><b>Exception</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EAttribute QUERY_RESULT__EXCEPTION = EFacetPackage.eINSTANCE.getQueryResult_Exception();
+
+ /**
+ * The meta object literal for the '<em><b>Source</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference QUERY_RESULT__SOURCE = EFacetPackage.eINSTANCE.getQueryResult_Source();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.CategoryImpl <em>Category</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.CategoryImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getCategory()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass CATEGORY = EFacetPackage.eINSTANCE.getCategory();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetElementImpl <em>Facet Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.FacetElementImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getFacetElement()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass FACET_ELEMENT = EFacetPackage.eINSTANCE.getFacetElement();
+
+ /**
+ * The meta object literal for the '<em><b>Categories</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference FACET_ELEMENT__CATEGORIES = EFacetPackage.eINSTANCE.getFacetElement_Categories();
+
+ /**
+ * The meta object literal for the '<em><b>Facet</b></em>' container reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference FACET_ELEMENT__FACET = EFacetPackage.eINSTANCE.getFacetElement_Facet();
+
+ /**
+ * The meta object literal for the '<em><b>Override</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference FACET_ELEMENT__OVERRIDE = EFacetPackage.eINSTANCE.getFacetElement_Override();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryFacetElementImpl <em>Query Facet Element</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.QueryFacetElementImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getQueryFacetElement()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass QUERY_FACET_ELEMENT = EFacetPackage.eINSTANCE.getQueryFacetElement();
+
+ /**
+ * The meta object literal for the '<em><b>Query</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference QUERY_FACET_ELEMENT__QUERY = EFacetPackage.eINSTANCE.getQueryFacetElement_Query();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.OppositeReferenceImpl <em>Opposite Reference</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.OppositeReferenceImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getOppositeReference()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass OPPOSITE_REFERENCE = EFacetPackage.eINSTANCE.getOppositeReference();
+
+ /**
+ * The meta object literal for the '<em><b>FOpposite</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference OPPOSITE_REFERENCE__FOPPOSITE = EFacetPackage.eINSTANCE.getOppositeReference_FOpposite();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.QuerySetImpl <em>Query Set</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.QuerySetImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getQuerySet()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass QUERY_SET = EFacetPackage.eINSTANCE.getQuerySet();
+
+ /**
+ * The meta object literal for the '<em><b>Queries</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference QUERY_SET__QUERIES = EFacetPackage.eINSTANCE.getQuerySet_Queries();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EAttribute QUERY_SET__NAME = EFacetPackage.eINSTANCE.getQuerySet_Name();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.LiteralImpl <em>Literal</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.LiteralImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getLiteral()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass LITERAL = EFacetPackage.eINSTANCE.getLiteral();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EAttribute LITERAL__VALUE = EFacetPackage.eINSTANCE.getLiteral_Value();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.TypedElementRefImpl <em>Typed Element Ref</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.TypedElementRefImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getTypedElementRef()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass TYPED_ELEMENT_REF = EFacetPackage.eINSTANCE.getTypedElementRef();
+
+ /**
+ * The meta object literal for the '<em><b>Typed Element</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference TYPED_ELEMENT_REF__TYPED_ELEMENT = EFacetPackage.eINSTANCE.getTypedElementRef_TypedElement();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.ParameterImpl <em>Parameter</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.ParameterImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getParameter()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass PARAMETER = EFacetPackage.eINSTANCE.getParameter();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.ParameterValueImpl <em>Parameter Value</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.ParameterValueImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getParameterValue()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass PARAMETER_VALUE = EFacetPackage.eINSTANCE.getParameterValue();
+
+ /**
+ * The meta object literal for the '<em><b>Parameter</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference PARAMETER_VALUE__PARAMETER = EFacetPackage.eINSTANCE.getParameterValue_Parameter();
+
+ /**
+ * The meta object literal for the '<em><b>Value</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EAttribute PARAMETER_VALUE__VALUE = EFacetPackage.eINSTANCE.getParameterValue_Value();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryContextImpl <em>Query Context</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.QueryContextImpl
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getQueryContext()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass QUERY_CONTEXT = EFacetPackage.eINSTANCE.getQueryContext();
+
+ /**
+ * The meta object literal for the '<em><b>Selected Model Elements</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference QUERY_CONTEXT__SELECTED_MODEL_ELEMENTS = EFacetPackage.eINSTANCE.getQueryContext_SelectedModelElements();
+
+ /**
+ * The meta object literal for the '<em><b>Selected Models</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EAttribute QUERY_CONTEXT__SELECTED_MODELS = EFacetPackage.eINSTANCE.getQueryContext_SelectedModels();
+
+ /**
+ * The meta object literal for the '<em>Java Exception</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see java.lang.Exception
+ * @see org.eclipse.papyrus.emf.facet.efacet.impl.EFacetPackageImpl#getJavaException()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EDataType JAVA_EXCEPTION = EFacetPackage.eINSTANCE.getJavaException();
+
+ }
+
+} //EFacetPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Facet.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Facet.java
new file mode 100644
index 00000000000..59ddaf757dd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Facet.java
@@ -0,0 +1,161 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Facet</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A facet is a virtual sub type of an existing EClass. A Facet cannot be instantiated.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.Facet#getFacetSet <em>Facet Set</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.Facet#getConformanceQuery <em>Conformance Query</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.Facet#getExtendedMetaclass <em>Extended Metaclass</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.Facet#getFacetElements <em>Facet Elements</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getFacet()
+ * @model annotation="http://www.eclipse.org/emf/2002/Ecore validationDelegates='( self.query.scope = self.facet.extendedMetaClass ) and ( self.query.name = self.name )'"
+ * annotation="http://www.eclipse.org/emf/2002/Ecore validationDelegates='self.conformanceQuery.scope = self.extendedMetaClass'"
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface Facet extends EClassifier {
+ /**
+ * Returns the value of the '<em><b>Facet Set</b></em>' container reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.emf.facet.efacet.FacetSet#getFacets <em>Facets</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Facet Set</em>' container reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Facet Set</em>' container reference.
+ * @see #setFacetSet(FacetSet)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getFacet_FacetSet()
+ * @see org.eclipse.papyrus.emf.facet.efacet.FacetSet#getFacets
+ * @model opposite="facets" transient="false"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ FacetSet getFacetSet();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.Facet#getFacetSet <em>Facet Set</em>}' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Facet Set</em>' container reference.
+ * @see #getFacetSet()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setFacetSet(FacetSet value);
+
+ /**
+ * Returns the value of the '<em><b>Conformance Query</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Conformance Query</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Conformance Query</em>' containment reference.
+ * @see #setConformanceQuery(Query)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getFacet_ConformanceQuery()
+ * @model containment="true"
+ * annotation="GenModel documentation='The \"conformanceQuery\" references points to the ModelQuery class. The model queries pointed to by the \"conformanceQuery\" reference must return a Boolean. Those queries are used to specify how to decide whether an instance conforms to a facet. If the \"conditionQuery\" is empty then all the instances of the class referred to by the facet instance through the eSuperType reference conform to this facet. '"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ Query getConformanceQuery();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.Facet#getConformanceQuery <em>Conformance Query</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Conformance Query</em>' containment reference.
+ * @see #getConformanceQuery()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setConformanceQuery(Query value);
+
+ /**
+ * Returns the value of the '<em><b>Extended Metaclass</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Extended Metaclass</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Extended Metaclass</em>' reference.
+ * @see #setExtendedMetaclass(EClass)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getFacet_ExtendedMetaclass()
+ * @model annotation="GenModel documentation='The \"extendedMetaclass\" reference references the virtually subtyped EClass.'"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getExtendedMetaclass();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.Facet#getExtendedMetaclass <em>Extended Metaclass</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Extended Metaclass</em>' reference.
+ * @see #getExtendedMetaclass()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setExtendedMetaclass(EClass value);
+
+ /**
+ * Returns the value of the '<em><b>Facet Elements</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.efacet.FacetElement}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.emf.facet.efacet.FacetElement#getFacet <em>Facet</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * This composite reference contains virtual attributes, references and operations.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Facet Elements</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getFacet_FacetElements()
+ * @see org.eclipse.papyrus.emf.facet.efacet.FacetElement#getFacet
+ * @model opposite="facet" containment="true"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EList<FacetElement> getFacetElements();
+
+} // Facet
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetAttribute.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetAttribute.java
new file mode 100644
index 00000000000..e302e536663
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetAttribute.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+import org.eclipse.emf.ecore.EAttribute;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Facet Attribute</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A facetAttribute is a virtual attribute added to all the eObjets which are conform to the facet owning the "facetAttribute".
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getFacetAttribute()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface FacetAttribute extends EAttribute, QueryFacetElement {
+} // FacetAttribute
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetElement.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetElement.java
new file mode 100644
index 00000000000..bfd9dcdd5f2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetElement.java
@@ -0,0 +1,126 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.ETypedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Facet Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A facet element is owned by a facet. It can be a facet reference, a facet attribute or a facet operation.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.FacetElement#getCategories <em>Categories</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.FacetElement#getFacet <em>Facet</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.FacetElement#getOverride <em>Override</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getFacetElement()
+ * @model abstract="true"
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface FacetElement extends ETypedElement {
+ /**
+ * Returns the value of the '<em><b>Categories</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.efacet.Category}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Categories</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Categories</em>' reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getFacetElement_Categories()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EList<Category> getCategories();
+
+ /**
+ * Returns the value of the '<em><b>Facet</b></em>' container reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.emf.facet.efacet.Facet#getFacetElements <em>Facet Elements</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Facet</em>' container reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Facet</em>' container reference.
+ * @see #setFacet(Facet)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getFacetElement_Facet()
+ * @see org.eclipse.papyrus.emf.facet.efacet.Facet#getFacetElements
+ * @model opposite="facetElements" required="true" transient="false"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ Facet getFacet();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.FacetElement#getFacet <em>Facet</em>}' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Facet</em>' container reference.
+ * @see #getFacet()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setFacet(Facet value);
+
+ /**
+ * Returns the value of the '<em><b>Override</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Override</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Override</em>' reference.
+ * @see #setOverride(ETypedElement)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getFacetElement_Override()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ ETypedElement getOverride();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.FacetElement#getOverride <em>Override</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Override</em>' reference.
+ * @see #getOverride()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setOverride(ETypedElement value);
+
+} // FacetElement
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetOperation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetOperation.java
new file mode 100644
index 00000000000..3dfdc43af58
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetOperation.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+import org.eclipse.emf.ecore.EOperation;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Facet Operation</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A "facetOperation" is a virtual operation added to all the eObjets which are conform to the facet owning the facetOperation".
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getFacetOperation()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface FacetOperation extends EOperation, QueryFacetElement {
+} // FacetOperation
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetReference.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetReference.java
new file mode 100644
index 00000000000..41cf82b06ca
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetReference.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Facet Reference</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A "facetReference" is a virtual reference added to all the eObjets which are conform to the facet owning the "facetReference".
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getFacetReference()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface FacetReference extends EReference, QueryFacetElement {
+} // FacetReference
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetSet.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetSet.java
new file mode 100644
index 00000000000..70a418fb23e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/FacetSet.java
@@ -0,0 +1,110 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Facet Set</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.FacetSet#getFacets <em>Facets</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.FacetSet#getCategories <em>Categories</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.FacetSet#getExtendedEPackage <em>Extended EPackage</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getFacetSet()
+ * @model annotation="GenModel documentation='A \"FacetSet\" is the root element of a facet model. It contains a list of \"Facet\".'"
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface FacetSet extends EPackage {
+ /**
+ * Returns the value of the '<em><b>Facets</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.efacet.Facet}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.emf.facet.efacet.Facet#getFacetSet <em>Facet Set</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Facets</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Facets</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getFacetSet_Facets()
+ * @see org.eclipse.papyrus.emf.facet.efacet.Facet#getFacetSet
+ * @model opposite="facetSet" containment="true"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EList<Facet> getFacets();
+
+ /**
+ * Returns the value of the '<em><b>Categories</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.efacet.Category}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Categories</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Categories</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getFacetSet_Categories()
+ * @model containment="true"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EList<Category> getCategories();
+
+ /**
+ * Returns the value of the '<em><b>Extended EPackage</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Extended EPackage</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Extended EPackage</em>' reference.
+ * @see #setExtendedEPackage(EPackage)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getFacetSet_ExtendedEPackage()
+ * @model required="true"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EPackage getExtendedEPackage();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.FacetSet#getExtendedEPackage <em>Extended EPackage</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Extended EPackage</em>' reference.
+ * @see #getExtendedEPackage()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setExtendedEPackage(EPackage value);
+
+} // FacetSet
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Literal.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Literal.java
new file mode 100644
index 00000000000..147359cf30a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Literal.java
@@ -0,0 +1,70 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Literal</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A query return a static literal.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.Literal#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getLiteral()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface Literal extends Query {
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The literal value is stored in a string.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Value</em>' attribute.
+ * @see #setValue(String)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getLiteral_Value()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ String getValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.Literal#getValue <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Value</em>' attribute.
+ * @see #getValue()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setValue(String value);
+
+} // Literal
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/OppositeReference.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/OppositeReference.java
new file mode 100644
index 00000000000..1109a1c9c4a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/OppositeReference.java
@@ -0,0 +1,72 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Opposite Reference</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This is a virtual opposite reference of an existing reference.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.OppositeReference#getFOpposite <em>FOpposite</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getOppositeReference()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface OppositeReference extends FacetElement {
+ /**
+ * Returns the value of the '<em><b>FOpposite</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>FOpposite</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>FOpposite</em>' reference.
+ * @see #setFOpposite(EReference)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getOppositeReference_FOpposite()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EReference getFOpposite();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.OppositeReference#getFOpposite <em>FOpposite</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>FOpposite</em>' reference.
+ * @see #getFOpposite()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setFOpposite(EReference value);
+
+} // OppositeReference
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Parameter.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Parameter.java
new file mode 100644
index 00000000000..31486c27e6a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Parameter.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+import org.eclipse.emf.ecore.ETypedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Parameter</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This is the declaration of a query parameter.
+ * <!-- end-model-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getParameter()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface Parameter extends ETypedElement {
+} // Parameter
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/ParameterValue.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/ParameterValue.java
new file mode 100644
index 00000000000..0be714365cd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/ParameterValue.java
@@ -0,0 +1,93 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Parameter Value</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This is the value given as a parameter to execute a query.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.ParameterValue#getParameter <em>Parameter</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.ParameterValue#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getParameterValue()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface ParameterValue extends EObject {
+ /**
+ * Returns the value of the '<em><b>Parameter</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Parameter</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Parameter</em>' reference.
+ * @see #setParameter(Parameter)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getParameterValue_Parameter()
+ * @model required="true"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ Parameter getParameter();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.ParameterValue#getParameter <em>Parameter</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Parameter</em>' reference.
+ * @see #getParameter()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setParameter(Parameter value);
+
+ /**
+ * Returns the value of the '<em><b>Value</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.Object}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Value</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Value</em>' attribute list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getParameterValue_Value()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EList<Object> getValue();
+
+} // ParameterValue
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Query.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Query.java
new file mode 100644
index 00000000000..55a48dafa88
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/Query.java
@@ -0,0 +1,155 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.ETypedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Query</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A query is the abstract representation of the concept query. This class has to be sub-classed for each existing query language (Java, OCL,...)
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.Query#getScope <em>Scope</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.Query#isHasSideEffect <em>Has Side Effect</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.Query#isCanBeCached <em>Can Be Cached</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.Query#getParameters <em>Parameters</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQuery()
+ * @model abstract="true"
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface Query extends ETypedElement {
+ /**
+ * Returns the value of the '<em><b>Scope</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The query's scope defines the type of model elements a query can be applied on.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Scope</em>' reference.
+ * @see #setScope(EClass)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQuery_Scope()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EClass getScope();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.Query#getScope <em>Scope</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Scope</em>' reference.
+ * @see #getScope()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setScope(EClass value);
+
+ /**
+ * Returns the value of the '<em><b>Has Side Effect</b></em>' attribute.
+ * The default value is <code>"false"</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * This attribute has to be true if the query modify the model.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Has Side Effect</em>' attribute.
+ * @see #setHasSideEffect(boolean)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQuery_HasSideEffect()
+ * @model default="false"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ boolean isHasSideEffect();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.Query#isHasSideEffect <em>Has Side Effect</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Has Side Effect</em>' attribute.
+ * @see #isHasSideEffect()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setHasSideEffect(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Can Be Cached</b></em>' attribute.
+ * The default value is <code>"false"</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The attribute "canBeCached" has to be true if calling a query on the same model element will always return the same result.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Can Be Cached</em>' attribute.
+ * @see #setCanBeCached(boolean)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQuery_CanBeCached()
+ * @model default="false"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ boolean isCanBeCached();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.Query#isCanBeCached <em>Can Be Cached</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Can Be Cached</em>' attribute.
+ * @see #isCanBeCached()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setCanBeCached(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Parameters</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.efacet.Parameter}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Parameters</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Parameters</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQuery_Parameters()
+ * @model containment="true"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EList<Parameter> getParameters();
+
+} // Query
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/QueryContext.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/QueryContext.java
new file mode 100644
index 00000000000..0400f5425e4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/QueryContext.java
@@ -0,0 +1,83 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.emf.ecore.resource.Resource;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Query Context</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This is a class used to evaluate a query on every given model element.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.QueryContext#getSelectedModelElements <em>Selected Model Elements</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.QueryContext#getSelectedModels <em>Selected Models</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQueryContext()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface QueryContext extends EObject {
+ /**
+ * Returns the value of the '<em><b>Selected Model Elements</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.emf.ecore.EObject}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Selected Model Elements</em>' reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Selected Model Elements</em>' reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQueryContext_SelectedModelElements()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EList<EObject> getSelectedModelElements();
+
+ /**
+ * Returns the value of the '<em><b>Selected Models</b></em>' attribute list.
+ * The list contents are of type {@link org.eclipse.emf.ecore.resource.Resource}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Selected Models</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Selected Models</em>' attribute list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQueryContext_SelectedModels()
+ * @model transient="true"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EList<Resource> getSelectedModels();
+
+} // QueryContext
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/QueryFacetElement.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/QueryFacetElement.java
new file mode 100644
index 00000000000..fbf8b46cb87
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/QueryFacetElement.java
@@ -0,0 +1,71 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Query Facet Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A query facet element is a virtual structural feature which value is computed using a query.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.QueryFacetElement#getQuery <em>Query</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQueryFacetElement()
+ * @model abstract="true"
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface QueryFacetElement extends FacetElement {
+ /**
+ * Returns the value of the '<em><b>Query</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Query</em>' containment reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Query</em>' containment reference.
+ * @see #setQuery(Query)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQueryFacetElement_Query()
+ * @model containment="true"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ Query getQuery();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.QueryFacetElement#getQuery <em>Query</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Query</em>' containment reference.
+ * @see #getQuery()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setQuery(Query value);
+
+} // QueryFacetElement
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/QueryResult.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/QueryResult.java
new file mode 100644
index 00000000000..01df4a271a7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/QueryResult.java
@@ -0,0 +1,213 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Query Result</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This class represents the result of a query execution.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult#getQuery <em>Query</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult#getScope <em>Scope</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult#getParameterValues <em>Parameter Values</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult#getResult <em>Result</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult#getException <em>Exception</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult#getSource <em>Source</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQueryResult()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface QueryResult extends EObject {
+ /**
+ * Returns the value of the '<em><b>Query</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The reference "query" references the executed query.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Query</em>' reference.
+ * @see #setQuery(Query)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQueryResult_Query()
+ * @model required="true"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ Query getQuery();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult#getQuery <em>Query</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Query</em>' reference.
+ * @see #getQuery()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setQuery(Query value);
+
+ /**
+ * Returns the value of the '<em><b>Scope</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The scope references the model elements on which the query has been applied.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Scope</em>' reference.
+ * @see #setScope(EObject)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQueryResult_Scope()
+ * @model required="true"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EObject getScope();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult#getScope <em>Scope</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Scope</em>' reference.
+ * @see #getScope()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setScope(EObject value);
+
+ /**
+ * Returns the value of the '<em><b>Parameter Values</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.efacet.ParameterValue}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * This is the list of the values given as parameters for the query execution.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Parameter Values</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQueryResult_ParameterValues()
+ * @model containment="true"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EList<ParameterValue> getParameterValues();
+
+ /**
+ * Returns the value of the '<em><b>Result</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * This is the result returned by the query execution.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Result</em>' attribute.
+ * @see #setResult(Object)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQueryResult_Result()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ Object getResult();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult#getResult <em>Result</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Result</em>' attribute.
+ * @see #getResult()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setResult(Object value);
+
+ /**
+ * Returns the value of the '<em><b>Exception</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Exception</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Exception</em>' attribute.
+ * @see #setException(Exception)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQueryResult_Exception()
+ * @model dataType="org.eclipse.papyrus.emf.facet.efacet.JavaException"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ Exception getException();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult#getException <em>Exception</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Exception</em>' attribute.
+ * @see #getException()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setException(Exception value);
+
+ /**
+ * Returns the value of the '<em><b>Source</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Source</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Source</em>' reference.
+ * @see #setSource(EObject)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQueryResult_Source()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EObject getSource();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult#getSource <em>Source</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Source</em>' reference.
+ * @see #getSource()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setSource(EObject value);
+
+} // QueryResult
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/QuerySet.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/QuerySet.java
new file mode 100644
index 00000000000..f4359c5059a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/QuerySet.java
@@ -0,0 +1,89 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Query Set</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.QuerySet#getQueries <em>Queries</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.QuerySet#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQuerySet()
+ * @model annotation="http://www.eclipse.org/emf/2002/Ecore validationDelegates='not(self.queries->exists(q1|self.queries->exists(q2|q2&lt;>q1 and q2.name = q1.name and q2.scope=q1.scope and q2.parameters = q1.parameters) and self.queries->forAll(q|q.scope = null)'"
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface QuerySet extends EObject {
+ /**
+ * Returns the value of the '<em><b>Queries</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.efacet.Query}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Queries</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Queries</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQuerySet_Queries()
+ * @model containment="true"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ EList<Query> getQueries();
+
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getQuerySet_Name()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.QuerySet#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setName(String value);
+
+} // QuerySet
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/TypedElementRef.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/TypedElementRef.java
new file mode 100644
index 00000000000..e32bee196d7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/TypedElementRef.java
@@ -0,0 +1,72 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet;
+
+import org.eclipse.emf.ecore.ETypedElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Typed Element Ref</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This query can result in content of another attribute, reference or operation.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.TypedElementRef#getTypedElement <em>Typed Element</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getTypedElementRef()
+ * @model
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public interface TypedElementRef extends Query {
+ /**
+ * Returns the value of the '<em><b>Typed Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Typed Element</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Typed Element</em>' reference.
+ * @see #setTypedElement(ETypedElement)
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#getTypedElementRef_TypedElement()
+ * @model required="true"
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ ETypedElement getTypedElement();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.efacet.TypedElementRef#getTypedElement <em>Typed Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Typed Element</em>' reference.
+ * @see #getTypedElement()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ void setTypedElement(ETypedElement value);
+
+} // TypedElementRef
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/CategoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/CategoryImpl.java
new file mode 100644
index 00000000000..22ff686e4ef
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/CategoryImpl.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.papyrus.emf.facet.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Category</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class CategoryImpl extends EObjectImpl implements Category {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected CategoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.CATEGORY;
+ }
+
+} //CategoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/EFacetFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/EFacetFactoryImpl.java
new file mode 100644
index 00000000000..8a0e71e21cc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/EFacetFactoryImpl.java
@@ -0,0 +1,346 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.emf.facet.efacet.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class EFacetFactoryImpl extends EFactoryImpl implements EFacetFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public static EFacetFactory init() {
+ try {
+ EFacetFactory theEFacetFactory = (EFacetFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/emf/facet/efacet/0.1.incubation"); //$NON-NLS-1$
+ if (theEFacetFactory != null) {
+ return theEFacetFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new EFacetFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EFacetFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public EObject create(final EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case EFacetPackage.FACET_ATTRIBUTE: return createFacetAttribute();
+ case EFacetPackage.FACET_REFERENCE: return createFacetReference();
+ case EFacetPackage.FACET_OPERATION: return createFacetOperation();
+ case EFacetPackage.FACET_SET: return createFacetSet();
+ case EFacetPackage.FACET: return createFacet();
+ case EFacetPackage.QUERY_RESULT: return createQueryResult();
+ case EFacetPackage.CATEGORY: return createCategory();
+ case EFacetPackage.OPPOSITE_REFERENCE: return createOppositeReference();
+ case EFacetPackage.QUERY_SET: return createQuerySet();
+ case EFacetPackage.LITERAL: return createLiteral();
+ case EFacetPackage.TYPED_ELEMENT_REF: return createTypedElementRef();
+ case EFacetPackage.PARAMETER: return createParameter();
+ case EFacetPackage.PARAMETER_VALUE: return createParameterValue();
+ case EFacetPackage.QUERY_CONTEXT: return createQueryContext();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public Object createFromString(final EDataType eDataType, final String initialValue) {
+ switch (eDataType.getClassifierID()) {
+ case EFacetPackage.JAVA_EXCEPTION:
+ return createJavaExceptionFromString(eDataType, initialValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public String convertToString(final EDataType eDataType, final Object instanceValue) {
+ switch (eDataType.getClassifierID()) {
+ case EFacetPackage.JAVA_EXCEPTION:
+ return convertJavaExceptionToString(eDataType, instanceValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public FacetAttribute createFacetAttribute() {
+ FacetAttributeImpl facetAttribute = new FacetAttributeImpl();
+ return facetAttribute;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public FacetReference createFacetReference() {
+ FacetReferenceImpl facetReference = new FacetReferenceImpl();
+ return facetReference;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public FacetOperation createFacetOperation() {
+ FacetOperationImpl facetOperation = new FacetOperationImpl();
+ return facetOperation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public FacetSet createFacetSet() {
+ FacetSetImpl facetSet = new FacetSetImpl();
+ return facetSet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Facet createFacet() {
+ FacetImpl facet = new FacetImpl();
+ return facet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public QueryResult createQueryResult() {
+ QueryResultImpl queryResult = new QueryResultImpl();
+ return queryResult;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Category createCategory() {
+ CategoryImpl category = new CategoryImpl();
+ return category;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public OppositeReference createOppositeReference() {
+ OppositeReferenceImpl oppositeReference = new OppositeReferenceImpl();
+ return oppositeReference;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public QuerySet createQuerySet() {
+ QuerySetImpl querySet = new QuerySetImpl();
+ return querySet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Literal createLiteral() {
+ LiteralImpl literal = new LiteralImpl();
+ return literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public TypedElementRef createTypedElementRef() {
+ TypedElementRefImpl typedElementRef = new TypedElementRefImpl();
+ return typedElementRef;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Parameter createParameter() {
+ ParameterImpl parameter = new ParameterImpl();
+ return parameter;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public ParameterValue createParameterValue() {
+ ParameterValueImpl parameterValue = new ParameterValueImpl();
+ return parameterValue;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public QueryContext createQueryContext() {
+ QueryContextImpl queryContext = new QueryContextImpl();
+ return queryContext;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Exception createJavaExceptionFromString(final EDataType eDataType, final String initialValue) {
+ return (Exception)super.createFromString(eDataType, initialValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public String convertJavaExceptionToString(final EDataType eDataType, final Object instanceValue) {
+ return super.convertToString(eDataType, instanceValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EFacetPackage getEFacetPackage() {
+ return (EFacetPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public static EFacetPackage getPackage() {
+ return EFacetPackage.eINSTANCE;
+ }
+
+} //EFacetFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/EFacetPackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/EFacetPackageImpl.java
new file mode 100644
index 00000000000..df4eb7214c4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/EFacetPackageImpl.java
@@ -0,0 +1,1109 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.emf.facet.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.FacetElement;
+import org.eclipse.papyrus.emf.facet.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.Literal;
+import org.eclipse.papyrus.emf.facet.efacet.OppositeReference;
+import org.eclipse.papyrus.emf.facet.efacet.Parameter;
+import org.eclipse.papyrus.emf.facet.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.QueryContext;
+import org.eclipse.papyrus.emf.facet.efacet.QueryFacetElement;
+import org.eclipse.papyrus.emf.facet.efacet.QueryResult;
+import org.eclipse.papyrus.emf.facet.efacet.QuerySet;
+import org.eclipse.papyrus.emf.facet.efacet.TypedElementRef;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class EFacetPackageImpl extends EPackageImpl implements EFacetPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EClass facetAttributeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EClass facetReferenceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EClass facetOperationEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EClass facetSetEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EClass facetEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EClass queryEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EClass queryResultEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EClass categoryEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EClass facetElementEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EClass queryFacetElementEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EClass oppositeReferenceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EClass querySetEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EClass literalEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EClass typedElementRefEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EClass parameterEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EClass parameterValueEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EClass queryContextEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EDataType javaExceptionEDataType = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage#eNS_URI
+ * @see #init()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private EFacetPackageImpl() {
+ super(EFacetPackage.eNS_URI, EFacetFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private static boolean isInited = false;
+
+ /**
+ * 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 EFacetPackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public static EFacetPackage init() {
+ if (EFacetPackageImpl.isInited) {
+ return (EFacetPackage)EPackage.Registry.INSTANCE.getEPackage(EFacetPackage.eNS_URI);
+ }
+
+ // Obtain or create and register package
+ EFacetPackageImpl theEFacetPackage = (EFacetPackageImpl)(EPackage.Registry.INSTANCE.get(EFacetPackage.eNS_URI) instanceof EFacetPackageImpl ? EPackage.Registry.INSTANCE.get(EFacetPackage.eNS_URI) : new EFacetPackageImpl());
+
+ EFacetPackageImpl.isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theEFacetPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theEFacetPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theEFacetPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(EFacetPackage.eNS_URI, theEFacetPackage);
+ return theEFacetPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getFacetAttribute() {
+ return this.facetAttributeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getFacetReference() {
+ return this.facetReferenceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getFacetOperation() {
+ return this.facetOperationEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getFacetSet() {
+ return this.facetSetEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getFacetSet_Facets() {
+ return (EReference)this.facetSetEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getFacetSet_Categories() {
+ return (EReference)this.facetSetEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getFacetSet_ExtendedEPackage() {
+ return (EReference)this.facetSetEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getFacet() {
+ return this.facetEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getFacet_FacetSet() {
+ return (EReference)this.facetEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getFacet_ConformanceQuery() {
+ return (EReference)this.facetEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getFacet_ExtendedMetaclass() {
+ return (EReference)this.facetEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getFacet_FacetElements() {
+ return (EReference)this.facetEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getQuery() {
+ return this.queryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getQuery_Scope() {
+ return (EReference)this.queryEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EAttribute getQuery_HasSideEffect() {
+ return (EAttribute)this.queryEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EAttribute getQuery_CanBeCached() {
+ return (EAttribute)this.queryEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getQuery_Parameters() {
+ return (EReference)this.queryEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getQueryResult() {
+ return this.queryResultEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getQueryResult_Query() {
+ return (EReference)this.queryResultEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getQueryResult_Scope() {
+ return (EReference)this.queryResultEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getQueryResult_ParameterValues() {
+ return (EReference)this.queryResultEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EAttribute getQueryResult_Result() {
+ return (EAttribute)this.queryResultEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EAttribute getQueryResult_Exception() {
+ return (EAttribute)this.queryResultEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getQueryResult_Source() {
+ return (EReference)this.queryResultEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getCategory() {
+ return this.categoryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getFacetElement() {
+ return this.facetElementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getFacetElement_Categories() {
+ return (EReference)this.facetElementEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getFacetElement_Facet() {
+ return (EReference)this.facetElementEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getFacetElement_Override() {
+ return (EReference)this.facetElementEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getQueryFacetElement() {
+ return this.queryFacetElementEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getQueryFacetElement_Query() {
+ return (EReference)this.queryFacetElementEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getOppositeReference() {
+ return this.oppositeReferenceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getOppositeReference_FOpposite() {
+ return (EReference)this.oppositeReferenceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getQuerySet() {
+ return this.querySetEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getQuerySet_Queries() {
+ return (EReference)this.querySetEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EAttribute getQuerySet_Name() {
+ return (EAttribute)this.querySetEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getLiteral() {
+ return this.literalEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EAttribute getLiteral_Value() {
+ return (EAttribute)this.literalEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getTypedElementRef() {
+ return this.typedElementRefEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getTypedElementRef_TypedElement() {
+ return (EReference)this.typedElementRefEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getParameter() {
+ return this.parameterEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getParameterValue() {
+ return this.parameterValueEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getParameterValue_Parameter() {
+ return (EReference)this.parameterValueEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EAttribute getParameterValue_Value() {
+ return (EAttribute)this.parameterValueEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getQueryContext() {
+ return this.queryContextEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getQueryContext_SelectedModelElements() {
+ return (EReference)this.queryContextEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EAttribute getQueryContext_SelectedModels() {
+ return (EAttribute)this.queryContextEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EDataType getJavaException() {
+ return this.javaExceptionEDataType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EFacetFactory getEFacetFactory() {
+ return (EFacetFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void createPackageContents() {
+ if (this.isCreated) {
+ return;
+ }
+ this.isCreated = true;
+
+ // Create classes and their features
+ this.facetAttributeEClass = createEClass(EFacetPackage.FACET_ATTRIBUTE);
+
+ this.facetReferenceEClass = createEClass(EFacetPackage.FACET_REFERENCE);
+
+ this.facetOperationEClass = createEClass(EFacetPackage.FACET_OPERATION);
+
+ this.facetSetEClass = createEClass(EFacetPackage.FACET_SET);
+ createEReference(this.facetSetEClass, EFacetPackage.FACET_SET__FACETS);
+ createEReference(this.facetSetEClass, EFacetPackage.FACET_SET__CATEGORIES);
+ createEReference(this.facetSetEClass, EFacetPackage.FACET_SET__EXTENDED_EPACKAGE);
+
+ this.facetEClass = createEClass(EFacetPackage.FACET);
+ createEReference(this.facetEClass, EFacetPackage.FACET__FACET_SET);
+ createEReference(this.facetEClass, EFacetPackage.FACET__CONFORMANCE_QUERY);
+ createEReference(this.facetEClass, EFacetPackage.FACET__EXTENDED_METACLASS);
+ createEReference(this.facetEClass, EFacetPackage.FACET__FACET_ELEMENTS);
+
+ this.queryEClass = createEClass(EFacetPackage.QUERY);
+ createEReference(this.queryEClass, EFacetPackage.QUERY__SCOPE);
+ createEAttribute(this.queryEClass, EFacetPackage.QUERY__HAS_SIDE_EFFECT);
+ createEAttribute(this.queryEClass, EFacetPackage.QUERY__CAN_BE_CACHED);
+ createEReference(this.queryEClass, EFacetPackage.QUERY__PARAMETERS);
+
+ this.queryResultEClass = createEClass(EFacetPackage.QUERY_RESULT);
+ createEReference(this.queryResultEClass, EFacetPackage.QUERY_RESULT__QUERY);
+ createEReference(this.queryResultEClass, EFacetPackage.QUERY_RESULT__SCOPE);
+ createEReference(this.queryResultEClass, EFacetPackage.QUERY_RESULT__PARAMETER_VALUES);
+ createEAttribute(this.queryResultEClass, EFacetPackage.QUERY_RESULT__RESULT);
+ createEAttribute(this.queryResultEClass, EFacetPackage.QUERY_RESULT__EXCEPTION);
+ createEReference(this.queryResultEClass, EFacetPackage.QUERY_RESULT__SOURCE);
+
+ this.categoryEClass = createEClass(EFacetPackage.CATEGORY);
+
+ this.facetElementEClass = createEClass(EFacetPackage.FACET_ELEMENT);
+ createEReference(this.facetElementEClass, EFacetPackage.FACET_ELEMENT__CATEGORIES);
+ createEReference(this.facetElementEClass, EFacetPackage.FACET_ELEMENT__FACET);
+ createEReference(this.facetElementEClass, EFacetPackage.FACET_ELEMENT__OVERRIDE);
+
+ this.queryFacetElementEClass = createEClass(EFacetPackage.QUERY_FACET_ELEMENT);
+ createEReference(this.queryFacetElementEClass, EFacetPackage.QUERY_FACET_ELEMENT__QUERY);
+
+ this.oppositeReferenceEClass = createEClass(EFacetPackage.OPPOSITE_REFERENCE);
+ createEReference(this.oppositeReferenceEClass, EFacetPackage.OPPOSITE_REFERENCE__FOPPOSITE);
+
+ this.querySetEClass = createEClass(EFacetPackage.QUERY_SET);
+ createEReference(this.querySetEClass, EFacetPackage.QUERY_SET__QUERIES);
+ createEAttribute(this.querySetEClass, EFacetPackage.QUERY_SET__NAME);
+
+ this.literalEClass = createEClass(EFacetPackage.LITERAL);
+ createEAttribute(this.literalEClass, EFacetPackage.LITERAL__VALUE);
+
+ this.typedElementRefEClass = createEClass(EFacetPackage.TYPED_ELEMENT_REF);
+ createEReference(this.typedElementRefEClass, EFacetPackage.TYPED_ELEMENT_REF__TYPED_ELEMENT);
+
+ this.parameterEClass = createEClass(EFacetPackage.PARAMETER);
+
+ this.parameterValueEClass = createEClass(EFacetPackage.PARAMETER_VALUE);
+ createEReference(this.parameterValueEClass, EFacetPackage.PARAMETER_VALUE__PARAMETER);
+ createEAttribute(this.parameterValueEClass, EFacetPackage.PARAMETER_VALUE__VALUE);
+
+ this.queryContextEClass = createEClass(EFacetPackage.QUERY_CONTEXT);
+ createEReference(this.queryContextEClass, EFacetPackage.QUERY_CONTEXT__SELECTED_MODEL_ELEMENTS);
+ createEAttribute(this.queryContextEClass, EFacetPackage.QUERY_CONTEXT__SELECTED_MODELS);
+
+ // Create data types
+ this.javaExceptionEDataType = createEDataType(EFacetPackage.JAVA_EXCEPTION);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void initializePackageContents() {
+ if (this.isInitialized) {
+ return;
+ }
+ this.isInitialized = true;
+
+ // Initialize package
+ setName(EFacetPackage.eNAME);
+ setNsPrefix(EFacetPackage.eNS_PREFIX);
+ setNsURI(EFacetPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ this.facetAttributeEClass.getESuperTypes().add(this.ecorePackage.getEAttribute());
+ this.facetAttributeEClass.getESuperTypes().add(getQueryFacetElement());
+ this.facetReferenceEClass.getESuperTypes().add(this.ecorePackage.getEReference());
+ this.facetReferenceEClass.getESuperTypes().add(getQueryFacetElement());
+ this.facetOperationEClass.getESuperTypes().add(this.ecorePackage.getEOperation());
+ this.facetOperationEClass.getESuperTypes().add(getQueryFacetElement());
+ this.facetSetEClass.getESuperTypes().add(this.ecorePackage.getEPackage());
+ this.facetEClass.getESuperTypes().add(this.ecorePackage.getEClassifier());
+ this.queryEClass.getESuperTypes().add(this.ecorePackage.getETypedElement());
+ this.facetElementEClass.getESuperTypes().add(this.ecorePackage.getETypedElement());
+ this.queryFacetElementEClass.getESuperTypes().add(getFacetElement());
+ this.oppositeReferenceEClass.getESuperTypes().add(getFacetElement());
+ this.literalEClass.getESuperTypes().add(getQuery());
+ this.typedElementRefEClass.getESuperTypes().add(getQuery());
+ this.parameterEClass.getESuperTypes().add(this.ecorePackage.getETypedElement());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(this.facetAttributeEClass, FacetAttribute.class, "FacetAttribute", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(this.facetReferenceEClass, FacetReference.class, "FacetReference", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(this.facetOperationEClass, FacetOperation.class, "FacetOperation", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(this.facetSetEClass, FacetSet.class, "FacetSet", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getFacetSet_Facets(), getFacet(), getFacet_FacetSet(), "facets", null, 0, -1, FacetSet.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, EPackageImpl.IS_COMPOSITE, !EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+ initEReference(getFacetSet_Categories(), getCategory(), null, "categories", null, 0, -1, FacetSet.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, EPackageImpl.IS_COMPOSITE, !EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+ initEReference(getFacetSet_ExtendedEPackage(), this.ecorePackage.getEPackage(), null, "extendedEPackage", null, 1, 1, FacetSet.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_COMPOSITE, EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(this.facetEClass, Facet.class, "Facet", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getFacet_FacetSet(), getFacetSet(), getFacetSet_Facets(), "facetSet", null, 0, 1, Facet.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_COMPOSITE, !EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+ initEReference(getFacet_ConformanceQuery(), getQuery(), null, "conformanceQuery", null, 0, 1, Facet.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, EPackageImpl.IS_COMPOSITE, !EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+ initEReference(getFacet_ExtendedMetaclass(), this.ecorePackage.getEClass(), null, "extendedMetaclass", null, 0, 1, Facet.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_COMPOSITE, EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+ initEReference(getFacet_FacetElements(), getFacetElement(), getFacetElement_Facet(), "facetElements", null, 0, -1, Facet.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, EPackageImpl.IS_COMPOSITE, !EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(this.queryEClass, Query.class, "Query", EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getQuery_Scope(), this.ecorePackage.getEClass(), null, "scope", null, 0, 1, Query.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_COMPOSITE, EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getQuery_HasSideEffect(), this.ecorePackage.getEBoolean(), "hasSideEffect", "false", 0, 1, Query.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_UNSETTABLE, !EPackageImpl.IS_ID, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$ //$NON-NLS-2$
+ initEAttribute(getQuery_CanBeCached(), this.ecorePackage.getEBoolean(), "canBeCached", "false", 0, 1, Query.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_UNSETTABLE, !EPackageImpl.IS_ID, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$ //$NON-NLS-2$
+ initEReference(getQuery_Parameters(), getParameter(), null, "parameters", null, 0, -1, Query.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, EPackageImpl.IS_COMPOSITE, !EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(this.queryResultEClass, QueryResult.class, "QueryResult", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getQueryResult_Query(), getQuery(), null, "query", null, 1, 1, QueryResult.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_COMPOSITE, EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+ initEReference(getQueryResult_Scope(), this.ecorePackage.getEObject(), null, "scope", null, 1, 1, QueryResult.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_COMPOSITE, EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+ initEReference(getQueryResult_ParameterValues(), getParameterValue(), null, "parameterValues", null, 0, -1, QueryResult.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, EPackageImpl.IS_COMPOSITE, !EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getQueryResult_Result(), this.ecorePackage.getEJavaObject(), "result", null, 0, 1, QueryResult.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_UNSETTABLE, !EPackageImpl.IS_ID, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getQueryResult_Exception(), getJavaException(), "exception", null, 0, 1, QueryResult.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_UNSETTABLE, !EPackageImpl.IS_ID, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+ initEReference(getQueryResult_Source(), this.ecorePackage.getEObject(), null, "source", null, 0, 1, QueryResult.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_COMPOSITE, EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(this.categoryEClass, Category.class, "Category", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(this.facetElementEClass, FacetElement.class, "FacetElement", EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getFacetElement_Categories(), getCategory(), null, "categories", null, 0, -1, FacetElement.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_COMPOSITE, EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+ initEReference(getFacetElement_Facet(), getFacet(), getFacet_FacetElements(), "facet", null, 1, 1, FacetElement.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_COMPOSITE, !EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+ initEReference(getFacetElement_Override(), this.ecorePackage.getETypedElement(), null, "override", null, 0, 1, FacetElement.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_COMPOSITE, EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(this.queryFacetElementEClass, QueryFacetElement.class, "QueryFacetElement", EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getQueryFacetElement_Query(), getQuery(), null, "query", null, 0, 1, QueryFacetElement.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, EPackageImpl.IS_COMPOSITE, !EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(this.oppositeReferenceEClass, OppositeReference.class, "OppositeReference", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getOppositeReference_FOpposite(), this.ecorePackage.getEReference(), null, "fOpposite", null, 0, 1, OppositeReference.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_COMPOSITE, EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(this.querySetEClass, QuerySet.class, "QuerySet", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getQuerySet_Queries(), getQuery(), null, "queries", null, 0, -1, QuerySet.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, EPackageImpl.IS_COMPOSITE, !EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getQuerySet_Name(), this.ecorePackage.getEString(), "name", null, 0, 1, QuerySet.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_UNSETTABLE, !EPackageImpl.IS_ID, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(this.literalEClass, Literal.class, "Literal", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getLiteral_Value(), this.ecorePackage.getEString(), "value", null, 0, 1, Literal.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_UNSETTABLE, !EPackageImpl.IS_ID, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(this.typedElementRefEClass, TypedElementRef.class, "TypedElementRef", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getTypedElementRef_TypedElement(), this.ecorePackage.getETypedElement(), null, "typedElement", null, 1, 1, TypedElementRef.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_COMPOSITE, EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(this.parameterEClass, Parameter.class, "Parameter", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ initEClass(this.parameterValueEClass, ParameterValue.class, "ParameterValue", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getParameterValue_Parameter(), getParameter(), null, "parameter", null, 1, 1, ParameterValue.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_COMPOSITE, EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getParameterValue_Value(), this.ecorePackage.getEJavaObject(), "value", null, 0, -1, ParameterValue.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_UNSETTABLE, !EPackageImpl.IS_ID, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(this.queryContextEClass, QueryContext.class, "QueryContext", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getQueryContext_SelectedModelElements(), this.ecorePackage.getEObject(), null, "selectedModelElements", null, 0, -1, QueryContext.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_COMPOSITE, EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getQueryContext_SelectedModels(), this.ecorePackage.getEResource(), "selectedModels", null, 0, -1, QueryContext.class, EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_UNSETTABLE, !EPackageImpl.IS_ID, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+
+ // Initialize data types
+ initEDataType(this.javaExceptionEDataType, Exception.class, "JavaException", EPackageImpl.IS_SERIALIZABLE, !EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ // Create resource
+ createResource(EFacetPackage.eNS_URI);
+
+ // Create annotations
+ // GenModel
+ createGenModel_1Annotations();
+ // http://www.eclipse.org/emf/2002/Ecore
+ createEcoreAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>GenModel</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected void createGenModel_1Annotations() {
+ String source = "GenModel"; //$NON-NLS-1$
+ addAnnotation
+ (this.facetSetEClass,
+ source,
+ new String[] {
+ "documentation", "A \"FacetSet\" is the root element of a facet model. It contains a list of \"Facet\"." //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ addAnnotation
+ (getFacet_ConformanceQuery(),
+ source,
+ new String[] {
+ "documentation", "The \"conformanceQuery\" references points to the ModelQuery class. The model queries pointed to by the \"conformanceQuery\" reference must return a Boolean. Those queries are used to specify how to decide whether an instance conforms to a facet. If the \"conditionQuery\" is empty then all the instances of the class referred to by the facet instance through the eSuperType reference conform to this facet. " //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ addAnnotation
+ (getFacet_ExtendedMetaclass(),
+ source,
+ new String[] {
+ "documentation", "The \"extendedMetaclass\" reference references the virtually subtyped EClass." //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ }
+
+ /**
+ * Initializes the annotations for <b>http://www.eclipse.org/emf/2002/Ecore</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected void createEcoreAnnotations() {
+ String source = "http://www.eclipse.org/emf/2002/Ecore"; //$NON-NLS-1$
+ addAnnotation
+ (this.facetEClass,
+ source,
+ new String[] {
+ "validationDelegates", "( self.query.scope = self.facet.extendedMetaClass ) and ( self.query.name = self.name )" //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ addAnnotation
+ (this.facetEClass,
+ source,
+ new String[] {
+ "validationDelegates", "self.conformanceQuery.scope = self.extendedMetaClass" //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ addAnnotation
+ (this.querySetEClass,
+ source,
+ new String[] {
+ "validationDelegates", "not(self.queries->exists(q1|self.queries->exists(q2|q2&lt;>q1 and q2.name = q1.name and q2.scope=q1.scope and q2.parameters = q1.parameters) and self.queries->forAll(q|q.scope = null)" //$NON-NLS-1$ //$NON-NLS-2$
+ });
+ }
+
+} //EFacetPackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetAttributeImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetAttributeImpl.java
new file mode 100644
index 00000000000..6e8e61b7cf3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetAttributeImpl.java
@@ -0,0 +1,500 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.EAttributeImpl;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+
+import org.eclipse.papyrus.emf.facet.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.FacetAttribute;
+import org.eclipse.papyrus.emf.facet.efacet.FacetElement;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.QueryFacetElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Facet Attribute</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetAttributeImpl#getCategories <em>Categories</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetAttributeImpl#getFacet <em>Facet</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetAttributeImpl#getOverride <em>Override</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetAttributeImpl#getQuery <em>Query</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class FacetAttributeImpl extends EAttributeImpl implements FacetAttribute {
+ /**
+ * The cached value of the '{@link #getCategories() <em>Categories</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCategories()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EList<Category> categories;
+
+ /**
+ * The cached value of the '{@link #getOverride() <em>Override</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOverride()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected ETypedElement override;
+
+ /**
+ * The cached value of the '{@link #getQuery() <em>Query</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getQuery()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected Query query;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected FacetAttributeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.FACET_ATTRIBUTE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EList<Category> getCategories() {
+ if (this.categories == null) {
+ this.categories = new EObjectResolvingEList<Category>(Category.class, this, EFacetPackage.FACET_ATTRIBUTE__CATEGORIES);
+ }
+ return this.categories;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Facet getFacet() {
+ if (eContainerFeatureID() != EFacetPackage.FACET_ATTRIBUTE__FACET) {
+ return null;
+ }
+ return (Facet)eContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public NotificationChain basicSetFacet(final Facet newFacet, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject)newFacet, EFacetPackage.FACET_ATTRIBUTE__FACET, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setFacet(final Facet newFacet) {
+ if (newFacet != eInternalContainer() || (eContainerFeatureID() != EFacetPackage.FACET_ATTRIBUTE__FACET && newFacet != null)) {
+ if (EcoreUtil.isAncestor(this, newFacet))
+ {
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); //$NON-NLS-1$
+ }
+ NotificationChain msgs = null;
+ if (eInternalContainer() != null) {
+ msgs = eBasicRemoveFromContainer(msgs);
+ }
+ if (newFacet != null) {
+ msgs = ((InternalEObject)newFacet).eInverseAdd(this, EFacetPackage.FACET__FACET_ELEMENTS, Facet.class, msgs);
+ }
+ msgs = basicSetFacet(newFacet, msgs);
+ if (msgs != null) {
+ msgs.dispatch();
+ }
+ }
+ else if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_ATTRIBUTE__FACET, newFacet, newFacet));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public ETypedElement getOverride() {
+ if (this.override != null && this.override.eIsProxy()) {
+ InternalEObject oldOverride = (InternalEObject)this.override;
+ this.override = (ETypedElement)eResolveProxy(oldOverride);
+ if (this.override != oldOverride) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.FACET_ATTRIBUTE__OVERRIDE, oldOverride, this.override));
+ }
+ }
+ }
+ return this.override;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public ETypedElement basicGetOverride() {
+ return this.override;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setOverride(final ETypedElement newOverride) {
+ ETypedElement oldOverride = this.override;
+ this.override = newOverride;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_ATTRIBUTE__OVERRIDE, oldOverride, this.override));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Query getQuery() {
+ return this.query;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public NotificationChain basicSetQuery(final Query newQuery, NotificationChain msgs) {
+ Query oldQuery = this.query;
+ this.query = newQuery;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_ATTRIBUTE__QUERY, oldQuery, newQuery);
+ if (msgs == null) {
+ msgs = notification;
+ } else {
+ msgs.add(notification);
+ }
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setQuery(final Query newQuery) {
+ if (newQuery != this.query) {
+ NotificationChain msgs = null;
+ if (this.query != null) {
+ msgs = ((InternalEObject)this.query).eInverseRemove(this, InternalEObject.EOPPOSITE_FEATURE_BASE - EFacetPackage.FACET_ATTRIBUTE__QUERY, null, msgs);
+ }
+ if (newQuery != null) {
+ msgs = ((InternalEObject)newQuery).eInverseAdd(this, InternalEObject.EOPPOSITE_FEATURE_BASE - EFacetPackage.FACET_ATTRIBUTE__QUERY, null, msgs);
+ }
+ msgs = basicSetQuery(newQuery, msgs);
+ if (msgs != null) {
+ msgs.dispatch();
+ }
+ }
+ else if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_ATTRIBUTE__QUERY, newQuery, newQuery));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eInverseAdd(final InternalEObject otherEnd, final int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ATTRIBUTE__FACET:
+ if (eInternalContainer() != null) {
+ msgs = eBasicRemoveFromContainer(msgs);
+ }
+ return basicSetFacet((Facet)otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eInverseRemove(final InternalEObject otherEnd, final int featureID, final NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ATTRIBUTE__FACET:
+ return basicSetFacet(null, msgs);
+ case EFacetPackage.FACET_ATTRIBUTE__QUERY:
+ return basicSetQuery(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(final NotificationChain msgs) {
+ switch (eContainerFeatureID()) {
+ case EFacetPackage.FACET_ATTRIBUTE__FACET:
+ return eInternalContainer().eInverseRemove(this, EFacetPackage.FACET__FACET_ELEMENTS, Facet.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ATTRIBUTE__CATEGORIES:
+ return getCategories();
+ case EFacetPackage.FACET_ATTRIBUTE__FACET:
+ return getFacet();
+ case EFacetPackage.FACET_ATTRIBUTE__OVERRIDE:
+ if (resolve) {
+ return getOverride();
+ }
+ return basicGetOverride();
+ case EFacetPackage.FACET_ATTRIBUTE__QUERY:
+ return getQuery();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ATTRIBUTE__CATEGORIES:
+ getCategories().clear();
+ getCategories().addAll((Collection<? extends Category>)newValue);
+ return;
+ case EFacetPackage.FACET_ATTRIBUTE__FACET:
+ setFacet((Facet)newValue);
+ return;
+ case EFacetPackage.FACET_ATTRIBUTE__OVERRIDE:
+ setOverride((ETypedElement)newValue);
+ return;
+ case EFacetPackage.FACET_ATTRIBUTE__QUERY:
+ setQuery((Query)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ATTRIBUTE__CATEGORIES:
+ getCategories().clear();
+ return;
+ case EFacetPackage.FACET_ATTRIBUTE__FACET:
+ setFacet((Facet)null);
+ return;
+ case EFacetPackage.FACET_ATTRIBUTE__OVERRIDE:
+ setOverride((ETypedElement)null);
+ return;
+ case EFacetPackage.FACET_ATTRIBUTE__QUERY:
+ setQuery((Query)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ATTRIBUTE__CATEGORIES:
+ return this.categories != null && !this.categories.isEmpty();
+ case EFacetPackage.FACET_ATTRIBUTE__FACET:
+ return getFacet() != null;
+ case EFacetPackage.FACET_ATTRIBUTE__OVERRIDE:
+ return this.override != null;
+ case EFacetPackage.FACET_ATTRIBUTE__QUERY:
+ return this.query != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public int eBaseStructuralFeatureID(final int derivedFeatureID, final Class<?> baseClass) {
+ if (baseClass == FacetElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET_ATTRIBUTE__CATEGORIES: return EFacetPackage.FACET_ELEMENT__CATEGORIES;
+ case EFacetPackage.FACET_ATTRIBUTE__FACET: return EFacetPackage.FACET_ELEMENT__FACET;
+ case EFacetPackage.FACET_ATTRIBUTE__OVERRIDE: return EFacetPackage.FACET_ELEMENT__OVERRIDE;
+ default: return -1;
+ }
+ }
+ if (baseClass == QueryFacetElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET_ATTRIBUTE__QUERY: return EFacetPackage.QUERY_FACET_ELEMENT__QUERY;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public int eDerivedStructuralFeatureID(final int baseFeatureID, final Class<?> baseClass) {
+ if (baseClass == FacetElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.FACET_ELEMENT__CATEGORIES: return EFacetPackage.FACET_ATTRIBUTE__CATEGORIES;
+ case EFacetPackage.FACET_ELEMENT__FACET: return EFacetPackage.FACET_ATTRIBUTE__FACET;
+ case EFacetPackage.FACET_ELEMENT__OVERRIDE: return EFacetPackage.FACET_ATTRIBUTE__OVERRIDE;
+ default: return -1;
+ }
+ }
+ if (baseClass == QueryFacetElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.QUERY_FACET_ELEMENT__QUERY: return EFacetPackage.FACET_ATTRIBUTE__QUERY;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+} //FacetAttributeImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetElementImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetElementImpl.java
new file mode 100644
index 00000000000..9303911d733
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetElementImpl.java
@@ -0,0 +1,362 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.ETypedElementImpl;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+
+import org.eclipse.papyrus.emf.facet.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.FacetElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Facet Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetElementImpl#getCategories <em>Categories</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetElementImpl#getFacet <em>Facet</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetElementImpl#getOverride <em>Override</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public abstract class FacetElementImpl extends ETypedElementImpl implements FacetElement {
+ /**
+ * The cached value of the '{@link #getCategories() <em>Categories</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCategories()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EList<Category> categories;
+
+ /**
+ * The cached value of the '{@link #getOverride() <em>Override</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOverride()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected ETypedElement override;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected FacetElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.FACET_ELEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EList<Category> getCategories() {
+ if (this.categories == null) {
+ this.categories = new EObjectResolvingEList<Category>(Category.class, this, EFacetPackage.FACET_ELEMENT__CATEGORIES);
+ }
+ return this.categories;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Facet getFacet() {
+ if (eContainerFeatureID() != EFacetPackage.FACET_ELEMENT__FACET) {
+ return null;
+ }
+ return (Facet)eContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public NotificationChain basicSetFacet(final Facet newFacet, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject)newFacet, EFacetPackage.FACET_ELEMENT__FACET, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setFacet(final Facet newFacet) {
+ if (newFacet != eInternalContainer() || (eContainerFeatureID() != EFacetPackage.FACET_ELEMENT__FACET && newFacet != null)) {
+ if (EcoreUtil.isAncestor(this, newFacet))
+ {
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); //$NON-NLS-1$
+ }
+ NotificationChain msgs = null;
+ if (eInternalContainer() != null) {
+ msgs = eBasicRemoveFromContainer(msgs);
+ }
+ if (newFacet != null) {
+ msgs = ((InternalEObject)newFacet).eInverseAdd(this, EFacetPackage.FACET__FACET_ELEMENTS, Facet.class, msgs);
+ }
+ msgs = basicSetFacet(newFacet, msgs);
+ if (msgs != null) {
+ msgs.dispatch();
+ }
+ }
+ else if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_ELEMENT__FACET, newFacet, newFacet));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public ETypedElement getOverride() {
+ if (this.override != null && this.override.eIsProxy()) {
+ InternalEObject oldOverride = (InternalEObject)this.override;
+ this.override = (ETypedElement)eResolveProxy(oldOverride);
+ if (this.override != oldOverride) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.FACET_ELEMENT__OVERRIDE, oldOverride, this.override));
+ }
+ }
+ }
+ return this.override;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public ETypedElement basicGetOverride() {
+ return this.override;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setOverride(final ETypedElement newOverride) {
+ ETypedElement oldOverride = this.override;
+ this.override = newOverride;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_ELEMENT__OVERRIDE, oldOverride, this.override));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eInverseAdd(final InternalEObject otherEnd, final int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ELEMENT__FACET:
+ if (eInternalContainer() != null) {
+ msgs = eBasicRemoveFromContainer(msgs);
+ }
+ return basicSetFacet((Facet)otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eInverseRemove(final InternalEObject otherEnd, final int featureID, final NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ELEMENT__FACET:
+ return basicSetFacet(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(final NotificationChain msgs) {
+ switch (eContainerFeatureID()) {
+ case EFacetPackage.FACET_ELEMENT__FACET:
+ return eInternalContainer().eInverseRemove(this, EFacetPackage.FACET__FACET_ELEMENTS, Facet.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ELEMENT__CATEGORIES:
+ return getCategories();
+ case EFacetPackage.FACET_ELEMENT__FACET:
+ return getFacet();
+ case EFacetPackage.FACET_ELEMENT__OVERRIDE:
+ if (resolve) {
+ return getOverride();
+ }
+ return basicGetOverride();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ELEMENT__CATEGORIES:
+ getCategories().clear();
+ getCategories().addAll((Collection<? extends Category>)newValue);
+ return;
+ case EFacetPackage.FACET_ELEMENT__FACET:
+ setFacet((Facet)newValue);
+ return;
+ case EFacetPackage.FACET_ELEMENT__OVERRIDE:
+ setOverride((ETypedElement)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ELEMENT__CATEGORIES:
+ getCategories().clear();
+ return;
+ case EFacetPackage.FACET_ELEMENT__FACET:
+ setFacet((Facet)null);
+ return;
+ case EFacetPackage.FACET_ELEMENT__OVERRIDE:
+ setOverride((ETypedElement)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_ELEMENT__CATEGORIES:
+ return this.categories != null && !this.categories.isEmpty();
+ case EFacetPackage.FACET_ELEMENT__FACET:
+ return getFacet() != null;
+ case EFacetPackage.FACET_ELEMENT__OVERRIDE:
+ return this.override != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //FacetElementImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetImpl.java
new file mode 100644
index 00000000000..33fbb1afe4a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetImpl.java
@@ -0,0 +1,451 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.EClassifierImpl;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.FacetElement;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Facet</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetImpl#getFacetSet <em>Facet Set</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetImpl#getConformanceQuery <em>Conformance Query</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetImpl#getExtendedMetaclass <em>Extended Metaclass</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetImpl#getFacetElements <em>Facet Elements</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class FacetImpl extends EClassifierImpl implements Facet {
+ /**
+ * The cached value of the '{@link #getConformanceQuery() <em>Conformance Query</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getConformanceQuery()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected Query conformanceQuery;
+
+ /**
+ * The cached value of the '{@link #getExtendedMetaclass() <em>Extended Metaclass</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getExtendedMetaclass()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EClass extendedMetaclass;
+
+ /**
+ * The cached value of the '{@link #getFacetElements() <em>Facet Elements</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFacetElements()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EList<FacetElement> facetElements;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected FacetImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.FACET;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public FacetSet getFacetSet() {
+ if (eContainerFeatureID() != EFacetPackage.FACET__FACET_SET) {
+ return null;
+ }
+ return (FacetSet)eContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public NotificationChain basicSetFacetSet(final FacetSet newFacetSet, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject)newFacetSet, EFacetPackage.FACET__FACET_SET, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setFacetSet(final FacetSet newFacetSet) {
+ if (newFacetSet != eInternalContainer() || (eContainerFeatureID() != EFacetPackage.FACET__FACET_SET && newFacetSet != null)) {
+ if (EcoreUtil.isAncestor(this, newFacetSet))
+ {
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); //$NON-NLS-1$
+ }
+ NotificationChain msgs = null;
+ if (eInternalContainer() != null) {
+ msgs = eBasicRemoveFromContainer(msgs);
+ }
+ if (newFacetSet != null) {
+ msgs = ((InternalEObject)newFacetSet).eInverseAdd(this, EFacetPackage.FACET_SET__FACETS, FacetSet.class, msgs);
+ }
+ msgs = basicSetFacetSet(newFacetSet, msgs);
+ if (msgs != null) {
+ msgs.dispatch();
+ }
+ }
+ else if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET__FACET_SET, newFacetSet, newFacetSet));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Query getConformanceQuery() {
+ return this.conformanceQuery;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public NotificationChain basicSetConformanceQuery(final Query newConformanceQuery, NotificationChain msgs) {
+ Query oldConformanceQuery = this.conformanceQuery;
+ this.conformanceQuery = newConformanceQuery;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET__CONFORMANCE_QUERY, oldConformanceQuery, newConformanceQuery);
+ if (msgs == null) {
+ msgs = notification;
+ } else {
+ msgs.add(notification);
+ }
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setConformanceQuery(final Query newConformanceQuery) {
+ if (newConformanceQuery != this.conformanceQuery) {
+ NotificationChain msgs = null;
+ if (this.conformanceQuery != null) {
+ msgs = ((InternalEObject)this.conformanceQuery).eInverseRemove(this, InternalEObject.EOPPOSITE_FEATURE_BASE - EFacetPackage.FACET__CONFORMANCE_QUERY, null, msgs);
+ }
+ if (newConformanceQuery != null) {
+ msgs = ((InternalEObject)newConformanceQuery).eInverseAdd(this, InternalEObject.EOPPOSITE_FEATURE_BASE - EFacetPackage.FACET__CONFORMANCE_QUERY, null, msgs);
+ }
+ msgs = basicSetConformanceQuery(newConformanceQuery, msgs);
+ if (msgs != null) {
+ msgs.dispatch();
+ }
+ }
+ else if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET__CONFORMANCE_QUERY, newConformanceQuery, newConformanceQuery));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getExtendedMetaclass() {
+ if (this.extendedMetaclass != null && this.extendedMetaclass.eIsProxy()) {
+ InternalEObject oldExtendedMetaclass = (InternalEObject)this.extendedMetaclass;
+ this.extendedMetaclass = (EClass)eResolveProxy(oldExtendedMetaclass);
+ if (this.extendedMetaclass != oldExtendedMetaclass) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.FACET__EXTENDED_METACLASS, oldExtendedMetaclass, this.extendedMetaclass));
+ }
+ }
+ }
+ return this.extendedMetaclass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass basicGetExtendedMetaclass() {
+ return this.extendedMetaclass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setExtendedMetaclass(final EClass newExtendedMetaclass) {
+ EClass oldExtendedMetaclass = this.extendedMetaclass;
+ this.extendedMetaclass = newExtendedMetaclass;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET__EXTENDED_METACLASS, oldExtendedMetaclass, this.extendedMetaclass));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EList<FacetElement> getFacetElements() {
+ if (this.facetElements == null) {
+ this.facetElements = new EObjectContainmentWithInverseEList<FacetElement>(FacetElement.class, this, EFacetPackage.FACET__FACET_ELEMENTS, EFacetPackage.FACET_ELEMENT__FACET);
+ }
+ return this.facetElements;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(final InternalEObject otherEnd, final int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.FACET__FACET_SET:
+ if (eInternalContainer() != null) {
+ msgs = eBasicRemoveFromContainer(msgs);
+ }
+ return basicSetFacetSet((FacetSet)otherEnd, msgs);
+ case EFacetPackage.FACET__FACET_ELEMENTS:
+ return ((InternalEList<InternalEObject>)(InternalEList<?>)getFacetElements()).basicAdd(otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eInverseRemove(final InternalEObject otherEnd, final int featureID, final NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.FACET__FACET_SET:
+ return basicSetFacetSet(null, msgs);
+ case EFacetPackage.FACET__CONFORMANCE_QUERY:
+ return basicSetConformanceQuery(null, msgs);
+ case EFacetPackage.FACET__FACET_ELEMENTS:
+ return ((InternalEList<?>)getFacetElements()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(final NotificationChain msgs) {
+ switch (eContainerFeatureID()) {
+ case EFacetPackage.FACET__FACET_SET:
+ return eInternalContainer().eInverseRemove(this, EFacetPackage.FACET_SET__FACETS, FacetSet.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.FACET__FACET_SET:
+ return getFacetSet();
+ case EFacetPackage.FACET__CONFORMANCE_QUERY:
+ return getConformanceQuery();
+ case EFacetPackage.FACET__EXTENDED_METACLASS:
+ if (resolve) {
+ return getExtendedMetaclass();
+ }
+ return basicGetExtendedMetaclass();
+ case EFacetPackage.FACET__FACET_ELEMENTS:
+ return getFacetElements();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.FACET__FACET_SET:
+ setFacetSet((FacetSet)newValue);
+ return;
+ case EFacetPackage.FACET__CONFORMANCE_QUERY:
+ setConformanceQuery((Query)newValue);
+ return;
+ case EFacetPackage.FACET__EXTENDED_METACLASS:
+ setExtendedMetaclass((EClass)newValue);
+ return;
+ case EFacetPackage.FACET__FACET_ELEMENTS:
+ getFacetElements().clear();
+ getFacetElements().addAll((Collection<? extends FacetElement>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET__FACET_SET:
+ setFacetSet((FacetSet)null);
+ return;
+ case EFacetPackage.FACET__CONFORMANCE_QUERY:
+ setConformanceQuery((Query)null);
+ return;
+ case EFacetPackage.FACET__EXTENDED_METACLASS:
+ setExtendedMetaclass((EClass)null);
+ return;
+ case EFacetPackage.FACET__FACET_ELEMENTS:
+ getFacetElements().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET__FACET_SET:
+ return getFacetSet() != null;
+ case EFacetPackage.FACET__CONFORMANCE_QUERY:
+ return this.conformanceQuery != null;
+ case EFacetPackage.FACET__EXTENDED_METACLASS:
+ return this.extendedMetaclass != null;
+ case EFacetPackage.FACET__FACET_ELEMENTS:
+ return this.facetElements != null && !this.facetElements.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //FacetImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetOperationImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetOperationImpl.java
new file mode 100644
index 00000000000..980e4259b53
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetOperationImpl.java
@@ -0,0 +1,500 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EOperationImpl;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+
+import org.eclipse.papyrus.emf.facet.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.FacetElement;
+import org.eclipse.papyrus.emf.facet.efacet.FacetOperation;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.QueryFacetElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Facet Operation</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetOperationImpl#getCategories <em>Categories</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetOperationImpl#getFacet <em>Facet</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetOperationImpl#getOverride <em>Override</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetOperationImpl#getQuery <em>Query</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class FacetOperationImpl extends EOperationImpl implements FacetOperation {
+ /**
+ * The cached value of the '{@link #getCategories() <em>Categories</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCategories()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EList<Category> categories;
+
+ /**
+ * The cached value of the '{@link #getOverride() <em>Override</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOverride()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected ETypedElement override;
+
+ /**
+ * The cached value of the '{@link #getQuery() <em>Query</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getQuery()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected Query query;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected FacetOperationImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.FACET_OPERATION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EList<Category> getCategories() {
+ if (this.categories == null) {
+ this.categories = new EObjectResolvingEList<Category>(Category.class, this, EFacetPackage.FACET_OPERATION__CATEGORIES);
+ }
+ return this.categories;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Facet getFacet() {
+ if (eContainerFeatureID() != EFacetPackage.FACET_OPERATION__FACET) {
+ return null;
+ }
+ return (Facet)eContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public NotificationChain basicSetFacet(final Facet newFacet, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject)newFacet, EFacetPackage.FACET_OPERATION__FACET, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setFacet(final Facet newFacet) {
+ if (newFacet != eInternalContainer() || (eContainerFeatureID() != EFacetPackage.FACET_OPERATION__FACET && newFacet != null)) {
+ if (EcoreUtil.isAncestor(this, newFacet))
+ {
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); //$NON-NLS-1$
+ }
+ NotificationChain msgs = null;
+ if (eInternalContainer() != null) {
+ msgs = eBasicRemoveFromContainer(msgs);
+ }
+ if (newFacet != null) {
+ msgs = ((InternalEObject)newFacet).eInverseAdd(this, EFacetPackage.FACET__FACET_ELEMENTS, Facet.class, msgs);
+ }
+ msgs = basicSetFacet(newFacet, msgs);
+ if (msgs != null) {
+ msgs.dispatch();
+ }
+ }
+ else if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_OPERATION__FACET, newFacet, newFacet));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public ETypedElement getOverride() {
+ if (this.override != null && this.override.eIsProxy()) {
+ InternalEObject oldOverride = (InternalEObject)this.override;
+ this.override = (ETypedElement)eResolveProxy(oldOverride);
+ if (this.override != oldOverride) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.FACET_OPERATION__OVERRIDE, oldOverride, this.override));
+ }
+ }
+ }
+ return this.override;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public ETypedElement basicGetOverride() {
+ return this.override;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setOverride(final ETypedElement newOverride) {
+ ETypedElement oldOverride = this.override;
+ this.override = newOverride;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_OPERATION__OVERRIDE, oldOverride, this.override));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Query getQuery() {
+ return this.query;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public NotificationChain basicSetQuery(final Query newQuery, NotificationChain msgs) {
+ Query oldQuery = this.query;
+ this.query = newQuery;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_OPERATION__QUERY, oldQuery, newQuery);
+ if (msgs == null) {
+ msgs = notification;
+ } else {
+ msgs.add(notification);
+ }
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setQuery(final Query newQuery) {
+ if (newQuery != this.query) {
+ NotificationChain msgs = null;
+ if (this.query != null) {
+ msgs = ((InternalEObject)this.query).eInverseRemove(this, InternalEObject.EOPPOSITE_FEATURE_BASE - EFacetPackage.FACET_OPERATION__QUERY, null, msgs);
+ }
+ if (newQuery != null) {
+ msgs = ((InternalEObject)newQuery).eInverseAdd(this, InternalEObject.EOPPOSITE_FEATURE_BASE - EFacetPackage.FACET_OPERATION__QUERY, null, msgs);
+ }
+ msgs = basicSetQuery(newQuery, msgs);
+ if (msgs != null) {
+ msgs.dispatch();
+ }
+ }
+ else if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_OPERATION__QUERY, newQuery, newQuery));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eInverseAdd(final InternalEObject otherEnd, final int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.FACET_OPERATION__FACET:
+ if (eInternalContainer() != null) {
+ msgs = eBasicRemoveFromContainer(msgs);
+ }
+ return basicSetFacet((Facet)otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eInverseRemove(final InternalEObject otherEnd, final int featureID, final NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.FACET_OPERATION__FACET:
+ return basicSetFacet(null, msgs);
+ case EFacetPackage.FACET_OPERATION__QUERY:
+ return basicSetQuery(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(final NotificationChain msgs) {
+ switch (eContainerFeatureID()) {
+ case EFacetPackage.FACET_OPERATION__FACET:
+ return eInternalContainer().eInverseRemove(this, EFacetPackage.FACET__FACET_ELEMENTS, Facet.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.FACET_OPERATION__CATEGORIES:
+ return getCategories();
+ case EFacetPackage.FACET_OPERATION__FACET:
+ return getFacet();
+ case EFacetPackage.FACET_OPERATION__OVERRIDE:
+ if (resolve) {
+ return getOverride();
+ }
+ return basicGetOverride();
+ case EFacetPackage.FACET_OPERATION__QUERY:
+ return getQuery();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.FACET_OPERATION__CATEGORIES:
+ getCategories().clear();
+ getCategories().addAll((Collection<? extends Category>)newValue);
+ return;
+ case EFacetPackage.FACET_OPERATION__FACET:
+ setFacet((Facet)newValue);
+ return;
+ case EFacetPackage.FACET_OPERATION__OVERRIDE:
+ setOverride((ETypedElement)newValue);
+ return;
+ case EFacetPackage.FACET_OPERATION__QUERY:
+ setQuery((Query)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_OPERATION__CATEGORIES:
+ getCategories().clear();
+ return;
+ case EFacetPackage.FACET_OPERATION__FACET:
+ setFacet((Facet)null);
+ return;
+ case EFacetPackage.FACET_OPERATION__OVERRIDE:
+ setOverride((ETypedElement)null);
+ return;
+ case EFacetPackage.FACET_OPERATION__QUERY:
+ setQuery((Query)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_OPERATION__CATEGORIES:
+ return this.categories != null && !this.categories.isEmpty();
+ case EFacetPackage.FACET_OPERATION__FACET:
+ return getFacet() != null;
+ case EFacetPackage.FACET_OPERATION__OVERRIDE:
+ return this.override != null;
+ case EFacetPackage.FACET_OPERATION__QUERY:
+ return this.query != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public int eBaseStructuralFeatureID(final int derivedFeatureID, final Class<?> baseClass) {
+ if (baseClass == FacetElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET_OPERATION__CATEGORIES: return EFacetPackage.FACET_ELEMENT__CATEGORIES;
+ case EFacetPackage.FACET_OPERATION__FACET: return EFacetPackage.FACET_ELEMENT__FACET;
+ case EFacetPackage.FACET_OPERATION__OVERRIDE: return EFacetPackage.FACET_ELEMENT__OVERRIDE;
+ default: return -1;
+ }
+ }
+ if (baseClass == QueryFacetElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET_OPERATION__QUERY: return EFacetPackage.QUERY_FACET_ELEMENT__QUERY;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public int eDerivedStructuralFeatureID(final int baseFeatureID, final Class<?> baseClass) {
+ if (baseClass == FacetElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.FACET_ELEMENT__CATEGORIES: return EFacetPackage.FACET_OPERATION__CATEGORIES;
+ case EFacetPackage.FACET_ELEMENT__FACET: return EFacetPackage.FACET_OPERATION__FACET;
+ case EFacetPackage.FACET_ELEMENT__OVERRIDE: return EFacetPackage.FACET_OPERATION__OVERRIDE;
+ default: return -1;
+ }
+ }
+ if (baseClass == QueryFacetElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.QUERY_FACET_ELEMENT__QUERY: return EFacetPackage.FACET_OPERATION__QUERY;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+} //FacetOperationImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetReferenceImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetReferenceImpl.java
new file mode 100644
index 00000000000..2c9ac5dafcf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetReferenceImpl.java
@@ -0,0 +1,500 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EReferenceImpl;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+
+import org.eclipse.papyrus.emf.facet.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.FacetElement;
+import org.eclipse.papyrus.emf.facet.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.QueryFacetElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Facet Reference</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetReferenceImpl#getCategories <em>Categories</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetReferenceImpl#getFacet <em>Facet</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetReferenceImpl#getOverride <em>Override</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetReferenceImpl#getQuery <em>Query</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class FacetReferenceImpl extends EReferenceImpl implements FacetReference {
+ /**
+ * The cached value of the '{@link #getCategories() <em>Categories</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCategories()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EList<Category> categories;
+
+ /**
+ * The cached value of the '{@link #getOverride() <em>Override</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOverride()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected ETypedElement override;
+
+ /**
+ * The cached value of the '{@link #getQuery() <em>Query</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getQuery()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected Query query;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected FacetReferenceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.FACET_REFERENCE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EList<Category> getCategories() {
+ if (this.categories == null) {
+ this.categories = new EObjectResolvingEList<Category>(Category.class, this, EFacetPackage.FACET_REFERENCE__CATEGORIES);
+ }
+ return this.categories;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Facet getFacet() {
+ if (eContainerFeatureID() != EFacetPackage.FACET_REFERENCE__FACET) {
+ return null;
+ }
+ return (Facet)eContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public NotificationChain basicSetFacet(final Facet newFacet, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject)newFacet, EFacetPackage.FACET_REFERENCE__FACET, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setFacet(final Facet newFacet) {
+ if (newFacet != eInternalContainer() || (eContainerFeatureID() != EFacetPackage.FACET_REFERENCE__FACET && newFacet != null)) {
+ if (EcoreUtil.isAncestor(this, newFacet))
+ {
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); //$NON-NLS-1$
+ }
+ NotificationChain msgs = null;
+ if (eInternalContainer() != null) {
+ msgs = eBasicRemoveFromContainer(msgs);
+ }
+ if (newFacet != null) {
+ msgs = ((InternalEObject)newFacet).eInverseAdd(this, EFacetPackage.FACET__FACET_ELEMENTS, Facet.class, msgs);
+ }
+ msgs = basicSetFacet(newFacet, msgs);
+ if (msgs != null) {
+ msgs.dispatch();
+ }
+ }
+ else if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_REFERENCE__FACET, newFacet, newFacet));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public ETypedElement getOverride() {
+ if (this.override != null && this.override.eIsProxy()) {
+ InternalEObject oldOverride = (InternalEObject)this.override;
+ this.override = (ETypedElement)eResolveProxy(oldOverride);
+ if (this.override != oldOverride) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.FACET_REFERENCE__OVERRIDE, oldOverride, this.override));
+ }
+ }
+ }
+ return this.override;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public ETypedElement basicGetOverride() {
+ return this.override;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setOverride(final ETypedElement newOverride) {
+ ETypedElement oldOverride = this.override;
+ this.override = newOverride;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_REFERENCE__OVERRIDE, oldOverride, this.override));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Query getQuery() {
+ return this.query;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public NotificationChain basicSetQuery(final Query newQuery, NotificationChain msgs) {
+ Query oldQuery = this.query;
+ this.query = newQuery;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_REFERENCE__QUERY, oldQuery, newQuery);
+ if (msgs == null) {
+ msgs = notification;
+ } else {
+ msgs.add(notification);
+ }
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setQuery(final Query newQuery) {
+ if (newQuery != this.query) {
+ NotificationChain msgs = null;
+ if (this.query != null) {
+ msgs = ((InternalEObject)this.query).eInverseRemove(this, InternalEObject.EOPPOSITE_FEATURE_BASE - EFacetPackage.FACET_REFERENCE__QUERY, null, msgs);
+ }
+ if (newQuery != null) {
+ msgs = ((InternalEObject)newQuery).eInverseAdd(this, InternalEObject.EOPPOSITE_FEATURE_BASE - EFacetPackage.FACET_REFERENCE__QUERY, null, msgs);
+ }
+ msgs = basicSetQuery(newQuery, msgs);
+ if (msgs != null) {
+ msgs.dispatch();
+ }
+ }
+ else if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_REFERENCE__QUERY, newQuery, newQuery));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eInverseAdd(final InternalEObject otherEnd, final int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.FACET_REFERENCE__FACET:
+ if (eInternalContainer() != null) {
+ msgs = eBasicRemoveFromContainer(msgs);
+ }
+ return basicSetFacet((Facet)otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eInverseRemove(final InternalEObject otherEnd, final int featureID, final NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.FACET_REFERENCE__FACET:
+ return basicSetFacet(null, msgs);
+ case EFacetPackage.FACET_REFERENCE__QUERY:
+ return basicSetQuery(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(final NotificationChain msgs) {
+ switch (eContainerFeatureID()) {
+ case EFacetPackage.FACET_REFERENCE__FACET:
+ return eInternalContainer().eInverseRemove(this, EFacetPackage.FACET__FACET_ELEMENTS, Facet.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.FACET_REFERENCE__CATEGORIES:
+ return getCategories();
+ case EFacetPackage.FACET_REFERENCE__FACET:
+ return getFacet();
+ case EFacetPackage.FACET_REFERENCE__OVERRIDE:
+ if (resolve) {
+ return getOverride();
+ }
+ return basicGetOverride();
+ case EFacetPackage.FACET_REFERENCE__QUERY:
+ return getQuery();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.FACET_REFERENCE__CATEGORIES:
+ getCategories().clear();
+ getCategories().addAll((Collection<? extends Category>)newValue);
+ return;
+ case EFacetPackage.FACET_REFERENCE__FACET:
+ setFacet((Facet)newValue);
+ return;
+ case EFacetPackage.FACET_REFERENCE__OVERRIDE:
+ setOverride((ETypedElement)newValue);
+ return;
+ case EFacetPackage.FACET_REFERENCE__QUERY:
+ setQuery((Query)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_REFERENCE__CATEGORIES:
+ getCategories().clear();
+ return;
+ case EFacetPackage.FACET_REFERENCE__FACET:
+ setFacet((Facet)null);
+ return;
+ case EFacetPackage.FACET_REFERENCE__OVERRIDE:
+ setOverride((ETypedElement)null);
+ return;
+ case EFacetPackage.FACET_REFERENCE__QUERY:
+ setQuery((Query)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_REFERENCE__CATEGORIES:
+ return this.categories != null && !this.categories.isEmpty();
+ case EFacetPackage.FACET_REFERENCE__FACET:
+ return getFacet() != null;
+ case EFacetPackage.FACET_REFERENCE__OVERRIDE:
+ return this.override != null;
+ case EFacetPackage.FACET_REFERENCE__QUERY:
+ return this.query != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public int eBaseStructuralFeatureID(final int derivedFeatureID, final Class<?> baseClass) {
+ if (baseClass == FacetElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET_REFERENCE__CATEGORIES: return EFacetPackage.FACET_ELEMENT__CATEGORIES;
+ case EFacetPackage.FACET_REFERENCE__FACET: return EFacetPackage.FACET_ELEMENT__FACET;
+ case EFacetPackage.FACET_REFERENCE__OVERRIDE: return EFacetPackage.FACET_ELEMENT__OVERRIDE;
+ default: return -1;
+ }
+ }
+ if (baseClass == QueryFacetElement.class) {
+ switch (derivedFeatureID) {
+ case EFacetPackage.FACET_REFERENCE__QUERY: return EFacetPackage.QUERY_FACET_ELEMENT__QUERY;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public int eDerivedStructuralFeatureID(final int baseFeatureID, final Class<?> baseClass) {
+ if (baseClass == FacetElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.FACET_ELEMENT__CATEGORIES: return EFacetPackage.FACET_REFERENCE__CATEGORIES;
+ case EFacetPackage.FACET_ELEMENT__FACET: return EFacetPackage.FACET_REFERENCE__FACET;
+ case EFacetPackage.FACET_ELEMENT__OVERRIDE: return EFacetPackage.FACET_REFERENCE__OVERRIDE;
+ default: return -1;
+ }
+ }
+ if (baseClass == QueryFacetElement.class) {
+ switch (baseFeatureID) {
+ case EFacetPackage.QUERY_FACET_ELEMENT__QUERY: return EFacetPackage.FACET_REFERENCE__QUERY;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+} //FacetReferenceImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetSetImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetSetImpl.java
new file mode 100644
index 00000000000..93959a61546
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/FacetSetImpl.java
@@ -0,0 +1,318 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.emf.facet.efacet.Category;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.FacetSet;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Facet Set</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetSetImpl#getFacets <em>Facets</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetSetImpl#getCategories <em>Categories</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.FacetSetImpl#getExtendedEPackage <em>Extended EPackage</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class FacetSetImpl extends EPackageImpl implements FacetSet {
+ /**
+ * The cached value of the '{@link #getFacets() <em>Facets</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFacets()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EList<Facet> facets;
+
+ /**
+ * The cached value of the '{@link #getCategories() <em>Categories</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCategories()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EList<Category> categories;
+
+ /**
+ * The cached value of the '{@link #getExtendedEPackage() <em>Extended EPackage</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getExtendedEPackage()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EPackage extendedEPackage;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected FacetSetImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.FACET_SET;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EList<Facet> getFacets() {
+ if (this.facets == null) {
+ this.facets = new EObjectContainmentWithInverseEList<Facet>(Facet.class, this, EFacetPackage.FACET_SET__FACETS, EFacetPackage.FACET__FACET_SET);
+ }
+ return this.facets;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EList<Category> getCategories() {
+ if (this.categories == null) {
+ this.categories = new EObjectContainmentEList<Category>(Category.class, this, EFacetPackage.FACET_SET__CATEGORIES);
+ }
+ return this.categories;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EPackage getExtendedEPackage() {
+ if (this.extendedEPackage != null && this.extendedEPackage.eIsProxy()) {
+ InternalEObject oldExtendedEPackage = (InternalEObject)this.extendedEPackage;
+ this.extendedEPackage = (EPackage)eResolveProxy(oldExtendedEPackage);
+ if (this.extendedEPackage != oldExtendedEPackage) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.FACET_SET__EXTENDED_EPACKAGE, oldExtendedEPackage, this.extendedEPackage));
+ }
+ }
+ }
+ return this.extendedEPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EPackage basicGetExtendedEPackage() {
+ return this.extendedEPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setExtendedEPackage(final EPackage newExtendedEPackage) {
+ EPackage oldExtendedEPackage = this.extendedEPackage;
+ this.extendedEPackage = newExtendedEPackage;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.FACET_SET__EXTENDED_EPACKAGE, oldExtendedEPackage, this.extendedEPackage));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(final InternalEObject otherEnd, final int featureID, final NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.FACET_SET__FACETS:
+ return ((InternalEList<InternalEObject>)(InternalEList<?>)getFacets()).basicAdd(otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eInverseRemove(final InternalEObject otherEnd, final int featureID, final NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.FACET_SET__FACETS:
+ return ((InternalEList<?>)getFacets()).basicRemove(otherEnd, msgs);
+ case EFacetPackage.FACET_SET__CATEGORIES:
+ return ((InternalEList<?>)getCategories()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.FACET_SET__FACETS:
+ return getFacets();
+ case EFacetPackage.FACET_SET__CATEGORIES:
+ return getCategories();
+ case EFacetPackage.FACET_SET__EXTENDED_EPACKAGE:
+ if (resolve) {
+ return getExtendedEPackage();
+ }
+ return basicGetExtendedEPackage();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.FACET_SET__FACETS:
+ getFacets().clear();
+ getFacets().addAll((Collection<? extends Facet>)newValue);
+ return;
+ case EFacetPackage.FACET_SET__CATEGORIES:
+ getCategories().clear();
+ getCategories().addAll((Collection<? extends Category>)newValue);
+ return;
+ case EFacetPackage.FACET_SET__EXTENDED_EPACKAGE:
+ setExtendedEPackage((EPackage)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_SET__FACETS:
+ getFacets().clear();
+ return;
+ case EFacetPackage.FACET_SET__CATEGORIES:
+ getCategories().clear();
+ return;
+ case EFacetPackage.FACET_SET__EXTENDED_EPACKAGE:
+ setExtendedEPackage((EPackage)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.FACET_SET__FACETS:
+ return this.facets != null && !this.facets.isEmpty();
+ case EFacetPackage.FACET_SET__CATEGORIES:
+ return this.categories != null && !this.categories.isEmpty();
+ case EFacetPackage.FACET_SET__EXTENDED_EPACKAGE:
+ return this.extendedEPackage != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //FacetSetImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/LiteralImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/LiteralImpl.java
new file mode 100644
index 00000000000..1af0bb28db2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/LiteralImpl.java
@@ -0,0 +1,201 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Literal;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Literal</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.LiteralImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class LiteralImpl extends QueryImpl implements Literal {
+ /**
+ * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected static final String VALUE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected String value = LiteralImpl.VALUE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected LiteralImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.LITERAL;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public String getValue() {
+ return this.value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setValue(final String newValue) {
+ String oldValue = this.value;
+ this.value = newValue;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.LITERAL__VALUE, oldValue, this.value));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.LITERAL__VALUE:
+ return getValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.LITERAL__VALUE:
+ setValue((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.LITERAL__VALUE:
+ setValue(LiteralImpl.VALUE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.LITERAL__VALUE:
+ return LiteralImpl.VALUE_EDEFAULT == null ? this.value != null : !LiteralImpl.VALUE_EDEFAULT.equals(this.value);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (value: "); //$NON-NLS-1$
+ result.append(this.value);
+ result.append(')');
+ return result.toString();
+ }
+
+} //LiteralImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/OppositeReferenceImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/OppositeReferenceImpl.java
new file mode 100644
index 00000000000..2b2e2dd02d7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/OppositeReferenceImpl.java
@@ -0,0 +1,194 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.OppositeReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Opposite Reference</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.OppositeReferenceImpl#getFOpposite <em>FOpposite</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class OppositeReferenceImpl extends FacetElementImpl implements OppositeReference {
+ /**
+ * The cached value of the '{@link #getFOpposite() <em>FOpposite</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getFOpposite()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EReference fOpposite;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected OppositeReferenceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.OPPOSITE_REFERENCE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference getFOpposite() {
+ if (this.fOpposite != null && this.fOpposite.eIsProxy()) {
+ InternalEObject oldFOpposite = (InternalEObject)this.fOpposite;
+ this.fOpposite = (EReference)eResolveProxy(oldFOpposite);
+ if (this.fOpposite != oldFOpposite) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.OPPOSITE_REFERENCE__FOPPOSITE, oldFOpposite, this.fOpposite));
+ }
+ }
+ }
+ return this.fOpposite;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EReference basicGetFOpposite() {
+ return this.fOpposite;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setFOpposite(final EReference newFOpposite) {
+ EReference oldFOpposite = this.fOpposite;
+ this.fOpposite = newFOpposite;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.OPPOSITE_REFERENCE__FOPPOSITE, oldFOpposite, this.fOpposite));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.OPPOSITE_REFERENCE__FOPPOSITE:
+ if (resolve) {
+ return getFOpposite();
+ }
+ return basicGetFOpposite();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.OPPOSITE_REFERENCE__FOPPOSITE:
+ setFOpposite((EReference)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.OPPOSITE_REFERENCE__FOPPOSITE:
+ setFOpposite((EReference)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.OPPOSITE_REFERENCE__FOPPOSITE:
+ return this.fOpposite != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //OppositeReferenceImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/ParameterImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/ParameterImpl.java
new file mode 100644
index 00000000000..dd82b75a7ee
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/ParameterImpl.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ETypedElementImpl;
+
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Parameter;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Parameter</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class ParameterImpl extends ETypedElementImpl implements Parameter {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected ParameterImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.PARAMETER;
+ }
+
+} //ParameterImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/ParameterValueImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/ParameterValueImpl.java
new file mode 100644
index 00000000000..86437578443
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/ParameterValueImpl.java
@@ -0,0 +1,260 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Parameter;
+import org.eclipse.papyrus.emf.facet.efacet.ParameterValue;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Parameter Value</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.ParameterValueImpl#getParameter <em>Parameter</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.ParameterValueImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class ParameterValueImpl extends EObjectImpl implements ParameterValue {
+ /**
+ * The cached value of the '{@link #getParameter() <em>Parameter</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getParameter()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected Parameter parameter;
+
+ /**
+ * The cached value of the '{@link #getValue() <em>Value</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getValue()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EList<Object> value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected ParameterValueImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.PARAMETER_VALUE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Parameter getParameter() {
+ if (this.parameter != null && this.parameter.eIsProxy()) {
+ InternalEObject oldParameter = (InternalEObject)this.parameter;
+ this.parameter = (Parameter)eResolveProxy(oldParameter);
+ if (this.parameter != oldParameter) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.PARAMETER_VALUE__PARAMETER, oldParameter, this.parameter));
+ }
+ }
+ }
+ return this.parameter;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Parameter basicGetParameter() {
+ return this.parameter;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setParameter(final Parameter newParameter) {
+ Parameter oldParameter = this.parameter;
+ this.parameter = newParameter;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.PARAMETER_VALUE__PARAMETER, oldParameter, this.parameter));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EList<Object> getValue() {
+ if (this.value == null) {
+ this.value = new EDataTypeUniqueEList<Object>(Object.class, this, EFacetPackage.PARAMETER_VALUE__VALUE);
+ }
+ return this.value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.PARAMETER_VALUE__PARAMETER:
+ if (resolve) {
+ return getParameter();
+ }
+ return basicGetParameter();
+ case EFacetPackage.PARAMETER_VALUE__VALUE:
+ return getValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.PARAMETER_VALUE__PARAMETER:
+ setParameter((Parameter)newValue);
+ return;
+ case EFacetPackage.PARAMETER_VALUE__VALUE:
+ getValue().clear();
+ getValue().addAll((Collection<? extends Object>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.PARAMETER_VALUE__PARAMETER:
+ setParameter((Parameter)null);
+ return;
+ case EFacetPackage.PARAMETER_VALUE__VALUE:
+ getValue().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.PARAMETER_VALUE__PARAMETER:
+ return this.parameter != null;
+ case EFacetPackage.PARAMETER_VALUE__VALUE:
+ return this.value != null && !this.value.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (value: "); //$NON-NLS-1$
+ result.append(this.value);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ParameterValueImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QueryContextImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QueryContextImpl.java
new file mode 100644
index 00000000000..8d18c708552
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QueryContextImpl.java
@@ -0,0 +1,225 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.emf.ecore.resource.Resource;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.QueryContext;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Query Context</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryContextImpl#getSelectedModelElements <em>Selected Model Elements</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryContextImpl#getSelectedModels <em>Selected Models</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class QueryContextImpl extends EObjectImpl implements QueryContext {
+ /**
+ * The cached value of the '{@link #getSelectedModelElements() <em>Selected Model Elements</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSelectedModelElements()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EList<EObject> selectedModelElements;
+
+ /**
+ * The cached value of the '{@link #getSelectedModels() <em>Selected Models</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSelectedModels()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EList<Resource> selectedModels;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected QueryContextImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.QUERY_CONTEXT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EList<EObject> getSelectedModelElements() {
+ if (this.selectedModelElements == null) {
+ this.selectedModelElements = new EObjectResolvingEList<EObject>(EObject.class, this, EFacetPackage.QUERY_CONTEXT__SELECTED_MODEL_ELEMENTS);
+ }
+ return this.selectedModelElements;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EList<Resource> getSelectedModels() {
+ if (this.selectedModels == null) {
+ this.selectedModels = new EDataTypeUniqueEList<Resource>(Resource.class, this, EFacetPackage.QUERY_CONTEXT__SELECTED_MODELS);
+ }
+ return this.selectedModels;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_CONTEXT__SELECTED_MODEL_ELEMENTS:
+ return getSelectedModelElements();
+ case EFacetPackage.QUERY_CONTEXT__SELECTED_MODELS:
+ return getSelectedModels();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_CONTEXT__SELECTED_MODEL_ELEMENTS:
+ getSelectedModelElements().clear();
+ getSelectedModelElements().addAll((Collection<? extends EObject>)newValue);
+ return;
+ case EFacetPackage.QUERY_CONTEXT__SELECTED_MODELS:
+ getSelectedModels().clear();
+ getSelectedModels().addAll((Collection<? extends Resource>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_CONTEXT__SELECTED_MODEL_ELEMENTS:
+ getSelectedModelElements().clear();
+ return;
+ case EFacetPackage.QUERY_CONTEXT__SELECTED_MODELS:
+ getSelectedModels().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_CONTEXT__SELECTED_MODEL_ELEMENTS:
+ return this.selectedModelElements != null && !this.selectedModelElements.isEmpty();
+ case EFacetPackage.QUERY_CONTEXT__SELECTED_MODELS:
+ return this.selectedModels != null && !this.selectedModels.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (selectedModels: "); //$NON-NLS-1$
+ result.append(this.selectedModels);
+ result.append(')');
+ return result.toString();
+ }
+
+} //QueryContextImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QueryFacetElementImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QueryFacetElementImpl.java
new file mode 100644
index 00000000000..d4a38c673ab
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QueryFacetElementImpl.java
@@ -0,0 +1,220 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.QueryFacetElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Query Facet Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryFacetElementImpl#getQuery <em>Query</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public abstract class QueryFacetElementImpl extends FacetElementImpl implements QueryFacetElement {
+ /**
+ * The cached value of the '{@link #getQuery() <em>Query</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getQuery()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected Query query;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected QueryFacetElementImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.QUERY_FACET_ELEMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Query getQuery() {
+ return this.query;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public NotificationChain basicSetQuery(final Query newQuery, NotificationChain msgs) {
+ Query oldQuery = this.query;
+ this.query = newQuery;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, EFacetPackage.QUERY_FACET_ELEMENT__QUERY, oldQuery, newQuery);
+ if (msgs == null) {
+ msgs = notification;
+ } else {
+ msgs.add(notification);
+ }
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setQuery(final Query newQuery) {
+ if (newQuery != this.query) {
+ NotificationChain msgs = null;
+ if (this.query != null) {
+ msgs = ((InternalEObject)this.query).eInverseRemove(this, InternalEObject.EOPPOSITE_FEATURE_BASE - EFacetPackage.QUERY_FACET_ELEMENT__QUERY, null, msgs);
+ }
+ if (newQuery != null) {
+ msgs = ((InternalEObject)newQuery).eInverseAdd(this, InternalEObject.EOPPOSITE_FEATURE_BASE - EFacetPackage.QUERY_FACET_ELEMENT__QUERY, null, msgs);
+ }
+ msgs = basicSetQuery(newQuery, msgs);
+ if (msgs != null) {
+ msgs.dispatch();
+ }
+ }
+ else if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.QUERY_FACET_ELEMENT__QUERY, newQuery, newQuery));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eInverseRemove(final InternalEObject otherEnd, final int featureID, final NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_FACET_ELEMENT__QUERY:
+ return basicSetQuery(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_FACET_ELEMENT__QUERY:
+ return getQuery();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_FACET_ELEMENT__QUERY:
+ setQuery((Query)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_FACET_ELEMENT__QUERY:
+ setQuery((Query)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_FACET_ELEMENT__QUERY:
+ return this.query != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //QueryFacetElementImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QueryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QueryImpl.java
new file mode 100644
index 00000000000..60bf8d1de3c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QueryImpl.java
@@ -0,0 +1,402 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.ETypedElementImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Parameter;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Query</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryImpl#getScope <em>Scope</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryImpl#isHasSideEffect <em>Has Side Effect</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryImpl#isCanBeCached <em>Can Be Cached</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryImpl#getParameters <em>Parameters</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public abstract class QueryImpl extends ETypedElementImpl implements Query {
+ /**
+ * The cached value of the '{@link #getScope() <em>Scope</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getScope()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EClass scope;
+
+ /**
+ * The default value of the '{@link #isHasSideEffect() <em>Has Side Effect</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isHasSideEffect()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected static final boolean HAS_SIDE_EFFECT_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isHasSideEffect() <em>Has Side Effect</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isHasSideEffect()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected boolean hasSideEffect = QueryImpl.HAS_SIDE_EFFECT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isCanBeCached() <em>Can Be Cached</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isCanBeCached()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected static final boolean CAN_BE_CACHED_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isCanBeCached() <em>Can Be Cached</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #isCanBeCached()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected boolean canBeCached = QueryImpl.CAN_BE_CACHED_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getParameters() <em>Parameters</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getParameters()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EList<Parameter> parameters;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected QueryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.QUERY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass getScope() {
+ if (this.scope != null && this.scope.eIsProxy()) {
+ InternalEObject oldScope = (InternalEObject)this.scope;
+ this.scope = (EClass)eResolveProxy(oldScope);
+ if (this.scope != oldScope) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.QUERY__SCOPE, oldScope, this.scope));
+ }
+ }
+ }
+ return this.scope;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EClass basicGetScope() {
+ return this.scope;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setScope(final EClass newScope) {
+ EClass oldScope = this.scope;
+ this.scope = newScope;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.QUERY__SCOPE, oldScope, this.scope));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public boolean isHasSideEffect() {
+ return this.hasSideEffect;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setHasSideEffect(final boolean newHasSideEffect) {
+ boolean oldHasSideEffect = this.hasSideEffect;
+ this.hasSideEffect = newHasSideEffect;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.QUERY__HAS_SIDE_EFFECT, oldHasSideEffect, this.hasSideEffect));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public boolean isCanBeCached() {
+ return this.canBeCached;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setCanBeCached(final boolean newCanBeCached) {
+ boolean oldCanBeCached = this.canBeCached;
+ this.canBeCached = newCanBeCached;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.QUERY__CAN_BE_CACHED, oldCanBeCached, this.canBeCached));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EList<Parameter> getParameters() {
+ if (this.parameters == null) {
+ this.parameters = new EObjectContainmentEList<Parameter>(Parameter.class, this, EFacetPackage.QUERY__PARAMETERS);
+ }
+ return this.parameters;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eInverseRemove(final InternalEObject otherEnd, final int featureID, final NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.QUERY__PARAMETERS:
+ return ((InternalEList<?>)getParameters()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.QUERY__SCOPE:
+ if (resolve) {
+ return getScope();
+ }
+ return basicGetScope();
+ case EFacetPackage.QUERY__HAS_SIDE_EFFECT:
+ return isHasSideEffect();
+ case EFacetPackage.QUERY__CAN_BE_CACHED:
+ return isCanBeCached();
+ case EFacetPackage.QUERY__PARAMETERS:
+ return getParameters();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.QUERY__SCOPE:
+ setScope((EClass)newValue);
+ return;
+ case EFacetPackage.QUERY__HAS_SIDE_EFFECT:
+ setHasSideEffect((Boolean)newValue);
+ return;
+ case EFacetPackage.QUERY__CAN_BE_CACHED:
+ setCanBeCached((Boolean)newValue);
+ return;
+ case EFacetPackage.QUERY__PARAMETERS:
+ getParameters().clear();
+ getParameters().addAll((Collection<? extends Parameter>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.QUERY__SCOPE:
+ setScope((EClass)null);
+ return;
+ case EFacetPackage.QUERY__HAS_SIDE_EFFECT:
+ setHasSideEffect(QueryImpl.HAS_SIDE_EFFECT_EDEFAULT);
+ return;
+ case EFacetPackage.QUERY__CAN_BE_CACHED:
+ setCanBeCached(QueryImpl.CAN_BE_CACHED_EDEFAULT);
+ return;
+ case EFacetPackage.QUERY__PARAMETERS:
+ getParameters().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.QUERY__SCOPE:
+ return this.scope != null;
+ case EFacetPackage.QUERY__HAS_SIDE_EFFECT:
+ return this.hasSideEffect != QueryImpl.HAS_SIDE_EFFECT_EDEFAULT;
+ case EFacetPackage.QUERY__CAN_BE_CACHED:
+ return this.canBeCached != QueryImpl.CAN_BE_CACHED_EDEFAULT;
+ case EFacetPackage.QUERY__PARAMETERS:
+ return this.parameters != null && !this.parameters.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (hasSideEffect: "); //$NON-NLS-1$
+ result.append(this.hasSideEffect);
+ result.append(", canBeCached: "); //$NON-NLS-1$
+ result.append(this.canBeCached);
+ result.append(')');
+ return result.toString();
+ }
+
+} //QueryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QueryResultImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QueryResultImpl.java
new file mode 100644
index 00000000000..23bbdd63ea5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QueryResultImpl.java
@@ -0,0 +1,548 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+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.EObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.QueryResult;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Query Result</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryResultImpl#getQuery <em>Query</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryResultImpl#getScope <em>Scope</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryResultImpl#getParameterValues <em>Parameter Values</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryResultImpl#getResult <em>Result</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryResultImpl#getException <em>Exception</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.QueryResultImpl#getSource <em>Source</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class QueryResultImpl extends EObjectImpl implements QueryResult {
+ /**
+ * The cached value of the '{@link #getQuery() <em>Query</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getQuery()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected Query query;
+
+ /**
+ * The cached value of the '{@link #getScope() <em>Scope</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getScope()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EObject scope;
+
+ /**
+ * The cached value of the '{@link #getParameterValues() <em>Parameter Values</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getParameterValues()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EList<ParameterValue> parameterValues;
+
+ /**
+ * The default value of the '{@link #getResult() <em>Result</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getResult()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected static final Object RESULT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getResult() <em>Result</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getResult()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected Object result = QueryResultImpl.RESULT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getException() <em>Exception</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getException()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected static final Exception EXCEPTION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getException() <em>Exception</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getException()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected Exception exception = QueryResultImpl.EXCEPTION_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getSource() <em>Source</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSource()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EObject source;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected QueryResultImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.QUERY_RESULT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Query getQuery() {
+ if (this.query != null && this.query.eIsProxy()) {
+ InternalEObject oldQuery = (InternalEObject)this.query;
+ this.query = (Query)eResolveProxy(oldQuery);
+ if (this.query != oldQuery) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.QUERY_RESULT__QUERY, oldQuery, this.query));
+ }
+ }
+ }
+ return this.query;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Query basicGetQuery() {
+ return this.query;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setQuery(final Query newQuery) {
+ Query oldQuery = this.query;
+ this.query = newQuery;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.QUERY_RESULT__QUERY, oldQuery, this.query));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EObject getScope() {
+ if (this.scope != null && this.scope.eIsProxy()) {
+ InternalEObject oldScope = (InternalEObject)this.scope;
+ this.scope = eResolveProxy(oldScope);
+ if (this.scope != oldScope) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.QUERY_RESULT__SCOPE, oldScope, this.scope));
+ }
+ }
+ }
+ return this.scope;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EObject basicGetScope() {
+ return this.scope;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setScope(final EObject newScope) {
+ EObject oldScope = this.scope;
+ this.scope = newScope;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.QUERY_RESULT__SCOPE, oldScope, this.scope));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EList<ParameterValue> getParameterValues() {
+ if (this.parameterValues == null) {
+ this.parameterValues = new EObjectContainmentEList<ParameterValue>(ParameterValue.class, this, EFacetPackage.QUERY_RESULT__PARAMETER_VALUES);
+ }
+ return this.parameterValues;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Object getResult() {
+ return this.result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setResult(final Object newResult) {
+ Object oldResult = this.result;
+ this.result = newResult;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.QUERY_RESULT__RESULT, oldResult, this.result));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Exception getException() {
+ return this.exception;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setException(final Exception newException) {
+ Exception oldException = this.exception;
+ this.exception = newException;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.QUERY_RESULT__EXCEPTION, oldException, this.exception));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EObject getSource() {
+ if (this.source != null && this.source.eIsProxy()) {
+ InternalEObject oldSource = (InternalEObject)this.source;
+ this.source = eResolveProxy(oldSource);
+ if (this.source != oldSource) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.QUERY_RESULT__SOURCE, oldSource, this.source));
+ }
+ }
+ }
+ return this.source;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EObject basicGetSource() {
+ return this.source;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setSource(final EObject newSource) {
+ EObject oldSource = this.source;
+ this.source = newSource;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.QUERY_RESULT__SOURCE, oldSource, this.source));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eInverseRemove(final InternalEObject otherEnd, final int featureID, final NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_RESULT__PARAMETER_VALUES:
+ return ((InternalEList<?>)getParameterValues()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_RESULT__QUERY:
+ if (resolve) {
+ return getQuery();
+ }
+ return basicGetQuery();
+ case EFacetPackage.QUERY_RESULT__SCOPE:
+ if (resolve) {
+ return getScope();
+ }
+ return basicGetScope();
+ case EFacetPackage.QUERY_RESULT__PARAMETER_VALUES:
+ return getParameterValues();
+ case EFacetPackage.QUERY_RESULT__RESULT:
+ return getResult();
+ case EFacetPackage.QUERY_RESULT__EXCEPTION:
+ return getException();
+ case EFacetPackage.QUERY_RESULT__SOURCE:
+ if (resolve) {
+ return getSource();
+ }
+ return basicGetSource();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_RESULT__QUERY:
+ setQuery((Query)newValue);
+ return;
+ case EFacetPackage.QUERY_RESULT__SCOPE:
+ setScope((EObject)newValue);
+ return;
+ case EFacetPackage.QUERY_RESULT__PARAMETER_VALUES:
+ getParameterValues().clear();
+ getParameterValues().addAll((Collection<? extends ParameterValue>)newValue);
+ return;
+ case EFacetPackage.QUERY_RESULT__RESULT:
+ setResult(newValue);
+ return;
+ case EFacetPackage.QUERY_RESULT__EXCEPTION:
+ setException((Exception)newValue);
+ return;
+ case EFacetPackage.QUERY_RESULT__SOURCE:
+ setSource((EObject)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_RESULT__QUERY:
+ setQuery((Query)null);
+ return;
+ case EFacetPackage.QUERY_RESULT__SCOPE:
+ setScope((EObject)null);
+ return;
+ case EFacetPackage.QUERY_RESULT__PARAMETER_VALUES:
+ getParameterValues().clear();
+ return;
+ case EFacetPackage.QUERY_RESULT__RESULT:
+ setResult(QueryResultImpl.RESULT_EDEFAULT);
+ return;
+ case EFacetPackage.QUERY_RESULT__EXCEPTION:
+ setException(QueryResultImpl.EXCEPTION_EDEFAULT);
+ return;
+ case EFacetPackage.QUERY_RESULT__SOURCE:
+ setSource((EObject)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_RESULT__QUERY:
+ return this.query != null;
+ case EFacetPackage.QUERY_RESULT__SCOPE:
+ return this.scope != null;
+ case EFacetPackage.QUERY_RESULT__PARAMETER_VALUES:
+ return this.parameterValues != null && !this.parameterValues.isEmpty();
+ case EFacetPackage.QUERY_RESULT__RESULT:
+ return QueryResultImpl.RESULT_EDEFAULT == null ? this.result != null : !QueryResultImpl.RESULT_EDEFAULT.equals(this.result);
+ case EFacetPackage.QUERY_RESULT__EXCEPTION:
+ return QueryResultImpl.EXCEPTION_EDEFAULT == null ? this.exception != null : !QueryResultImpl.EXCEPTION_EDEFAULT.equals(this.exception);
+ case EFacetPackage.QUERY_RESULT__SOURCE:
+ return this.source != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (result: "); //$NON-NLS-1$
+ result.append(result);
+ result.append(", exception: "); //$NON-NLS-1$
+ result.append(this.exception);
+ result.append(')');
+ return result.toString();
+ }
+
+} //QueryResultImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QuerySetImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QuerySetImpl.java
new file mode 100644
index 00000000000..b1944943a92
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/QuerySetImpl.java
@@ -0,0 +1,267 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.QuerySet;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Query Set</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.QuerySetImpl#getQueries <em>Queries</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.QuerySetImpl#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class QuerySetImpl extends EObjectImpl implements QuerySet {
+ /**
+ * The cached value of the '{@link #getQueries() <em>Queries</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getQueries()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected EList<Query> queries;
+
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ 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
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected String name = QuerySetImpl.NAME_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected QuerySetImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.QUERY_SET;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EList<Query> getQueries() {
+ if (this.queries == null) {
+ this.queries = new EObjectContainmentEList<Query>(Query.class, this, EFacetPackage.QUERY_SET__QUERIES);
+ }
+ return this.queries;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public String getName() {
+ return this.name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setName(final String newName) {
+ String oldName = this.name;
+ this.name = newName;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.QUERY_SET__NAME, oldName, this.name));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public NotificationChain eInverseRemove(final InternalEObject otherEnd, final int featureID, final NotificationChain msgs) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_SET__QUERIES:
+ return ((InternalEList<?>)getQueries()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_SET__QUERIES:
+ return getQueries();
+ case EFacetPackage.QUERY_SET__NAME:
+ return getName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_SET__QUERIES:
+ getQueries().clear();
+ getQueries().addAll((Collection<? extends Query>)newValue);
+ return;
+ case EFacetPackage.QUERY_SET__NAME:
+ setName((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_SET__QUERIES:
+ getQueries().clear();
+ return;
+ case EFacetPackage.QUERY_SET__NAME:
+ setName(QuerySetImpl.NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.QUERY_SET__QUERIES:
+ return this.queries != null && !this.queries.isEmpty();
+ case EFacetPackage.QUERY_SET__NAME:
+ return QuerySetImpl.NAME_EDEFAULT == null ? this.name != null : !QuerySetImpl.NAME_EDEFAULT.equals(this.name);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (name: "); //$NON-NLS-1$
+ result.append(this.name);
+ result.append(')');
+ return result.toString();
+ }
+
+} //QuerySetImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/TypedElementRefImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/TypedElementRefImpl.java
new file mode 100644
index 00000000000..00488adae0e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/impl/TypedElementRefImpl.java
@@ -0,0 +1,194 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.efacet.TypedElementRef;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Typed Element Ref</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.efacet.impl.TypedElementRefImpl#getTypedElement <em>Typed Element</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class TypedElementRefImpl extends QueryImpl implements TypedElementRef {
+ /**
+ * The cached value of the '{@link #getTypedElement() <em>Typed Element</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTypedElement()
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ * @ordered
+ */
+ @Deprecated
+ protected ETypedElement typedElement;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected TypedElementRefImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ protected EClass eStaticClass() {
+ return EFacetPackage.Literals.TYPED_ELEMENT_REF;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public ETypedElement getTypedElement() {
+ if (this.typedElement != null && this.typedElement.eIsProxy()) {
+ InternalEObject oldTypedElement = (InternalEObject)this.typedElement;
+ this.typedElement = (ETypedElement)eResolveProxy(oldTypedElement);
+ if (this.typedElement != oldTypedElement) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, EFacetPackage.TYPED_ELEMENT_REF__TYPED_ELEMENT, oldTypedElement, this.typedElement));
+ }
+ }
+ }
+ return this.typedElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public ETypedElement basicGetTypedElement() {
+ return this.typedElement;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public void setTypedElement(final ETypedElement newTypedElement) {
+ ETypedElement oldTypedElement = this.typedElement;
+ this.typedElement = newTypedElement;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, EFacetPackage.TYPED_ELEMENT_REF__TYPED_ELEMENT, oldTypedElement, this.typedElement));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case EFacetPackage.TYPED_ELEMENT_REF__TYPED_ELEMENT:
+ if (resolve) {
+ return getTypedElement();
+ }
+ return basicGetTypedElement();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case EFacetPackage.TYPED_ELEMENT_REF__TYPED_ELEMENT:
+ setTypedElement((ETypedElement)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.TYPED_ELEMENT_REF__TYPED_ELEMENT:
+ setTypedElement((ETypedElement)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case EFacetPackage.TYPED_ELEMENT_REF__TYPED_ELEMENT:
+ return this.typedElement != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //TypedElementRefImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/plugin/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/plugin/Activator.java
new file mode 100644
index 00000000000..c37d3ac1065
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/plugin/Activator.java
@@ -0,0 +1,69 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.efacet.plugin;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle
+ */
+public class Activator extends Plugin {
+
+ // The plug-in ID
+ public static final String PLUGIN_ID = "org.eclipse.papyrus.emf.facet.efacet"; //$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
+ * )
+ */
+ @Override
+ public void start(final BundleContext context) throws Exception {
+ super.start(context);
+ Activator.plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext
+ * )
+ */
+ @Override
+ public void stop(final BundleContext context) throws Exception {
+ Activator.plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/util/EFacetAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/util/EFacetAdapterFactory.java
new file mode 100644
index 00000000000..a282fa9d83d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/util/EFacetAdapterFactory.java
@@ -0,0 +1,659 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.efacet.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.ETypedElement;
+
+import org.eclipse.papyrus.emf.facet.efacet.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage
+ * @generated
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+// generated code
+@SuppressWarnings("all")
+public class EFacetAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected static EFacetPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public EFacetAdapterFactory() {
+ if (EFacetAdapterFactory.modelPackage == null) {
+ EFacetAdapterFactory.modelPackage = EFacetPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public boolean isFactoryForType(final Object object) {
+ if (object == EFacetAdapterFactory.modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == EFacetAdapterFactory.modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ protected EFacetSwitch<Adapter> modelSwitch =
+ new EFacetSwitch<Adapter>() {
+ @Override
+ public Adapter caseFacetAttribute(final FacetAttribute object) {
+ return createFacetAttributeAdapter();
+ }
+ @Override
+ public Adapter caseFacetReference(final FacetReference object) {
+ return createFacetReferenceAdapter();
+ }
+ @Override
+ public Adapter caseFacetOperation(final FacetOperation object) {
+ return createFacetOperationAdapter();
+ }
+ @Override
+ public Adapter caseFacetSet(final FacetSet object) {
+ return createFacetSetAdapter();
+ }
+ @Override
+ public Adapter caseFacet(final Facet object) {
+ return createFacetAdapter();
+ }
+ @Override
+ public Adapter caseQuery(final Query object) {
+ return createQueryAdapter();
+ }
+ @Override
+ public Adapter caseQueryResult(final QueryResult object) {
+ return createQueryResultAdapter();
+ }
+ @Override
+ public Adapter caseCategory(final Category object) {
+ return createCategoryAdapter();
+ }
+ @Override
+ public Adapter caseFacetElement(final FacetElement object) {
+ return createFacetElementAdapter();
+ }
+ @Override
+ public Adapter caseQueryFacetElement(final QueryFacetElement object) {
+ return createQueryFacetElementAdapter();
+ }
+ @Override
+ public Adapter caseOppositeReference(final OppositeReference object) {
+ return createOppositeReferenceAdapter();
+ }
+ @Override
+ public Adapter caseQuerySet(final QuerySet object) {
+ return createQuerySetAdapter();
+ }
+ @Override
+ public Adapter caseLiteral(final Literal object) {
+ return createLiteralAdapter();
+ }
+ @Override
+ public Adapter caseTypedElementRef(final TypedElementRef object) {
+ return createTypedElementRefAdapter();
+ }
+ @Override
+ public Adapter caseParameter(final Parameter object) {
+ return createParameterAdapter();
+ }
+ @Override
+ public Adapter caseParameterValue(final ParameterValue object) {
+ return createParameterValueAdapter();
+ }
+ @Override
+ public Adapter caseQueryContext(final QueryContext object) {
+ return createQueryContextAdapter();
+ }
+ @Override
+ public Adapter caseEModelElement(final EModelElement object) {
+ return createEModelElementAdapter();
+ }
+ @Override
+ public Adapter caseENamedElement(final ENamedElement object) {
+ return createENamedElementAdapter();
+ }
+ @Override
+ public Adapter caseETypedElement(final ETypedElement object) {
+ return createETypedElementAdapter();
+ }
+ @Override
+ public Adapter caseEStructuralFeature(final EStructuralFeature object) {
+ return createEStructuralFeatureAdapter();
+ }
+ @Override
+ public Adapter caseEAttribute(final EAttribute object) {
+ return createEAttributeAdapter();
+ }
+ @Override
+ public Adapter caseEReference(final EReference object) {
+ return createEReferenceAdapter();
+ }
+ @Override
+ public Adapter caseEOperation(final EOperation object) {
+ return createEOperationAdapter();
+ }
+ @Override
+ public Adapter caseEPackage(final EPackage object) {
+ return createEPackageAdapter();
+ }
+ @Override
+ public Adapter caseEClassifier(final EClassifier object) {
+ return createEClassifierAdapter();
+ }
+ @Override
+ public Adapter defaultCase(final EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ @Override
+ public Adapter createAdapter(final Notifier target) {
+ return this.modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.FacetAttribute <em>Facet Attribute</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.emf.facet.efacet.FacetAttribute
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createFacetAttributeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.FacetReference <em>Facet Reference</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.emf.facet.efacet.FacetReference
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createFacetReferenceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.FacetOperation <em>Facet Operation</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.emf.facet.efacet.FacetOperation
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createFacetOperationAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.FacetSet <em>Facet Set</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.emf.facet.efacet.FacetSet
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createFacetSetAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.Facet <em>Facet</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.emf.facet.efacet.Facet
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createFacetAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.Query <em>Query</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.emf.facet.efacet.Query
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.QueryResult <em>Query Result</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.emf.facet.efacet.QueryResult
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createQueryResultAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.Category <em>Category</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.emf.facet.efacet.Category
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createCategoryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.FacetElement <em>Facet Element</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.emf.facet.efacet.FacetElement
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createFacetElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.QueryFacetElement <em>Query Facet Element</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.emf.facet.efacet.QueryFacetElement
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createQueryFacetElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.OppositeReference <em>Opposite Reference</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.emf.facet.efacet.OppositeReference
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createOppositeReferenceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.QuerySet <em>Query Set</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.emf.facet.efacet.QuerySet
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createQuerySetAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.Literal <em>Literal</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.emf.facet.efacet.Literal
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createLiteralAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.TypedElementRef <em>Typed Element Ref</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.emf.facet.efacet.TypedElementRef
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createTypedElementRefAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.Parameter <em>Parameter</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.emf.facet.efacet.Parameter
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createParameterAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.ParameterValue <em>Parameter Value</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.emf.facet.efacet.ParameterValue
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createParameterValueAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.QueryContext <em>Query Context</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.emf.facet.efacet.QueryContext
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createQueryContextAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EModelElement <em>EModel Element</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.emf.ecore.EModelElement
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createEModelElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.ENamedElement <em>ENamed Element</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.emf.ecore.ENamedElement
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createENamedElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.ETypedElement <em>ETyped Element</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.emf.ecore.ETypedElement
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createETypedElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EStructuralFeature <em>EStructural Feature</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.emf.ecore.EStructuralFeature
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createEStructuralFeatureAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EAttribute <em>EAttribute</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.emf.ecore.EAttribute
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createEAttributeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EReference <em>EReference</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.emf.ecore.EReference
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createEReferenceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EOperation <em>EOperation</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.emf.ecore.EOperation
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createEOperationAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EPackage <em>EPackage</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.emf.ecore.EPackage
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createEPackageAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EClassifier <em>EClassifier</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.emf.ecore.EClassifier
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createEClassifierAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ * @deprecated use the new eFacet2 metamodel in org.eclipse.papyrus.emf.facet.efacet2.metamodel
+ */
+ @Deprecated
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //EFacetAdapterFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/util/EFacetSwitch.java b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/util/EFacetSwitch.java
new file mode 100644
index 00000000000..93e7033acab
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.efacet/src/org/eclipse/papyrus/emf/facet/efacet/util/EFacetSwitch.java
@@ -0,0 +1,670 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ * Gregoire Dupe (Mia-Software) - Bug 371210 - Compatibility of org.eclipse.papyrus.emf.facet.efacet with EMF 2.6.0
+ */
+package org.eclipse.papyrus.emf.facet.efacet.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.ETypedElement;
+
+import org.eclipse.papyrus.emf.facet.efacet.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.efacet.EFacetPackage
+ * @deprecated use the new eFacet metamodel in org.eclipse.papyrus.emf.facet.efacet.metamodel. Cf.
+ * https://bugs.eclipse.org/bugs/show_bug.cgi?id=373672
+ */
+@Deprecated
+public class EFacetSwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static EFacetPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EFacetSwitch() {
+ if (modelPackage == null) {
+ modelPackage = EFacetPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case EFacetPackage.FACET_ATTRIBUTE: {
+ FacetAttribute facetAttribute = (FacetAttribute)theEObject;
+ T result = caseFacetAttribute(facetAttribute);
+ if (result == null) result = caseEAttribute(facetAttribute);
+ if (result == null) result = caseQueryFacetElement(facetAttribute);
+ if (result == null) result = caseEStructuralFeature(facetAttribute);
+ if (result == null) result = caseFacetElement(facetAttribute);
+ if (result == null) result = caseETypedElement(facetAttribute);
+ if (result == null) result = caseENamedElement(facetAttribute);
+ if (result == null) result = caseEModelElement(facetAttribute);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.FACET_REFERENCE: {
+ FacetReference facetReference = (FacetReference)theEObject;
+ T result = caseFacetReference(facetReference);
+ if (result == null) result = caseEReference(facetReference);
+ if (result == null) result = caseQueryFacetElement(facetReference);
+ if (result == null) result = caseEStructuralFeature(facetReference);
+ if (result == null) result = caseFacetElement(facetReference);
+ if (result == null) result = caseETypedElement(facetReference);
+ if (result == null) result = caseENamedElement(facetReference);
+ if (result == null) result = caseEModelElement(facetReference);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.FACET_OPERATION: {
+ FacetOperation facetOperation = (FacetOperation)theEObject;
+ T result = caseFacetOperation(facetOperation);
+ if (result == null) result = caseEOperation(facetOperation);
+ if (result == null) result = caseQueryFacetElement(facetOperation);
+ if (result == null) result = caseFacetElement(facetOperation);
+ if (result == null) result = caseETypedElement(facetOperation);
+ if (result == null) result = caseENamedElement(facetOperation);
+ if (result == null) result = caseEModelElement(facetOperation);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.FACET_SET: {
+ FacetSet facetSet = (FacetSet)theEObject;
+ T result = caseFacetSet(facetSet);
+ if (result == null) result = caseEPackage(facetSet);
+ if (result == null) result = caseENamedElement(facetSet);
+ if (result == null) result = caseEModelElement(facetSet);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.FACET: {
+ Facet facet = (Facet)theEObject;
+ T result = caseFacet(facet);
+ if (result == null) result = caseEClassifier(facet);
+ if (result == null) result = caseENamedElement(facet);
+ if (result == null) result = caseEModelElement(facet);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.QUERY: {
+ Query query = (Query)theEObject;
+ T result = caseQuery(query);
+ if (result == null) result = caseETypedElement(query);
+ if (result == null) result = caseENamedElement(query);
+ if (result == null) result = caseEModelElement(query);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.QUERY_RESULT: {
+ QueryResult queryResult = (QueryResult)theEObject;
+ T result = caseQueryResult(queryResult);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.CATEGORY: {
+ Category category = (Category)theEObject;
+ T result = caseCategory(category);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.FACET_ELEMENT: {
+ FacetElement facetElement = (FacetElement)theEObject;
+ T result = caseFacetElement(facetElement);
+ if (result == null) result = caseETypedElement(facetElement);
+ if (result == null) result = caseENamedElement(facetElement);
+ if (result == null) result = caseEModelElement(facetElement);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.QUERY_FACET_ELEMENT: {
+ QueryFacetElement queryFacetElement = (QueryFacetElement)theEObject;
+ T result = caseQueryFacetElement(queryFacetElement);
+ if (result == null) result = caseFacetElement(queryFacetElement);
+ if (result == null) result = caseETypedElement(queryFacetElement);
+ if (result == null) result = caseENamedElement(queryFacetElement);
+ if (result == null) result = caseEModelElement(queryFacetElement);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.OPPOSITE_REFERENCE: {
+ OppositeReference oppositeReference = (OppositeReference)theEObject;
+ T result = caseOppositeReference(oppositeReference);
+ if (result == null) result = caseFacetElement(oppositeReference);
+ if (result == null) result = caseETypedElement(oppositeReference);
+ if (result == null) result = caseENamedElement(oppositeReference);
+ if (result == null) result = caseEModelElement(oppositeReference);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.QUERY_SET: {
+ QuerySet querySet = (QuerySet)theEObject;
+ T result = caseQuerySet(querySet);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.LITERAL: {
+ Literal literal = (Literal)theEObject;
+ T result = caseLiteral(literal);
+ if (result == null) result = caseQuery(literal);
+ if (result == null) result = caseETypedElement(literal);
+ if (result == null) result = caseENamedElement(literal);
+ if (result == null) result = caseEModelElement(literal);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.TYPED_ELEMENT_REF: {
+ TypedElementRef typedElementRef = (TypedElementRef)theEObject;
+ T result = caseTypedElementRef(typedElementRef);
+ if (result == null) result = caseQuery(typedElementRef);
+ if (result == null) result = caseETypedElement(typedElementRef);
+ if (result == null) result = caseENamedElement(typedElementRef);
+ if (result == null) result = caseEModelElement(typedElementRef);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.PARAMETER: {
+ Parameter parameter = (Parameter)theEObject;
+ T result = caseParameter(parameter);
+ if (result == null) result = caseETypedElement(parameter);
+ if (result == null) result = caseENamedElement(parameter);
+ if (result == null) result = caseEModelElement(parameter);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.PARAMETER_VALUE: {
+ ParameterValue parameterValue = (ParameterValue)theEObject;
+ T result = caseParameterValue(parameterValue);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case EFacetPackage.QUERY_CONTEXT: {
+ QueryContext queryContext = (QueryContext)theEObject;
+ T result = caseQueryContext(queryContext);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Facet Attribute</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>Facet Attribute</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFacetAttribute(FacetAttribute object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Facet Reference</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>Facet Reference</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFacetReference(FacetReference object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Facet Operation</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>Facet Operation</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFacetOperation(FacetOperation object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Facet Set</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>Facet Set</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFacetSet(FacetSet object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Facet</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>Facet</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFacet(Facet object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Query</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>Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseQuery(Query object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Query Result</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>Query Result</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseQueryResult(QueryResult object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Category</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>Category</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCategory(Category object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Facet Element</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>Facet Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFacetElement(FacetElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Query Facet Element</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>Query Facet Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseQueryFacetElement(QueryFacetElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Opposite Reference</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>Opposite Reference</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseOppositeReference(OppositeReference object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Query Set</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>Query Set</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseQuerySet(QuerySet object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Literal</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>Literal</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLiteral(Literal object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Typed Element Ref</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>Typed Element Ref</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseTypedElementRef(TypedElementRef object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Parameter</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>Parameter</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseParameter(Parameter object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Parameter Value</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>Parameter Value</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseParameterValue(ParameterValue object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Query Context</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>Query Context</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseQueryContext(QueryContext object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EModel Element</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>EModel Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEModelElement(EModelElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>ENamed Element</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>ENamed Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseENamedElement(ENamedElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>ETyped Element</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>ETyped Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseETypedElement(ETypedElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EStructural Feature</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>EStructural Feature</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEStructuralFeature(EStructuralFeature object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EAttribute</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>EAttribute</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEAttribute(EAttribute object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EReference</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>EReference</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEReference(EReference object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EOperation</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>EOperation</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEOperation(EOperation object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EPackage</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>EPackage</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEPackage(EPackage object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EClassifier</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>EClassifier</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEClassifier(EClassifier object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //EFacetSwitch
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.checkstyle
new file mode 100644
index 00000000000..7440a1bd492
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.checkstyle
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2011 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Guyomar (Mia-Software) - initial API and implementation
+-->
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+ <local-check-config name="EmfFacet" location="../org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.project
new file mode 100644
index 00000000000..b4165374dd2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.query.java.core</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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..7a21356d0dd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,3 @@
+#Thu Sep 22 10:55:04 CEST 2011
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..736cbcb7cdf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,8 @@
+#Thu Sep 22 11:02:26 CEST 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/API.README.txt b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/API.README.txt
new file mode 100644
index 00000000000..fd17411a6f4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/API.README.txt
@@ -0,0 +1,14 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349569 - Need new exceptions for java query class creation
+ *******************************************************************************/
+
+ org.eclipse.papyrus.emf.facet.query.java.core.internal.exceptions
+ x-friends:="org.eclipse.papyrus.emf.facet.query.java.ui" for EMF Facet Java Query Wizard
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..69def1ea953
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/META-INF/MANIFEST.MF
@@ -0,0 +1,21 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.query.java.core;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.query.java.core.internal.plugin.Activator
+Bundle-Vendor: %Bundle-Vendor
+Require-Bundle: org.eclipse.papyrus.emf.facet.efacet.core;bundle-version="0.1.0";visibility:=reexport,
+ org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.papyrus.emf.facet.query.java;bundle-version="0.1.0",
+ org.eclipse.papyrus.emf.facet.query.java.metamodel;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.1.0",
+ org.eclipse.papyrus.emf.facet.efacet.metamodel;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.1.0",
+ org.eclipse.emf.ecore;bundle-version="2.6.0",
+ org.eclipse.papyrus.emf.facet.efacet;bundle-version="0.2.0"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.query.java.core,
+ org.eclipse.papyrus.emf.facet.query.java.core.internal.exceptions
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..b42fcd6a086
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,14 @@
+##########################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+###########################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.query.java.core
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Java Query Core (Incubation) \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/about.html
new file mode 100644
index 00000000000..683d07ab900
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/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>January 18, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/build.properties
new file mode 100644
index 00000000000..7393d2ab973
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/build.properties
@@ -0,0 +1,19 @@
+##########################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+###########################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ about.html,\
+ plugin.xml,\
+ OSGI-INF/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/plugin.xml
new file mode 100644
index 00000000000..aa64420f976
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/plugin.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<!--
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+
+-->
+<plugin>
+ <extension point="org.eclipse.papyrus.emf.facet.efacet.core.query.evaluatorregistration">
+ <queryEvaluatorRegistration
+ class="org.eclipse.papyrus.emf.facet.query.java.core.internal.evaluator.JavaQueryEvaluatorFactory">
+ </queryEvaluatorRegistration>
+ </extension>
+
+ <extension point="org.eclipse.papyrus.emf.facet.efacet.core.queryImplementationRegistration">
+ <queryImplementationRegistration class="org.eclipse.papyrus.emf.facet.query.java.core.internal.evaluator.JavaQueryImplementationFactory"/>
+ </extension>
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IJavaQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IJavaQuery.java
new file mode 100644
index 00000000000..af52afa1734
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IJavaQuery.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.query.java.core;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.QueryExecutionException;
+
+/**
+ * This is the EMF Facet Java Query interface. A java query is a query written
+ * in Java.
+ *
+ * This interface has to be used to declare a Java query.
+ *
+ * @author Gregoire Dupe (Mia-Software)
+ * @param <T>
+ * the context type (i.e., the type of the elements on which the
+ * query can be evaluated)
+ * @param <R>
+ * the return type
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=374678
+ */
+@Deprecated
+public interface IJavaQuery<T extends EObject, R> {
+
+ // This interface is a copy of
+ // org.eclipse.papyrus.emf.facet.infra.query.core.java.IJavaModelQuery<T, R>
+
+ /**
+ * This method must be implemented by each sub class to implement query
+ * evaluation.
+ *
+ * @param context
+ * The query evaluation context (i.e., the element on which the
+ * query will be evaluated)
+ * @param parameterValues
+ * The query parameter values
+ * @return the result of the query
+ * @throws QueryExecutionException
+ */
+ public R evaluate(final T context, final IParameterValueList parameterValues)
+ throws QueryExecutionException;
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IJavaQuery2.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IJavaQuery2.java
new file mode 100644
index 00000000000..66e0f22beb4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IJavaQuery2.java
@@ -0,0 +1,46 @@
+/**
+ * Copyright (c) 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Nicolas Bros (Mia-Software) - Bug 362191 - [Restructuring] Query mechanism for eFacet2
+ */
+package org.eclipse.papyrus.emf.facet.query.java.core;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+
+/**
+ * This interface is implemented by each Java query (a Java query is a query written in Java).
+ *
+ * @param <T>
+ * the source type of the query
+ * @param <R>
+ * the return type of the query
+ * @since 0.2
+ */
+public interface IJavaQuery2<T extends EObject, R> {
+ // This interface is a copy of
+ // org.eclipse.papyrus.emf.facet.infra.query.core.java.IJavaModelQuery<T, R>
+
+ /**
+ * This method must be implemented by each sub class to implement query
+ * evaluation.
+ *
+ * @param source
+ * The model element on which the query will be evaluated
+ * @param parameterValues
+ * The query parameter values (only used for queries that implement operations)
+ * @return the result of the query
+ * @throws DerivedTypedElementException
+ */
+ R evaluate(T source, IParameterValueList2 parameterValues, IFacetManager facetManager)
+ throws DerivedTypedElementException;
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IParameterValueList.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IParameterValueList.java
new file mode 100644
index 00000000000..c709172ef69
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IParameterValueList.java
@@ -0,0 +1,68 @@
+/**
+ * Copyright (c) 2009, 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Bertrand Daru (Mia-Software) - initial API and implementation
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.query.java.core;
+
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.efacet.Parameter;
+import org.eclipse.papyrus.emf.facet.efacet.ParameterValue;
+
+/**
+ * List of query parameters, with two methods for direct access to value or
+ * parameter by name.
+ *
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=374678
+ */
+@Deprecated
+public interface IParameterValueList extends List<ParameterValue> {
+ // This interface is a rewrite of
+ // org.eclipse.papyrus.emf.facet.infra.query.core.java.ParameterValueList
+
+ /**
+ * Return the value of the parameter with the specified name.
+ *
+ * @param name
+ * the name of the parameter
+ * @return the value, or <code>null</code> if there is no parameter with
+ * that name.
+ */
+ public Object getValueByParameterName(final String name);
+
+ /**
+ * Return the parameter with the specified name.
+ *
+ * @param name
+ * the name of the parameter
+ * @return the parameter, or <code>null</code> if there is no parameter with
+ * that name.
+ */
+ public ParameterValue getParameterValueByName(final String name);
+
+ /**
+ * Return the parameter corresponding to the given parameter declaration.
+ *
+ * @param parameter
+ * the parameter declaration
+ * @return the parameter, or <code>null</code> if the given parameter
+ * declaration is unknown.
+ */
+ public ParameterValue getParameterValue(final Parameter parameter);
+
+ /**
+ * Return the value of a parameter
+ *
+ * @param parameter
+ * the parameter
+ * @return the value of the parameter
+ */
+ public Object getValue(final Parameter parameter);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IParameterValueList2.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IParameterValueList2.java
new file mode 100644
index 00000000000..6c3faf595c5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IParameterValueList2.java
@@ -0,0 +1,66 @@
+/**
+ * Copyright (c) 2009, 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Bertrand Daru (Mia-Software) - initial API and implementation
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ */
+package org.eclipse.papyrus.emf.facet.query.java.core;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+
+/**
+ * @since 0.2
+ */
+public interface IParameterValueList2 extends List<ParameterValue> {
+ // This interface is a rewrite of
+ // org.eclipse.papyrus.emf.facet.infra.query.core.java.ParameterValueList
+
+ /**
+ * Return the value of the parameter with the specified name.
+ *
+ * @param name
+ * the name of the parameter
+ * @return the value, or <code>null</code> if there is no parameter with
+ * that name.
+ */
+ public Object getValueByParameterName(final String name);
+
+ /**
+ * Return the parameter with the specified name.
+ *
+ * @param name
+ * the name of the parameter
+ * @return the parameter, or <code>null</code> if there is no parameter with
+ * that name.
+ */
+ public ParameterValue getParameterValueByName(final String name);
+
+ /**
+ * Return the parameter corresponding to the given parameter declaration.
+ *
+ * @param parameter
+ * the parameter declaration
+ * @return the parameter, or <code>null</code> if the given parameter
+ * declaration is unknown.
+ */
+ public ParameterValue getParameterValue(final EParameter parameter);
+
+ /**
+ * Return the value of a parameter
+ *
+ * @param parameter
+ * the parameter
+ * @return the value of the parameter
+ */
+ public Object getValue(final EParameter parameter);
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IParameterValueListFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IParameterValueListFactory.java
new file mode 100644
index 00000000000..5bd5a1d4f0c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IParameterValueListFactory.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ */
+package org.eclipse.papyrus.emf.facet.query.java.core;
+
+import org.eclipse.papyrus.emf.facet.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.query.java.core.internal.ParameterValueList;
+import org.eclipse.papyrus.emf.facet.query.java.core.internal.ParameterValueListFactoryImpl;
+
+/**
+ * Factory for the creation of instances of {@link ParameterValueList}.
+ *
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=374678
+ */
+@Deprecated
+public interface IParameterValueListFactory {
+
+ /**
+ * Factory singleton
+ */
+ public static final IParameterValueListFactory INSTANCE = new ParameterValueListFactoryImpl();
+
+ /**
+ * This method has to be used to get a new instance of
+ * {@link IParameterValueList}
+ *
+ * @param values
+ * the list of parameters
+ * @return an {@link IParameterValueList} instance containing the provided
+ * parameter values
+ */
+ public IParameterValueList createParameterValueList(
+ final ParameterValue... values);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IParameterValueListFactory2.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IParameterValueListFactory2.java
new file mode 100644
index 00000000000..97add8d5c66
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/IParameterValueListFactory2.java
@@ -0,0 +1,35 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ */
+package org.eclipse.papyrus.emf.facet.query.java.core;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.query.java.core.internal.ParameterValueListFactoryImpl2;
+
+/**
+ * @since 0.2
+ */
+public interface IParameterValueListFactory2 {
+ /** Factory singleton */
+ public static final IParameterValueListFactory2 INSTANCE = new ParameterValueListFactoryImpl2();
+
+ /**
+ * This method has to be used to get a new instance of {@link IParameterValueList2}
+ *
+ * @param values
+ * the list of parameters
+ * @return an {@link IParameterValueList2} instance containing the provided
+ * parameter values
+ */
+ public IParameterValueList2 createParameterValueList(
+ final ParameterValue... values);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/ParameterValueList.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/ParameterValueList.java
new file mode 100644
index 00000000000..2dfc468313f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/ParameterValueList.java
@@ -0,0 +1,108 @@
+/**
+ * Copyright (c) 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Bertrand Daru (Mia-Software) - initial API and implementation
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.query.java.core.internal;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+
+import org.eclipse.papyrus.emf.facet.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.Parameter;
+import org.eclipse.papyrus.emf.facet.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList;
+
+//deprecated APIs that are still maintained
+@SuppressWarnings("deprecation")
+public class ParameterValueList extends ArrayList<ParameterValue> implements
+ IParameterValueList {
+
+ // This class is a copy of
+ // org.eclipse.papyrus.emf.facet.infra.query.core.java.ParameterValueList
+
+ /** SERIAL ID */
+ private static final long serialVersionUID = 1L;
+
+ ParameterValueList(final ParameterValue... values) {
+ this.addAll(Arrays.asList(values));
+ }
+
+ /**
+ * Return the value of the parameter with the specified name.
+ *
+ * @param name
+ * the name of the parameter
+ * @return the value, or <code>null</code> if there is no parameter with
+ * that name.
+ */
+ public Object getValueByParameterName(final String name) {
+ ParameterValue param = getParameterValueByName(name);
+ if (param == null) {
+ return null;
+ }
+ return param.getValue();
+ }
+
+ /**
+ * Return the parameter with the specified name.
+ *
+ * @param name
+ * the name of the parameter
+ * @return the parameter, or <code>null</code> if there is no parameter with
+ * that name.
+ */
+ public ParameterValue getParameterValueByName(final String name) {
+ for (ParameterValue param : this) {
+ if (param.getParameter().getName().equals(name)) {
+ return param;
+ }
+ }
+ return null;
+ }
+
+ public static ParameterValue createParameterValue(final Object value,
+ final Parameter parameter) {
+ ParameterValue paramValue = EFacetFactory.eINSTANCE
+ .createParameterValue();
+ paramValue.setParameter(parameter);
+ paramValue.getValue().add(value);
+
+ return paramValue;
+ }
+
+ /**
+ * Return the parameter corresponding to the given parameter declaration.
+ *
+ * @param parameter
+ * the parameter declaration
+ * @return the parameter, or <code>null</code> if the given parameter
+ * declaration is unknown.
+ */
+ public ParameterValue getParameterValue(final Parameter parameter) {
+ for (ParameterValue paramValue : this) {
+ if (paramValue.getParameter() == parameter) {
+ return paramValue;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Return the value of a parameter
+ *
+ * @param parameter
+ * the parameter
+ * @return the value of the parameter
+ */
+ public Object getValue(final Parameter parameter) {
+ return getParameterValue(parameter).getValue();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/ParameterValueList2.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/ParameterValueList2.java
new file mode 100644
index 00000000000..83d33c57530
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/ParameterValueList2.java
@@ -0,0 +1,107 @@
+/**
+ * Copyright (c) 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Bertrand Daru (Mia-Software) - initial API and implementation
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * David Couvrand (Soft-Maint) - Bug 418813 - [Query] Optimization in creation of ParameterValueList2
+ */
+package org.eclipse.papyrus.emf.facet.query.java.core.internal;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+
+public class ParameterValueList2 extends ArrayList<ParameterValue> implements IParameterValueList2 {
+ // This class is a copy of
+ // org.eclipse.papyrus.emf.facet.infra.query.core.java.ParameterValueList
+
+ private static final long serialVersionUID = 1L;
+
+ ParameterValueList2(final ParameterValue... values) {
+ super(Arrays.asList(values));
+ }
+
+ /**
+ * Return the value of the parameter with the specified name.
+ *
+ * @param name
+ * the name of the parameter
+ * @return the value, or <code>null</code> if there is no parameter with
+ * that name.
+ */
+ public Object getValueByParameterName(final String name) {
+ ParameterValue param = getParameterValueByName(name);
+ if (param == null) {
+ return null;
+ }
+ return param.getValue();
+ }
+
+ /**
+ * Return the parameter with the specified name.
+ *
+ * @param name
+ * the name of the parameter
+ * @return the parameter, or <code>null</code> if there is no parameter with
+ * that name.
+ */
+ public ParameterValue getParameterValueByName(final String name) {
+ for (ParameterValue param : this) {
+ EParameter parameter = param.getParameter();
+ if (parameter != null) {
+ if (name.equals(parameter.getName())) {
+ return param;
+ }
+ }
+ }
+ return null;
+ }
+
+ public static ParameterValue createParameterValue(final Object value,
+ final EParameter parameter) {
+ ParameterValue paramValue = EFacetFactory.eINSTANCE
+ .createParameterValue();
+ paramValue.setParameter(parameter);
+ paramValue.setValue(value);
+ return paramValue;
+ }
+
+ /**
+ * Return the parameter corresponding to the given parameter declaration.
+ *
+ * @param parameter
+ * the parameter declaration
+ * @return the parameter, or <code>null</code> if the given parameter
+ * declaration is unknown.
+ */
+ public ParameterValue getParameterValue(final EParameter parameter) {
+ for (ParameterValue paramValue : this) {
+ if (paramValue.getParameter() == parameter) {
+ return paramValue;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Return the value of a parameter
+ *
+ * @param parameter
+ * the parameter
+ * @return the value of the parameter
+ */
+ public Object getValue(final EParameter parameter) {
+ return getParameterValue(parameter).getValue();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/ParameterValueListFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/ParameterValueListFactoryImpl.java
new file mode 100644
index 00000000000..9223cb0027a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/ParameterValueListFactoryImpl.java
@@ -0,0 +1,30 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ */
+package org.eclipse.papyrus.emf.facet.query.java.core.internal;
+
+import org.eclipse.papyrus.emf.facet.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueListFactory;
+
+/**
+ * Implementation of {@link IParameterValueListFactory}
+ */
+//deprecated APIs that are still maintained
+@SuppressWarnings("deprecation")
+public class ParameterValueListFactoryImpl implements
+ IParameterValueListFactory {
+
+ public IParameterValueList createParameterValueList(
+ final ParameterValue... values) {
+ return new ParameterValueList(values);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/ParameterValueListFactoryImpl2.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/ParameterValueListFactoryImpl2.java
new file mode 100644
index 00000000000..32b0646612a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/ParameterValueListFactoryImpl2.java
@@ -0,0 +1,25 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ */
+package org.eclipse.papyrus.emf.facet.query.java.core.internal;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueListFactory2;
+
+public class ParameterValueListFactoryImpl2 implements
+ IParameterValueListFactory2 {
+
+ public IParameterValueList2 createParameterValueList(
+ final ParameterValue... values) {
+ return new ParameterValueList2(values);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/evaluator/JavaQueryEvaluator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/evaluator/JavaQueryEvaluator.java
new file mode 100644
index 00000000000..b54bdeb47db
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/evaluator/JavaQueryEvaluator.java
@@ -0,0 +1,76 @@
+/**
+ * Copyright (c) 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.query.java.core.internal.evaluator;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.QueryException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryEvaluator;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueListFactory;
+
+/**
+ * This class is the EMF Facet Java Query Evaluator
+ *
+ * @author Gregoire Dupe (Mia-Software)
+ */
+// deprecated but still maintained
+@SuppressWarnings("deprecation")
+public class JavaQueryEvaluator implements IQueryEvaluator {
+
+ // This class is modified copy of :
+ // org.eclipse.papyrus.emf.facet.infra.query.core.java.internal.JavaModelQueryAdapter
+ private final IJavaQuery<EObject, ?> javaQuery;
+ private boolean checkResultType = false;
+
+ /**
+ * @param query
+ * @param javaQuery
+ * the javaQuery to be evaluated
+ */
+ public JavaQueryEvaluator(final Query query,
+ final IJavaQuery<EObject, ?> javaQuery) {
+ this.javaQuery = javaQuery;
+ }
+
+ public Object basicEvaluate(final Query query, final EObject context,
+ final List<ParameterValue> parameterValues) throws QueryException {
+
+ IParameterValueList plist = IParameterValueListFactory.INSTANCE
+ .createParameterValueList();
+
+ if (parameterValues != null) {
+ plist.addAll(parameterValues);
+ }
+ return this.javaQuery.evaluate(context, plist);
+
+ }
+
+ public boolean getCheckResultType() {
+ return this.checkResultType;
+ }
+
+ public void setCheckResultType(final boolean checkResultType) {
+ this.checkResultType = checkResultType;
+ }
+
+ public void startEvaluate() {
+ // Nothing to do
+ }
+
+ public void endEvaluate() {
+ // Nothing to do
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/evaluator/JavaQueryEvaluatorFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/evaluator/JavaQueryEvaluatorFactory.java
new file mode 100644
index 00000000000..b2bc021bd6d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/evaluator/JavaQueryEvaluatorFactory.java
@@ -0,0 +1,88 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ */
+package org.eclipse.papyrus.emf.facet.query.java.core.internal.evaluator;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.QueryException;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.QueryExecutionException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryEvaluator;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryEvaluatorFactory;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery;
+import org.eclipse.papyrus.emf.facet.query.java.core.internal.plugin.Activator;
+import org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaQuery;
+import org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaqueryPackage;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.osgi.framework.Bundle;
+
+
+@Deprecated
+public class JavaQueryEvaluatorFactory implements IQueryEvaluatorFactory {
+ public IQueryEvaluator create(final Query query, final Bundle bundle)
+ throws QueryException {
+ if (!(query instanceof JavaQuery)) {
+ throw new QueryException("Wrong kind of Query: " //$NON-NLS-1$
+ + query.getClass().getSimpleName() + " found, " //$NON-NLS-1$
+ + JavaQuery.class.getSimpleName() + " expected."); //$NON-NLS-1$
+ }
+ if (bundle == null) {
+ throw new QueryException("Query: " //$NON-NLS-1$
+ + query.getClass().getSimpleName()
+ + " should be create with a bundle."); //$NON-NLS-1$
+ }
+ JavaQueryEvaluator javaQueryEvaluator = null;
+ try {
+ JavaQuery javaQuery = (JavaQuery) query;
+ String className = javaQuery.getImplementationClassName();
+ if (className == null || className.length() == 0) {
+ throw new QueryExecutionException(
+ "implementationClassName is empty"); //$NON-NLS-1$
+ }
+ Class<?> javaQueryClass = bundle.loadClass(className);
+ if (!IJavaQuery.class.isAssignableFrom(javaQueryClass)) {
+ throw new Exception(className + " does not implement " //$NON-NLS-1$
+ + IJavaQuery.class.getSimpleName() + "."); //$NON-NLS-1$
+ }
+ javaQueryEvaluator = createJavaQueryImpl(javaQuery,
+ javaQueryClass);
+ // Initially a null test was perform on bundle to determine whether
+ // to check the result type. Now we need a bundle so
+ // checkResultType=true
+ javaQueryEvaluator.setCheckResultType(true);
+ } catch (Exception e) {
+ QueryException queryException = new QueryException(
+ "Failed to load the java query:" //$NON-NLS-1$
+ + query.getName(), e);
+ Logger.logError(queryException, Activator.getDefault());
+ throw queryException;
+ }
+ return javaQueryEvaluator;
+ }
+
+ /** This methods is dedicated to isolate the "Unchecked cast" warning. */
+ @SuppressWarnings("unchecked")
+ private static JavaQueryEvaluator createJavaQueryImpl(
+ final JavaQuery javaQuery, final Class<?> javaQueryClass)
+ throws InstantiationException, IllegalAccessException {
+ IJavaQuery<EObject, ?> javaQueryInst;
+ javaQueryInst = (IJavaQuery<EObject, ?>) javaQueryClass
+ .newInstance();
+ JavaQueryEvaluator javaQueryEvaluator = new JavaQueryEvaluator(javaQuery,
+ javaQueryInst);
+ return javaQueryEvaluator;
+ }
+
+ public EClass getManagedQueryType() {
+ return JavaqueryPackage.eINSTANCE.getJavaQuery();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/evaluator/JavaQueryImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/evaluator/JavaQueryImplementation.java
new file mode 100644
index 00000000000..535b152b000
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/evaluator/JavaQueryImplementation.java
@@ -0,0 +1,70 @@
+/**
+ * Copyright (c) 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Nicolas Bros (Mia-Software) - Bug 362191 - [Restructuring] Query mechanism for eFacet2
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.query.java.core.internal.evaluator;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueListFactory2;
+
+public class JavaQueryImplementation implements IQueryImplementation {
+
+ // This class is a modified copy of :
+ // org.eclipse.papyrus.emf.facet.infra.query.core.java.internal.JavaModelQueryAdapter
+
+ private final IJavaQuery2<EObject, ?> javaQuery;
+ private boolean checkResultType = false;
+
+ /**
+ * @param query
+ * @param javaQuery
+ * the javaQuery to be evaluated
+ */
+ public JavaQueryImplementation(final IJavaQuery2<EObject, ?> javaQuery) {
+ this.javaQuery = javaQuery;
+ }
+
+ public Object getValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ final IParameterValueList2 plist = IParameterValueListFactory2.INSTANCE
+ .createParameterValueList();
+
+ if (parameterValues != null) {
+ plist.addAll(parameterValues);
+ }
+ return this.javaQuery.evaluate(source, plist, facetManager);
+ }
+
+ public void setValue(final Query query, final DerivedTypedElement feature, final EObject source, final List<ParameterValue> parameterValues, final Object newValue)
+ throws DerivedTypedElementException {
+ throw new UnsupportedOperationException("not implemented yet"); //$NON-NLS-1$
+ }
+
+ public boolean isCheckResultType() {
+ return this.checkResultType;
+ }
+
+ public void setCheckResultType(final boolean checkResultType) {
+ this.checkResultType = checkResultType;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/evaluator/JavaQueryImplementationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/evaluator/JavaQueryImplementationFactory.java
new file mode 100644
index 00000000000..21b9317076c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/evaluator/JavaQueryImplementationFactory.java
@@ -0,0 +1,84 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Nicolas Bros (Mia-Software) - Bug 361612 - New core for new version of the Facet metamodel
+ * Nicolas Bros (Mia-Software) - Bug 362191 - [Restructuring] Query mechanism for eFacet2
+ * Nicolas Bros (Mia-Software) - Bug 376941 - [EFacet] Facet operation arguments in Facet model
+ */
+package org.eclipse.papyrus.emf.facet.query.java.core.internal.evaluator;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.internal.query.QueryUtils;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.internal.plugin.Activator;
+import org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQuery;
+import org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQueryPackage;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.osgi.framework.Bundle;
+
+public class JavaQueryImplementationFactory implements IQueryImplementationFactory {
+
+ public IQueryImplementation create(final Query query, final Bundle bundle, final IDerivedTypedElementManager manager) throws DerivedTypedElementException {
+ if (!(query instanceof JavaQuery)) {
+ throw new IllegalArgumentException("The given DerivedTypedElement does not have a JavaQuery"); //$NON-NLS-1$
+ }
+ JavaQuery javaQuery = (JavaQuery) query;
+
+ if (bundle == null) {
+ throw new DerivedTypedElementException("Java query implementation class '" //$NON-NLS-1$
+ + javaQuery.getClass().getName()
+ + "' should be created within a bundle."); //$NON-NLS-1$
+ }
+ JavaQueryImplementation javaQueryEvaluator = null;
+ try {
+ String className = javaQuery.getImplementationClassName();
+ if (className == null || className.length() == 0) {
+ throw new DerivedTypedElementException("The Java query's implementationClassName must not be empty"); //$NON-NLS-1$
+ }
+ Class<?> javaQueryClass = bundle.loadClass(className);
+ if (!IJavaQuery2.class.isAssignableFrom(javaQueryClass)) {
+ throw new Exception("Java query implementation class '" + className + "' does not implement " //$NON-NLS-1$ //$NON-NLS-2$
+ + IJavaQuery2.class.getSimpleName() + "."); //$NON-NLS-1$
+ }
+ javaQueryEvaluator = createJavaQueryImpl(javaQueryClass);
+ // Initially a null test was performed on bundle to determine whether
+ // to check the result type. Now we need a bundle so
+ // checkResultType=true
+ javaQueryEvaluator.setCheckResultType(true);
+ } catch (Exception e) {
+ DerivedTypedElementException queryException = new DerivedTypedElementException(
+ "The bundle " + bundle.getSymbolicName() + " failed to load the java query: " //$NON-NLS-1$ //$NON-NLS-2$
+ + QueryUtils.getQueryDescription(javaQuery), e);
+ Logger.logError(queryException, Activator.getDefault());
+ throw queryException;
+ }
+ return javaQueryEvaluator;
+ }
+
+ /** This method is dedicated to isolate the "Unchecked cast" warning. */
+ @SuppressWarnings("unchecked")
+ private static JavaQueryImplementation createJavaQueryImpl(final Class<?> javaQueryClass)
+ throws InstantiationException, IllegalAccessException {
+ IJavaQuery2<EObject, ?> javaQueryInst;
+ javaQueryInst = (IJavaQuery2<EObject, ?>) javaQueryClass.newInstance();
+ JavaQueryImplementation javaQueryEvaluator = new JavaQueryImplementation(javaQueryInst);
+ return javaQueryEvaluator;
+ }
+
+ public EClass getManagedQueryType() {
+ return JavaQueryPackage.eINSTANCE.getJavaQuery();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/exceptions/ClassAlreadyExistsException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/exceptions/ClassAlreadyExistsException.java
new file mode 100644
index 00000000000..bd51176c61e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/exceptions/ClassAlreadyExistsException.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349569 - Need new exceptions for java query class creation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.query.java.core.internal.exceptions;
+
+/**
+ * This exception is raised whenever the class being created already exists.
+ * @since 0.2
+ */
+public class ClassAlreadyExistsException extends Exception {
+
+ private static final long serialVersionUID = -7352916272441579074L;
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/exceptions/ResourceURIExpectedException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/exceptions/ResourceURIExpectedException.java
new file mode 100644
index 00000000000..5698aee4c27
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/exceptions/ResourceURIExpectedException.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349569 - Need new exceptions for java query class creation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.query.java.core.internal.exceptions;
+
+/**
+ * This exception is raised whenever an URI is not a resource URI as expected
+ * @since 0.2
+ */
+public class ResourceURIExpectedException extends Exception {
+
+ private static final long serialVersionUID = 6891585699949077305L;
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/plugin/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/plugin/Activator.java
new file mode 100644
index 00000000000..0e3db6d8051
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.core/src/org/eclipse/papyrus/emf/facet/query/java/core/internal/plugin/Activator.java
@@ -0,0 +1,68 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ */
+package org.eclipse.papyrus.emf.facet.query.java.core.internal.plugin;
+
+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.facet.query.java.core"; //$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
+ * )
+ */
+ @Override
+ public void start(final BundleContext context) throws Exception {
+ super.start(context);
+ Activator.plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext
+ * )
+ */
+ @Override
+ public void stop(final BundleContext context) throws Exception {
+ Activator.plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/.classpath
new file mode 100644
index 00000000000..45f024e850e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/.project
new file mode 100644
index 00000000000..e9522a8bca9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.query.java.metamodel</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/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..4b8505e6d1e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,3 @@
+#Wed Sep 14 13:39:57 CEST 2011
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..c673e575a6d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,82 @@
+#Tue Feb 14 17:30:34 CET 2012
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+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.annotationSuperInterface=warning
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.autoboxing=warning
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.deadCode=warning
+org.eclipse.jdt.core.compiler.problem.deprecation=warning
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
+org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
+org.eclipse.jdt.core.compiler.problem.nullReference=warning
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=warning
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
+org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=warning
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=warning
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=warning
+org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
+org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..1c1cad2ea7c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/META-INF/MANIFEST.MF
@@ -0,0 +1,14 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.query.java.metamodel;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.query.java.metamodel.internal.Activator
+Bundle-Vendor: %Bundle-Vendor
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore,
+ org.eclipse.papyrus.emf.facet.efacet;bundle-version="0.1.0",
+ org.eclipse.papyrus.emf.facet.efacet.metamodel;bundle-version="0.2.0"
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..1236c039103
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,3 @@
+#Properties file for org.eclipse.papyrus.emf.facet.query.java.metamodel
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Java Query Metamodel (Incubation)
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/about.html
new file mode 100644
index 00000000000..3019b95b9cf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/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>December 22, 2008</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/build.properties
new file mode 100644
index 00000000000..d3603ba75c5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/build.properties
@@ -0,0 +1,8 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ about.html,\
+ OSGI-INF/,\
+ plugin.xml
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/model/javaQuery-0.2.0.ecore b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/model/javaQuery-0.2.0.ecore
new file mode 100644
index 00000000000..eefdfcd7d4b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/model/javaQuery-0.2.0.ecore
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="javaquery"
+ nsURI="http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation/javaquery" nsPrefix="javaQuery">
+ <eClassifiers xsi:type="ecore:EClass" name="JavaQuery" eSuperTypes="platform:/plugin/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.ecore#//extensible/Query">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="implementationClassName"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/model/javaQuery-0.2.0.genmodel b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/model/javaQuery-0.2.0.genmodel
new file mode 100644
index 00000000000..a9957e9b7f9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/model/javaQuery-0.2.0.genmodel
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText=" Copyright (c) 2011 Mia-Software.&#xD;&#xA; &#xD;&#xA; All rights reserved. This program and the accompanying materials&#xD;&#xA; are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA; which accompanies this distribution, and is available at&#xD;&#xA; http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA;&#xD;&#xA; Contributors:&#xD;&#xA; &#x9;Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet&#xD;&#xA; &#x9;Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values. &#xD;&#xA; "
+ modelDirectory="/org.eclipse.papyrus.emf.facet.query.java.metamodel/src" modelPluginID="org.eclipse.papyrus.emf.facet.query.java.metamodel"
+ modelName="javaQuery" nonNLSMarkers="true" importerID="org.eclipse.emf.importer.ecore"
+ complianceLevel="5.0" copyrightFields="false" runtimeVersion="2.6" usedGenPackages="platform:/plugin/org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.genmodel#//efacet">
+ <foreignModel>javaQuery-0.2.0.ecore</foreignModel>
+ <genPackages prefix="JavaQuery" basePackage="org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0"
+ disposableProviderFactory="true" childCreationExtenders="true" ecorePackage="javaQuery-0.2.0.ecore#/">
+ <genClasses ecoreClass="javaQuery-0.2.0.ecore#//JavaQuery">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute javaQuery-0.2.0.ecore#//JavaQuery/implementationClassName"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/plugin.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/plugin.properties
new file mode 100644
index 00000000000..0974c1f71d9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/plugin.properties
@@ -0,0 +1,14 @@
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+# Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+#
+
+pluginName = JavaQuery2 Model
+providerName = www.example.org
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/plugin.xml
new file mode 100644
index 00000000000..37783a30c1d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/plugin.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri="http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation/javaquery"
+ class="org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQueryPackage"
+ genModel="model/javaQuery-0.2.0.genmodel"/>
+ </extension>
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri="http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation"
+ class="org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQueryPackage"
+ genModel="model/javaQuery-0.2.0.genmodel"/>
+ </extension>
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/internal/Activator.java
new file mode 100644
index 00000000000..4ae507c28d3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/internal/Activator.java
@@ -0,0 +1,35 @@
+package org.eclipse.papyrus.emf.facet.query.java.metamodel.internal;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+/** The activator class controls the plug-in life cycle */
+public class Activator extends Plugin {
+
+ // The plug-in ID
+ public static final String PLUGIN_ID = "org.eclipse.papyrus.emf.facet.query.java.metamodel"; //$NON-NLS-1$
+
+ // The shared instance
+ private static Activator plugin;
+
+ @Override
+ public void start(final BundleContext context) throws Exception {
+ super.start(context);
+ Activator.plugin = this;
+ }
+
+ @Override
+ public void stop(final BundleContext context) throws Exception {
+ Activator.plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return Activator.plugin;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/JavaQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/JavaQuery.java
new file mode 100644
index 00000000000..581c16b7321
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/JavaQuery.java
@@ -0,0 +1,61 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Java Query</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQuery#getImplementationClassName <em>Implementation Class Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQueryPackage#getJavaQuery()
+ * @model
+ * @generated
+ */
+public interface JavaQuery extends Query {
+ /**
+ * Returns the value of the '<em><b>Implementation Class Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Implementation Class Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Implementation Class Name</em>' attribute.
+ * @see #setImplementationClassName(String)
+ * @see org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQueryPackage#getJavaQuery_ImplementationClassName()
+ * @model
+ * @generated
+ */
+ String getImplementationClassName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQuery#getImplementationClassName <em>Implementation Class Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Implementation Class Name</em>' attribute.
+ * @see #getImplementationClassName()
+ * @generated
+ */
+ void setImplementationClassName(String value);
+
+} // JavaQuery
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/JavaQueryFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/JavaQueryFactory.java
new file mode 100644
index 00000000000..009009d6111
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/JavaQueryFactory.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQueryPackage
+ * @generated
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface JavaQueryFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ JavaQueryFactory eINSTANCE = org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.impl.JavaQueryFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Java Query</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Java Query</em>'.
+ * @generated
+ */
+ JavaQuery createJavaQuery();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ JavaQueryPackage getJavaQueryPackage();
+
+} //JavaQueryFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/JavaQueryPackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/JavaQueryPackage.java
new file mode 100644
index 00000000000..b97317cd88c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/JavaQueryPackage.java
@@ -0,0 +1,182 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQueryFactory
+ * @model kind="package"
+ * @generated
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface JavaQueryPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "javaquery"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation/javaquery"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "javaQuery"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ JavaQueryPackage eINSTANCE = org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.impl.JavaQueryPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.impl.JavaQueryImpl <em>Java Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.impl.JavaQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.impl.JavaQueryPackageImpl#getJavaQuery()
+ * @generated
+ */
+ int JAVA_QUERY = 0;
+
+ /**
+ * The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__CAN_HAVE_SIDE_EFFECTS = ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__CAN_BE_CACHED = ExtensiblePackage.QUERY__CAN_BE_CACHED;
+
+ /**
+ * The feature id for the '<em><b>Implementation Class Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__IMPLEMENTATION_CLASS_NAME = ExtensiblePackage.QUERY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Java Query</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY_FEATURE_COUNT = ExtensiblePackage.QUERY_FEATURE_COUNT + 1;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQuery <em>Java Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Java Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQuery
+ * @generated
+ */
+ EClass getJavaQuery();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQuery#getImplementationClassName <em>Implementation Class Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Implementation Class Name</em>'.
+ * @see org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQuery#getImplementationClassName()
+ * @see #getJavaQuery()
+ * @generated
+ */
+ EAttribute getJavaQuery_ImplementationClassName();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ JavaQueryFactory getJavaQueryFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.impl.JavaQueryImpl <em>Java Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.impl.JavaQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.impl.JavaQueryPackageImpl#getJavaQuery()
+ * @generated
+ */
+ EClass JAVA_QUERY = eINSTANCE.getJavaQuery();
+
+ /**
+ * The meta object literal for the '<em><b>Implementation Class Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute JAVA_QUERY__IMPLEMENTATION_CLASS_NAME = eINSTANCE.getJavaQuery_ImplementationClassName();
+
+ }
+
+} //JavaQueryPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/impl/JavaQueryFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/impl/JavaQueryFactoryImpl.java
new file mode 100644
index 00000000000..a2d2a6cc4b0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/impl/JavaQueryFactoryImpl.java
@@ -0,0 +1,106 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class JavaQueryFactoryImpl extends EFactoryImpl implements JavaQueryFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static JavaQueryFactory init() {
+ try {
+ JavaQueryFactory theJavaQueryFactory = (JavaQueryFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation/javaquery"); //$NON-NLS-1$
+ if (theJavaQueryFactory != null) {
+ return theJavaQueryFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new JavaQueryFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public JavaQueryFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case JavaQueryPackage.JAVA_QUERY: return createJavaQuery();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public JavaQuery createJavaQuery() {
+ JavaQueryImpl javaQuery = new JavaQueryImpl();
+ return javaQuery;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public JavaQueryPackage getJavaQueryPackage() {
+ return (JavaQueryPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static JavaQueryPackage getPackage() {
+ return JavaQueryPackage.eINSTANCE;
+ }
+
+} //JavaQueryFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/impl/JavaQueryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/impl/JavaQueryImpl.java
new file mode 100644
index 00000000000..22ba7baadff
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/impl/JavaQueryImpl.java
@@ -0,0 +1,175 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl;
+
+import org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQuery;
+import org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQueryPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Java Query</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.impl.JavaQueryImpl#getImplementationClassName <em>Implementation Class Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class JavaQueryImpl extends QueryImpl implements JavaQuery {
+ /**
+ * The default value of the '{@link #getImplementationClassName() <em>Implementation Class Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getImplementationClassName()
+ * @generated
+ * @ordered
+ */
+ protected static final String IMPLEMENTATION_CLASS_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getImplementationClassName() <em>Implementation Class Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getImplementationClassName()
+ * @generated
+ * @ordered
+ */
+ protected String implementationClassName = IMPLEMENTATION_CLASS_NAME_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected JavaQueryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return JavaQueryPackage.Literals.JAVA_QUERY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getImplementationClassName() {
+ return implementationClassName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setImplementationClassName(String newImplementationClassName) {
+ String oldImplementationClassName = implementationClassName;
+ implementationClassName = newImplementationClassName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, JavaQueryPackage.JAVA_QUERY__IMPLEMENTATION_CLASS_NAME, oldImplementationClassName, implementationClassName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case JavaQueryPackage.JAVA_QUERY__IMPLEMENTATION_CLASS_NAME:
+ return getImplementationClassName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case JavaQueryPackage.JAVA_QUERY__IMPLEMENTATION_CLASS_NAME:
+ setImplementationClassName((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case JavaQueryPackage.JAVA_QUERY__IMPLEMENTATION_CLASS_NAME:
+ setImplementationClassName(IMPLEMENTATION_CLASS_NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case JavaQueryPackage.JAVA_QUERY__IMPLEMENTATION_CLASS_NAME:
+ return IMPLEMENTATION_CLASS_NAME_EDEFAULT == null ? implementationClassName != null : !IMPLEMENTATION_CLASS_NAME_EDEFAULT.equals(implementationClassName);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (implementationClassName: "); //$NON-NLS-1$
+ result.append(implementationClassName);
+ result.append(')');
+ return result.toString();
+ }
+
+} //JavaQueryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/impl/JavaQueryPackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/impl/JavaQueryPackageImpl.java
new file mode 100644
index 00000000000..8cd4af771ca
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/impl/JavaQueryPackageImpl.java
@@ -0,0 +1,199 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+
+import org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQuery;
+import org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQueryFactory;
+import org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQueryPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class JavaQueryPackageImpl extends EPackageImpl implements JavaQueryPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass javaQueryEClass = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQueryPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private JavaQueryPackageImpl() {
+ super(eNS_URI, JavaQueryFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 JavaQueryPackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static JavaQueryPackage init() {
+ if (isInited) return (JavaQueryPackage)EPackage.Registry.INSTANCE.getEPackage(JavaQueryPackage.eNS_URI);
+
+ // Obtain or create and register package
+ JavaQueryPackageImpl theJavaQueryPackage = (JavaQueryPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof JavaQueryPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new JavaQueryPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EFacetPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theJavaQueryPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theJavaQueryPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theJavaQueryPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(JavaQueryPackage.eNS_URI, theJavaQueryPackage);
+ return theJavaQueryPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getJavaQuery() {
+ return javaQueryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getJavaQuery_ImplementationClassName() {
+ return (EAttribute)javaQueryEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public JavaQueryFactory getJavaQueryFactory() {
+ return (JavaQueryFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ javaQueryEClass = createEClass(JAVA_QUERY);
+ createEAttribute(javaQueryEClass, JAVA_QUERY__IMPLEMENTATION_CLASS_NAME);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ ExtensiblePackage theExtensiblePackage = (ExtensiblePackage)EPackage.Registry.INSTANCE.getEPackage(ExtensiblePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ javaQueryEClass.getESuperTypes().add(theExtensiblePackage.getQuery());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(javaQueryEClass, JavaQuery.class, "JavaQuery", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getJavaQuery_ImplementationClassName(), ecorePackage.getEString(), "implementationClassName", null, 0, 1, JavaQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //JavaQueryPackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/util/JavaQueryAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/util/JavaQueryAdapterFactory.java
new file mode 100644
index 00000000000..a6eb1661623
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/util/JavaQueryAdapterFactory.java
@@ -0,0 +1,151 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+import org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQueryPackage
+ * @generated
+ */
+public class JavaQueryAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static JavaQueryPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public JavaQueryAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = JavaQueryPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected JavaQuerySwitch<Adapter> modelSwitch =
+ new JavaQuerySwitch<Adapter>() {
+ @Override
+ public Adapter caseJavaQuery(JavaQuery object) {
+ return createJavaQueryAdapter();
+ }
+ @Override
+ public Adapter caseQuery(Query object) {
+ return createQueryAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQuery <em>Java Query</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.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQuery
+ * @generated
+ */
+ public Adapter createJavaQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query <em>Query</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.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query
+ * @generated
+ */
+ public Adapter createQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //JavaQueryAdapterFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/util/JavaQuerySwitch.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/util/JavaQuerySwitch.java
new file mode 100644
index 00000000000..503044f1809
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.metamodel/src/org/eclipse/papyrus/emf/facet/query/java/metamodel/v0_2_0/javaquery/util/JavaQuerySwitch.java
@@ -0,0 +1,155 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+import org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQueryPackage
+ * @generated
+ */
+public class JavaQuerySwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static JavaQueryPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public JavaQuerySwitch() {
+ if (modelPackage == null) {
+ modelPackage = JavaQueryPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case JavaQueryPackage.JAVA_QUERY: {
+ JavaQuery javaQuery = (JavaQuery)theEObject;
+ T result = caseJavaQuery(javaQuery);
+ if (result == null) result = caseQuery(javaQuery);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Java Query</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>Java Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseJavaQuery(JavaQuery object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Query</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>Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseQuery(Query object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //JavaQuerySwitch
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.checkstyle
new file mode 100644
index 00000000000..2664c7abd61
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.checkstyle
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<fileset-config file-format-version="1.2.0" simple-config="true">
+ <local-check-config name="EmfFacet" location="/org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.pmd b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.pmd
new file mode 100644
index 00000000000..e8d3e27588f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.pmd
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<pmd>
+ <useProjectRuleSet>true</useProjectRuleSet>
+ <ruleSetFile>../org.eclipse.papyrus.emf.facet.archi.tech.rules/pmd/ruleset.xml</ruleSetFile>
+ <includeDerivedFiles>false</includeDerivedFiles>
+ <violationsAsErrors>true</violationsAsErrors>
+</pmd>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.project
new file mode 100644
index 00000000000..22e637cb92b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.query.java.sdk.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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>net.sourceforge.pmd.eclipse.plugin.pmdNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..4824b802631
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..60883a39f8b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,27 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.query.java.sdk.ui;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.Activator
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.papyrus.emf.facet.efacet.sdk.ui;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.efacet.metamodel;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.query.java.metamodel;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.util.ui;bundle-version="0.3.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.query.java.core;bundle-version="0.2.0",
+ org.eclipse.core.resources;bundle-version="3.6.0",
+ org.eclipse.emf.ecore;bundle-version="2.6.0",
+ org.eclipse.emf.common.ui;bundle-version="2.6.0",
+ org.eclipse.emf;bundle-version="2.6.0",
+ org.eclipse.jdt.core;bundle-version="3.6.0",
+ org.eclipse.emf.codegen.ecore;bundle-version="2.6.0",
+ org.eclipse.emf.edit;bundle-version="2.6.0",
+ org.eclipse.jdt.ui;bundle-version="3.6.0",
+ org.eclipse.papyrus.emf.facet.custom.metamodel;bundle-version="0.3.0",
+ org.eclipse.papyrus.emf.facet.util.pde.core;bundle-version="0.4.0"
+Bundle-ActivationPolicy: lazy
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-Vendor: %Bundle-Vendor
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..42058f0e1c2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,13 @@
+###############################################################################
+# Copyright (c) 2012 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+###############################################################################
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Java Query UI (Incubation) \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/about.html
new file mode 100644
index 00000000000..aacf0cfd3b9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.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>August 17, 2012</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/build.properties
new file mode 100644
index 00000000000..b28b108392b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/build.properties
@@ -0,0 +1,20 @@
+###############################################################################
+# Copyright (c) 2012 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+###############################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ OSGI-INF/,\
+ about.html
+javacDefaultEncoding.. = UTF-8
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/plugin.xml
new file mode 100644
index 00000000000..35fe2b8d723
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/plugin.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2012 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+-->
+<?eclipse version="3.4"?>
+<plugin>
+ <extension
+ point="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.queryFactoryDialogRegistration">
+ <queryDialogFactory
+ dialogFactory="org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.dialog.JavaQueryStrategy"
+ managedQueryTypeName="JavaQuery 0.2">
+ </queryDialogFactory>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/Activator.java
new file mode 100644
index 00000000000..1c6a310e3a5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/Activator.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ */
+package org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+// Copied from /org.eclipse.papyrus.emf.facet.aggregate.metamodel.notgenerated/src/org/eclipse/emf/facet/aggregate/metamodel/notgenerated/internal/Activator.java
+@SuppressWarnings("PMD.UseSingleton")
+// @SuppressWarnings("PMD.UseSingleton") We cannot conforms to this rule because
+// this class is an Eclipse plug-in activator which will be instantiated by the
+// Eclipse framework.
+public class Activator extends Plugin {
+
+ private static Activator plugin;
+
+ @Override
+ @SuppressWarnings("PMD.SignatureDeclareThrowsException")
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ public void start(final BundleContext bundleContext) throws Exception {
+ super.start(bundleContext);
+ Activator.plugin = this;
+ }
+
+ @Override
+ @SuppressWarnings("PMD.SignatureDeclareThrowsException")
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ public void stop(final BundleContext bundleContext) throws Exception {
+ // NOPMD: PMD say "Assigning an Object to null is a code smell."
+ // No choice to right it in another way : this is an Eclipse pattern.
+ Activator.plugin = null; // NOPMD by gdupe on 30/03/12 10:19
+ super.stop(bundleContext);
+ }
+
+ public static Plugin getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/JavaQueryUIRuntimeException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/JavaQueryUIRuntimeException.java
new file mode 100644
index 00000000000..6eb074e8919
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/JavaQueryUIRuntimeException.java
@@ -0,0 +1,23 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal;
+
+public class JavaQueryUIRuntimeException extends RuntimeException {
+
+ private static final long serialVersionUID = 8815972557940912330L;
+
+ public JavaQueryUIRuntimeException(final Throwable cause) {
+ super(cause);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/Messages.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/Messages.java
new file mode 100644
index 00000000000..b7efde8d365
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/Messages.java
@@ -0,0 +1,55 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349556 - EMF Facet Java Query wizard
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal;
+
+import org.eclipse.osgi.util.NLS;
+
+// copy from /org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/emf/facet/query/java/sdk/ui/internal/Messages.java
+public final class Messages extends NLS {
+
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.messages"; //$NON-NLS-1$
+ public static String Choose_an_operation;
+ public static String Choose_an_operation_desc;
+ public static String Create_new_java_class;
+ public static String JavaQueryWizardPage_Can_be_cached;
+ public static String JavaQueryWizardPage_has_side_effect;
+ public static String JavaQueryWizardPage_Java_Class_Name;
+ public static String JavaQueryWizardPage_Java_Query;
+ public static String JavaQueryWizardPage_Java_query_creation_page;
+ public static String JavaQueryWizardPage_lower_bound;
+ public static String JavaQueryWizardPage_Query_name;
+ public static String JavaQueryWizardPage_Browse;
+ public static String JavaQueryWizardPage_Create;
+ public static String JavaQueryWizardPage_interface_constraints;
+ public static String JavaQueryWizardPage_Please_select_a_scope;
+ public static String JavaQueryWizardPage_Please_select_create_IJavaQuery_Class;
+ public static String JavaQueryWizardPage_Scope;
+ public static String JavaQueryWizardPage_upper_bound;
+ public static String NewClassWizardPage_CreateANewJavaClass;
+ public static String NewClassWizardPage_JavaClass;
+ public static String NewQueryClassWizardPage_Failed_to_create_java_class;
+ public static String NewQueryClassWizardPage_Failed_to_create_query_implementation;
+ public static String Select_existing_java_class;
+ public static String SelectJavaClassWizardPage_SeclectAJavaClassLongDescription;
+ public static String SelectJavaClassWizardPage_SelectAJavaClass;
+ public static String Upper_bound;
+ public static String Multi_Values;
+
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(Messages.BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/dialog/JavaQueryStrategy.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/dialog/JavaQueryStrategy.java
new file mode 100644
index 00000000000..63e0f7b379a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/dialog/JavaQueryStrategy.java
@@ -0,0 +1,73 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.dialog;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryDialogFactoryStrategy;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.AbstractQueryDialogFactory;
+import org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQuery;
+import org.eclipse.papyrus.emf.facet.query.java.metamodel.v0_2_0.javaquery.JavaQueryFactory;
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.widget.query.JavaQueryWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.IAbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This class will be used for the creation of a java query.
+ *
+ * @see AbstractQueryDialogFactory
+ * @see JavaQueryWidget
+ */
+public class JavaQueryStrategy implements IQueryDialogFactoryStrategy {
+
+ private final PropertyElement2<String> implClassNameProp;
+
+ public JavaQueryStrategy() {
+ this.implClassNameProp = new PropertyElement2<String>(true);
+ }
+
+ public IAbstractWidget createWidget(
+ final Composite parent, final IQueryContext queryContext) {
+ return new JavaQueryWidget(parent, queryContext,
+ this.implClassNameProp);
+ }
+
+ public Query createQuery(final boolean canBeCached,
+ final boolean sideEffects, final IQueryContext queryContext) {
+ JavaQuery result = null;
+ final String implClassName = (String) this.implClassNameProp.getValue();
+ final JavaQuery query = JavaQueryFactory.eINSTANCE.createJavaQuery();
+ query.setCanBeCached(canBeCached);
+ query.setCanHaveSideEffects(sideEffects);
+ if (implClassName != null) {
+ query.setImplementationClassName(implClassName);
+ result = query;
+ }
+ return result;
+ }
+
+ public String getDialogMessage() {
+ return Messages.JavaQueryWizardPage_Java_query_creation_page;
+ }
+
+ public String getDialogTitle() {
+ return Messages.JavaQueryWizardPage_Java_Query;
+ }
+
+ public String getConclusionText() {
+ return this.implClassNameProp.getValue2();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/messages.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/messages.properties
new file mode 100644
index 00000000000..b4b09cf65ab
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/messages.properties
@@ -0,0 +1,39 @@
+##########################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 349556 - EMF Facet Java Query wizard
+# Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+###########################################################################
+# Copy from /org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/emf/facet/query/java/sdk/ui/internal/messages.properties
+Choose_an_operation=Choose an operation:
+Choose_an_operation_desc=Choose whether you want to create a new Java class, or to select an existing one
+Create_new_java_class=Create a new Java Class
+JavaQueryWizardPage_Can_be_cached=Can be cached:
+JavaQueryWizardPage_has_side_effect=Has side effect:
+JavaQueryWizardPage_Java_Class_Name=Java Class name:
+JavaQueryWizardPage_Java_Query=Java Query
+JavaQueryWizardPage_Java_query_creation_page=Java query creation page
+JavaQueryWizardPage_lower_bound=Lower bound:
+JavaQueryWizardPage_Query_name=Query name:
+JavaQueryWizardPage_Browse=Browse
+JavaQueryWizardPage_upper_bound=Upper bound:
+JavaQueryWizardPage_Create=Create
+JavaQueryWizardPage_interface_constraints=The selected class has to implements
+JavaQueryWizardPage_Please_select_a_scope=Please select a scope for this query
+JavaQueryWizardPage_Please_select_create_IJavaQuery_Class=Please select or create an IJavaQuery Class
+JavaQueryWizardPage_Scope=Scope:
+NewClassWizardPage_CreateANewJavaClass=Create a new Java class.
+NewClassWizardPage_JavaClass=Java Class
+NewQueryClassWizardPage_Failed_to_create_java_class=Failed to create a Java class
+NewQueryClassWizardPage_Failed_to_create_query_implementation=Failed to create the Java model query implementation class.
+Select_existing_java_class=Select an existing Java Class
+SelectJavaClassWizardPage_SeclectAJavaClassLongDescription=Select a Java class
+SelectJavaClassWizardPage_SelectAJavaClass=Select a Java class
+Upper_bound=Upper Bound:
+Multi_Values=Multi-values: \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/widget/GetMultiValuesWidgetComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/widget/GetMultiValuesWidgetComposite.java
new file mode 100644
index 00000000000..b65d86e53d7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/widget/GetMultiValuesWidgetComposite.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.widget;
+
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.AbstractGetPropertyWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This class create a boolean widget to check if the returned value is multiple
+ * or not (1 or *).
+ */
+public class GetMultiValuesWidgetComposite extends AbstractGetPropertyWidget {
+
+ private static final int LABEL_WIDTH_HINT = 110;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this widget.
+ * @param propertyElement
+ * the property element edited by this widget.
+ */
+ public GetMultiValuesWidgetComposite(final Composite parent,
+ final PropertyElement propertyElement) {
+ super(parent, propertyElement);
+ setLabelWidthHint(LABEL_WIDTH_HINT);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Multi_Values;
+ }
+
+ @Override
+ public String getError() {
+ return null;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // Nothing.
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/widget/GetOrCreateJavaImplementationWidgetComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/widget/GetOrCreateJavaImplementationWidgetComposite.java
new file mode 100644
index 00000000000..cc52135a9e8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/widget/GetOrCreateJavaImplementationWidgetComposite.java
@@ -0,0 +1,113 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.widget;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext;
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.JavaQueryUIRuntimeException;
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.wizard.SelectOrCreateJavaClassWizard;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWithWizardButtonWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Widget for the recovery or creation of a java query class.
+ */
+public class GetOrCreateJavaImplementationWidgetComposite extends
+ AbstractGetOrCreateElementWithWizardButtonWidget<String, SelectOrCreateJavaClassWizard> {
+
+ private final IQueryContext queryContext;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this widget.
+ * @param properties
+ * the properties.
+ * @param queryContext
+ * the main queryContext of the model.
+ * @param facet
+ * the current facet of the model.
+ */
+ public GetOrCreateJavaImplementationWidgetComposite(final Composite parent,
+ final PropertyElement2<String> implClassNameProp,
+ final IQueryContext queryContext) {
+ super(parent, implClassNameProp);
+ this.queryContext = queryContext;
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.JavaQueryWizardPage_Java_Class_Name;
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return Messages.JavaQueryWizardPage_Please_select_create_IJavaQuery_Class;
+ }
+
+ @Override
+ protected String getTextFieldInitialText() {
+ return null;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // Nothing to do.
+ }
+
+ @Override
+ protected SelectOrCreateJavaClassWizard createIWizard() {
+ SelectOrCreateJavaClassWizard classCreation = null;
+ final IDialogCallback<String> callBack = new IDialogCallback<String>() {
+ public void committed(final String result) {
+ GetOrCreateJavaImplementationWidgetComposite.this
+ .onWizardCommited(result);
+ }
+ };
+ try {
+ classCreation = new SelectOrCreateJavaClassWizard(this.queryContext,
+ callBack);
+ } catch (Exception e) {
+ throw new JavaQueryUIRuntimeException(e);
+ }
+ return classCreation;
+ }
+
+ protected final void onWizardCommited(final String classQAName) {
+ this.getPropertyElement().setValue(classQAName);
+ this.getTextField().setText(classQAName);
+ }
+
+ @Override
+ protected void onWizardCanceled() {
+ // Not used because SelectOrCreateJavaClassWizard manage event using
+ // the call back pattern.
+ }
+
+ @Override
+ protected void onWizardCommited(final SelectOrCreateJavaClassWizard wizard) {
+ // Not used because SelectOrCreateJavaClassWizard manage event using
+ // the call back pattern.
+ }
+
+ @Override
+ protected SelectOrCreateJavaClassWizard createSynchronizedWizard(
+ final SelectOrCreateJavaClassWizard wizard) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/widget/query/JavaQueryWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/widget/query/JavaQueryWidget.java
new file mode 100644
index 00000000000..642b08e2bb3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/widget/query/JavaQueryWidget.java
@@ -0,0 +1,75 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.widget.query;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext;
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.widget.GetOrCreateJavaImplementationWidgetComposite;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.query.AbstractQueryWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This class provide the main widget for the creation of a Java query.
+ */
+public class JavaQueryWidget extends AbstractQueryWidget<ETypedElement> {
+
+ private final PropertyElement2<String> implClassNameProp;
+ private final IQueryContext queryContext;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this widget.
+ * @param editingDomain
+ * the current editing domain.
+ * @param properties
+ * the properties.
+ * @param facetSet
+ * the main facetSet of the model.
+ * @param facet
+ * the current facet of the model.
+ */
+ public JavaQueryWidget(final Composite parent,
+ final IQueryContext queryContext,
+ final PropertyElement2<String> implClassNameProp) {
+ super(parent);
+ this.implClassNameProp = implClassNameProp;
+ this.queryContext = queryContext;
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ final GetOrCreateJavaImplementationWidgetComposite widget = new GetOrCreateJavaImplementationWidgetComposite(this,
+ this.implClassNameProp, this.queryContext);
+ addSubWidget(widget);
+ }
+
+ @Override
+ public Command getCommand() {
+ // No Command to return.
+ return null;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // Nothing to do.
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing to do.
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/JavaQueryUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/JavaQueryUtils.java
new file mode 100644
index 00000000000..41ec6e22f63
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/JavaQueryUtils.java
@@ -0,0 +1,45 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.wizard;
+
+import java.util.Locale;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.core.FacetUtils;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.Facet;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext;
+import org.eclipse.jdt.core.IJavaProject;
+
+public final class JavaQueryUtils {
+
+ private JavaQueryUtils() {
+ // Must no be used
+ }
+
+ private static final String UNKONWN = "unkonwn"; //$NON-NLS-1$
+
+ public static String getDefaultPackageName(
+ final IQueryContext queryContext,
+ final IJavaProject javaProject) {
+ String sourceClassName = UNKONWN;
+ final Facet facet = queryContext.getFacet();
+ final EClass eClass = FacetUtils.findExtendedEClass(facet);
+ if (eClass != null) {
+ sourceClassName = eClass.getName();
+ }
+ final String packageName = javaProject.getProject().getName()
+ + ".queries." + sourceClassName.toLowerCase(Locale.getDefault()); //$NON-NLS-1$
+ return packageName;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/JdtUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/JdtUtils.java
new file mode 100644
index 00000000000..69078668e7b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/JdtUtils.java
@@ -0,0 +1,264 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.wizard;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.jar.Manifest;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.emf.codegen.ecore.genmodel.GenModel;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.core.internal.JavaUtils;
+import org.eclipse.papyrus.emf.facet.util.pde.core.internal.exported.PluginUtils;
+import org.eclipse.jdt.core.ICompilationUnit;
+import org.eclipse.jdt.core.IPackageFragment;
+import org.eclipse.jdt.core.IPackageFragmentRoot;
+import org.eclipse.jdt.core.JavaModelException;
+import org.eclipse.osgi.util.ManifestElement;
+
+public final class JdtUtils {
+
+ private JdtUtils() {
+ // Must no be used
+ }
+
+ public static ICompilationUnit createJavaClass(
+ final EClassifier returnTypeClass,
+ final boolean multiValues, final EClassifier scope,
+ final IPackageFragment packageFragment,
+ final IPackageFragmentRoot root,
+ final String typeName, final String cuName)
+ throws JavaModelException {
+ IPackageFragment packgeFragment2;
+ if (packageFragment == null) {
+ packgeFragment2 = root.getPackageFragment(""); //$NON-NLS-1$
+ } else {
+ packgeFragment2 = packageFragment;
+ }
+ final String packageName = packgeFragment2.getElementName();
+ if (!packgeFragment2.exists()) {
+ packgeFragment2 = root.createPackageFragment(packageName, true,
+ new NullProgressMonitor());
+ }
+ final StringBuilder contents = new StringBuilder();
+ createJavaClassContents(contents, typeName, packageName,
+ returnTypeClass, multiValues, scope);
+ return packgeFragment2.createCompilationUnit(cuName,
+ contents.toString(),
+ false, new NullProgressMonitor());
+ }
+
+ private static void createJavaClassContents(final StringBuilder contents,
+ final String name, final String packageName,
+ final EClassifier returnTypeClass, final boolean multiValues,
+ final EClassifier scope) {
+ if (packageName.length() > 0) {
+ contents.append("package "); //$NON-NLS-1$
+ contents.append(packageName);
+ contents.append(";\n\n"); //$NON-NLS-1$
+ }
+ boolean importCollection = false;
+
+ String returnType;
+ String shortReturnType;
+ if (returnTypeClass == null) {
+ returnType = "java.lang.Object"; //$NON-NLS-1$
+ shortReturnType = "Object"; //$NON-NLS-1$
+ } else {
+ returnType = returnTypeClass.getInstanceClassName();
+ returnType = JavaUtils.objectType(returnType);
+ final int lastDotPos = returnType.lastIndexOf('.');
+ if (multiValues) {
+ importCollection = true;
+ shortReturnType = "Collection<" + returnType.substring(lastDotPos + 1) + ">"; //$NON-NLS-1$//$NON-NLS-2$
+ } else {
+ shortReturnType = returnType.substring(lastDotPos + 1);
+ }
+ }
+
+ // EList<EClass> scope = modelQuery.getScope();
+ String scopeType;
+ String shortScopeType;
+ // if (scope != null && scope.size() == 1) {
+ if (scope == null) {
+ scopeType = "org.eclipse.emf.ecore.EObject"; //$NON-NLS-1$
+ shortScopeType = "EObject"; //$NON-NLS-1$
+ } else {
+ scopeType = scope.getInstanceClassName();
+ scopeType = JavaUtils.objectType(scopeType);
+ shortScopeType = scopeType
+ .substring(scopeType.lastIndexOf('.') + 1);
+ }
+
+ if (importCollection) {
+ contents.append("import java.util.Collection;\n"); //$NON-NLS-1$
+ }
+ if (mustImport(returnType)) {
+ contents.append("import " + returnType + ";\n"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ if (!returnType.equals(scopeType) && mustImport(scopeType)) {
+ contents.append("import " + scopeType + ";\n"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ contents.append("import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;\n"); //$NON-NLS-1$
+ contents.append("import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;\n"); //$NON-NLS-1$
+ contents.append("import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;\n"); //$NON-NLS-1$
+ contents.append("import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;\n"); //$NON-NLS-1$
+ contents.append("\n"); //$NON-NLS-1$
+ contents.append("public class " + name + " implements IJavaQuery2<" + shortScopeType + ", " + shortReturnType + "> {\n"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$
+ contents.append(" public " + shortReturnType + " evaluate(final " + shortScopeType + " context, \n"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ contents.append(" final IParameterValueList2 parameterValues,\n"); //$NON-NLS-1$
+ contents.append(" final IFacetManager facetManager)\n"); //$NON-NLS-1$
+ contents.append(" throws DerivedTypedElementException {\n"); //$NON-NLS-1$
+ contents.append(" // TODO Auto-generated method stub\n"); //$NON-NLS-1$
+ contents.append(" return null;\n"); //$NON-NLS-1$
+ contents.append(" }\n"); //$NON-NLS-1$
+ contents.append("}\n"); //$NON-NLS-1$
+ }
+
+ private static boolean mustImport(final String type) {
+ return type.contains(".") && !type.startsWith("java.lang."); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+
+ /**
+ * Setup the given project's Manifest so that metamodels referenced by the
+ * query's <code>returnType</code> and <code>scope</code> are available on
+ * the classpath.
+ */
+ public static void setupProject(final IProject project,
+ final EClassifier returnType, final EClassifier scope) {
+ try {
+ final String[] requiredBundles = findRequiredBundles(returnType,
+ scope);
+ // start with all and then remove those already present
+ final List<String> missingBundles = new ArrayList<String>();
+ for (final String requiredBundle : requiredBundles) {
+ missingBundles.add(requiredBundle);
+ }
+ missingBundles.add("org.eclipse.papyrus.emf.facet.efacet.core"); //$NON-NLS-1$
+ missingBundles.add("org.eclipse.papyrus.emf.facet.query.java.core"); //$NON-NLS-1$
+
+ PluginUtils.configureAsPluginProject(project);
+ final IFile manifestResource = (IFile) project.findMember(new Path(
+ "/META-INF/MANIFEST.MF")); //$NON-NLS-1$
+ manifestResource.refreshLocal(IResource.DEPTH_ONE,
+ new NullProgressMonitor());
+ final InputStream contents = manifestResource.getContents();
+ final Manifest manifest = new Manifest(contents);
+ final String requires = manifest.getMainAttributes().getValue(
+ "Require-Bundle"); //$NON-NLS-1$
+ if (requires != null) {
+ final ManifestElement[] manifestElements = ManifestElement
+ .parseHeader("Require-Bundle", requires); //$NON-NLS-1$
+ for (final ManifestElement manifestElement : manifestElements) {
+ // make sure it won't be duplicated
+ missingBundles.remove(manifestElement.getValue());
+ }
+ }
+
+ final StringBuilder newRequires = new StringBuilder();
+ if (requires != null) {
+ newRequires.append(requires);
+ }
+ for (int i = 0; i < missingBundles.size(); i++) {
+ final String missingBundle = missingBundles.get(i);
+ if ((i != 0) || (requires != null)) {
+ newRequires.append(","); //$NON-NLS-1$
+ }
+ newRequires.append(missingBundle);
+ }
+
+ manifest.getMainAttributes().putValue(
+ "Require-Bundle", newRequires.toString()); //$NON-NLS-1$
+
+ final ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
+ manifest.write(outputStream);
+ final ByteArrayInputStream inputStream = new ByteArrayInputStream(
+ outputStream.toByteArray());
+ manifestResource.setContents(inputStream, true, true,
+ new NullProgressMonitor());
+ } catch (final Exception e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+
+ /**
+ * Find the bundles containing the implementations of the metamodels
+ * referenced by the given classifiers.
+ */
+ private static String[] findRequiredBundles(final EClassifier returnType,
+ final EClassifier scope) {
+ final Set<String> requiredBundles = new HashSet<String>();
+ final Set<EPackage> requiredEPackages = new HashSet<EPackage>();
+ if (returnType != null) {
+ requiredEPackages.add(returnType.getEPackage());
+ }
+ if (scope != null) {
+ requiredEPackages.add(scope.getEPackage());
+ }
+
+ final Map<String, URI> genModelLocMap = EcorePlugin
+ .getEPackageNsURIToGenModelLocationMap();
+
+ for (final EPackage ePackage : requiredEPackages) {
+ try {
+ final URI genModelURI = genModelLocMap.get(ePackage.getNsURI());
+ if (genModelURI == null) {
+ Logger.logWarning(
+ "Couldn't add the metamodel implementation plug-in" //$NON-NLS-1$
+ + " to the dependencies automatically because" //$NON-NLS-1$
+ + " the corresponding genmodel couldn't be found: " //$NON-NLS-1$
+ + ePackage.getNsURI(),
+ Activator.getDefault());
+ } else {
+ final ResourceSet resourceSet = createResource();
+ final Resource resource = resourceSet
+ .createResource(genModelURI);
+ resource.load(Collections.emptyMap());
+ final GenModel genModel = (GenModel) resource.getContents()
+ .get(0);
+ final String modelPluginID = genModel.getModelPluginID();
+ if (modelPluginID != null) {
+ requiredBundles.add(modelPluginID);
+ }
+ }
+ } catch (final Exception e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+ return requiredBundles.toArray(new String[requiredBundles.size()]);
+ }
+
+ private static ResourceSetImpl createResource() {
+ return new ResourceSetImpl();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/SelectOrCreateJavaClassWizard.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/SelectOrCreateJavaClassWizard.java
new file mode 100644
index 00000000000..d5ce0b41458
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/SelectOrCreateJavaClassWizard.java
@@ -0,0 +1,172 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software)
+ * Nicolas Bros (Mia-Software)
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.wizard;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IWorkspace;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext;
+import org.eclipse.papyrus.emf.facet.query.java.core.internal.exceptions.ClassAlreadyExistsException;
+import org.eclipse.papyrus.emf.facet.query.java.core.internal.exceptions.ResourceURIExpectedException;
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.wizard.page.CreateQueryClassWizardPage;
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.wizard.page.SelectJavaClassWizardPage;
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.wizard.page.SelectOrCreateJavaClassWizardPage;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.wizard.IExtendedWizard;
+import org.eclipse.jdt.core.IJavaProject;
+import org.eclipse.jdt.core.JavaCore;
+import org.eclipse.jdt.core.JavaModelException;
+import org.eclipse.jface.wizard.IWizardPage;
+import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.jface.wizard.WizardDialog;
+
+// Copied from org.eclipse.papyrus.emf.facet.query.java.ui.internal.wizard.SelectOrCreateJavaClassWizard
+public class SelectOrCreateJavaClassWizard extends Wizard implements
+ IExtendedWizard {
+
+
+ private final WizardDialog dialog;
+ private CreateQueryClassWizardPage createClassPage;
+ private SelectOrCreateJavaClassWizardPage firstPage;
+
+ private final IDialogCallback<String> callBack;
+ private SelectJavaClassWizardPage selectClassPage;
+ private final IQueryContext queryContext;
+
+ public SelectOrCreateJavaClassWizard(final IQueryContext queryContext,
+ final IDialogCallback<String> callBack)
+ throws ClassAlreadyExistsException, ResourceURIExpectedException,
+ JavaModelException {
+ super();
+ this.queryContext = queryContext;
+ this.callBack = callBack;
+ this.dialog = new WizardDialog(getShell(), this);
+ setWindowTitle(Messages.Choose_an_operation);
+
+ // check that the resource is from a platform URI
+ final Resource resource = queryContext.getResource();
+ final URI uri = resource.getURI();
+ if (!uri.isPlatformResource()) {
+ throw new ResourceURIExpectedException();
+ }
+ // check that the class doesn't already exist
+ final String projectName = uri.segment(1);
+ final IWorkspace workspace = ResourcesPlugin.getWorkspace();
+ final IProject project = workspace.getRoot().getProject(projectName);
+ final IJavaProject javaProject = JavaCore.create(project);
+ final StringBuffer implClassName = new StringBuffer(
+ this.queryContext.getDerivedTypedElementName());
+ final EObject intermediate = this.queryContext.getIntermediateEObject();
+ if (intermediate instanceof ETypedElementCase) {
+ final ETypedElementCase eTECase = (ETypedElementCase) intermediate;
+ if (eTECase.getCase() != null) {
+ implClassName.append(eTECase.getCase().getName());
+ }
+ }
+ implClassName.append("Query"); //$NON-NLS-1$
+ if (javaProject.findType(implClassName.toString()) != null) {
+ throw new ClassAlreadyExistsException();
+ }
+ }
+
+ @Override
+ public void addPages() {
+ this.firstPage = new SelectOrCreateJavaClassWizardPage();
+ addPage(this.firstPage);
+ this.createClassPage = new CreateQueryClassWizardPage(
+ this.queryContext);
+ addPage(this.createClassPage);
+ this.selectClassPage = new SelectJavaClassWizardPage();
+ addPage(this.selectClassPage);
+ }
+
+ private String createJavaClass() {
+ return this.createClassPage.apply(this.queryContext.getReturnType(),
+ this.queryContext.getUpperBound() > 1,
+ this.queryContext.getExtendedEClass());
+ }
+
+ @Override
+ public boolean canFinish() {
+ return getContainer().getCurrentPage().isPageComplete();
+ }
+
+ @Override
+ public boolean performFinish() {
+ return finish();
+ }
+
+ public int open() {
+ return this.dialog.open();
+ }
+
+ public IWizardPage getCurrentPage() {
+ return getContainer().getCurrentPage();
+ }
+
+ public IWizardPage next() {
+ final IWizardPage nextPage = getNextPage(this.getCurrentPage());
+ this.dialog.showPage(nextPage);
+ return nextPage;
+ }
+
+ public IWizardPage previous() {
+ final IWizardPage previousPage = getPreviousPage(this.getCurrentPage());
+ this.dialog.showPage(previousPage);
+ return previousPage;
+ }
+
+ public boolean finish() {
+ boolean result = true;
+ try {
+ if (getContainer().getCurrentPage() == this.createClassPage) {
+ final String classQName = createJavaClass();
+ this.callBack.committed(classQName);
+ } else if (getContainer().getCurrentPage() == this.selectClassPage) {
+ this.callBack.committed(this.selectClassPage.getResult()
+ .toString());
+ }
+ } catch (final Exception e) {
+ Logger.logError(e, Activator.getDefault());
+ result = false;
+ }
+ return result;
+ }
+
+ @Override
+ public boolean performCancel() {
+ return true;
+ }
+
+ @Override
+ public IWizardPage getNextPage(final IWizardPage page) {
+ IWizardPage result = null;
+ if (page == this.firstPage) {
+ if (this.firstPage.isSelect()) {
+ result = this.selectClassPage;
+ } else {
+ result = this.createClassPage;
+ }
+ }
+ return result;
+
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/page/CreateQueryClassWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/page/CreateQueryClassWizardPage.java
new file mode 100644
index 00000000000..50a9f950506
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/page/CreateQueryClassWizardPage.java
@@ -0,0 +1,127 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software)
+ * Nicolas Bros (Mia-Software)
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.wizard.page;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.ETypedElementCase;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.wizard.JavaQueryUtils;
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.wizard.JdtUtils;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.core.internal.exported.StringUtils;
+import org.eclipse.jdt.core.ICompilationUnit;
+import org.eclipse.jdt.core.IJavaProject;
+import org.eclipse.jdt.core.IPackageFragment;
+import org.eclipse.jdt.core.IPackageFragmentRoot;
+import org.eclipse.jdt.core.JavaCore;
+import org.eclipse.jdt.core.JavaModelException;
+import org.eclipse.jface.dialogs.MessageDialog;
+
+// Copied from org.eclipse.papyrus.emf.facet.query.java.ui.internal.wizard.page.NewQueryClassWizardPage
+public class CreateQueryClassWizardPage extends NewClassWizardPage {
+
+ // This class has been copied from
+ // org.eclipse.papyrus.emf.facet.infra.query.ui.wizards.NewQueryClassWizardPage
+
+ public CreateQueryClassWizardPage(final IQueryContext queryContainer) {
+ super();
+ final IJavaProject javaProject = JavaCore.create(queryContainer
+ .getProject());
+ final List<String> interfaceList = new ArrayList<String>();
+ interfaceList.add(IJavaQuery2.class.getName());
+ setSuperInterfaces(interfaceList, false);
+ final String packageName = JavaQueryUtils.getDefaultPackageName(
+ queryContainer,
+ javaProject);
+ final String typeName = getClassName(queryContainer);
+ setTypeName(typeName, true);
+ selectPackage(javaProject, packageName);
+ setModifiers(this.F_PUBLIC, false);
+ setSuperClass("", false); //$NON-NLS-1$
+ setEnclosingTypeSelection(false, false);
+ setAddComments(false, false);
+ }
+
+ private static String getClassName(final IQueryContext queryContext) {
+ final StringBuffer result = new StringBuffer();
+ final EObject intermediate = queryContext.getIntermediateEObject();
+ if (intermediate instanceof ETypedElementCase) {
+ final ETypedElementCase eteCase = (ETypedElementCase) intermediate;
+ String caseLabel = ""; //$NON-NLS-1$
+ if (eteCase.getCase() != null) {
+ caseLabel = eteCase.getCase().getName();
+ }
+ result.append(StringUtils.firstLetterToUpperCase(caseLabel));
+ }
+ result.append(StringUtils.firstLetterToUpperCase(queryContext
+ .getDerivedTypedElementName()));
+ result.append("Query"); //$NON-NLS-1$
+ return result.toString();
+ }
+
+ private void selectPackage(final IJavaProject javaProject,
+ final String packageName) {
+ try {
+ for (final IPackageFragmentRoot packageFragmentRootToTest : javaProject
+ .getPackageFragmentRoots()) {
+ if (packageFragmentRootToTest.getKind() == IPackageFragmentRoot.K_SOURCE) {
+ final IPackageFragmentRoot pkgFragmentRoot = packageFragmentRootToTest;
+ setPackageFragmentRoot(pkgFragmentRoot, false);
+ final IPackageFragment packageFragment = pkgFragmentRoot
+ .getPackageFragment(packageName);
+ setPackageFragment(packageFragment, true);
+ break;
+ }
+ }
+ } catch (final JavaModelException e1) {
+ Logger.logError(e1, Activator.getDefault());
+ }
+ }
+
+ public String apply(final EClassifier returnType,
+ final boolean multiValues,
+ final EClassifier scope) {
+ String result = ""; //$NON-NLS-1$
+ try {
+ final IPackageFragmentRoot root = getPackageFragmentRoot();
+ final IPackageFragment packageFragment = getPackageFragment();
+ final String typeName = getTypeName();
+ final String cuName = getCompilationUnitName(typeName);
+ final ICompilationUnit javaClass = JdtUtils.createJavaClass(
+ returnType, multiValues, scope, packageFragment, root,
+ typeName, cuName);
+ final IProject project = javaClass.getCorrespondingResource()
+ .getProject();
+ JdtUtils.setupProject(project, returnType, scope);
+ result = packageFragment.getElementName() + '.' + typeName;
+ } catch (final Exception e) {
+ Logger.logError(e, Activator.getDefault());
+ MessageDialog
+ .openError(
+ getShell(),
+ Messages.NewQueryClassWizardPage_Failed_to_create_java_class,
+ Messages.NewQueryClassWizardPage_Failed_to_create_query_implementation);
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/page/NewClassWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/page/NewClassWizardPage.java
new file mode 100644
index 00000000000..7e9d8ac5e12
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/page/NewClassWizardPage.java
@@ -0,0 +1,68 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349556 - EMF Facet Java Query wizard
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.wizard.page;
+
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.Messages;
+import org.eclipse.jdt.core.IJavaElement;
+import org.eclipse.jdt.ui.wizards.NewTypeWizardPage;
+import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+
+// Copied from org.eclipse.papyrus.emf.facet.query.java.ui.internal.wizard.page.NewClassWizardPage
+public class NewClassWizardPage extends NewTypeWizardPage {
+
+ private static final String PAGE_NAME = "NewClassWizardPage"; //$NON-NLS-1$
+ private static final int COLUMN_NB = 4;
+
+ public NewClassWizardPage() {
+ super(true, NewClassWizardPage.PAGE_NAME);
+ setTitle(Messages.NewClassWizardPage_JavaClass);
+ setDescription(Messages.NewClassWizardPage_CreateANewJavaClass);
+ }
+
+ public void init(final IStructuredSelection selection) {
+ final IJavaElement javaElement = getInitialJavaElement(selection);
+ initContainerPage(javaElement);
+ initTypePage(javaElement);
+ }
+
+ public void createControl(final Composite parent) {
+ initializeDialogUnits(parent);
+
+ final Composite composite = new Composite(parent, SWT.NONE);
+ composite.setFont(parent.getFont());
+
+ final GridLayout layout = new GridLayout();
+ layout.numColumns = COLUMN_NB;
+ composite.setLayout(layout);
+
+ createContainerControls(composite, COLUMN_NB);
+ createPackageControls(composite, COLUMN_NB);
+
+ createSeparator(composite, COLUMN_NB);
+
+ createTypeNameControls(composite, COLUMN_NB);
+ createModifierControls(composite, COLUMN_NB);
+
+ createSuperInterfacesControls(composite, COLUMN_NB);
+
+ setControl(composite);
+
+ Dialog.applyDialogFont(composite);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/page/SelectJavaClassWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/page/SelectJavaClassWizardPage.java
new file mode 100644
index 00000000000..3d8704adc50
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/page/SelectJavaClassWizardPage.java
@@ -0,0 +1,116 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349556 - EMF Facet Java Query wizard
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.wizard.page;
+
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.jdt.core.IType;
+import org.eclipse.jdt.core.JavaModelException;
+import org.eclipse.jdt.core.search.SearchEngine;
+import org.eclipse.jdt.ui.IJavaElementSearchConstants;
+import org.eclipse.jdt.ui.JavaUI;
+import org.eclipse.jface.dialogs.ProgressMonitorDialog;
+import org.eclipse.jface.window.Window;
+import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.dialogs.SelectionDialog;
+
+// Copied from org.eclipse.papyrus.emf.facet.query.java.ui.internal.wizard.page.SelectOrCreateJavaClassWizardPage
+public class SelectJavaClassWizardPage extends WizardPage {
+
+ private String result;
+ private Text text;
+
+ public SelectJavaClassWizardPage() {
+ super("SelectJavaClass"); //$NON-NLS-1$
+ setTitle(Messages.SelectJavaClassWizardPage_SelectAJavaClass);
+ setDescription(Messages.SelectJavaClassWizardPage_SeclectAJavaClassLongDescription);
+ }
+
+ public void createControl(final Composite parent) {
+ final Composite composite = new Composite(parent, SWT.NONE);
+ composite.setLayout(new GridLayout());
+ final Button dialogBtn = new Button(composite, SWT.PUSH);
+ dialogBtn.setText("Open the class selection wizard..."); //$NON-NLS-1$
+ final SelectionListener listener = new SelectionListener() {
+ public void widgetSelected(final SelectionEvent event) {
+ SelectJavaClassWizardPage.this.openSelectionDialog();
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent event) {
+ // Noting to do
+ }
+ };
+ dialogBtn.addSelectionListener(listener);
+ this.text = new Text(composite, SWT.BORDER);
+ setControl(composite);
+ setPageComplete(false);
+ }
+
+ protected void openSelectionDialog() {
+ final Display display = Display.getDefault();
+ display.asyncExec(new Runnable() {
+ public void run() {
+ final Shell shell = new Shell(display);
+ SelectionDialog dialog;
+ try {
+ dialog = JavaUI.createTypeDialog(shell,
+ new ProgressMonitorDialog(shell),
+ SearchEngine.createWorkspaceScope(),
+ IJavaElementSearchConstants.CONSIDER_CLASSES, false);
+ dialog.open();
+ final boolean cancelled = (dialog.getReturnCode() == Window.CANCEL);
+ Object dilaogResult = null;
+ if (!cancelled && dialog.getResult()[0] instanceof IType) {
+ final IType type = (IType) dialog.getResult()[0];
+ dilaogResult = type.getFullyQualifiedName();
+ }
+ SelectJavaClassWizardPage.this.dialogClosed(dilaogResult,
+ cancelled);
+ } catch (JavaModelException e) {
+ Logger.logError(e, Activator.getDefault());
+ SelectJavaClassWizardPage.this.dialogClosed(null, true);
+ }
+ }
+ });
+ }
+
+ protected void dialogClosed(final Object dialogResult, final boolean cancelled) {
+ if (cancelled) {
+ this.getPreviousPage();
+ } else {
+ if (dialogResult != null && dialogResult.toString().length() > 0) {
+ this.result = dialogResult.toString();
+ this.text.setText(dialogResult.toString());
+ setPageComplete(true);
+ } else {
+ setPageComplete(false);
+ }
+ }
+ }
+
+ public String getResult() {
+ return this.result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/page/SelectOrCreateJavaClassWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/page/SelectOrCreateJavaClassWizardPage.java
new file mode 100644
index 00000000000..51943050be3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/java/sdk/ui/internal/wizard/page/SelectOrCreateJavaClassWizardPage.java
@@ -0,0 +1,72 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349556 - EMF Facet Java Query wizard
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.wizard.page;
+
+import org.eclipse.papyrus.emf.facet.query.java.sdk.ui.internal.Messages;
+import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+
+// Copied from org.eclipse.papyrus.emf.facet.query.java.ui.internal.wizard.page.SelectOrCreateJavaClassWizardPage
+public class SelectOrCreateJavaClassWizardPage extends WizardPage {
+
+ private Button selectButton;
+
+ private final SelectionListener selectionListener = new SelectionListener() {
+ public void widgetSelected(final SelectionEvent event) {
+ onSelection();
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent event) {
+ // Nothing
+ }
+ };
+
+ public SelectOrCreateJavaClassWizardPage() {
+ super("Whatever"); //$NON-NLS-1$
+ setTitle(Messages.Choose_an_operation);
+ setDescription(Messages.Choose_an_operation_desc);
+ }
+
+ public void createControl(final Composite parent) {
+ final Composite container = new Composite(parent, SWT.NONE);
+ container.setLayout(new GridLayout(1, false));
+ // Create the creation radio button
+ final Button createButton = new Button(container, SWT.RADIO);
+ createButton.setText(Messages.Create_new_java_class);
+ createButton.addSelectionListener(this.selectionListener);
+ // Create the creation radio button
+ this.selectButton = new Button(container, SWT.RADIO);
+ this.selectButton.setText(Messages.Select_existing_java_class);
+ this.selectButton.addSelectionListener(this.selectionListener);
+ setControl(container);
+ }
+
+ public boolean canFinish() {
+ return this.selectButton.getSelection();
+ }
+
+
+ protected void onSelection() {
+ getContainer().updateButtons();
+ }
+
+ public boolean isSelect() {
+ return this.selectButton.getSelection();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.checkstyle
new file mode 100644
index 00000000000..3e9669f7694
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.checkstyle
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2011 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Guyomar (Mia-Software) - initial API and implementation
+-->
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+ <local-check-config name="EmfFacet" location="../org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ </fileset>
+ <filter name="FilesFromPackage" enabled="true">
+ <filter-data value="src/org/eclipse/emf/facet/query/java/javaquery"/>
+ <filter-data value="src/org/eclipse/emf/facet/query/java/javaquery2"/>
+ </filter>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.classpath
new file mode 100644
index 00000000000..45f024e850e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.project
new file mode 100644
index 00000000000..54c3a9a5c5f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.query.java</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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..cbdc058b7a8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,3 @@
+#Thu Sep 22 10:54:59 CEST 2011
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..0f3d71347b6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,74 @@
+#Thu Sep 22 11:02:21 CEST 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.autoboxing=warning
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.deadCode=warning
+org.eclipse.jdt.core.compiler.problem.deprecation=warning
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
+org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
+org.eclipse.jdt.core.compiler.problem.nullReference=warning
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=warning
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=warning
+org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
+org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..ed18d011e11
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/META-INF/MANIFEST.MF
@@ -0,0 +1,15 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.query.java;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: %Bundle-Vendor
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Export-Package: org.eclipse.papyrus.emf.facet.query.java.javaquery,
+ org.eclipse.papyrus.emf.facet.query.java.javaquery.util;x-friends:="org.eclipse.papyrus.emf.facet.query.java.edit"
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore,
+ org.eclipse.papyrus.emf.facet.efacet;bundle-version="0.1.0",
+ org.eclipse.papyrus.emf.facet.efacet.metamodel;bundle-version="0.2.0"
+Bundle-ActivationPolicy: lazy
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..ce5670de1a7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,14 @@
+##############################################################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+##############################################################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.query.java
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Java Query (Deprecated) (Incubation) \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/about.html
new file mode 100644
index 00000000000..683d07ab900
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/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>January 18, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/build.properties
new file mode 100644
index 00000000000..e8320774599
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/build.properties
@@ -0,0 +1,21 @@
+##########################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+###########################################################################
+bin.includes = .,\
+ model/,\
+ META-INF/,\
+ plugin.xml,\
+ OSGI-INF/,\
+ about.html
+jars.compile.order = .
+source.. = src/
+output.. = bin/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/model/javaQuery.ecore b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/model/javaQuery.ecore
new file mode 100644
index 00000000000..eb3b57f1a76
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/model/javaQuery.ecore
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="javaquery"
+ nsURI="http://www.eclipse.org/papyrus/emf/facet/query/java/0.1.incubation" nsPrefix="javaQuery">
+ <eClassifiers xsi:type="ecore:EClass" name="JavaQuery" eSuperTypes="platform:/plugin/org.eclipse.papyrus.emf.facet.efacet/model/efacet.ecore#//Query">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="implementationClassName"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/model/javaQuery.genmodel b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/model/javaQuery.genmodel
new file mode 100644
index 00000000000..f8376fe91dd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/model/javaQuery.genmodel
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText=" Copyright (c) 2011 Mia-Software.&#xD;&#xA; &#xD;&#xA; All rights reserved. This program and the accompanying materials&#xD;&#xA; are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA; which accompanies this distribution, and is available at&#xD;&#xA; http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA;&#xD;&#xA; Contributors:&#xD;&#xA; &#x9;Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet&#xD;&#xA; "
+ modelDirectory="/org.eclipse.papyrus.emf.facet.query.java/src" modelPluginID="org.eclipse.papyrus.emf.facet.query.java"
+ modelName="JavaQuery" nonNLSMarkers="true" importerID="org.eclipse.emf.importer.ecore"
+ complianceLevel="5.0" copyrightFields="false" usedGenPackages="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore platform:/plugin/org.eclipse.papyrus.emf.facet.efacet/model/efacet.genmodel#//efacet">
+ <foreignModel>javaQuery.ecore</foreignModel>
+ <genPackages prefix="Javaquery" basePackage="org.eclipse.papyrus.emf.facet.query.java" disposableProviderFactory="true"
+ childCreationExtenders="true" ecorePackage="javaQuery.ecore#/">
+ <genClasses ecoreClass="javaQuery.ecore#//JavaQuery">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute javaQuery.ecore#//JavaQuery/implementationClassName"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/plugin.xml
new file mode 100644
index 00000000000..991b648edb6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/plugin.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+
+<!--
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+
+-->
+
+<plugin>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri="http://www.eclipse.org/papyrus/emf/facet/query/java/0.1.incubation"
+ class="org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaqueryPackage"
+ genModel="model/javaQuery.genmodel"/>
+ </extension>
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/JavaQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/JavaQuery.java
new file mode 100644
index 00000000000..d9f89553218
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/JavaQuery.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.java.javaquery;
+
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Java Query</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaQuery#getImplementationClassName <em>Implementation Class Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaqueryPackage#getJavaQuery()
+ * @model
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=374198
+ */
+@Deprecated
+public interface JavaQuery extends Query {
+ /**
+ * Returns the value of the '<em><b>Implementation Class Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Implementation Class Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Implementation Class Name</em>' attribute.
+ * @see #setImplementationClassName(String)
+ * @see org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaqueryPackage#getJavaQuery_ImplementationClassName()
+ * @model
+ * @generated
+ */
+ String getImplementationClassName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaQuery#getImplementationClassName <em>Implementation Class Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Implementation Class Name</em>' attribute.
+ * @see #getImplementationClassName()
+ * @generated
+ */
+ void setImplementationClassName(String value);
+
+} // JavaQuery
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/JavaqueryFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/JavaqueryFactory.java
new file mode 100644
index 00000000000..e111634615c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/JavaqueryFactory.java
@@ -0,0 +1,55 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.java.javaquery;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaqueryPackage
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=374198
+ */
+@Deprecated
+public interface JavaqueryFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ JavaqueryFactory eINSTANCE = org.eclipse.papyrus.emf.facet.query.java.javaquery.impl.JavaqueryFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Java Query</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Java Query</em>'.
+ * @generated
+ */
+ JavaQuery createJavaQuery();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ JavaqueryPackage getJavaqueryPackage();
+
+} //JavaqueryFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/JavaqueryPackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/JavaqueryPackage.java
new file mode 100644
index 00000000000..06fb0cd5b21
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/JavaqueryPackage.java
@@ -0,0 +1,289 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.java.javaquery;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaqueryFactory
+ * @model kind="package"
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=374198
+ */
+@Deprecated
+public interface JavaqueryPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "javaquery"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/query/java/0.1.incubation"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "javaQuery"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ JavaqueryPackage eINSTANCE = org.eclipse.papyrus.emf.facet.query.java.javaquery.impl.JavaqueryPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.query.java.javaquery.impl.JavaQueryImpl <em>Java Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.query.java.javaquery.impl.JavaQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.query.java.javaquery.impl.JavaqueryPackageImpl#getJavaQuery()
+ * @generated
+ */
+ int JAVA_QUERY = 0;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__EANNOTATIONS = EFacetPackage.QUERY__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__NAME = EFacetPackage.QUERY__NAME;
+
+ /**
+ * The feature id for the '<em><b>Ordered</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__ORDERED = EFacetPackage.QUERY__ORDERED;
+
+ /**
+ * The feature id for the '<em><b>Unique</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__UNIQUE = EFacetPackage.QUERY__UNIQUE;
+
+ /**
+ * The feature id for the '<em><b>Lower Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__LOWER_BOUND = EFacetPackage.QUERY__LOWER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Upper Bound</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__UPPER_BOUND = EFacetPackage.QUERY__UPPER_BOUND;
+
+ /**
+ * The feature id for the '<em><b>Many</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__MANY = EFacetPackage.QUERY__MANY;
+
+ /**
+ * The feature id for the '<em><b>Required</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__REQUIRED = EFacetPackage.QUERY__REQUIRED;
+
+ /**
+ * The feature id for the '<em><b>EType</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__ETYPE = EFacetPackage.QUERY__ETYPE;
+
+ /**
+ * The feature id for the '<em><b>EGeneric Type</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__EGENERIC_TYPE = EFacetPackage.QUERY__EGENERIC_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Scope</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__SCOPE = EFacetPackage.QUERY__SCOPE;
+
+ /**
+ * The feature id for the '<em><b>Has Side Effect</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__HAS_SIDE_EFFECT = EFacetPackage.QUERY__HAS_SIDE_EFFECT;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__CAN_BE_CACHED = EFacetPackage.QUERY__CAN_BE_CACHED;
+
+ /**
+ * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__PARAMETERS = EFacetPackage.QUERY__PARAMETERS;
+
+ /**
+ * The feature id for the '<em><b>Implementation Class Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY__IMPLEMENTATION_CLASS_NAME = EFacetPackage.QUERY_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Java Query</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int JAVA_QUERY_FEATURE_COUNT = EFacetPackage.QUERY_FEATURE_COUNT + 1;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaQuery <em>Java Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Java Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaQuery
+ * @generated
+ */
+ EClass getJavaQuery();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaQuery#getImplementationClassName <em>Implementation Class Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Implementation Class Name</em>'.
+ * @see org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaQuery#getImplementationClassName()
+ * @see #getJavaQuery()
+ * @generated
+ */
+ EAttribute getJavaQuery_ImplementationClassName();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ JavaqueryFactory getJavaqueryFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.query.java.javaquery.impl.JavaQueryImpl <em>Java Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.query.java.javaquery.impl.JavaQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.query.java.javaquery.impl.JavaqueryPackageImpl#getJavaQuery()
+ * @generated
+ */
+ EClass JAVA_QUERY = JavaqueryPackage.eINSTANCE.getJavaQuery();
+
+ /**
+ * The meta object literal for the '<em><b>Implementation Class Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute JAVA_QUERY__IMPLEMENTATION_CLASS_NAME = JavaqueryPackage.eINSTANCE.getJavaQuery_ImplementationClassName();
+
+ }
+
+} //JavaqueryPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/impl/JavaQueryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/impl/JavaQueryImpl.java
new file mode 100644
index 00000000000..11361215f66
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/impl/JavaQueryImpl.java
@@ -0,0 +1,175 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.java.javaquery.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.papyrus.emf.facet.efacet.impl.QueryImpl;
+import org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaQuery;
+import org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaqueryPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Java Query</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.query.java.javaquery.impl.JavaQueryImpl#getImplementationClassName <em>Implementation Class Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=374198
+ */
+@Deprecated
+public class JavaQueryImpl extends QueryImpl implements JavaQuery {
+ /**
+ * The default value of the '{@link #getImplementationClassName() <em>Implementation Class Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getImplementationClassName()
+ * @generated
+ * @ordered
+ */
+ protected static final String IMPLEMENTATION_CLASS_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getImplementationClassName() <em>Implementation Class Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getImplementationClassName()
+ * @generated
+ * @ordered
+ */
+ protected String implementationClassName = JavaQueryImpl.IMPLEMENTATION_CLASS_NAME_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected JavaQueryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return JavaqueryPackage.Literals.JAVA_QUERY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getImplementationClassName() {
+ return this.implementationClassName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setImplementationClassName(final String newImplementationClassName) {
+ String oldImplementationClassName = this.implementationClassName;
+ this.implementationClassName = newImplementationClassName;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, JavaqueryPackage.JAVA_QUERY__IMPLEMENTATION_CLASS_NAME, oldImplementationClassName, this.implementationClassName));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case JavaqueryPackage.JAVA_QUERY__IMPLEMENTATION_CLASS_NAME:
+ return getImplementationClassName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case JavaqueryPackage.JAVA_QUERY__IMPLEMENTATION_CLASS_NAME:
+ setImplementationClassName((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case JavaqueryPackage.JAVA_QUERY__IMPLEMENTATION_CLASS_NAME:
+ setImplementationClassName(JavaQueryImpl.IMPLEMENTATION_CLASS_NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case JavaqueryPackage.JAVA_QUERY__IMPLEMENTATION_CLASS_NAME:
+ return JavaQueryImpl.IMPLEMENTATION_CLASS_NAME_EDEFAULT == null ? this.implementationClassName != null : !JavaQueryImpl.IMPLEMENTATION_CLASS_NAME_EDEFAULT.equals(this.implementationClassName);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (implementationClassName: "); //$NON-NLS-1$
+ result.append(this.implementationClassName);
+ result.append(')');
+ return result.toString();
+ }
+
+} //JavaQueryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/impl/JavaqueryFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/impl/JavaqueryFactoryImpl.java
new file mode 100644
index 00000000000..92b32963f77
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/impl/JavaqueryFactoryImpl.java
@@ -0,0 +1,107 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.java.javaquery.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaQuery;
+import org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaqueryFactory;
+import org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaqueryPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=374198
+ */
+@Deprecated
+public class JavaqueryFactoryImpl extends EFactoryImpl implements JavaqueryFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static JavaqueryFactory init() {
+ try {
+ JavaqueryFactory theJavaqueryFactory = (JavaqueryFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/emf/facet/query/java/0.1.incubation"); //$NON-NLS-1$
+ if (theJavaqueryFactory != null) {
+ return theJavaqueryFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new JavaqueryFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public JavaqueryFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(final EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case JavaqueryPackage.JAVA_QUERY: return createJavaQuery();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public JavaQuery createJavaQuery() {
+ JavaQueryImpl javaQuery = new JavaQueryImpl();
+ return javaQuery;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public JavaqueryPackage getJavaqueryPackage() {
+ return (JavaqueryPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static JavaqueryPackage getPackage() {
+ return JavaqueryPackage.eINSTANCE;
+ }
+
+} //JavaqueryFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/impl/JavaqueryPackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/impl/JavaqueryPackageImpl.java
new file mode 100644
index 00000000000..31a698f58f2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/impl/JavaqueryPackageImpl.java
@@ -0,0 +1,202 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.java.javaquery.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.papyrus.emf.facet.efacet.EFacetPackage;
+import org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaQuery;
+import org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaqueryFactory;
+import org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaqueryPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=374198
+ */
+@Deprecated
+public class JavaqueryPackageImpl extends EPackageImpl implements JavaqueryPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass javaQueryEClass = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaqueryPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private JavaqueryPackageImpl() {
+ super(JavaqueryPackage.eNS_URI, JavaqueryFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 JavaqueryPackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static JavaqueryPackage init() {
+ if (JavaqueryPackageImpl.isInited) {
+ return (JavaqueryPackage)EPackage.Registry.INSTANCE.getEPackage(JavaqueryPackage.eNS_URI);
+ }
+
+ // Obtain or create and register package
+ JavaqueryPackageImpl theJavaqueryPackage = (JavaqueryPackageImpl)(EPackage.Registry.INSTANCE.get(JavaqueryPackage.eNS_URI) instanceof JavaqueryPackageImpl ? EPackage.Registry.INSTANCE.get(JavaqueryPackage.eNS_URI) : new JavaqueryPackageImpl());
+
+ JavaqueryPackageImpl.isInited = true;
+
+ // Initialize simple dependencies
+ EFacetPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theJavaqueryPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theJavaqueryPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theJavaqueryPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(JavaqueryPackage.eNS_URI, theJavaqueryPackage);
+ return theJavaqueryPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getJavaQuery() {
+ return this.javaQueryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getJavaQuery_ImplementationClassName() {
+ return (EAttribute)this.javaQueryEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public JavaqueryFactory getJavaqueryFactory() {
+ return (JavaqueryFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (this.isCreated) {
+ return;
+ }
+ this.isCreated = true;
+
+ // Create classes and their features
+ this.javaQueryEClass = createEClass(JavaqueryPackage.JAVA_QUERY);
+ createEAttribute(this.javaQueryEClass, JavaqueryPackage.JAVA_QUERY__IMPLEMENTATION_CLASS_NAME);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (this.isInitialized) {
+ return;
+ }
+ this.isInitialized = true;
+
+ // Initialize package
+ setName(JavaqueryPackage.eNAME);
+ setNsPrefix(JavaqueryPackage.eNS_PREFIX);
+ setNsURI(JavaqueryPackage.eNS_URI);
+
+ // Obtain other dependent packages
+ EFacetPackage theEFacetPackage = (EFacetPackage)EPackage.Registry.INSTANCE.getEPackage(EFacetPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ this.javaQueryEClass.getESuperTypes().add(theEFacetPackage.getQuery());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(this.javaQueryEClass, JavaQuery.class, "JavaQuery", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getJavaQuery_ImplementationClassName(), this.ecorePackage.getEString(), "implementationClassName", null, 0, 1, JavaQuery.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_UNSETTABLE, !EPackageImpl.IS_ID, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+
+ // Create resource
+ createResource(JavaqueryPackage.eNS_URI);
+ }
+
+} //JavaqueryPackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/util/JavaqueryAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/util/JavaqueryAdapterFactory.java
new file mode 100644
index 00000000000..65984fb47f5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/util/JavaqueryAdapterFactory.java
@@ -0,0 +1,207 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.java.javaquery.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaQuery;
+import org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaqueryPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaqueryPackage
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=374198
+ */
+@Deprecated
+public class JavaqueryAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static JavaqueryPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public JavaqueryAdapterFactory() {
+ if (JavaqueryAdapterFactory.modelPackage == null) {
+ JavaqueryAdapterFactory.modelPackage = JavaqueryPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(final Object object) {
+ if (object == JavaqueryAdapterFactory.modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == JavaqueryAdapterFactory.modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected JavaquerySwitch<Adapter> modelSwitch =
+ new JavaquerySwitch<Adapter>() {
+ @Override
+ public Adapter caseJavaQuery(final JavaQuery object) {
+ return createJavaQueryAdapter();
+ }
+ @Override
+ public Adapter caseEModelElement(final EModelElement object) {
+ return createEModelElementAdapter();
+ }
+ @Override
+ public Adapter caseENamedElement(final ENamedElement object) {
+ return createENamedElementAdapter();
+ }
+ @Override
+ public Adapter caseETypedElement(final ETypedElement object) {
+ return createETypedElementAdapter();
+ }
+ @Override
+ public Adapter caseQuery(final Query object) {
+ return createQueryAdapter();
+ }
+ @Override
+ public Adapter defaultCase(final EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(final Notifier target) {
+ return this.modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaQuery <em>Java Query</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.emf.facet.query.java.javaquery.JavaQuery
+ * @generated
+ */
+ public Adapter createJavaQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EModelElement <em>EModel Element</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.emf.ecore.EModelElement
+ * @generated
+ */
+ public Adapter createEModelElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.ENamedElement <em>ENamed Element</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.emf.ecore.ENamedElement
+ * @generated
+ */
+ public Adapter createENamedElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.ETypedElement <em>ETyped Element</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.emf.ecore.ETypedElement
+ * @generated
+ */
+ public Adapter createETypedElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.Query <em>Query</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.emf.facet.efacet.Query
+ * @generated
+ */
+ public Adapter createQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //JavaqueryAdapterFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/util/JavaquerySwitch.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/util/JavaquerySwitch.java
new file mode 100644
index 00000000000..65459f2d358
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.java/src/org/eclipse/papyrus/emf/facet/query/java/javaquery/util/JavaquerySwitch.java
@@ -0,0 +1,216 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334615 - Java Query for EMF Facet
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.java.javaquery.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.Query;
+import org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaQuery;
+import org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaqueryPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)} to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.query.java.javaquery.JavaqueryPackage
+ * @generated
+ * @deprecated cf. https://bugs.eclipse.org/bugs/show_bug.cgi?id=374198
+ */
+@Deprecated
+public class JavaquerySwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static JavaqueryPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public JavaquerySwitch() {
+ if (JavaquerySwitch.modelPackage == null) {
+ JavaquerySwitch.modelPackage = JavaqueryPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(final EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(final EClass theEClass, final EObject theEObject) {
+ if (theEClass.eContainer() == JavaquerySwitch.modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(final int classifierID, final EObject theEObject) {
+ switch (classifierID) {
+ case JavaqueryPackage.JAVA_QUERY: {
+ JavaQuery javaQuery = (JavaQuery)theEObject;
+ T result = caseJavaQuery(javaQuery);
+ if (result == null) {
+ result = caseQuery(javaQuery);
+ }
+ if (result == null) {
+ result = caseETypedElement(javaQuery);
+ }
+ if (result == null) {
+ result = caseENamedElement(javaQuery);
+ }
+ if (result == null) {
+ result = caseEModelElement(javaQuery);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Java Query</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>Java Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseJavaQuery(final JavaQuery object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EModel Element</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>EModel Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEModelElement(final EModelElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>ENamed Element</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>ENamed Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseENamedElement(final ENamedElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>ETyped Element</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>ETyped Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseETypedElement(final ETypedElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Query</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>Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseQuery(final Query object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(final EObject object) {
+ return null;
+ }
+
+} //JavaquerySwitch
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.checkstyle
new file mode 100644
index 00000000000..b28923d2a4b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.checkstyle
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+ <local-check-config name="EmfFacet" location="/org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.pmd b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.pmd
new file mode 100644
index 00000000000..e8d3e27588f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.pmd
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<pmd>
+ <useProjectRuleSet>true</useProjectRuleSet>
+ <ruleSetFile>../org.eclipse.papyrus.emf.facet.archi.tech.rules/pmd/ruleset.xml</ruleSetFile>
+ <includeDerivedFiles>false</includeDerivedFiles>
+ <violationsAsErrors>true</violationsAsErrors>
+</pmd>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.project
new file mode 100644
index 00000000000..ee253c8fb10
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.query.ocl.core</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>
+ <nature>net.sourceforge.pmd.eclipse.plugin.pmdNature</nature>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..4824b802631
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..819920c5bf5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/META-INF/MANIFEST.MF
@@ -0,0 +1,19 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.query.ocl.core;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.query.ocl.core.internal.Activator
+Bundle-Vendor: %Bundle-Vendor
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf;bundle-version="2.6.0",
+ org.eclipse.ocl;bundle-version="3.0.0",
+ org.eclipse.ocl.ecore;bundle-version="3.0.0",
+ org.eclipse.papyrus.emf.facet.efacet;bundle-version="0.3.0",
+ org.eclipse.papyrus.emf.facet.efacet.metamodel;bundle-version="0.3.0",
+ org.eclipse.papyrus.emf.facet.efacet.core;bundle-version="0.3.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.3.0",
+ org.eclipse.papyrus.emf.facet.query.ocl.metamodel;bundle-version="0.3.0"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.query.ocl.core.util
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..9cfc0a239d4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,13 @@
+###############################################################################
+# Copyright (c) 2012 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+###############################################################################
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet OCL Query Core (Incubation) \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/about.html
new file mode 100644
index 00000000000..aacf0cfd3b9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/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>August 17, 2012</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/build.properties
new file mode 100644
index 00000000000..b28b108392b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/build.properties
@@ -0,0 +1,20 @@
+###############################################################################
+# Copyright (c) 2012 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+###############################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ OSGI-INF/,\
+ about.html
+javacDefaultEncoding.. = UTF-8
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/plugin.xml
new file mode 100644
index 00000000000..4081a6ba1b3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/plugin.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright (c) 2012 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+-->
+<?eclipse version="3.4"?>
+<plugin>
+ <extension
+ point="org.eclipse.papyrus.emf.facet.efacet.core.queryImplementationRegistration">
+ <queryImplementationRegistration
+ class="org.eclipse.papyrus.emf.facet.query.ocl.core.internal.evaluator.OclQueryImplementationFactory">
+ </queryImplementationRegistration>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/src/org/eclipse/papyrus/emf/facet/query/ocl/core/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/src/org/eclipse/papyrus/emf/facet/query/ocl/core/internal/Activator.java
new file mode 100644
index 00000000000..fcf61594e1b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/src/org/eclipse/papyrus/emf/facet/query/ocl/core/internal/Activator.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.core.internal;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+// Copied from org.eclipse.papyrus.emf.facet.aggregate.metamodel.notgenerated
+@SuppressWarnings("PMD.UseSingleton")
+// @SuppressWarnings("PMD.UseSingleton") We cannot conforms to this rule because
+// this class is an Eclipse plug-in activator which will be instantiated by the
+// Eclipse framework.
+public class Activator extends Plugin {
+
+ private static Activator plugin;
+
+ @Override
+ @SuppressWarnings("PMD.SignatureDeclareThrowsException")
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ public void start(final BundleContext bundleContext) throws Exception {
+ super.start(bundleContext);
+ Activator.plugin = this;
+ }
+
+ @Override
+ @SuppressWarnings("PMD.SignatureDeclareThrowsException")
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ public void stop(final BundleContext bundleContext) throws Exception {
+ // NOPMD: PMD say "Assigning an Object to null is a code smell."
+ // No choice to right it in another way : this is an Eclipse pattern.
+ Activator.plugin = null; // NOPMD by gdupe on 30/03/12 10:19
+ super.stop(bundleContext);
+ }
+
+ public static Plugin getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/src/org/eclipse/papyrus/emf/facet/query/ocl/core/internal/evaluator/OclQueryImplementation.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/src/org/eclipse/papyrus/emf/facet/query/ocl/core/internal/evaluator/OclQueryImplementation.java
new file mode 100644
index 00000000000..b17f704e90a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/src/org/eclipse/papyrus/emf/facet/query/ocl/core/internal/evaluator/OclQueryImplementation.java
@@ -0,0 +1,95 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.core.internal.evaluator;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.DerivedTypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.query.ocl.core.util.OclQueryUtil;
+import org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery;
+import org.eclipse.ocl.ParserException;
+import org.eclipse.ocl.expressions.OCLExpression;
+
+/**
+ * Concrete implementation of {@link IQueryImplementation} for the OCL query.
+ */
+public class OclQueryImplementation implements IQueryImplementation {
+
+ public void setValue(final Query query, final DerivedTypedElement feature,
+ final EObject source, final List<ParameterValue> parameterValues,
+ final Object newValue) throws DerivedTypedElementException {
+ throw new UnsupportedOperationException("not implemented yet"); //$NON-NLS-1$
+ }
+
+ public boolean isCheckResultType() {
+ return true;
+ }
+
+ public Object getValue(final Query query,
+ final DerivedTypedElement feature, final EObject source,
+ final List<ParameterValue> parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ if (!(query instanceof OclQuery)) {
+ throw new IllegalArgumentException(
+ "The given DerivedTypedElement does not have a OclQuery"); //$NON-NLS-1$
+ }
+ try {
+ return executeOclQuery(source, parameterValues, (OclQuery) query);
+ } catch (Exception e) {
+ throw new DerivedTypedElementException(e);
+ }
+ }
+
+ protected static Object executeOclQuery(final EObject source,
+ final List<ParameterValue> parameterValues, final OclQuery oclQuery)
+ throws ParserException {
+ Object evaluateQuery = null;
+ OCLExpression<EClassifier> oclExpression = null;
+ String stringExpression = oclQuery.getOclExpression();
+ final EClassifier context = oclQuery.getContext();
+ // We replace all the occurrence of the parameters in the query by the
+ // corresponding value.
+ if (stringExpression != null) {
+ if (parameterValues != null) {
+ for (final ParameterValue paramValue : parameterValues) {
+ final String tmp = stringExpression;
+ final String name = paramValue.getParameter().getName();
+ final Object value = paramValue.getValue();
+ String string;
+ if (value == null) {
+ string = "null"; //$NON-NLS-1$
+ } else {
+ string = value.toString();
+ }
+ stringExpression = tmp.replaceAll(name, string);
+ }
+ }
+ oclExpression = OclQueryUtil.createOCLExpression(context,
+ stringExpression);
+ }
+ if (oclExpression != null) {
+ evaluateQuery = OclQueryUtil.evaluateQuery(context, oclExpression,
+ source);
+ }
+ return evaluateQuery;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/src/org/eclipse/papyrus/emf/facet/query/ocl/core/internal/evaluator/OclQueryImplementationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/src/org/eclipse/papyrus/emf/facet/query/ocl/core/internal/evaluator/OclQueryImplementationFactory.java
new file mode 100644
index 00000000000..3e7c55ed037
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/src/org/eclipse/papyrus/emf/facet/query/ocl/core/internal/evaluator/OclQueryImplementationFactory.java
@@ -0,0 +1,65 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.core.internal.evaluator;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.facet.efacet.core.IDerivedTypedElementManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementation;
+import org.eclipse.papyrus.emf.facet.efacet.core.query.IQueryImplementationFactory;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.query.ocl.core.internal.Activator;
+import org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery;
+import org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.osgi.framework.Bundle;
+
+/**
+ * Concrete implementation of {@link IQueryImplementationFactory} for the OCL
+ * query.
+ */
+public class OclQueryImplementationFactory implements
+ IQueryImplementationFactory {
+
+ public IQueryImplementation create(final Query query, final Bundle queryBundle,
+ final IDerivedTypedElementManager manager)
+ throws DerivedTypedElementException {
+ if (!(query instanceof OclQuery)) {
+ throw new IllegalArgumentException(
+ "The given DerivedTypedElement does not have a OclQuery"); //$NON-NLS-1$
+ }
+ final OclQuery oclQuery = (OclQuery) query;
+
+ if (queryBundle == null) {
+ throw new DerivedTypedElementException(
+ "Ocl query implementation class '" //$NON-NLS-1$
+ + oclQuery.getClass().getName()
+ + "' should be created within a bundle."); //$NON-NLS-1$
+ }
+ OclQueryImplementation oclQueryEvaluator = null;
+ try {
+ oclQueryEvaluator = new OclQueryImplementation();
+ } catch (final Exception e) {
+ final DerivedTypedElementException queryException = new DerivedTypedElementException(
+ "The bundle " + queryBundle.getSymbolicName() + " failed to load the ocl query: " //$NON-NLS-1$ //$NON-NLS-2$
+ + oclQuery.getClass().getSimpleName(), e);
+ Logger.logError(queryException, Activator.getDefault());
+ throw queryException;
+ }
+ return oclQueryEvaluator;
+ }
+
+ public EClass getManagedQueryType() {
+ return OclQueryPackage.eINSTANCE.getOclQuery();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/src/org/eclipse/papyrus/emf/facet/query/ocl/core/util/OclQueryUtil.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/src/org/eclipse/papyrus/emf/facet/query/ocl/core/util/OclQueryUtil.java
new file mode 100644
index 00000000000..68327e30de8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.core/src/org/eclipse/papyrus/emf/facet/query/ocl/core/util/OclQueryUtil.java
@@ -0,0 +1,255 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.core.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EEnumLiteral;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EParameter;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.ocl.EvaluationEnvironment;
+import org.eclipse.ocl.OCL;
+import org.eclipse.ocl.ParserException;
+import org.eclipse.ocl.ecore.CallOperationAction;
+import org.eclipse.ocl.ecore.CollectionType;
+import org.eclipse.ocl.ecore.Constraint;
+import org.eclipse.ocl.ecore.EcoreEnvironmentFactory;
+import org.eclipse.ocl.ecore.PrimitiveType;
+import org.eclipse.ocl.ecore.SendSignalAction;
+import org.eclipse.ocl.expressions.IteratorExp;
+import org.eclipse.ocl.expressions.OCLExpression;
+import org.eclipse.ocl.helper.Choice;
+import org.eclipse.ocl.helper.ConstraintKind;
+import org.eclipse.ocl.helper.OCLHelper;
+
+/**
+ * All necessary methods for the creation and evaluation of OCL expressions.
+ */
+public final class OclQueryUtil {
+
+ private static OCL<EPackage, EClassifier, EOperation, EStructuralFeature, EEnumLiteral, EParameter, EObject, CallOperationAction, SendSignalAction, Constraint, EClass, EObject> oclEnvironment = OCL
+ .newInstance(EcoreEnvironmentFactory.INSTANCE);
+ private static OCLHelper<EClassifier, EOperation, EStructuralFeature, Constraint> oclHelper = getOCLEnvironment()
+ .createOCLHelper();
+
+ private OclQueryUtil() {
+ // Private Constructor.
+ }
+
+ /**
+ * Get or create an OCL instance for Ecore.
+ *
+ * @return the OCL environment for Ecore
+ */
+ private static OCL<EPackage, EClassifier, EOperation, EStructuralFeature, EEnumLiteral, EParameter, EObject, CallOperationAction, SendSignalAction, Constraint, EClass, EObject> getOCLEnvironment() {
+ return oclEnvironment;
+ }
+
+ public static EvaluationEnvironment<EClassifier, EOperation, EStructuralFeature, EClass, EObject> getEvaluationEvironment() {
+ return getOCLEnvironment().getEvaluationEnvironment();
+ }
+
+ /**
+ * Get or create an OCLHelper with a specific context.
+ *
+ * @param context
+ * the context of the helper.
+ * @return the helper according to the context.
+ */
+ private static OCLHelper<EClassifier, EOperation, EStructuralFeature, Constraint> getOCLHelper() {
+ return oclHelper;
+ }
+
+ /**
+ * Set the helper context.
+ *
+ * @param context
+ * the context of the helper.
+ */
+ private static void setHelperContext(final EClassifier context) {
+ getOCLHelper().setContext(context);
+ }
+
+ /**
+ * Set the helper context.
+ *
+ * @param context
+ * the context of the helper.
+ */
+ public static void setHelperInstanceContext(final Object context) {
+ getOCLHelper().setInstanceContext(context);
+ }
+
+ /**
+ * Create an OCLExpression according to a string.
+ *
+ * @param expression
+ * the expression to create.
+ * @return the expression.
+ * @throws ParserException
+ * if the string expression isn't well formed.
+ */
+ public static OCLExpression<EClassifier> createOCLExpression(
+ final EClassifier context, final String expression)
+ throws ParserException {
+ setHelperContext(context);
+ return getOCLHelper().createQuery(expression);
+ }
+
+ /**
+ * Evaluate the expression in parameter.
+ *
+ * @param oclExpression
+ * the expression to evaluate.
+ * @return the result of the expression.
+ */
+ public static Object evaluateQuery(final EClassifier context,
+ final OCLExpression<EClassifier> oclExpression) {
+ setHelperContext(context);
+ return getOCLEnvironment().createQuery(oclExpression).evaluate();
+ }
+
+ /**
+ * Evaluate the expression in parameter on the specific object.
+ *
+ * @param oclExpression
+ * the expression to evaluate.
+ * @param objectSource
+ * the object on which evaluate the expression.
+ * @return the result of the query.
+ */
+ public static Object evaluateQuery(final EClassifier context,
+ final OCLExpression<EClassifier> oclExpression,
+ final Object objectSource) {
+ setHelperContext(context);
+ return getOCLEnvironment().createQuery(oclExpression).evaluate(
+ objectSource);
+ }
+
+ /**
+ * Evaluate the expression in parameter on the specifics objects.
+ *
+ * @param oclExpression
+ * the expression to evaluate.
+ * @param objectsSource
+ * the objects on which evaluate the expression.
+ * @return the result of the query.
+ */
+ public static Object evaluateQuery(final EClassifier context,
+ final OCLExpression<EClassifier> oclExpression,
+ final List<?> objectsSource) {
+ setHelperContext(context);
+ return getOCLEnvironment().createQuery(oclExpression).evaluate(
+ objectsSource);
+ }
+
+ /**
+ * Return a list of syntax choice for the current expression.
+ *
+ * @param expression
+ * the expression.
+ * @return the different choices.
+ */
+ public static List<Choice> getSyntaxHelp(final EClassifier context,
+ final String expression) {
+ setHelperContext(context);
+ return getOCLHelper().getSyntaxHelp(ConstraintKind.INVARIANT,
+ expression);
+ }
+
+ /**
+ * Return the {@link EClassifier} associated to the <code>type</code> in
+ * parameter.
+ *
+ * @param context
+ * the context of the environment.
+ * @param type
+ * the type to find.
+ * @return the {@link EClassifier} associated. Null if not.
+ */
+ public static EClassifier getEClassifier(final EClassifier context,
+ final Object type) {
+ EClassifier result = null;
+ String name = null;
+ List<EClassifier> classifiers = null;
+
+ if (type instanceof PrimitiveType) {
+ name = ((PrimitiveType) type).getInstanceClassName();
+ classifiers = EcorePackage.eINSTANCE.getEClassifiers();
+ } else if (type instanceof EClass) {
+ name = ((EClass) type).getInstanceClassName();
+ classifiers = context.getEPackage().getEClassifiers();
+ } else if (type instanceof CollectionType) {
+ name = ((CollectionType) type).getElementType()
+ .getInstanceClassName();
+ classifiers = context.getEPackage().getEClassifiers();
+ } else {
+ name = type.getClass().getName();
+ classifiers = EcorePackage.eINSTANCE.getEClassifiers();
+ }
+ for (final EClassifier classifier : classifiers) {
+ final String instanceClassName = classifier.getInstanceClassName();
+ if (instanceClassName.equals(name)) {
+ result = classifier;
+ break;
+ }
+ }
+
+ return result;
+ }
+
+ /**
+ * Compare the two types and return if they are equivalents.
+ *
+ * @param firstType
+ * the first {@link EClassifier} to compare.
+ * @param secondType
+ * the second {@link EClassifier} to compare.
+ * @return true if they are equivalents.
+ */
+ public static boolean compareClassifierTypes(final EClassifier firstType,
+ final EClassifier secondType) {
+ boolean result = false;
+ if (firstType.getName().equals(secondType.getName())) {
+ result = true;
+ } else if (firstType.getName().contains(secondType.getName())
+ || secondType.getName().contains(firstType.getName())) {
+ result = true;
+ }
+
+ return result;
+ }
+
+ /**
+ * @param exp
+ * @return
+ */
+ public static Object getExpressionType(
+ final OCLExpression<?> expression) {
+ Object result = null;
+
+ if (expression instanceof IteratorExp<?, ?>) {
+ final Object type = ((IteratorExp<?, ?>) expression).getType();
+ result = ((CollectionType) type).getElementType();
+ } else {
+ result = expression.getType();
+ }
+
+ return result;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/.classpath
new file mode 100644
index 00000000000..45f024e850e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/.project
new file mode 100644
index 00000000000..0afbd58d34a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.query.ocl.metamodel</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.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..4824b802631
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..54c0961f685
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/META-INF/MANIFEST.MF
@@ -0,0 +1,16 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.query.ocl.metamodel;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Export-Package: org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery,
+ org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl,
+ org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore;visibility:=reexport,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel;bundle-version="0.2.0";visibility:=reexport
+Bundle-ActivationPolicy: lazy
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/about.html
new file mode 100644
index 00000000000..07fdf60e1f1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/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>August 31, 2012</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/build.properties
new file mode 100644
index 00000000000..108f5ce4281
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/build.properties
@@ -0,0 +1,23 @@
+# Copyright (c) 2012 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+#
+#
+
+bin.includes = .,\
+ model/,\
+ META-INF/,\
+ plugin.xml,\
+ plugin.properties,\
+ about.html
+jars.compile.order = .
+source.. = src/
+output.. = bin/
+javacDefaultEncoding.. = UTF-8
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/model/oclQuery.ecore b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/model/oclQuery.ecore
new file mode 100644
index 00000000000..c8fa22eb550
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/model/oclQuery.ecore
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="oclquery"
+ nsURI="http://www.eclipse.org/papyrus/emf/facet/query/ocl/0.3.incubation/oclquery" nsPrefix="oclQuery">
+ <eClassifiers xsi:type="ecore:EClass" name="OclQuery" eSuperTypes="../../org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.ecore#//extensible/Query">
+ <eOperations name="toString" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="body" value="return getOclExpression();"/>
+ </eAnnotations>
+ </eOperations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="context" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EClassifier"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="oclExpression" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/model/oclQuery.genmodel b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/model/oclQuery.genmodel
new file mode 100644
index 00000000000..3a52ca083ed
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/model/oclQuery.genmodel
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText=" Copyright (c) 2012 Mia-Software.&#xD;&#xA; &#xD;&#xA;All rights reserved. This program and the accompanying materials&#xD;&#xA;are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA; which accompanies this distribution, and is available at&#xD;&#xA; http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA;&#xD;&#xA; Contributors:&#xD;&#xA;&#x9;Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors&#xD;&#xA;&#xD;&#xA;"
+ modelDirectory="/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src" modelPluginID="org.eclipse.papyrus.emf.facet.query.ocl.metamodel"
+ modelName="OclQuery" importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0"
+ copyrightFields="false" runtimeVersion="2.6" usedGenPackages="../../org.eclipse.papyrus.emf.facet.efacet.metamodel/model/efacet-0.2.0.genmodel#//efacet">
+ <foreignModel>oclQuery.ecore</foreignModel>
+ <genPackages prefix="OclQuery" basePackage="org.eclipse.papyrus.emf.facet.query.ocl.metamodel"
+ disposableProviderFactory="true" ecorePackage="oclQuery.ecore#/">
+ <genClasses ecoreClass="oclQuery.ecore#//OclQuery">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference oclQuery.ecore#//OclQuery/context"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute oclQuery.ecore#//OclQuery/oclExpression"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/plugin.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/plugin.properties
new file mode 100644
index 00000000000..ded6988f66c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/plugin.properties
@@ -0,0 +1,14 @@
+# Copyright (c) 2012 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+#
+#
+
+pluginName = EMF Facet OCL Query Model (Incubation)
+providerName = Eclipse Modeling Project
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/plugin.xml
new file mode 100644
index 00000000000..c6127035606
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/plugin.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+ Copyright (c) 2012 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+-->
+
+<plugin>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri="http://www.eclipse.org/papyrus/emf/facet/query/ocl/0.3.incubation/oclquery"
+ class="org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage"
+ genModel="model/oclQuery.genmodel"/>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/OclQuery.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/OclQuery.java
new file mode 100644
index 00000000000..1424c76ed17
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/OclQuery.java
@@ -0,0 +1,98 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ *
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery;
+
+import org.eclipse.emf.ecore.EClassifier;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Ocl Query</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery#getContext <em>Context</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery#getOclExpression <em>Ocl Expression</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage#getOclQuery()
+ * @model
+ * @generated
+ */
+public interface OclQuery extends Query {
+ /**
+ * Returns the value of the '<em><b>Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Context</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Context</em>' reference.
+ * @see #setContext(EClassifier)
+ * @see org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage#getOclQuery_Context()
+ * @model
+ * @generated
+ */
+ EClassifier getContext();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery#getContext <em>Context</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Context</em>' reference.
+ * @see #getContext()
+ * @generated
+ */
+ void setContext(EClassifier value);
+
+ /**
+ * Returns the value of the '<em><b>Ocl Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Ocl Expression</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Ocl Expression</em>' attribute.
+ * @see #setOclExpression(String)
+ * @see org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage#getOclQuery_OclExpression()
+ * @model
+ * @generated
+ */
+ String getOclExpression();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery#getOclExpression <em>Ocl Expression</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Ocl Expression</em>' attribute.
+ * @see #getOclExpression()
+ * @generated
+ */
+ void setOclExpression(String value);
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='return getOclExpression();'"
+ * @generated
+ */
+ String toString();
+
+} // OclQuery
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.java
new file mode 100644
index 00000000000..61ded816ce9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/OclQueryFactory.java
@@ -0,0 +1,53 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ *
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage
+ * @generated
+ */
+public interface OclQueryFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ OclQueryFactory eINSTANCE = org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl.OclQueryFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Ocl Query</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Ocl Query</em>'.
+ * @generated
+ */
+ OclQuery createOclQuery();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ OclQueryPackage getOclQueryPackage();
+
+} //OclQueryFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.java
new file mode 100644
index 00000000000..ef3b178fe54
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/OclQueryPackage.java
@@ -0,0 +1,209 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ *
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface OclQueryPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "oclquery";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/query/ocl/0.3.incubation/oclquery";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "oclQuery";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ OclQueryPackage eINSTANCE = org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl.OclQueryPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl.OclQueryImpl <em>Ocl Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl.OclQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl.OclQueryPackageImpl#getOclQuery()
+ * @generated
+ */
+ int OCL_QUERY = 0;
+
+ /**
+ * The feature id for the '<em><b>Can Have Side Effects</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OCL_QUERY__CAN_HAVE_SIDE_EFFECTS = ExtensiblePackage.QUERY__CAN_HAVE_SIDE_EFFECTS;
+
+ /**
+ * The feature id for the '<em><b>Can Be Cached</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OCL_QUERY__CAN_BE_CACHED = ExtensiblePackage.QUERY__CAN_BE_CACHED;
+
+ /**
+ * The feature id for the '<em><b>Context</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OCL_QUERY__CONTEXT = ExtensiblePackage.QUERY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Ocl Expression</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OCL_QUERY__OCL_EXPRESSION = ExtensiblePackage.QUERY_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Ocl Query</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int OCL_QUERY_FEATURE_COUNT = ExtensiblePackage.QUERY_FEATURE_COUNT + 2;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery <em>Ocl Query</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Ocl Query</em>'.
+ * @see org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery
+ * @generated
+ */
+ EClass getOclQuery();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery#getContext <em>Context</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Context</em>'.
+ * @see org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery#getContext()
+ * @see #getOclQuery()
+ * @generated
+ */
+ EReference getOclQuery_Context();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery#getOclExpression <em>Ocl Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Ocl Expression</em>'.
+ * @see org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery#getOclExpression()
+ * @see #getOclQuery()
+ * @generated
+ */
+ EAttribute getOclQuery_OclExpression();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ OclQueryFactory getOclQueryFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl.OclQueryImpl <em>Ocl Query</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl.OclQueryImpl
+ * @see org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl.OclQueryPackageImpl#getOclQuery()
+ * @generated
+ */
+ EClass OCL_QUERY = eINSTANCE.getOclQuery();
+
+ /**
+ * The meta object literal for the '<em><b>Context</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference OCL_QUERY__CONTEXT = eINSTANCE.getOclQuery_Context();
+
+ /**
+ * The meta object literal for the '<em><b>Ocl Expression</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute OCL_QUERY__OCL_EXPRESSION = eINSTANCE.getOclQuery_OclExpression();
+
+ }
+
+} //OclQueryPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/impl/OclQueryFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/impl/OclQueryFactoryImpl.java
new file mode 100644
index 00000000000..c101e3b6955
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/impl/OclQueryFactoryImpl.java
@@ -0,0 +1,106 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ *
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class OclQueryFactoryImpl extends EFactoryImpl implements OclQueryFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static OclQueryFactory init() {
+ try {
+ OclQueryFactory theOclQueryFactory = (OclQueryFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/emf/facet/query/ocl/0.3.incubation/oclquery");
+ if (theOclQueryFactory != null) {
+ return theOclQueryFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new OclQueryFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public OclQueryFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case OclQueryPackage.OCL_QUERY: return createOclQuery();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public OclQuery createOclQuery() {
+ OclQueryImpl oclQuery = new OclQueryImpl();
+ return oclQuery;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public OclQueryPackage getOclQueryPackage() {
+ return (OclQueryPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static OclQueryPackage getPackage() {
+ return OclQueryPackage.eINSTANCE;
+ }
+
+} //OclQueryFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/impl/OclQueryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/impl/OclQueryImpl.java
new file mode 100644
index 00000000000..ff974d1b602
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/impl/OclQueryImpl.java
@@ -0,0 +1,231 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ *
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.impl.QueryImpl;
+
+import org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery;
+import org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Ocl Query</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl.OclQueryImpl#getContext <em>Context</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl.OclQueryImpl#getOclExpression <em>Ocl Expression</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class OclQueryImpl extends QueryImpl implements OclQuery {
+ /**
+ * The cached value of the '{@link #getContext() <em>Context</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getContext()
+ * @generated
+ * @ordered
+ */
+ protected EClassifier context;
+
+ /**
+ * The default value of the '{@link #getOclExpression() <em>Ocl Expression</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOclExpression()
+ * @generated
+ * @ordered
+ */
+ protected static final String OCL_EXPRESSION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getOclExpression() <em>Ocl Expression</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOclExpression()
+ * @generated
+ * @ordered
+ */
+ protected String oclExpression = OCL_EXPRESSION_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected OclQueryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return OclQueryPackage.Literals.OCL_QUERY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClassifier getContext() {
+ if (context != null && context.eIsProxy()) {
+ InternalEObject oldContext = (InternalEObject)context;
+ context = (EClassifier)eResolveProxy(oldContext);
+ if (context != oldContext) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, OclQueryPackage.OCL_QUERY__CONTEXT, oldContext, context));
+ }
+ }
+ return context;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClassifier basicGetContext() {
+ return context;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setContext(EClassifier newContext) {
+ EClassifier oldContext = context;
+ context = newContext;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, OclQueryPackage.OCL_QUERY__CONTEXT, oldContext, context));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getOclExpression() {
+ return oclExpression;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setOclExpression(String newOclExpression) {
+ String oldOclExpression = oclExpression;
+ oclExpression = newOclExpression;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, OclQueryPackage.OCL_QUERY__OCL_EXPRESSION, oldOclExpression, oclExpression));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case OclQueryPackage.OCL_QUERY__CONTEXT:
+ if (resolve) return getContext();
+ return basicGetContext();
+ case OclQueryPackage.OCL_QUERY__OCL_EXPRESSION:
+ return getOclExpression();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case OclQueryPackage.OCL_QUERY__CONTEXT:
+ setContext((EClassifier)newValue);
+ return;
+ case OclQueryPackage.OCL_QUERY__OCL_EXPRESSION:
+ setOclExpression((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case OclQueryPackage.OCL_QUERY__CONTEXT:
+ setContext((EClassifier)null);
+ return;
+ case OclQueryPackage.OCL_QUERY__OCL_EXPRESSION:
+ setOclExpression(OCL_EXPRESSION_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case OclQueryPackage.OCL_QUERY__CONTEXT:
+ return context != null;
+ case OclQueryPackage.OCL_QUERY__OCL_EXPRESSION:
+ return OCL_EXPRESSION_EDEFAULT == null ? oclExpression != null : !OCL_EXPRESSION_EDEFAULT.equals(oclExpression);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return getOclExpression();
+ }
+
+} //OclQueryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/impl/OclQueryPackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/impl/OclQueryPackageImpl.java
new file mode 100644
index 00000000000..72715d18fd0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/impl/OclQueryPackageImpl.java
@@ -0,0 +1,213 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ *
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.EFacetPackage;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.ExtensiblePackage;
+
+import org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery;
+import org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryFactory;
+import org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class OclQueryPackageImpl extends EPackageImpl implements OclQueryPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass oclQueryEClass = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private OclQueryPackageImpl() {
+ super(eNS_URI, OclQueryFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 OclQueryPackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static OclQueryPackage init() {
+ if (isInited) return (OclQueryPackage)EPackage.Registry.INSTANCE.getEPackage(OclQueryPackage.eNS_URI);
+
+ // Obtain or create and register package
+ OclQueryPackageImpl theOclQueryPackage = (OclQueryPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof OclQueryPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new OclQueryPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EFacetPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theOclQueryPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theOclQueryPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theOclQueryPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(OclQueryPackage.eNS_URI, theOclQueryPackage);
+ return theOclQueryPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getOclQuery() {
+ return oclQueryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getOclQuery_Context() {
+ return (EReference)oclQueryEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getOclQuery_OclExpression() {
+ return (EAttribute)oclQueryEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public OclQueryFactory getOclQueryFactory() {
+ return (OclQueryFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ oclQueryEClass = createEClass(OCL_QUERY);
+ createEReference(oclQueryEClass, OCL_QUERY__CONTEXT);
+ createEAttribute(oclQueryEClass, OCL_QUERY__OCL_EXPRESSION);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ ExtensiblePackage theExtensiblePackage = (ExtensiblePackage)EPackage.Registry.INSTANCE.getEPackage(ExtensiblePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ oclQueryEClass.getESuperTypes().add(theExtensiblePackage.getQuery());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(oclQueryEClass, OclQuery.class, "OclQuery", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getOclQuery_Context(), ecorePackage.getEClassifier(), null, "context", null, 0, 1, OclQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getOclQuery_OclExpression(), ecorePackage.getEString(), "oclExpression", null, 0, 1, OclQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ addEOperation(oclQueryEClass, ecorePackage.getEString(), "toString", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //OclQueryPackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.java
new file mode 100644
index 00000000000..15f3ab99acd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/util/OclQueryAdapterFactory.java
@@ -0,0 +1,151 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ *
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+import org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage
+ * @generated
+ */
+public class OclQueryAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static OclQueryPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public OclQueryAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = OclQueryPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected OclQuerySwitch<Adapter> modelSwitch =
+ new OclQuerySwitch<Adapter>() {
+ @Override
+ public Adapter caseOclQuery(OclQuery object) {
+ return createOclQueryAdapter();
+ }
+ @Override
+ public Adapter caseQuery(Query object) {
+ return createQueryAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery <em>Ocl Query</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.emf.facet.query.ocl.metamodel.oclquery.OclQuery
+ * @generated
+ */
+ public Adapter createOclQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query <em>Query</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.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query
+ * @generated
+ */
+ public Adapter createQueryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //OclQueryAdapterFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.java
new file mode 100644
index 00000000000..8ff79732ad8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.metamodel/src/org/eclipse/papyrus/emf/facet/query/ocl/metamodel/oclquery/util/OclQuerySwitch.java
@@ -0,0 +1,155 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ *
+ *
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+
+import org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryPackage
+ * @generated
+ */
+public class OclQuerySwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static OclQueryPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public OclQuerySwitch() {
+ if (modelPackage == null) {
+ modelPackage = OclQueryPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case OclQueryPackage.OCL_QUERY: {
+ OclQuery oclQuery = (OclQuery)theEObject;
+ T result = caseOclQuery(oclQuery);
+ if (result == null) result = caseQuery(oclQuery);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Ocl Query</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>Ocl Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseOclQuery(OclQuery object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Query</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>Query</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseQuery(Query object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //OclQuerySwitch
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.checkstyle
new file mode 100644
index 00000000000..2664c7abd61
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.checkstyle
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<fileset-config file-format-version="1.2.0" simple-config="true">
+ <local-check-config name="EmfFacet" location="/org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.pmd b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.pmd
new file mode 100644
index 00000000000..e8d3e27588f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.pmd
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<pmd>
+ <useProjectRuleSet>true</useProjectRuleSet>
+ <ruleSetFile>../org.eclipse.papyrus.emf.facet.archi.tech.rules/pmd/ruleset.xml</ruleSetFile>
+ <includeDerivedFiles>false</includeDerivedFiles>
+ <violationsAsErrors>true</violationsAsErrors>
+</pmd>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.project
new file mode 100644
index 00000000000..915e915596a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.query.ocl.sdk.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>
+ <nature>net.sourceforge.pmd.eclipse.plugin.pmdNature</nature>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..4824b802631
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..060c5ee3d2e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,11 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+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.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..11eb46b56a4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,23 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.Activator
+Bundle-Vendor: %Bundle-Vendor
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.papyrus.emf.facet.util.ui;bundle-version="0.3.0",
+ org.eclipse.papyrus.emf.facet.efacet.sdk.ui;bundle-version="0.3.0",
+ org.eclipse.emf.ecore;bundle-version="2.6.0",
+ org.eclipse.papyrus.emf.facet.efacet.metamodel;bundle-version="0.3.0",
+ org.eclipse.papyrus.emf.facet.query.ocl.metamodel;bundle-version="0.3.0",
+ org.eclipse.emf.edit;bundle-version="2.6.0",
+ org.eclipse.papyrus.emf.facet.query.ocl.core;bundle-version="0.3.0",
+ org.eclipse.ocl.ecore;bundle-version="3.0.0",
+ org.eclipse.papyrus.emf.facet.efacet.core;bundle-version="0.3.0"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog,
+ org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget,
+ org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..7f61301e5ee
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,13 @@
+###############################################################################
+# Copyright (c) 2012 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+###############################################################################
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet OCL Query SDK UI (Incubation) \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/about.html
new file mode 100644
index 00000000000..aacf0cfd3b9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.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>August 17, 2012</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/build.properties
new file mode 100644
index 00000000000..341fc62b2b9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/build.properties
@@ -0,0 +1,20 @@
+###############################################################################
+# Copyright (c) 2012 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+###############################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ OSGI-INF/,\
+ plugin.xml,\
+ about.html
+javacDefaultEncoding.. = UTF-8
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/plugin.xml
new file mode 100644
index 00000000000..753e8a41f19
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/plugin.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<!--
+ Copyright (c) 2012 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+-->
+<plugin>
+ <extension
+ point="org.eclipse.papyrus.emf.facet.efacet.sdk.ui.queryFactoryDialogRegistration">
+ <queryDialogFactory
+ dialogFactory="org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.dialog.OclDialogFactory"
+ managedQueryTypeName="OCL Query">
+ </queryDialogFactory>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.java
new file mode 100644
index 00000000000..cc1bac601c7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/dialog/IOclDialogFactory.java
@@ -0,0 +1,20 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.dialog;
+
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.dialog.query.IQueryDialogFactory;
+
+public interface IOclDialogFactory extends IQueryDialogFactory {
+
+ void setExpression(final String expression);
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/Activator.java
new file mode 100644
index 00000000000..333502ad9b4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/Activator.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 372626 - Aggregates
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+// Copied from org.eclipse.papyrus.emf.facet.aggregate.metamodel.notgenerated
+@SuppressWarnings("PMD.UseSingleton")
+// @SuppressWarnings("PMD.UseSingleton") We cannot conforms to this rule because
+// this class is an Eclipse plug-in activator which will be instantiated by the
+// Eclipse framework.
+public class Activator extends Plugin {
+
+ private static Activator plugin;
+
+ @Override
+ @SuppressWarnings("PMD.SignatureDeclareThrowsException")
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ public void start(final BundleContext bundleContext) throws Exception {
+ super.start(bundleContext);
+ Activator.plugin = this;
+ }
+
+ @Override
+ @SuppressWarnings("PMD.SignatureDeclareThrowsException")
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ public void stop(final BundleContext bundleContext) throws Exception {
+ // NOPMD: PMD say "Assigning an Object to null is a code smell."
+ // No choice to right it in another way : this is an Eclipse pattern.
+ Activator.plugin = null; // NOPMD by gdupe on 30/03/12 10:19
+ super.stop(bundleContext);
+ }
+
+ public static Plugin getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/Messages.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/Messages.java
new file mode 100644
index 00000000000..68cd5a4df3a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/Messages.java
@@ -0,0 +1,48 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal;
+
+import org.eclipse.osgi.util.NLS;
+
+public class Messages extends NLS {
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.messages"; //$NON-NLS-1$
+
+ public static String Query_Context;
+ public static String Return_type;
+ public static String Type_returned;
+
+ public static String OclDialogFactory_OclExpression;
+
+ public static String OclExpression_Error;
+ public static String OclQueryDialogFactory_Dialog_Desc;
+ public static String OclQueryDialogFactory_Dialog_Title;
+ public static String Expression;
+ public static String Expression_return_type_not_valid;
+ public static String Expression_not_valid;
+
+ // OCL expression
+ public static String Create_Ocl_expression;
+ public static String Create_the;
+ public static String OclExpression_Error_type;
+
+ // OCL
+ public static String console_badContextForQuery;
+ public static String console_badContextForConstraint;
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(Messages.BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/dialog/OclDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/dialog/OclDialogFactory.java
new file mode 100644
index 00000000000..3c84dbc8340
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/dialog/OclDialogFactory.java
@@ -0,0 +1,77 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.dialog;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryDialogFactoryStrategy;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.query.AbstractQueryDialogFactory;
+import org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery;
+import org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQueryFactory;
+import org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.widget.query.OclQueryWidget;
+import org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.widget.query.SynchonizedOclQueryWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.IAbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Concrete implementation of {@link AbstractQueryDialogFactory} for the
+ * creation of OCLExpression.
+ *
+ * @see AbstractQueryDialogFactory
+ */
+public class OclDialogFactory implements IQueryDialogFactoryStrategy {
+
+ private final PropertyElement2<String> oclExpressionProp;
+
+ public OclDialogFactory() {
+ this.oclExpressionProp = new PropertyElement2<String>(false,
+ Messages.OclDialogFactory_OclExpression);
+ }
+
+ public IAbstractWidget createWidget(
+ final Composite parent, final IQueryContext queryContext) {
+ // An OCL query by definition can't have side effects.
+ return new SynchonizedOclQueryWidget(new OclQueryWidget(parent,
+ this.oclExpressionProp, queryContext), parent.getDisplay());
+ }
+
+ public String getDialogMessage() {
+ return Messages.OclQueryDialogFactory_Dialog_Desc;
+ }
+
+ public String getDialogTitle() {
+ return Messages.OclQueryDialogFactory_Dialog_Title;
+ }
+
+ public String getConclusionText() {
+ return this.oclExpressionProp.getValue2();
+ }
+
+ public OclQuery createQuery(final boolean canBeCached,
+ final boolean sideEffects, final IQueryContext queryContext) {
+ OclQuery query = null;
+ final String oclExpression = (String) this.oclExpressionProp.getValue();
+ final EClassifier context = queryContext.getExtendedEClass();
+ if ((oclExpression != null) && (context != null)) {
+ query = OclQueryFactory.eINSTANCE.createOclQuery();
+ query.setCanBeCached(true);
+ query.setCanHaveSideEffects(false);
+ query.setOclExpression(oclExpression);
+ query.setContext(context);
+ }
+ return query;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/exception/OclQueryRuntimeException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/exception/OclQueryRuntimeException.java
new file mode 100644
index 00000000000..39d6967b0e1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/exception/OclQueryRuntimeException.java
@@ -0,0 +1,23 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.exception;
+
+public class OclQueryRuntimeException extends RuntimeException {
+
+ private static final long serialVersionUID = -3675130124806299967L;
+
+ public OclQueryRuntimeException(final String message) {
+ super(message);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/messages.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/messages.properties
new file mode 100644
index 00000000000..8a5cb9243d9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/messages.properties
@@ -0,0 +1,104 @@
+########################################################################
+# Copyright (c) 2012 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+# Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+########################################################################
+OclDialogFactory_OclExpression=OCL expression
+OclQueryDialogFactory_Dialog_Desc=Create a new OCL query
+OclQueryDialogFactory_Dialog_Title=New OCL query
+OclExpression_Error=You must create a valid OCL expression
+Expression=Expression :
+Edition_Group=Edition
+Previous=Previous
+Next=Next
+Expression_return_type_not_valid=The type returned by the expression is not valid
+Expression_not_valid=The OCL expression is not valid
+Return_type=Expected type :
+Type_returned=Type returned :
+Select_choice=You must select an element
+Select_option= = Select an option =
+
+Create_next_step=Add an new element at the expression
+
+New_wizard=New Element
+
+Can_finish=OR you can rather finish the expression
+
+#### Wizard Pages
+Choice_step_name=Select an option
+Choice_step_message=Select an option for the current expression.
+String_step_name=String comparison
+String_step_message=Compare the string to an other one.
+Operation_step_name=Create the operation expression
+Operation_step_message=Create the operation expression for the selected operation
+
+#### OCL Expression
+Create_Ocl_expression=Create an OCL Expression
+Create_the=Create the parameter
+OclExpression_Error_type=The type returned by the expression is not correct, expected :
+
+#### Booleans
+Add_a_boolean_expression=Add a boolean expression
+
+Or_tree_item=OR
+Or_menu_item=Or
+
+And_tree_item=AND
+And_menu_item=And
+
+Not_tree_item=NOT
+Not_menu_item=Not
+
+#### Comparator
+Add_a_comparator=Add a comparator
+
+Equal==
+Different=<>
+Gretter=>
+Gretter_equal=>=
+Lower=<
+Lower_equal=<=
+
+#### Constant
+Add_constant=Add a constant
+Create_new_constant=Create a new constant
+
+String=String
+Integer=Integer
+Real=Real
+Real_error=You must enter a real number (like 42.1337)
+Real_can_be_null=The real can't be null
+Boolean=Boolean
+
+#### Dynamic Menu Attributes
+Attributes_of=Attributes of
+
+#### OCL
+
+console_badContextForQuery = Must select a model element on which to evaluate the query.
+console_badContextForConstraint = Must select a classifier, operation, or attribute on which to parse the constraint.
+
+
+#### Let
+Create_Let_expression=Create a let Expression
+Variable_Name=Name :
+Variable_Type=Type :
+Variable_Select_Type: Select a type
+Variable_Expression=Expression :
+
+Variable_Name_Error=You must set a name for the variable
+Variable_Type_Error=You must set a type for the variable
+
+#### Variables
+Variable=Variables
+
+Query_Context=Context :
+Delete_Item=Delete item
+Parameters_for : Parameters for \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/PrintQueryContextWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/PrintQueryContextWidget.java
new file mode 100644
index 00000000000..89606dfb085
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/PrintQueryContextWidget.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.widget;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name.AbstractPrintElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Widget for the display of the expected type. Display a simple text field, not
+ * editable with the type expected in it.
+ */
+public class PrintQueryContextWidget extends
+ AbstractPrintElementWidget<EClassifier> {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this widget.
+ * @param propertyElement
+ * the {@link PropertyElement} that this widget will edit.
+ */
+ public PrintQueryContextWidget(final Composite parent,
+ final PropertyElement2<EClassifier> propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Query_Context;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // Nothing.
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return null;
+ }
+
+ @Override
+ protected String getTextFieldInitialText() {
+ return this.getPropertyElement().getValue2().getName();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/PrintQueryReturnTypeWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/PrintQueryReturnTypeWidget.java
new file mode 100644
index 00000000000..b78b0aadfaf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/PrintQueryReturnTypeWidget.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.widget;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name.AbstractPrintElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Widget for the display of the expected type. Display a simple text field, not
+ * editable with the type expected in it.
+ */
+public class PrintQueryReturnTypeWidget extends
+ AbstractPrintElementWidget<EClassifier> {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this widget.
+ * @param propertyElement
+ * the {@link PropertyElement} that this widget will edit.
+ */
+ public PrintQueryReturnTypeWidget(final Composite parent,
+ final PropertyElement2<EClassifier> propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected String getLabel() {
+ return Messages.Return_type;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // Nothing.
+ }
+
+ @Override
+ protected String getErrorMessage() {
+ return null;
+ }
+
+ @Override
+ protected String getTextFieldInitialText() {
+ return this.getPropertyElement().getValue2().getName();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/oclexpression/OclExpressionWidgetSimple.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/oclexpression/OclExpressionWidgetSimple.java
new file mode 100644
index 00000000000..7afe5e0d520
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/oclexpression/OclExpressionWidgetSimple.java
@@ -0,0 +1,95 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.widget.oclexpression;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.papyrus.emf.facet.query.ocl.core.util.OclQueryUtil;
+import org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression.IOCLExpressionWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.ocl.ParserException;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Text;
+
+/**
+ * Simple widget for the edition of a complexe OCl expression.
+ */
+public class OclExpressionWidgetSimple extends AbstractWidget implements
+ IOCLExpressionWidget {
+
+ private static final String UNREC_VAR = "Unrecognized variable"; //$NON-NLS-1$
+ private static final int TEXT_HEIGHT = 100;
+ private final EClassifier context;
+ private final String expression;
+ private Text text;
+ private final PropertyElement oclExpressionProp;
+
+ public OclExpressionWidgetSimple(final Composite parent,
+ final EClassifier context, final String expression,
+ final PropertyElement oclExpressionProp) {
+ super(parent);
+ this.context = context;
+ this.expression = expression;
+ this.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ this.oclExpressionProp = oclExpressionProp;
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ this.text = new Text(this, SWT.MULTI | SWT.V_SCROLL);
+ final GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
+ gridData.heightHint = TEXT_HEIGHT;
+ this.text.setLayoutData(gridData);
+
+ if (this.expression != null) {
+ this.text.setText(this.expression);
+ }
+ }
+
+ @Override
+ public String getError() {
+ String result = null;
+
+ final String textExpression = this.text.getText().trim();
+ if ("".equals(textExpression)) { //$NON-NLS-1$
+ result = Messages.OclExpression_Error;
+ } else {
+ try {
+ OclQueryUtil.createOCLExpression(this.context, textExpression);
+ this.oclExpressionProp.setValue(textExpression);
+ } catch (final ParserException exception) {
+ if (exception.getMessage().contains(UNREC_VAR)) {
+ this.oclExpressionProp.setValue(textExpression);
+ } else {
+ result = Messages.OclExpression_Error
+ + " :\n - " + exception.getMessage(); //$NON-NLS-1$
+ }
+ }
+ }
+
+ return result;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // Nothing to do.
+ }
+
+ public void setExpression(final String expression) {
+ this.text.setText(expression);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/query/OclQueryWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/query/OclQueryWidget.java
new file mode 100644
index 00000000000..de95018922c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/query/OclQueryWidget.java
@@ -0,0 +1,107 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.widget.query;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.extensible.Query;
+import org.eclipse.papyrus.emf.facet.efacet.sdk.ui.internal.exported.IQueryContext;
+import org.eclipse.papyrus.emf.facet.query.ocl.metamodel.oclquery.OclQuery;
+import org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.widget.PrintQueryContextWidget;
+import org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.widget.PrintQueryReturnTypeWidget;
+import org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.widget.oclexpression.OclExpressionWidgetSimple;
+import org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.IOclQueryWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.query.AbstractQueryWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * It is the main widget of the main dialog. This widget add the expected return
+ * type and display the tree.
+ */
+public class OclQueryWidget extends AbstractQueryWidget<ETypedElement> implements IOclQueryWidget {
+
+ private final PropertyElement oclExpressionProp;
+ private OclExpressionWidgetSimple oclExprWidget;
+ private final IQueryContext queryContext;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this widget.
+ * @param properties
+ * the properties for this widget.
+ * @param context
+ * the context of the OCL expression.
+ * @param returnType
+ * the type that the OCL expression must return.
+ * @param initialQuery
+ * the initial {@link OclQuery} if there is one (can be null).
+ * @param facet
+ */
+ public OclQueryWidget(final Composite parent,
+ final PropertyElement oclExpressionProp,
+ final IQueryContext queryContext) {
+ super(parent);
+ this.queryContext = queryContext;
+ this.oclExpressionProp = oclExpressionProp;
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ final EClassifier extendedEClass = this.queryContext
+ .getExtendedEClass();
+ addSubWidget(new PrintQueryContextWidget(this,
+ new PropertyElement2<EClassifier>(false, extendedEClass)));
+ final EClassifier returnType = this.queryContext.getReturnType();
+ addSubWidget(new PrintQueryReturnTypeWidget(this,
+ new PropertyElement2<EClassifier>(false, returnType)));
+ String expression;
+ final Query initialQuery = this.queryContext.getQuery();
+ if (initialQuery instanceof OclQuery) {
+ final OclQuery oclQuery = (OclQuery) initialQuery;
+ expression = oclQuery.getOclExpression();
+ } else {
+ expression = (String) this.oclExpressionProp.getValue();
+ }
+ this.oclExprWidget = new OclExpressionWidgetSimple(this,
+ extendedEClass, expression, this.oclExpressionProp);
+ addSubWidget(this.oclExprWidget);
+ }
+
+ @Override
+ public Command getCommand() {
+ // This widget doesn't create any command.
+ return null;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // Nothing to do.
+ }
+
+ @Override
+ public void onDialogValidation() {
+ // Nothing
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.widget.query.IOclQueryWidget#setExpression(java.lang.String)
+ */
+ public void setExpression(final String expression) {
+ this.oclExprWidget.setExpression(expression);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/query/SynchonizedOclQueryWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/query/SynchonizedOclQueryWidget.java
new file mode 100644
index 00000000000..0e5a6fdeeb9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/internal/widget/query/SynchonizedOclQueryWidget.java
@@ -0,0 +1,82 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.internal.widget.query;
+
+import org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.IOclQueryWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.IAbstractWidget;
+import org.eclipse.swt.widgets.Display;
+
+public class SynchonizedOclQueryWidget extends
+ SynchronizedObject<OclQueryWidget> implements IOclQueryWidget,
+ IAbstractWidget {
+
+ public SynchonizedOclQueryWidget(final OclQueryWidget widget,
+ final Display display) {
+ super(widget, display);
+ }
+
+ public void setExpression(final String expression) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchonizedOclQueryWidget.this.getSynchronizedObject()
+ .setExpression(expression);
+ }
+ });
+ }
+
+ public void addListener(final AbstractWidget abstractWidget) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchonizedOclQueryWidget.this.getSynchronizedObject()
+ .addListener(abstractWidget);
+ }
+ });
+ }
+
+ public void notifyChanged() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchonizedOclQueryWidget.this.getSynchronizedObject()
+ .notifyChanged();
+ }
+ });
+ }
+
+ public void createWidgetContent() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchonizedOclQueryWidget.this.getSynchronizedObject()
+ .createWidgetContent();
+ }
+ });
+ }
+
+ public String getError() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<String>() {
+ @Override
+ public String safeRun() {
+ // TODO Auto-generated method stub
+ return SynchonizedOclQueryWidget.this.getSynchronizedObject()
+ .getError();
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.java
new file mode 100644
index 00000000000..ff2d5696139
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/widget/IOclQueryWidget.java
@@ -0,0 +1,18 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget;
+
+public interface IOclQueryWidget {
+
+ void setExpression(final String expression);
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.java
new file mode 100644
index 00000000000..d9ee22f4934
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui/src/org/eclipse/papyrus/emf/facet/query/ocl/sdk/ui/widget/oclexpression/IOCLExpressionWidget.java
@@ -0,0 +1,28 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.query.ocl.sdk.ui.widget.oclexpression;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.IAbstractWidget;
+
+/**
+ * @see OCLExpressionWidget
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IOCLExpressionWidget extends IAbstractWidget {
+
+ /**
+ * @param expression
+ */
+ void setExpression(String expression);
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.checkstyle
new file mode 100644
index 00000000000..809dad6ac7f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.checkstyle
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+ <local-check-config name="MoDisco" location="/org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description="">
+ <additional-data name="protect-config-file" value="false"/>
+ </local-check-config>
+ <fileset name="all" enabled="true" check-config-name="MoDisco" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.project
new file mode 100644
index 00000000000..090f5aa0dfa
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.util.core</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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.settings/.api_filters b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.settings/.api_filters
new file mode 100644
index 00000000000..5c77fb17f1d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.settings/.api_filters
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<component id="org.eclipse.papyrus.emf.facet.util.core" version="2">
+ <resource path="META-INF/MANIFEST.MF" type="org.eclipse.papyrus.emf.facet.util.core.internal.exported.BuildPropertiesUtils">
+ <filter comment="Only internal API have been changed." id="305324134">
+ <message_arguments>
+ <message_argument value="org.eclipse.papyrus.emf.facet.util.core.internal.exported.BuildPropertiesUtils"/>
+ <message_argument value="org.eclipse.papyrus.emf.facet.util.core_0.4.0"/>
+ </message_arguments>
+ </filter>
+ </resource>
+ <resource path="META-INF/MANIFEST.MF" type="org.eclipse.papyrus.emf.facet.util.core.internal.exported.PluginUtils">
+ <filter comment="Only internal API have been changed." id="305324134">
+ <message_arguments>
+ <message_argument value="org.eclipse.papyrus.emf.facet.util.core.internal.exported.PluginUtils"/>
+ <message_argument value="org.eclipse.papyrus.emf.facet.util.core_0.4.0"/>
+ </message_arguments>
+ </filter>
+ </resource>
+</component>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..c7121dab6d9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,8 @@
+#Tue Mar 08 15:04:14 CET 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/API.README.txt b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/API.README.txt
new file mode 100644
index 00000000000..0fa220c8df3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/API.README.txt
@@ -0,0 +1,24 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 340339 - Need some Utils class for Folder/File/Project management
+ * Nicolas Guyomar (Mia-Software) - Bug 340681 - Facet column implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 349556 - EMF Facet Java Query wizard
+ * Nicolas Guyomar (Mia-Software) - Bug 338813 - [EMF Facet Framework] basic Facet actions
+ * Gregoire Dupe (Mia-Software) - Bug 371204 - Compatibility with Helios
+ *******************************************************************************/
+ org.eclipse.papyrus.emf.facet.util.core.internal
+ x-friends:="org.eclipse.papyrus.emf.facet.common.core,org.eclipse.papyrus.emf.facet.util.emf.core" for EMF Facet internal use
+ x-friends:="org.eclipse.papyrus.emf.facet.efacet.tests" use PluginUtils.importPlugin(Bundle) to create test projects
+ x-friends:="org.eclipse.papyrus.emf.facet.widgets.nattable.tests" use PluginUtils.importPlugin(Bundle) to create test projects
+ x-friends:="org.eclipse.papyrus.emf.facet.query.java.ui" uses PluginUtils.configureAsPluginProject(IProject) to setup facet project
+ x-friends:="org.eclipse.papyrus.emf.facet.query.java.ui.tests" for testing purpose
+ x-friends:="org.eclipse.papyrus.emf.facet.efacet.core" to add a new facet model to the build.properties
+ x-friends:="org.eclipse.papyrus.emf.facet.efacet.tests" so that the tests can access internal utils
+ x-friends:="org.eclipse.papyrus.emf.facet.infra.common.core" to get up to date the deprecated on copied methods. \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..61a6d748c3a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/META-INF/MANIFEST.MF
@@ -0,0 +1,15 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.util.core;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.util.core.internal.Activator
+Bundle-Vendor: %Bundle-Vendor
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.core.resources;bundle-version="3.6.0",
+ com.ibm.icu;bundle-version="4.2.1"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.util.core,
+ org.eclipse.papyrus.emf.facet.util.core.internal,
+ org.eclipse.papyrus.emf.facet.util.core.internal.exported
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..83473a9bdf4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,14 @@
+###########################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 339899 - everything must be externalized before UI freeze
+###########################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.util.core
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet's Common Utils (Incubation) \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/README.txt b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/README.txt
new file mode 100644
index 00000000000..a5374c0aa34
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/README.txt
@@ -0,0 +1,3 @@
+This plug-in contains utility classes used by other EMF Facet plug-ins.
+These utility classes implement functionality that doesn't deal directly with EMF Facet concepts.
+Classes linked to EMF Facet concepts must go in this project instead: org.eclipse.papyrus.emf.facet.common.core
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/about.html
new file mode 100644
index 00000000000..fa7e2e86d0c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/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>March 8, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/build.properties
new file mode 100644
index 00000000000..59d183cc908
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/build.properties
@@ -0,0 +1,17 @@
+###############################################################################
+# Copyright (c) 2011 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Bug 338811 - A model registration method in the interface ICatalogSetManager
+###############################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ OSGI-INF/,\
+ about.html
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/DebugUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/DebugUtils.java
new file mode 100644
index 00000000000..dfc45a7009b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/DebugUtils.java
@@ -0,0 +1,106 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 366804 - [Restructuring] Table widget upgrade
+ * Grégoire Dupé - Bug 365843 - [Unit Test Failure][0.2/3.8][0.2/4.2] org.eclipse.papyrus.emf.facet.widgets.nattable.tests.swtbot.Bug344925Test.testBug344925
+ * Grégoire Dupé - Bug 367613 - Table widget refactoring
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.core;
+
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.Bundle;
+
+/**
+ * @since 0.2
+ */
+public final class DebugUtils {
+
+ /**
+ * Position of the caller in the stack.
+ */
+ private static final int CALLER = 3;
+
+ private DebugUtils() {
+ // Must not be used
+ }
+
+ public static void debug(final boolean condition) {
+ if (condition) {
+ String location = getCallerLocation(0);
+ System.out.println(location);
+ }
+ }
+
+ public static void debug(final boolean condition, final String message) {
+ if (condition) {
+ String location = getCallerLocation(0);
+ System.out.println(location + ": " //$NON-NLS-1$
+ + message);
+ }
+ }
+
+ /**
+ * This methods returns the qualified name of the calling method.
+ * @param stackOffset
+ * @return
+ */
+ public static String getCallerLocation(final int stackOffset) {
+ StackTraceElement traceElement = Thread.currentThread().getStackTrace()[DebugUtils.CALLER + stackOffset];
+ String location = traceElement.getClassName() + '.'
+ + traceElement.getMethodName();
+ return location;
+ }
+
+ public static boolean getDebugStatus(final Plugin plugin) {
+ final String debugOption = getDebugOption(plugin);
+ return internalGetDebugStatus(plugin, debugOption);
+ }
+
+ public static boolean getDebugStatus(final Plugin plugin, final String suboption) {
+ final String debugOption = getDebugOption(plugin) + '/' + suboption;
+ return internalGetDebugStatus(plugin, debugOption);
+ }
+
+ private static boolean internalGetDebugStatus(final Plugin plugin,
+ final String debugOption) {
+ final String debugOptionValue = Platform.getDebugOption(debugOption);
+ final boolean isDebuggingOption = Boolean.parseBoolean(debugOptionValue);
+ boolean result = plugin.isDebugging() && isDebuggingOption;
+ return result;
+ }
+
+ private static String getDebugOption(final Plugin plugin) {
+ final Bundle bundle = plugin.getBundle();
+ final StackTraceElement traceElement = Thread.currentThread().getStackTrace()[DebugUtils.CALLER];
+ final String className = traceElement.getClassName();
+ Class<?> classs;
+ try {
+ classs = bundle.loadClass(className);
+ } catch (ClassNotFoundException e) {
+ throw new RuntimeException(e);
+ }
+ final String debugOption = bundle.getSymbolicName() + "/debug/" + classs.getSimpleName(); //$NON-NLS-1$
+ return debugOption;
+ }
+
+ public static void debug(final String message) {
+ debug(message, 1);
+ }
+
+ public static void debug(final String message, final int stackOffset) {
+ String location = getCallerLocation(stackOffset);
+ System.out.println(location + ": " //$NON-NLS-1$
+ + message);
+
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/Logger.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/Logger.java
new file mode 100644
index 00000000000..1310834457a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/Logger.java
@@ -0,0 +1,135 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Giquel (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software)
+ * Nicolas Bros (Mia-Software) - Bug 339657 - Move Logger to org.eclipse.papyrus.emf.facet.util.core
+ * Nicolas Bros (Mia-Software) - Bug 340031 - NPE in org.eclipse.papyrus.emf.facet.util.core.Logger#log
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.core;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.MultiStatus;
+import org.eclipse.core.runtime.Plugin;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.papyrus.emf.facet.util.core.internal.Activator;
+
+/**
+ * Helper for logging using Eclipse API
+ *
+ * @author fgiquel
+ *
+ */
+public final class Logger {
+
+ private Logger() {
+ // Nothing
+ }
+
+ public static void logError(final Throwable e, final Plugin plugin) {
+ Logger.log(e, IStatus.ERROR, e.getMessage(), plugin);
+ }
+
+ public static void logError(final String message, final Plugin plugin) {
+ Logger.log(null, IStatus.ERROR, message, plugin);
+ }
+
+ public static void logError(final Throwable e, final String message, final Plugin plugin) {
+ Logger.log(e, IStatus.ERROR, message, plugin);
+ }
+
+ public static void logWarning(final Throwable e, final Plugin plugin) {
+ Logger.log(e, IStatus.WARNING, e.getMessage(), plugin);
+ }
+
+ public static void logWarning(final String message, final Plugin plugin) {
+ Logger.log(null, IStatus.WARNING, message, plugin);
+ }
+
+ public static void logWarning(final Throwable e, final String message, final Plugin plugin) {
+ Logger.log(e, IStatus.WARNING, message, plugin);
+ }
+
+ public static void logInfo(final Throwable e, final Plugin plugin) {
+ Logger.log(e, IStatus.INFO, e.getMessage(), plugin);
+ }
+
+ public static void logInfo(final String message, final Plugin plugin) {
+ Logger.log(null, IStatus.INFO, message, plugin);
+ }
+
+ /**
+ * An exception that is instantiated with the sole purpose of providing a
+ * stack trace when there wouldn't be one otherwise.
+ */
+ protected static class LogStackTrace extends Exception {
+ private static final long serialVersionUID = 309882934616507415L;
+ }
+
+ public static void log(final Throwable e, final int level,
+ final String message, final Plugin plugin) {
+
+ Throwable effectiveE = e;
+ Plugin effectivePlugin = plugin;
+ String effectiveMessage = message;
+ IStatus status = null;
+
+ if (effectiveE instanceof InvocationTargetException) {
+ effectiveE = ((InvocationTargetException) effectiveE).getTargetException();
+ }
+ if (effectivePlugin == null) {
+ effectivePlugin = Activator.getDefault();
+ }
+
+ if (effectiveE instanceof CoreException) {
+ MultiStatus mstatus = new MultiStatus(plugin.getBundle().getSymbolicName(), level,
+ new IStatus[] { ((CoreException) effectiveE).getStatus() }, message, effectiveE);
+ status = mstatus;
+ } else {
+ if (effectiveMessage == null && effectiveE != null) {
+ effectiveMessage = effectiveE.getMessage();
+ }
+ if (effectiveMessage == null && effectiveE != null) {
+ effectiveMessage = effectiveE.toString();
+ }
+ if (effectiveMessage == null) {
+ effectiveMessage = ""; //$NON-NLS-1$
+ }
+ try {
+ effectiveMessage = effectiveMessage + " (" //$NON-NLS-1$
+ + effectivePlugin.getBundle().getSymbolicName() + "_" //$NON-NLS-1$
+ + effectivePlugin.getBundle().getVersion() + ")"; //$NON-NLS-1$
+ } catch (NullPointerException e2) {
+ effectiveMessage += " (activator class = " //$NON-NLS-1$
+ + effectivePlugin.getClass().getName() + ")"; //$NON-NLS-1$
+ }
+ if (effectiveE == null) {
+ // record a stacktrace
+ effectiveE = new LogStackTrace();
+ }
+ status = new Status(level, effectivePlugin.getBundle().getSymbolicName(),
+ effectiveMessage, effectiveE);
+ }
+ effectivePlugin.getLog().log(status);
+ }
+
+ // private static String getPosition() {
+ // try {
+ // // get the stack element corresponding to the caller of the log
+ // // method
+ // StackTraceElement element = new Exception().getStackTrace()[2];
+ // return " \n[" + element.getClassName() + "#" + element.getMethodName() + " : " //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ // + element.getLineNumber() + "]"; //$NON-NLS-1$
+ // } catch (Throwable e) {
+ // return ""; //$NON-NLS-1$
+ // }
+ // }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/exception/DebuggingRuntimeException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/exception/DebuggingRuntimeException.java
new file mode 100644
index 00000000000..c2d8eb48887
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/exception/DebuggingRuntimeException.java
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 366804 - [Restructuring] Table widget upgrade
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.core.exception;
+
+public class DebuggingRuntimeException extends RuntimeException {
+
+ private static final long serialVersionUID = 6192755421845020464L;
+
+ public DebuggingRuntimeException() {
+ super();
+ }
+
+ public DebuggingRuntimeException(final String message) {
+ super(message);
+ }
+
+ public DebuggingRuntimeException(final Throwable cause) {
+ super(cause);
+ }
+
+ public DebuggingRuntimeException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/Activator.java
new file mode 100644
index 00000000000..a88958f6a6a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/Activator.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 338811 - A model registration method in the interface ICatalogSetManager
+ * Nicolas Bros (Mia-Software) - Bug 340031 - NPE in org.eclipse.papyrus.emf.facet.util.core.Logger#log
+ * Nicolas Guyomar (Mia-Software) - Bug 340339 - Need some Utils class for Folder/File/Project management
+ */
+package org.eclipse.papyrus.emf.facet.util.core.internal;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+public class Activator extends Plugin {
+
+ public static final String PLUGIN_ID = "org.eclipse.papyrus.emf.facet.util.core"; //$NON-NLS-1$
+ private static BundleContext context;
+ private static Activator plugin;
+
+ public static Plugin getDefault() {
+ return Activator.plugin;
+ }
+
+ static BundleContext getContext() {
+ return Activator.context;
+ }
+
+ @Override
+ public void start(final BundleContext bundleContext) throws Exception {
+ super.start(bundleContext);
+ Activator.context = bundleContext;
+ Activator.plugin = this;
+ }
+
+ @Override
+ public void stop(final BundleContext bundleContext) throws Exception {
+ Activator.context = null;
+ Activator.plugin = null;
+ super.stop(bundleContext);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/ErrorHandlingUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/ErrorHandlingUtils.java
new file mode 100644
index 00000000000..1fe1e254e20
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/ErrorHandlingUtils.java
@@ -0,0 +1,50 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.core.internal;
+
+public final class ErrorHandlingUtils {
+ private ErrorHandlingUtils() {
+ // utility class
+ }
+
+ /**
+ * Builds an error message for when an element doesn't have the expected type.
+ *
+ * @param baseMessage
+ * the beginning of the message
+ * @param expectedType
+ * the expected type
+ * @param element
+ * the element that doesn't match the expected type
+ * @return the full message
+ */
+ public static String buildWrongTypeMessage(final String baseMessage, final Class<?> expectedType, final Object element) {
+ StringBuilder builder = new StringBuilder();
+ builder.append(baseMessage);
+ builder.append("\n"); //$NON-NLS-1$
+ if (expectedType != null) {
+ builder.append("Expected type: "); //$NON-NLS-1$
+ builder.append(expectedType.getName());
+ builder.append(". "); //$NON-NLS-1$
+ } else {
+ builder.append("Expected type is null. "); //$NON-NLS-1$
+ }
+
+ if (element != null) {
+ builder.append("Got an instance of type: "); //$NON-NLS-1$
+ builder.append(element.getClass().getName());
+ builder.append("."); //$NON-NLS-1$
+ } else {
+ builder.append("Got null."); //$NON-NLS-1$
+ }
+ return builder.toString();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/JavaUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/JavaUtils.java
new file mode 100644
index 00000000000..ffb6f2531ec
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/JavaUtils.java
@@ -0,0 +1,54 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349566 - Need some new query utils method for query creation
+ * Nicolas Bros (Mia-Software) - Bug 349566 - Need some new query utils method for query creation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.core.internal;
+
+public final class JavaUtils {
+
+ private JavaUtils() {
+ // utility class
+ }
+
+ /**
+ * Converts a Java primitive type to a Java object type.
+ *
+ * @param primitiveType
+ * the primitive type
+ * @return the object type
+ */
+ public static String objectType(final String primitiveType) {
+ if ("byte".equals(primitiveType)) { //$NON-NLS-1$
+ return "Byte"; //$NON-NLS-1$
+ }
+ if ("short".equals(primitiveType)) { //$NON-NLS-1$
+ return "Short"; //$NON-NLS-1$
+ }
+ if ("int".equals(primitiveType)) { //$NON-NLS-1$
+ return "Integer"; //$NON-NLS-1$
+ }
+ if ("long".equals(primitiveType)) { //$NON-NLS-1$
+ return "Long"; //$NON-NLS-1$
+ }
+ if ("float".equals(primitiveType)) { //$NON-NLS-1$
+ return "Float"; //$NON-NLS-1$
+ }
+ if ("double".equals(primitiveType)) { //$NON-NLS-1$
+ return "Double"; //$NON-NLS-1$
+ }
+ if ("boolean".equals(primitiveType)) { //$NON-NLS-1$
+ return "Boolean"; //$NON-NLS-1$
+ }
+ if ("char".equals(primitiveType)) { //$NON-NLS-1$
+ return "Character"; //$NON-NLS-1$
+ }
+ return primitiveType;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/Messages.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/Messages.java
new file mode 100644
index 00000000000..fb2e6811381
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/Messages.java
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software)
+ * Gregoire Dupe (Mia-Software) - Bug 366804 - [Restructuring] Table widget upgrade
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.core.internal;
+
+import org.eclipse.osgi.util.NLS;
+
+public final class Messages extends NLS {
+ private static String BUNDLE_NAME = "org.eclipse.papyrus.emf.facet.util.core.internal.messages"; //$NON-NLS-1$
+ public static String AbstractRegistry_id;
+ public static String AbstractRegistry_colon;
+ public static String AbstractRegistry_requiredAttributeNotDefined;
+ public static String AbstractRegistry_unknownExtensionTag;
+ public static String AbstractRegistry_pluginExtension;
+ public static String StringUtils_ellipsis;
+
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(Messages.BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ // Nothing
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/AbstractRegistry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/AbstractRegistry.java
new file mode 100644
index 00000000000..f77485f4904
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/AbstractRegistry.java
@@ -0,0 +1,112 @@
+/*******************************************************************************
+ * Copyright (c) 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.util.core.internal.exported;
+
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.IExtension;
+import org.eclipse.core.runtime.IExtensionPoint;
+import org.eclipse.core.runtime.IExtensionRegistry;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.core.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.core.internal.Messages;
+import org.eclipse.osgi.util.NLS;
+
+/**
+ * Provides common functionality for extension registries. Call
+ * {@link #initialize()} in a sub-class to read the extension points. Implement
+ * {@link #handleRootElement(IConfigurationElement)} to read the root
+ * configuration elements of each extension.
+ * @since 0.2
+ */
+public abstract class AbstractRegistry {
+// copy of org.eclipse.papyrus.emf.facet.infra.common.core.internal.extensions.AbstractRegistry
+ /**
+ * Initialize the registry by reading the extension point to discover
+ * extensions. This method calls
+ * {@link #handleRootElement(IConfigurationElement)} on each root
+ * configuration element.
+ */
+ protected void initialize() {
+ final IExtensionRegistry extensionRegistry = Platform.getExtensionRegistry();
+ final IExtensionPoint extensionPoint = extensionRegistry.getExtensionPoint(
+ getExtensionPointNamespace(), getExtensionPointName());
+
+ if (extensionPoint == null) {
+ Logger.logError("Extension point not found:" + getExtensionPointNamespace() //$NON-NLS-1$
+ + "." + getExtensionPointName(), Activator.getDefault()); //$NON-NLS-1$
+ return;
+ }
+
+ final IExtension[] extensions = extensionPoint.getExtensions();
+ for (final IExtension extension : extensions) {
+ final IConfigurationElement[] configurationElements = extension
+ .getConfigurationElements();
+ for (final IConfigurationElement configurationElement : configurationElements) {
+ try {
+ handleRootElement(configurationElement);
+ } catch (Exception e) {
+ final String errogMsg = NLS
+ .bind("An exception occurred while loading registry of the extension point {0}. The problem occurred with the an extension contributed by the plug-in {1}", //$NON-NLS-1$
+ getExtensionPointNamespace() + '.'
+ + getExtensionPointName(),
+ extension.getContributor().getName());
+ Logger.logError(e, errogMsg, Activator.getDefault());
+ }
+ }
+ }
+ }
+
+ protected abstract String getExtensionPointNamespace();
+
+ protected abstract String getExtensionPointName();
+
+ /** Called for each root {@link IConfigurationElement} in the extension */
+ protected abstract void handleRootElement(IConfigurationElement configurationElement);
+
+ /**
+ * Logs the error in the log using the provided text and the information in
+ * the configuration element.
+ */
+ protected static void logError(final IConfigurationElement element, final String text) {
+ final IExtension extension = element.getDeclaringExtension();
+ final StringBuffer buf = new StringBuffer();
+ buf.append(NLS.bind(Messages.AbstractRegistry_pluginExtension, extension
+ .getNamespaceIdentifier(), extension.getExtensionPointUniqueIdentifier()));
+ // look for an ID if available - this should help debugging
+ final String id = element.getAttribute("id"); //$NON-NLS-1$
+ if (id != null) {
+ buf.append(Messages.AbstractRegistry_id);
+ buf.append(id);
+ }
+ buf.append(Messages.AbstractRegistry_colon + text);
+ Logger.logError(buf.toString(), Activator.getDefault());
+ }
+
+ /**
+ * Logs a very common registry error when a required attribute is missing.
+ */
+ protected static void logMissingAttribute(final IConfigurationElement element,
+ final String attributeName) {
+ logError(element, NLS.bind(Messages.AbstractRegistry_requiredAttributeNotDefined,
+ attributeName));
+ }
+
+ /**
+ * Logs a registry error when the configuration element is unknown.
+ */
+ protected static void logUnknownElement(final IConfigurationElement element) {
+ logError(element, Messages.AbstractRegistry_unknownExtensionTag + element.getName());
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/FileUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/FileUtils.java
new file mode 100644
index 00000000000..674da368e83
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/FileUtils.java
@@ -0,0 +1,192 @@
+/*******************************************************************************
+ * Copyright (c) 2008, 2009, 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 340339 - Need some Utils class for Folder/File/Project management
+ * Nicolas Guyomar (Mia-Software) - Bug 342451 - To be able to edit derived facet attributes and derived facet references in a table
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ * Thomas Cicognani (Soft-Maint) - Bug 398079 - org.eclipse.papyrus.emf.facet.util.core.internal.exported.FileUtils.copyFolderFromBundle
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.core.internal.exported;
+
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.Reader;
+import java.net.URL;
+import java.util.Enumeration;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.osgi.framework.Bundle;
+
+/**
+ * @since 0.2
+ */
+public final class FileUtils {
+
+ // This class has been copied from org.eclipse.papyrus.emf.facet.infra.common.core.internal.utils.FileUtils
+
+ private static final int COPY_BUFFER_SIZE = 512 * 1024;
+
+ private FileUtils() {
+ // Nothing
+ }
+
+ /** Get the contents of a file from a Bundle */
+ public static String getFileContents(final Bundle bundle, final String path) throws IOException {
+ InputStream source;
+ URL url = bundle.getResource(path);
+ if (url == null) {
+ return null;
+ }
+ source = url.openStream();
+ return FileUtils.readInputStream(source);
+ }
+
+ public static String readInputStream(final InputStream stream) throws IOException {
+ return readInputStream(stream, "UTF-8"); //$NON-NLS-1$
+ }
+
+ public static String readInputStream(final InputStream stream, final String charset)
+ throws IOException {
+ final int bufferSize = 65536;
+ final char[] buffer = new char[bufferSize];
+ StringBuilder builder = new StringBuilder();
+ Reader reader = new InputStreamReader(stream, charset);
+ int read;
+ do {
+ read = reader.read(buffer, 0, buffer.length);
+ if (read > 0) {
+ builder.append(buffer, 0, read);
+ }
+ } while (read >= 0);
+
+ reader.close();
+ return builder.toString();
+ }
+
+ /**
+ * Copy a folder contents from a bundle
+ *
+ * @param folderPath
+ * Folder path to copy
+ * @param project
+ * Copy folder into this {@link IProject}
+ * @param destinationPath
+ * Destination path
+ * @param bundleContainingResources
+ * Bundle which has resources to copy
+ * @param recurse
+ * <code>true</code> to copy recursively
+ * @throws IOException
+ * @throws CoreException
+ * @since 0.3
+ */
+ public static void copyFolderFromBundle(final String folderPath, final IProject project,
+ final String destinationPath, final Bundle bundleContainingResources,
+ final boolean recurse)
+ throws IOException, CoreException {
+ @SuppressWarnings("unchecked")
+ // @SuppressWarnings("unchecked") findEntries returns a raw type.
+ final Enumeration<URL> files = bundleContainingResources.findEntries(folderPath, "*.*", recurse); //$NON-NLS-1$
+ while (files.hasMoreElements()) {
+ final URL element = files.nextElement();
+ String filename = element.getFile().replace(folderPath, ""); //$NON-NLS-1$
+ if (!filename.startsWith("/")) { //$NON-NLS-1$
+ filename = "/" + filename; //$NON-NLS-1$
+ }
+ copyFileFromBundle(element.getFile(), project, destinationPath + filename, bundleContainingResources);
+ }
+ }
+
+ public static IFile copyFileFromBundle(final String sourcePath, final IProject project,
+ final String destinationPath, final Bundle bundleContainingResources)
+ throws IOException, CoreException {
+ InputStream source;
+ URL url = bundleContainingResources.getResource(sourcePath);
+ if (url != null) {
+ source = url.openStream();
+ } else {
+ url = bundleContainingResources.getEntry(sourcePath);
+ if (url == null) {
+ throw new IOException(sourcePath + " not found."); //$NON-NLS-1$
+ }
+ source = url.openStream();
+ }
+ IFile javaFile = project.getFile(destinationPath);
+ if (javaFile.exists()) {
+ try {
+ javaFile.delete(true, new NullProgressMonitor());
+ } catch (CoreException e) {
+ // problem deleting the file : try to close the project before deleting
+ if (project.isOpen()) {
+ try {
+ project.close(new NullProgressMonitor());
+ javaFile.delete(true, new NullProgressMonitor());
+ } finally {
+ project.open(new NullProgressMonitor());
+ }
+ }
+ }
+ }
+ if (!javaFile.getParent().exists()) {
+ FolderUtils.createFolder((IFolder) javaFile.getParent());
+ }
+ javaFile.create(source, true, new NullProgressMonitor());
+ return javaFile;
+ }
+
+ /**
+ * Copies the source file to the target file.
+ *
+ * @return <code>true</code> if successful, <code>false</code> otherwise
+ */
+ public static final boolean copyFile(final File source, final File destination) {
+ boolean result = false;
+ FileInputStream sourceFile = null;
+ FileOutputStream destinationFile = null;
+ try {
+ // File creation
+ destination.createNewFile();
+ sourceFile = new FileInputStream(source);
+ destinationFile = new FileOutputStream(destination);
+ // 0.5 MiB buffer for reading
+ byte[] buffer = new byte[FileUtils.COPY_BUFFER_SIZE];
+ int nbRead;
+ while ((nbRead = sourceFile.read(buffer)) != -1) {
+ destinationFile.write(buffer, 0, nbRead);
+ }
+
+ // Copied
+ result = true;
+ } catch (java.io.FileNotFoundException f) {
+ result = false;
+ } catch (java.io.IOException e) {
+ result = false;
+ } finally {
+ try {
+ if (sourceFile != null) {
+ sourceFile.close();
+ }
+ if (destinationFile != null) {
+ destinationFile.close();
+ }
+ } catch (Exception e) {
+ result = false;
+ }
+ }
+ return result;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/FolderUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/FolderUtils.java
new file mode 100644
index 00000000000..0d147891047
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/FolderUtils.java
@@ -0,0 +1,108 @@
+/*******************************************************************************
+ * Copyright (c) 2008, 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gabriel Barbier (Mia-Software) - initial API and implementation
+ * Fabien Giquel (Mia-Software)
+ * Nicolas Bros (Mia-Software)
+ * Nicolas Guyomar (Mia-Software) - Bug 340339 - Need some Utils class for Folder/File/Project management
+ *******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.util.core.internal.exported;
+
+import java.io.File;
+import java.io.IOException;
+
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.NullProgressMonitor;
+
+/**
+ * @author Gabriel Barbier
+ * @since 0.2
+ */
+public final class FolderUtils {
+
+ // This class has been copied from org.eclipse.papyrus.emf.facet.infra.common.core.internal.utils.FolderUtils
+
+ private FolderUtils() {
+ // prevent instantiation
+ }
+
+ /**
+ * This method delete the content of the folder
+ * @param folder The folder that has to be emptied
+ */
+ public static final void clearFolder(final File folder) {
+ assert folder != null;
+ assert folder.exists();
+ assert folder.isDirectory();
+ /*
+ * To delete the contents of this folder, we recurse on all elements (File) in this folder.
+ * In the case of a directory, we first delete its own contents before deleting it. In the
+ * case of a file, we just delete the file.
+ */
+ File[] files = folder.listFiles();
+ for (File file : files) {
+ if (file.isDirectory()) {
+ FolderUtils.clearFolder(file);
+ }
+ file.delete();
+ }
+ }
+
+ /**
+ * This method create a folder and it parents if they do not exists.
+ * @param folder The folder that have to be created.
+ * @throws CoreException
+ */
+ public static void createFolder(final IFolder folder) throws CoreException {
+ if (!folder.getParent().exists()) {
+ FolderUtils.createFolder((IFolder) folder.getParent());
+ }
+ if (!folder.exists()) {
+ folder.create(true, true, new NullProgressMonitor());
+ }
+ }
+
+ /**
+ * Copies the source directory to the target directory. The target is
+ * created if it does not exist.
+ */
+ public static final void copyFolder(final File srcDir, final File destDir)
+ throws IOException {
+ FolderUtils.copyFolder(srcDir, destDir, new IFilter<String>() {
+ public boolean filter(final String object) {
+ return true;
+ }
+ });
+ }
+
+ /**
+ * Copies the source directory to the target directory.
+ */
+ public static final void copyFolder(final File srcDir, final File destDir,
+ final IFilter<String> filter) throws IOException {
+
+ if (!destDir.exists()) {
+ destDir.mkdirs();
+ }
+ File[] filesList = srcDir.listFiles();
+ File dest;
+ // Copies each file and directory, one by one
+ for (File src : filesList) {
+ dest = new File(destDir.getPath() + File.separator + src.getName());
+ if (filter.filter(dest.getAbsolutePath())) {
+ if (src.isDirectory()) {
+ FolderUtils.copyFolder(src, dest, filter);
+ } else {
+ FileUtils.copyFile(src, dest);
+ }
+ }
+ }
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/IFilter.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/IFilter.java
new file mode 100644
index 00000000000..9c25f54fa6f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/IFilter.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2010, 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire DUPE (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software)
+ * Nicolas Guyomar (Mia-Software) - Bug 340339 - Need some Utils class for Folder/File/Project management
+ * Gregoire Dupe (Mia-Software) - Bug 340339 - Need some Utils class for Folder/File/Project management
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.core.internal.exported;
+
+/**
+ * @since 0.2
+ */
+public interface IFilter<T> {
+ // This class has been copied from org.eclipse.papyrus.emf.facet.infra.common.core.internal.utils.IFilter
+
+ /**
+ * @param object
+ * an element to be filtered
+ * @return false if the element must be filtered out.
+ */
+ public boolean filter(T object);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/ListUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/ListUtils.java
new file mode 100644
index 00000000000..1d0d60b654c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/ListUtils.java
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA-LIST
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 375087 - [Table] ITableWidget.addColumn(List<ETypedElement>, List<FacetSet>)
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.core.internal.exported;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+/**
+ * @since 0.2
+ */
+public final class ListUtils {
+
+ private ListUtils() {
+ // Must not be used.
+ }
+
+ public static <T> List<T> cleanList(final Collection<T> collection) {
+ final List<T> cleanList = new ArrayList<T>(collection);
+ while (cleanList.contains(null)) {
+ cleanList.remove(null);
+ }
+ return cleanList;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/StringUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/StringUtils.java
new file mode 100644
index 00000000000..4b06dc0d04e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/exported/StringUtils.java
@@ -0,0 +1,108 @@
+/*******************************************************************************
+ * Copyright (c) 2008, 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gabriel Barbier (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software)
+ * Gregoire Dupe (Mia-Software) - Bug 366804 - [Restructuring] Table widget upgrade
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.util.core.internal.exported;
+
+
+import org.eclipse.papyrus.emf.facet.util.core.internal.Messages;
+
+import com.ibm.icu.lang.UCharacter;
+
+/**
+ * @author Gabriel Barbier
+ * @since 0.2
+ */
+// Copied from org.eclipse.papyrus.emf.facet.infra.common.core.internal.utils.StringUtils
+public final class StringUtils {
+ public static final String ELLIPSIS = Messages.StringUtils_ellipsis;
+ private static final int TRUNCATE_AFTER = 150;
+
+ private StringUtils() {
+ // prevent instantiation
+ }
+
+ public static String firstLetterToLowerCase(final String source) {
+ String result;
+ if (source.length() == 0) {
+ result = source;
+ } else if (source.length() == 1) {
+ result = source.toLowerCase();
+ } else {
+ result = source.substring(0, 1).toLowerCase() + source.substring(1);
+ }
+ return result;
+ }
+
+ public static String firstLetterToUpperCase(final String source) {
+ String result;
+ if (source.length() == 0) {
+ result = source;
+ } else if (source.length() == 1) {
+ result = source.toUpperCase();
+ } else {
+ result = source.substring(0, 1).toUpperCase() + source.substring(1);
+ }
+ return result;
+ }
+
+ /**
+ * Truncate the given String before the first newline or a maximum number of
+ * characters, whichever comes first. Adds an ellipsis ("...") if it was
+ * effectively truncated.
+ *
+ * @param str
+ * the string to truncate
+ * @return the part of the given string before the first newline
+ */
+ public static String truncateBeforeNewline(final String str) {
+ int endIndex = str.indexOf('\r');
+ if (endIndex == -1) {
+ endIndex = str.indexOf('\n');
+ }
+ if (endIndex != -1 && endIndex <= StringUtils.TRUNCATE_AFTER) {
+ return str.substring(0, endIndex) + StringUtils.ELLIPSIS;
+ }
+ if (endIndex == -1) {
+ endIndex = str.length();
+ }
+
+ if (endIndex > StringUtils.TRUNCATE_AFTER) {
+ return str.substring(0, StringUtils.TRUNCATE_AFTER / 2) + StringUtils.ELLIPSIS
+ + str.substring(str.length() - StringUtils.TRUNCATE_AFTER / 2, endIndex);
+ }
+ return str;
+ }
+
+ /**
+ * Get a name suitable for a Java class from the given name. Capitalizes the
+ * first letter and each letter after a space, and removes spaces.
+ */
+ public static String inferJavaClassName(final String name) {
+ String upperName = StringUtils.firstLetterToUpperCase(name.trim());
+ StringBuilder javaName = new StringBuilder();
+ boolean space = false;
+ for (int i = 0; i < upperName.length(); i++) {
+ char c = upperName.charAt(i);
+ if (c == ' ') {
+ space = true;
+ } else if (space) {
+ javaName.append(UCharacter.toUpperCase(c));
+ space = false;
+ } else {
+ javaName.append(c);
+ }
+ }
+ return javaName.toString();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/messages.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/messages.properties
new file mode 100644
index 00000000000..1e93cb5dbc3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.core/src/org/eclipse/papyrus/emf/facet/util/core/internal/messages.properties
@@ -0,0 +1,18 @@
+###############################################################################
+# Copyright (c) 2009 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software)
+# Gregoire Dupe (Mia-Software) - Bug 366804 - [Restructuring] Table widget upgrade
+# Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+###############################################################################
+StringUtils_ellipsis=\u2026
+AbstractRegistry_colon=:
+AbstractRegistry_id=, id
+AbstractRegistry_pluginExtension=Plugin {0}.{1}
+AbstractRegistry_requiredAttributeNotDefined=Required attribute "{0}" is missing
+AbstractRegistry_unknownExtensionTag=Unknown extension tag found: {0} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/.checkstyle
new file mode 100644
index 00000000000..8814eb530bf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/.checkstyle
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2011 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Guyomar (Mia-Software) - initial API and implementation
+-->
+<fileset-config file-format-version="1.2.0" simple-config="true">
+ <local-check-config name="EmfFacet" location="../org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+ <filter name="FilesFromPackage" enabled="true">
+ <filter-data value="src/org/eclipse/emf/facet/util/emf/catalog"/>
+ </filter>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/.classpath
new file mode 100644
index 00000000000..45f024e850e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/.project
new file mode 100644
index 00000000000..f1b1f26cd94
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.util.emf.catalog</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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..8ad6afe9930
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,74 @@
+#Thu Oct 27 17:54:44 CEST 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.autoboxing=warning
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.deadCode=warning
+org.eclipse.jdt.core.compiler.problem.deprecation=warning
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
+org.eclipse.jdt.core.compiler.problem.fieldHiding=ignore
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
+org.eclipse.jdt.core.compiler.problem.nullReference=warning
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=warning
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=warning
+org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
+org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..c3313e6fa96
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/META-INF/MANIFEST.MF
@@ -0,0 +1,13 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.util.emf.catalog;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: %Bundle-Vendor
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore
+Bundle-ActivationPolicy: lazy
+Bundle-Activator: org.eclipse.papyrus.emf.facet.util.emf.catalog.plugin.Activator
+Export-Package: org.eclipse.papyrus.emf.facet.util.emf.catalog
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..cf006c029d3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,13 @@
+###############################################################################
+# Copyright (c) 2011 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software)
+###############################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.core
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Catalog Metamodel (Incubation) \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/about.html
new file mode 100644
index 00000000000..05cdf47ada9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/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>January 10, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/build.properties
new file mode 100644
index 00000000000..0bdc5170485
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/build.properties
@@ -0,0 +1,21 @@
+###########################################################################
+# Copyright (c) 2011 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 334000 Simple catalog manager
+###########################################################################
+bin.includes = .,\
+ model/,\
+ META-INF/,\
+ plugin.xml,\
+ OSGI-INF/,\
+ about.html
+jars.compile.order = .
+source.. = src/
+output.. = bin/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/model/catalog.ecore b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/model/catalog.ecore
new file mode 100644
index 00000000000..4eb364e31b8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/model/catalog.ecore
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="catalog"
+ nsURI="http://www.eclipse.org/papyrus/emf/facet/catalog/0.1.incubation" nsPrefix="catalog">
+ <eClassifiers xsi:type="ecore:EClass" name="CatalogSet">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A CatalogSet is a set of EMF Facet catalogs."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="catalogs" upperBound="-1"
+ eType="#//Catalog" containment="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The &quot;catalogs&quot; reference references all the EMF Facet Catalog catalogs contained by a CatalogSet"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Catalog" abstract="true" interface="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="A EMF Facet Catalog catalog is a way to references sets of EObject.&#xD;&#xA;It has to be subclassed for each user catalog, especially to create derived links to access elements with their right type."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="installedEntries" upperBound="-1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="&quot;installedEntries&quot; represents all the EObject initially registered through the registration extension point."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" 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 name of the Catalog."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/model/catalog.genmodel b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/model/catalog.genmodel
new file mode 100644
index 00000000000..4b88db75883
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/model/catalog.genmodel
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText=" Copyright (c) 2011 Mia-Software.&#xD;&#xA; &#xD;&#xA; All rights reserved. This program and the accompanying materials&#xD;&#xA; are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA; which accompanies this distribution, and is available at&#xD;&#xA; http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA; &#xD;&#xA; Contributors:&#xD;&#xA;&#x9;Gregoire Dupe (Mia-Software) - Design&#xD;&#xA;&#x9;Nicolas Guyomar (Mia-Software) - Implementation&#xD;&#xA; "
+ modelDirectory="/org.eclipse.papyrus.emf.facet.util.emf.catalog/src" editDirectory="/org.eclipse.papyrus.emf.facet.util.emf.catalog.edit/src"
+ modelPluginID="org.eclipse.papyrus.emf.facet.util.emf.catalog" modelName="Catalog" editPluginClass="org.eclipse.papyrus.emf.facet.util.emf.catalog.provider.CatalogEditPlugin"
+ editorPluginClass="org.eclipse.papyrus.emf.facet.util.emf.catalog.presentation.CatalogEditorPlugin"
+ nonNLSMarkers="true" testsDirectory="/org.eclipse.papyrus.emf.facet.util.emf.catalog.tests/src"
+ testSuiteClass="org.eclipse.papyrus.emf.facet.util.emf.catalog.tests.CatalogAllTests"
+ importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0" copyrightFields="false"
+ editPluginID="org.eclipse.papyrus.emf.facet.util.emf.catalog.edit" testsPluginID="org.eclipse.papyrus.emf.facet.util.emf.catalog.tests">
+ <foreignModel>catalog.ecore</foreignModel>
+ <genPackages prefix="Catalog" basePackage="org.eclipse.papyrus.emf.facet.util.emf"
+ disposableProviderFactory="true" ecorePackage="catalog.ecore#/">
+ <genClasses ecoreClass="catalog.ecore#//CatalogSet">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference catalog.ecore#//CatalogSet/catalogs"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="catalog.ecore#//Catalog">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference catalog.ecore#//Catalog/installedEntries"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute catalog.ecore#//Catalog/name"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/plugin.xml
new file mode 100644
index 00000000000..da8ec471bf6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/plugin.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Gregoire Dupe (Mia-Software) - Design
+ Nicolas Guyomar (Mia-Software) - Implementation
+
+-->
+
+<plugin>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri="http://www.eclipse.org/papyrus/emf/facet/catalog/0.1.incubation"
+ class="org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage"
+ genModel="model/catalog.genmodel"/>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/Catalog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/Catalog.java
new file mode 100644
index 00000000000..c31cc7b6a00
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/Catalog.java
@@ -0,0 +1,87 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.catalog;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Catalog</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A EMF Facet Catalog catalog is a way to references sets of EObject.
+ * It has to be subclassed for each user catalog, especially to create derived links to access elements with their right type.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog#getInstalledEntries <em>Installed Entries</em>}</li>
+ * <li>{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage#getCatalog()
+ * @model interface="true" abstract="true"
+ * @generated
+ */
+public interface Catalog extends EObject {
+ /**
+ * Returns the value of the '<em><b>Installed Entries</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.emf.ecore.EObject}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * "installedEntries" represents all the EObject initially registered through the registration extension point.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Installed Entries</em>' reference list.
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage#getCatalog_InstalledEntries()
+ * @model
+ * @generated
+ */
+ EList<EObject> getInstalledEntries();
+
+ /**
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Name</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The name of the Catalog.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage#getCatalog_Name()
+ * @model
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog#getName <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
+ * @generated
+ */
+ void setName(String value);
+
+} // Catalog
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/CatalogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/CatalogFactory.java
new file mode 100644
index 00000000000..d00df526c44
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/CatalogFactory.java
@@ -0,0 +1,53 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.catalog;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage
+ * @generated
+ */
+public interface CatalogFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ CatalogFactory eINSTANCE = org.eclipse.papyrus.emf.facet.util.emf.catalog.impl.CatalogFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Set</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Set</em>'.
+ * @generated
+ */
+ CatalogSet createCatalogSet();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ CatalogPackage getCatalogPackage();
+
+} //CatalogFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/CatalogPackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/CatalogPackage.java
new file mode 100644
index 00000000000..593741dd2db
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/CatalogPackage.java
@@ -0,0 +1,256 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.catalog;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface CatalogPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "catalog"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/catalog/0.1.incubation"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "catalog"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ CatalogPackage eINSTANCE = org.eclipse.papyrus.emf.facet.util.emf.catalog.impl.CatalogPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.impl.CatalogSetImpl <em>Set</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.impl.CatalogSetImpl
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.impl.CatalogPackageImpl#getCatalogSet()
+ * @generated
+ */
+ int CATALOG_SET = 0;
+
+ /**
+ * The feature id for the '<em><b>Catalogs</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CATALOG_SET__CATALOGS = 0;
+
+ /**
+ * The number of structural features of the '<em>Set</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CATALOG_SET_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog <em>Catalog</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.impl.CatalogPackageImpl#getCatalog()
+ * @generated
+ */
+ int CATALOG = 1;
+
+ /**
+ * The feature id for the '<em><b>Installed Entries</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CATALOG__INSTALLED_ENTRIES = 0;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CATALOG__NAME = 1;
+
+ /**
+ * The number of structural features of the '<em>Catalog</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int CATALOG_FEATURE_COUNT = 2;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogSet <em>Set</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Set</em>'.
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogSet
+ * @generated
+ */
+ EClass getCatalogSet();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogSet#getCatalogs <em>Catalogs</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the containment reference list '<em>Catalogs</em>'.
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogSet#getCatalogs()
+ * @see #getCatalogSet()
+ * @generated
+ */
+ EReference getCatalogSet_Catalogs();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog <em>Catalog</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Catalog</em>'.
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog
+ * @generated
+ */
+ EClass getCatalog();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog#getInstalledEntries <em>Installed Entries</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Installed Entries</em>'.
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog#getInstalledEntries()
+ * @see #getCatalog()
+ * @generated
+ */
+ EReference getCatalog_InstalledEntries();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog#getName()
+ * @see #getCatalog()
+ * @generated
+ */
+ EAttribute getCatalog_Name();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ CatalogFactory getCatalogFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.impl.CatalogSetImpl <em>Set</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.impl.CatalogSetImpl
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.impl.CatalogPackageImpl#getCatalogSet()
+ * @generated
+ */
+ EClass CATALOG_SET = eINSTANCE.getCatalogSet();
+
+ /**
+ * The meta object literal for the '<em><b>Catalogs</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CATALOG_SET__CATALOGS = eINSTANCE.getCatalogSet_Catalogs();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog <em>Catalog</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.impl.CatalogPackageImpl#getCatalog()
+ * @generated
+ */
+ EClass CATALOG = eINSTANCE.getCatalog();
+
+ /**
+ * The meta object literal for the '<em><b>Installed Entries</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference CATALOG__INSTALLED_ENTRIES = eINSTANCE.getCatalog_InstalledEntries();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute CATALOG__NAME = eINSTANCE.getCatalog_Name();
+
+ }
+
+} //CatalogPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/CatalogSet.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/CatalogSet.java
new file mode 100644
index 00000000000..3c6bae05527
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/CatalogSet.java
@@ -0,0 +1,60 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.catalog;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Set</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A CatalogSet is a set of EMF Facet catalogs.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogSet#getCatalogs <em>Catalogs</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage#getCatalogSet()
+ * @model
+ * @generated
+ */
+public interface CatalogSet extends EObject {
+ /**
+ * Returns the value of the '<em><b>Catalogs</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Catalogs</em>' containment reference list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The "catalogs" reference references all the EMF Facet Catalog catalogs contained by a CatalogSet
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Catalogs</em>' containment reference list.
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage#getCatalogSet_Catalogs()
+ * @model containment="true"
+ * @generated
+ */
+ EList<Catalog> getCatalogs();
+
+} // CatalogSet
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/impl/CatalogFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/impl/CatalogFactoryImpl.java
new file mode 100644
index 00000000000..7e3eba0c4a5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/impl/CatalogFactoryImpl.java
@@ -0,0 +1,103 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.catalog.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CatalogFactoryImpl extends EFactoryImpl implements CatalogFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static CatalogFactory init() {
+ try {
+ CatalogFactory theCatalogFactory = (CatalogFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/emf/facet/catalog/0.1.incubation"); //$NON-NLS-1$
+ if (theCatalogFactory != null) {
+ return theCatalogFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new CatalogFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CatalogFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case CatalogPackage.CATALOG_SET: return createCatalogSet();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CatalogSet createCatalogSet() {
+ CatalogSetImpl catalogSet = new CatalogSetImpl();
+ return catalogSet;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CatalogPackage getCatalogPackage() {
+ return (CatalogPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static CatalogPackage getPackage() {
+ return CatalogPackage.eINSTANCE;
+ }
+
+} //CatalogFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/impl/CatalogPackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/impl/CatalogPackageImpl.java
new file mode 100644
index 00000000000..57d44ca9728
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/impl/CatalogPackageImpl.java
@@ -0,0 +1,230 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.catalog.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogFactory;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogSet;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class CatalogPackageImpl extends EPackageImpl implements CatalogPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass catalogSetEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass catalogEClass = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private CatalogPackageImpl() {
+ super(eNS_URI, CatalogFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 CatalogPackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static CatalogPackage init() {
+ if (isInited) return (CatalogPackage)EPackage.Registry.INSTANCE.getEPackage(CatalogPackage.eNS_URI);
+
+ // Obtain or create and register package
+ CatalogPackageImpl theCatalogPackage = (CatalogPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof CatalogPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new CatalogPackageImpl());
+
+ isInited = true;
+
+ // Create package meta-data objects
+ theCatalogPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theCatalogPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theCatalogPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(CatalogPackage.eNS_URI, theCatalogPackage);
+ return theCatalogPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getCatalogSet() {
+ return catalogSetEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getCatalogSet_Catalogs() {
+ return (EReference)catalogSetEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getCatalog() {
+ return catalogEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getCatalog_InstalledEntries() {
+ return (EReference)catalogEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getCatalog_Name() {
+ return (EAttribute)catalogEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CatalogFactory getCatalogFactory() {
+ return (CatalogFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated) return;
+ isCreated = true;
+
+ // Create classes and their features
+ catalogSetEClass = createEClass(CATALOG_SET);
+ createEReference(catalogSetEClass, CATALOG_SET__CATALOGS);
+
+ catalogEClass = createEClass(CATALOG);
+ createEReference(catalogEClass, CATALOG__INSTALLED_ENTRIES);
+ createEAttribute(catalogEClass, CATALOG__NAME);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized) return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(catalogSetEClass, CatalogSet.class, "CatalogSet", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getCatalogSet_Catalogs(), this.getCatalog(), null, "catalogs", null, 0, -1, CatalogSet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(catalogEClass, Catalog.class, "Catalog", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getCatalog_InstalledEntries(), ecorePackage.getEObject(), null, "installedEntries", null, 0, -1, Catalog.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getCatalog_Name(), ecorePackage.getEString(), "name", null, 0, 1, Catalog.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); //$NON-NLS-1$
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //CatalogPackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/impl/CatalogSetImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/impl/CatalogSetImpl.java
new file mode 100644
index 00000000000..ea293282a77
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/impl/CatalogSetImpl.java
@@ -0,0 +1,158 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.catalog.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogSet;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Set</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.impl.CatalogSetImpl#getCatalogs <em>Catalogs</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class CatalogSetImpl extends EObjectImpl implements CatalogSet {
+ /**
+ * The cached value of the '{@link #getCatalogs() <em>Catalogs</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getCatalogs()
+ * @generated
+ * @ordered
+ */
+ protected EList<Catalog> catalogs;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CatalogSetImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return CatalogPackage.Literals.CATALOG_SET;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Catalog> getCatalogs() {
+ if (catalogs == null) {
+ catalogs = new EObjectContainmentEList<Catalog>(Catalog.class, this, CatalogPackage.CATALOG_SET__CATALOGS);
+ }
+ return catalogs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case CatalogPackage.CATALOG_SET__CATALOGS:
+ return ((InternalEList<?>)getCatalogs()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case CatalogPackage.CATALOG_SET__CATALOGS:
+ return getCatalogs();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case CatalogPackage.CATALOG_SET__CATALOGS:
+ getCatalogs().clear();
+ getCatalogs().addAll((Collection<? extends Catalog>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case CatalogPackage.CATALOG_SET__CATALOGS:
+ getCatalogs().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case CatalogPackage.CATALOG_SET__CATALOGS:
+ return catalogs != null && !catalogs.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //CatalogSetImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/plugin/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/plugin/Activator.java
new file mode 100644
index 00000000000..88f0c831ed6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/plugin/Activator.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 334000 Simple catalog manager
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.catalog.plugin;
+
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+public class Activator implements BundleActivator {
+
+ private static BundleContext context;
+
+ static BundleContext getContext() {
+ return Activator.context;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
+ */
+ public void start(final BundleContext bundleContext) throws Exception {
+ Activator.context = bundleContext;
+ }
+
+ /*
+ * (non-Javadoc)
+ * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
+ */
+ public void stop(final BundleContext bundleContext) throws Exception {
+ Activator.context = null;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/util/CatalogAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/util/CatalogAdapterFactory.java
new file mode 100644
index 00000000000..e2ca24b33b0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/util/CatalogAdapterFactory.java
@@ -0,0 +1,148 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.catalog.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage
+ * @generated
+ */
+// generated code
+@SuppressWarnings("all")
+public class CatalogAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static CatalogPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CatalogAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = CatalogPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected CatalogSwitch<Adapter> modelSwitch =
+ new CatalogSwitch<Adapter>() {
+ @Override
+ public Adapter caseCatalogSet(CatalogSet object) {
+ return createCatalogSetAdapter();
+ }
+ @Override
+ public Adapter caseCatalog(Catalog object) {
+ return createCatalogAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogSet <em>Set</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.emf.facet.util.emf.catalog.CatalogSet
+ * @generated
+ */
+ public Adapter createCatalogSetAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog <em>Catalog</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.emf.facet.util.emf.catalog.Catalog
+ * @generated
+ */
+ public Adapter createCatalogAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //CatalogAdapterFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/util/CatalogSwitch.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/util/CatalogSwitch.java
new file mode 100644
index 00000000000..a42c1fad94d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.catalog/src/org/eclipse/papyrus/emf/facet/util/emf/catalog/util/CatalogSwitch.java
@@ -0,0 +1,157 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Design
+ * Nicolas Guyomar (Mia-Software) - Implementation
+ *
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.catalog.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogPackage
+ * @generated
+ */
+public class CatalogSwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static CatalogPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CatalogSwitch() {
+ if (modelPackage == null) {
+ modelPackage = CatalogPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case CatalogPackage.CATALOG_SET: {
+ CatalogSet catalogSet = (CatalogSet)theEObject;
+ T result = caseCatalogSet(catalogSet);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case CatalogPackage.CATALOG: {
+ Catalog catalog = (Catalog)theEObject;
+ T result = caseCatalog(catalog);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Set</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>Set</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCatalogSet(CatalogSet object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Catalog</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>Catalog</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCatalog(Catalog object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //CatalogSwitch
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.checkstyle
new file mode 100644
index 00000000000..d234a2b74ab
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.checkstyle
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+ <local-check-config name="EmfFacet" location="../org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ </fileset>
+ <filter name="FilesFromPackage" enabled="true">
+ <filter-data value="src/org/eclipse/emf/facet/util/emf/core/serialization/model"/>
+ </filter>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.classpath
new file mode 100644
index 00000000000..45f024e850e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.project
new file mode 100644
index 00000000000..a2e0d0dc9af
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.util.emf.core</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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..94183d066ea
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,3 @@
+#Thu Sep 22 10:55:09 CEST 2011
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..fb1ad0674ba
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,77 @@
+#Thu Oct 27 17:54:45 CEST 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.autoboxing=warning
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.deadCode=warning
+org.eclipse.jdt.core.compiler.problem.deprecation=warning
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
+org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
+org.eclipse.jdt.core.compiler.problem.nullReference=warning
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=warning
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=warning
+org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=warning
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=warning
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=disabled
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=warning
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=warning
+org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
+org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/API.README.txt b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/API.README.txt
new file mode 100644
index 00000000000..894861b37ee
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/API.README.txt
@@ -0,0 +1,13 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 341238 - We need to be able to specify which column have to be hidden/visible using the customization mechanism
+ *******************************************************************************/
+ org.eclipse.papyrus.emf.facet.util.emf.core
+ x-friends:="org.eclipse.papyrus.emf.facet.widgets.nattable" org.eclipse.papyrus.emf.facet.widgets.nattable.internal.NatTableWidget need to use org.eclipse.papyrus.emf.facet.util.emf.core.internal.EMFUtils
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..c5868d3fdde
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/META-INF/MANIFEST.MF
@@ -0,0 +1,34 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.util.emf.core;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.util.emf.core.internal.Activator
+Bundle-Vendor: %Bundle-Vendor
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore;bundle-version="2.2.0",
+ org.eclipse.papyrus.emf.facet.util.emf.catalog;bundle-version="0.1.0";visibility:=reexport,
+ org.eclipse.papyrus.emf.facet.common.core;bundle-version="0.1.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.1.0",
+ org.eclipse.core.resources;bundle-version="3.6.0",
+ org.eclipse.emf.edit;bundle-version="2.6.0",
+ org.eclipse.papyrus.emf.facet.util.pde.core;bundle-version="0.4.0"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.util.emf.core,
+ org.eclipse.papyrus.emf.facet.util.emf.core.command,
+ org.eclipse.papyrus.emf.facet.util.emf.core.exception,
+ org.eclipse.papyrus.emf.facet.util.emf.core.internal;
+ x-friends:="org.eclipse.papyrus.emf.facet.util.emf.core.tests,
+ org.eclipse.papyrus.emf.facet.widgets.nattable,
+ org.eclipse.papyrus.emf.facet.efacet.core,
+ org.eclipse.papyrus.emf.facet.util.emf.ui",
+ org.eclipse.papyrus.emf.facet.util.emf.core.internal.catalog;x-internal:=true,
+ org.eclipse.papyrus.emf.facet.util.emf.core.internal.exported,
+ org.eclipse.papyrus.emf.facet.util.emf.core.internal.preferences,
+ org.eclipse.papyrus.emf.facet.util.emf.core.internal.registry;x-internal:=true,
+ org.eclipse.papyrus.emf.facet.util.emf.core.internal.serialization;x-internal:=true,
+ org.eclipse.papyrus.emf.facet.util.emf.core.internal.serialization.serializers;x-internal:=true,
+ org.eclipse.papyrus.emf.facet.util.emf.core.serialization,
+ org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model.serialization,
+ org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model.serialization.impl;x-internal:=true
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..a7c104c9536
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,21 @@
+###############################################################################
+# Copyright (c) 2011 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+# Nicolas Guyomar (Mia-Software) - Bug 334000 Simple catalog manager
+# Gregoire Dupe (Mia-Software) - Bug 334000 Simple catalog manager
+# Nicolas Guyomar (Mia-Software) - Bug 339899 - everything must be externalized before UI freeze
+###############################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.util.emf.core
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Utils (Incubation)
+extension-point.name = catalogManager
+extension-point.name.0 = modeldeclaration
+
+model.viewer.extension-point.name = Model Viewer
+serialization.extension-point.name = Serialization \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/about.html
new file mode 100644
index 00000000000..d1714826b27
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/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>January 4, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/build.properties
new file mode 100644
index 00000000000..1c065f0b7be
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/build.properties
@@ -0,0 +1,21 @@
+###############################################################################
+# Copyright (c) 2011 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire DUPE (Mia-Software) - initial API and implementation
+# Nicolas Guyomar (Mia-Software) - Bug 339899 - everything must be externalized before UI freeze
+###############################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ OSGI-INF/,\
+ about.html,\
+ schema/,\
+ model/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/model/serialization.ecore b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/model/serialization.ecore
new file mode 100644
index 00000000000..b2078ac0307
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/model/serialization.ecore
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="serialization"
+ nsURI="http://www.eclipse.org/papyrus/emf/facet/serialization/0.1.incubation" nsPrefix="serialization">
+ <eClassifiers xsi:type="ecore:EDataType" name="ExtensibleSerializableJavaObject"
+ instanceClassName="java.lang.Object"/>
+</ecore:EPackage>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/model/serialization.genmodel b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/model/serialization.genmodel
new file mode 100644
index 00000000000..bbe0270b18d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/model/serialization.genmodel
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="Copyright (c) 2011 Mia-Software.&#xD;&#xA;All rights reserved. This program and the accompanying materials&#xD;&#xA;are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA;which accompanies this distribution, and is available at&#xD;&#xA;http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA;&#xD;&#xA;Contributors:&#xD;&#xA; Nicolas Bros (Mia-Software) - initial API and implementation"
+ modelDirectory="/org.eclipse.papyrus.emf.facet.util.emf.core/src" modelPluginID="org.eclipse.papyrus.emf.facet.util.emf.core"
+ modelName="Serialization" nonNLSMarkers="true" importerID="org.eclipse.emf.importer.ecore"
+ complianceLevel="5.0" copyrightFields="false">
+ <foreignModel>serialization.ecore</foreignModel>
+ <genPackages prefix="Serialization" basePackage="org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model"
+ disposableProviderFactory="true" ecorePackage="serialization.ecore#/">
+ <genDataTypes ecoreDataType="serialization.ecore#//ExtensibleSerializableJavaObject"/>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/plugin.xml
new file mode 100644
index 00000000000..6cbede919c4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/plugin.xml
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<!--
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Gregoire Dupe (Mia-Software) - Bug 334000 Simple catalog manager
+ Nicolas Guyomar (Mia-Software) - Bug 334000 Simple catalog manager
+ Nicolas Bros (Mia-Software) - Bug 335218 - Extension point for registering EObject, EPackage, model editor
+ Nicolas Guyomar (Mia-Software) - Bug 339899 - everything must be externalized before UI freeze
+-->
+<plugin>
+ <extension-point id="modelViewer" name="%model.viewer.extension-point.name" schema="schema/modelViewer.exsd"/>
+ <extension-point id="catalogmanager" name="%extension-point.name" schema="schema/catalogmanager.exsd"/>
+ <extension-point id="modeldeclaration" name="%extension-point.name.0" schema="schema/modeldeclaration.exsd"/>
+ <extension-point id="serialization" name="%serialization.extension-point.name" schema="schema/serialization.exsd"/>
+
+ <extension
+ point="org.eclipse.core.runtime.preferences">
+ <initializer
+ class="org.eclipse.papyrus.emf.facet.util.emf.core.internal.preferences.PreferenceInitializer">
+ </initializer>
+ </extension>
+ <extension
+ point="org.eclipse.papyrus.emf.facet.util.emf.core.serialization">
+ <serializer
+ class="org.eclipse.papyrus.emf.facet.util.emf.core.internal.serialization.serializers.StringSerializer">
+ </serializer>
+ <serializer
+ class="org.eclipse.papyrus.emf.facet.util.emf.core.internal.serialization.serializers.IntegerSerializer">
+ </serializer>
+ <serializer
+ class="org.eclipse.papyrus.emf.facet.util.emf.core.internal.serialization.serializers.BooleanSerializer">
+ </serializer>
+ <serializer
+ class="org.eclipse.papyrus.emf.facet.util.emf.core.internal.serialization.serializers.IResourceSerializer">
+ </serializer>
+ <serializer
+ class="org.eclipse.papyrus.emf.facet.util.emf.core.internal.serialization.serializers.EMFURISerializer">
+ </serializer>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/schema/catalogmanager.exsd b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/schema/catalogmanager.exsd
new file mode 100644
index 00000000000..2dbd926b50d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/schema/catalogmanager.exsd
@@ -0,0 +1,96 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.papyrus.emf.facet.util.emf.core" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appinfo>
+ <meta.schema plugin="org.eclipse.papyrus.emf.facet.util.emf.core" id="catalogmanager" name="EMF Facet Catalog Manager"/>
+ </appinfo>
+ <documentation>
+ Allows the registration of a ICatalogManager
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appinfo>
+ <meta.element />
+ </appinfo>
+ </annotation>
+ <complexType>
+ <sequence>
+ <element ref="catalog" minOccurs="1" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute translatable="true"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="catalog">
+ <complexType>
+ <attribute name="class" type="string" use="required">
+ <annotation>
+ <documentation>
+ The class that implements the catalog.
+ </documentation>
+ <appinfo>
+ <meta.attribute kind="java" basedOn=":org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogManager"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="since"/>
+ </appinfo>
+ <documentation>
+ 0.2.0
+ </documentation>
+ </annotation>
+
+
+
+
+ <annotation>
+ <appinfo>
+ <meta.section type="copyright"/>
+ </appinfo>
+ <documentation>
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Gregoire Dupe (Mia-Software) - Bug 334000 Simple catalog manager
+ Nicolas Guyomar (Mia-Software) - Bug 334000 Simple catalog manager
+ Nicolas Bros (Mia-Software) - Bug 371631 - Wrong definition for &quot;catalogmanager&quot; extension point
+ </documentation>
+ </annotation>
+
+</schema>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/schema/modelViewer.exsd b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/schema/modelViewer.exsd
new file mode 100644
index 00000000000..5371b259a30
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/schema/modelViewer.exsd
@@ -0,0 +1,185 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.papyrus.emf.facet.util.emf.core" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appinfo>
+ <meta.schema plugin="org.eclipse.papyrus.emf.facet.util.emf.core" id="modelViewer" name="Model Viewer"/>
+ </appinfo>
+ <documentation>
+ A model viewer for an EPackage, EObject and/or Resource can be declared with this extension point.
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appinfo>
+ <meta.element />
+ </appinfo>
+ </annotation>
+ <complexType>
+ <sequence>
+ <element ref="ePackageViewer" minOccurs="0" maxOccurs="unbounded"/>
+ <element ref="eObjectViewer" minOccurs="0" maxOccurs="unbounded"/>
+ <element ref="resourceViewer" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute translatable="true"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="ePackageViewer">
+ <annotation>
+ <documentation>
+ Registers a model browser that is capable of opening itself on an EPackage.
+ </documentation>
+ </annotation>
+ <complexType>
+ <attribute name="class" type="string" use="required">
+ <annotation>
+ <documentation>
+ A class that implements IEPackageBrowserOpener.
+ </documentation>
+ <appinfo>
+ <meta.attribute kind="java" basedOn=":org.eclipse.papyrus.emf.facet.util.emf.ui.IEPackageBrowserOpener"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="eObjectViewer">
+ <annotation>
+ <documentation>
+ Registers a model browser that is capable of opening itself on an EObject.
+ </documentation>
+ </annotation>
+ <complexType>
+ <attribute name="class" type="string" use="required">
+ <annotation>
+ <documentation>
+ A class that implements IEObjectBrowserOpener.
+ </documentation>
+ <appinfo>
+ <meta.attribute kind="java" basedOn=":org.eclipse.papyrus.emf.facet.util.emf.ui.IEObjectBrowserOpener"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="resourceViewer">
+ <annotation>
+ <documentation>
+ Registers a model browser that is capable of opening itself on a Resource.
+ </documentation>
+ </annotation>
+ <complexType>
+ <attribute name="class" type="string" use="required">
+ <annotation>
+ <documentation>
+ A class that implements IResourceBrowserOpener.
+ </documentation>
+ <appinfo>
+ <meta.attribute kind="java" basedOn=":org.eclipse.papyrus.emf.facet.util.emf.ui.IResourceBrowserOpener"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="since"/>
+ </appinfo>
+ <documentation>
+ 0.1.0
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="examples"/>
+ </appinfo>
+ <documentation>
+ For example, the MoDisco model browser is registered like this in &lt;strong&gt;org.eclipse.gmt.modisco.infra.browser&lt;/strong&gt;:
+&lt;pre&gt;
+ &lt;extension
+ point=&quot;org.eclipse.papyrus.emf.facet.util.emf.core.modelViewer&quot;&gt;
+ &lt;resourceViewer
+ class=&quot;org.eclipse.gmt.modisco.infra.browser.opener.BrowserOpener&quot;&gt;
+ &lt;/resourceViewer&gt;
+ &lt;eObjectViewer
+ class=&quot;org.eclipse.gmt.modisco.infra.browser.opener.BrowserOpener&quot;&gt;
+ &lt;/eObjectViewer&gt;
+ &lt;ePackageViewer
+ class=&quot;org.eclipse.gmt.modisco.infra.browser.opener.BrowserOpener&quot;&gt;
+ &lt;/ePackageViewer&gt;
+ &lt;/extension&gt;
+&lt;/pre&gt;
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="apiinfo"/>
+ </appinfo>
+ <documentation>
+ You must implement a subset or all of these interfaces:&lt;ul&gt;
+&lt;li&gt;IEObjectBrowserOpener to open an EObject
+&lt;li&gt;IEPackageBrowserOpener to open an EPackage
+&lt;li&gt;IResourceBrowserOpener to open a Resource
+&lt;/ul&gt;
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="implementation"/>
+ </appinfo>
+ <documentation>
+ &lt;strong&gt;org.eclipse.gmt.modisco.infra.browser&lt;/strong&gt; implements this extension.
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="copyright"/>
+ </appinfo>
+ <documentation>
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Nicolas Guyomar (Mia-Software) - initial API and implementation
+ Fabien Giquel (Mia-Software)
+ Nicolas Bros (Mia-Software)
+ </documentation>
+ </annotation>
+
+</schema>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/schema/modeldeclaration.exsd b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/schema/modeldeclaration.exsd
new file mode 100644
index 00000000000..74b74ace336
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/schema/modeldeclaration.exsd
@@ -0,0 +1,95 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.papyrus.emf.facet.util.emf.core" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appinfo>
+ <meta.schema plugin="org.eclipse.papyrus.emf.facet.util.emf.core" id="org.eclipse.papyrus.emf.facet.util.emf.core.modeldeclaration" name="modeldeclaration"/>
+ </appinfo>
+ <documentation>
+ Allows the registration of an EMF model.
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appinfo>
+ <meta.element />
+ </appinfo>
+ </annotation>
+ <complexType>
+ <sequence>
+ <element ref="modeldeclaration" minOccurs="1" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute translatable="true"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="modeldeclaration">
+ <complexType>
+ <attribute name="file" type="string">
+ <annotation>
+ <documentation>
+ an emf model file
+ </documentation>
+ <appinfo>
+ <meta.attribute kind="resource"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="since"/>
+ </appinfo>
+ <documentation>
+ 0.1.0
+ </documentation>
+ </annotation>
+
+
+
+
+ <annotation>
+ <appinfo>
+ <meta.section type="copyright"/>
+ </appinfo>
+ <documentation>
+ Copyright (c) 2011 Mia-Software.
+
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Gregoire Dupe (Mia-Software) - Bug 334000 Simple catalog manager
+ Nicolas Guyomar (Mia-Software) - Bug 334000 Simple catalog manager
+ </documentation>
+ </annotation>
+
+</schema>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/schema/serialization.exsd b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/schema/serialization.exsd
new file mode 100644
index 00000000000..b8be6fdd99a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/schema/serialization.exsd
@@ -0,0 +1,136 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.papyrus.emf.facet.widgets.celleditors" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appInfo>
+ <meta.schema plugin="org.eclipse.papyrus.emf.facet.widgets.celleditors" id="serialization" name="Serialization"/>
+ </appInfo>
+ <documentation>
+ This extension point is used to specify an implementation for serializing specific types.
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appInfo>
+ <meta.element />
+ </appInfo>
+ </annotation>
+ <complexType>
+ <sequence>
+ <element ref="serializer" minOccurs="1" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appInfo>
+ <meta.attribute translatable="true"/>
+ </appInfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="serializer">
+ <annotation>
+ <documentation>
+ Defines a serializer.
+ </documentation>
+ </annotation>
+ <complexType>
+ <attribute name="class" type="string" use="required">
+ <annotation>
+ <documentation>
+ A class that implements the interface ISerializer to provide an implementation for the serialization of a type.
+ </documentation>
+ <appInfo>
+ <meta.attribute kind="java" basedOn=":org.eclipse.papyrus.emf.facet.util.emf.core.ISerializer"/>
+ </appInfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="since"/>
+ </appInfo>
+ <documentation>
+ 0.1.0
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="examples"/>
+ </appInfo>
+ <documentation>
+ &lt;p&gt;
+A serializer can be registered like this:
+&lt;pre&gt;
+ &lt;extension point=&quot;org.eclipse.papyrus.emf.facet.util.emf.core.serialization&quot;&gt;
+ &lt;serializer class=&quot;com.example.MyTypeSerializer&quot;/&gt;
+ &lt;/extension&gt;
+&lt;/pre&gt;
+&lt;/p&gt;
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="apiinfo"/>
+ </appInfo>
+ <documentation>
+ &lt;p&gt;
+A serializer must implement the interface ISerializer&lt;T&gt; :
+&lt;ul&gt;
+&lt;li&gt;getType : return the type that can be serialized by this serializer (this is required for loading the class from the correct bundle).
+&lt;li&gt;serialize : takes a value and serializes it to a String
+&lt;li&gt;deserialize : takes a String and deserializes it back to a value
+&lt;/ul&gt;
+&lt;/p&gt;
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="implementation"/>
+ </appInfo>
+ <documentation>
+ &lt;p&gt;See default serializers registered in plug-in &quot;org.eclipse.papyrus.emf.facet.util.emf.core&quot;, defined in package &quot;org.eclipse.papyrus.emf.facet.util.emf.core.serialization&quot;.&lt;/p&gt;
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="copyright"/>
+ </appInfo>
+ <documentation>
+ Copyright (c) 2011 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Bros (Mia-Software) - initial API and implementation
+ </documentation>
+ </annotation>
+
+</schema>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/CommandFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/CommandFactory.java
new file mode 100644
index 00000000000..4f070c9c941
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/CommandFactory.java
@@ -0,0 +1,53 @@
+/**
+ * Copyright (c) 2011 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 345730 - Deleting an element in the model breaks the table
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.command.SetResourceContentCommand;
+
+public final class CommandFactory {
+
+ private CommandFactory() {
+ //Must not be called
+ }
+
+ /**
+ * This method creates a command to set a collection of element to a resource
+ * @param resource the resource to set
+ * @param content a collection of EObject to set as the content of the resource.
+ * @return an EMF Command
+ */
+ public static Command createSetResourceContentsCommand(final Resource resource,
+ final Collection<EObject> content) {
+ Command result = new SetResourceContentCommand(resource, content);
+ return result;
+ }
+
+ /**
+ * This method creates a command to set an EObject to a resource
+ * @param resource the resource to set
+ * @param eObject an EObject to set as the content of the resource.
+ * @return an EMF Command
+ */
+ public static Command createSetResourceContentsCommand(final Resource resource,
+ final EObject eObject) {
+ List<EObject> content = new ArrayList<EObject>();
+ content.add(eObject);
+ Command result = createSetResourceContentsCommand(resource, content);
+ return result;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/EmfDebugUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/EmfDebugUtils.java
new file mode 100644
index 00000000000..933ad5b589d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/EmfDebugUtils.java
@@ -0,0 +1,90 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 366804 - [Restructuring] Table widget upgrade
+ * Grégoire Dupé (Mia-Software) - Bug 365843 - [Unit Test Failure][0.2/3.8][0.2/4.2] org.eclipse.papyrus.emf.facet.widgets.nattable.tests.swtbot.Bug344925Test.testBug344925
+ * Grégoire Dupé (Mia-Software) - Bug 367700 - [Unit Test Failure][0.2/3.8] org.eclipse.papyrus.emf.facet.widgets.table.tests.internal.v0_2.swtbot.NatTableUITests.testOpenLoadCustomizationDialog
+ * Grégoire Dupé (Mia-Software) - Bug 373078 - API Cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.core;
+import java.io.File;
+import java.io.IOException;
+import java.util.Collections;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.common.command.CompoundCommand;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.papyrus.emf.facet.util.core.DebugUtils;
+import org.eclipse.papyrus.emf.facet.util.emf.core.exception.DebugRuntimeException;
+
+/**
+ * @since 0.2
+ */
+public final class EmfDebugUtils {
+
+ private EmfDebugUtils() {
+ // Must not be used
+ }
+
+ public static String debugCommand(final Command command) {
+ return debugCommand(command, 1);
+ }
+
+ private static String debugCommand(final Command command, final int indent) {
+ StringBuffer result = new StringBuffer();
+ result.append('\n');
+ for (int i = 0; i < indent; i++) {
+ result.append("--"); //$NON-NLS-1$
+ }
+ result.append(command.getClass().getSimpleName());
+ result.append(" \""); //$NON-NLS-1$
+ result.append(command.getLabel());
+ result.append("\" "); //$NON-NLS-1$
+ result.append(" canExecute="); //$NON-NLS-1$
+ result.append(command.canExecute());
+ result.append(" ("); //$NON-NLS-1$
+ result.append(command.getClass().getName());
+ result.append(')');
+ if (command instanceof CompoundCommand) {
+ CompoundCommand compoundCommand = (CompoundCommand) command;
+ for (Command subCommand : compoundCommand.getCommandList()) {
+ result.append(debugCommand(subCommand, indent + 1));
+ }
+ }
+ return result.toString();
+ }
+
+ /**
+ * This method can be used to easily dump a model into a file. This method has been written to be
+ * used by unit tests.
+ *
+ * @param eObject
+ * @param fileExtension
+ * @return a string explaining where the file has been saved.
+ */
+ public static String getStateDumpMessage(final EObject eObject, final String fileExtension) {
+ final File file = new File(DebugUtils.getCallerLocation(1) + '.' + fileExtension);
+ URI uri = URI.createFileURI(file.getAbsolutePath());
+ ResourceSet resourceSet = new ResourceSetImpl();
+ Resource resource = resourceSet.createResource(uri);
+ resource.getContents().add(EcoreUtil.copy(eObject));
+ try {
+ resource.save(Collections.EMPTY_MAP);
+ } catch (IOException e) {
+ throw new DebugRuntimeException(e);
+ }
+ return "A model containing the dumped EObject has been saved in " + file.getAbsolutePath(); //$NON-NLS-1$
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/IBrowserRegistry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/IBrowserRegistry.java
new file mode 100644
index 00000000000..a8bfdf738ce
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/IBrowserRegistry.java
@@ -0,0 +1,86 @@
+/**********************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ * Fabien Giquel (Mia-Software) -Bug 335218 - Extension point for registering EObject, EPackage, model editor
+ * Nicolas Bros (Mia-Software) - Bug 335218 - Extension point for registering EObject, EPackage, model editor
+ ***********************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.core;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.registry.BrowserRegistry;
+
+/**
+ * A registry for the {@link EObject}, {@link EPackage}, and {@link Resource} browser opener
+ * extension point. It can be used to open a default model browser (chosen by the user) or get a
+ * list of model browsers that can be opened on a model element, {@link EPackage} or
+ * {@link Resource}.
+ */
+public interface IBrowserRegistry {
+
+ public static IBrowserRegistry INSTANCE = new BrowserRegistry();
+
+ /**
+ * Browse the given package using the default EPackage browser opener
+ *
+ * @param ePackage
+ * the element to browse
+ */
+ public void browseEPackage(EPackage ePackage);
+
+ /**
+ * Browse the given resource using the default Resource browser opener
+ *
+ * @param resource
+ * the element to browse
+ */
+ public void browseResource(Resource resource);
+
+ /**
+ * Browse the given eObject using the default EObject browser opener
+ *
+ * @param eObject
+ * the element to browse
+ */
+ public void browseEObject(EObject eObject);
+
+ /**
+ * @return the registered EPackage browser openers
+ */
+ public List<IEPackageBrowserOpener> getAllRegisteredEPackageBrowsers();
+
+ /**
+ * @return the registered EObject browser openers
+ */
+ public List<IEObjectBrowserOpener> getAllRegisteredEObjectBrowsers();
+
+ /**
+ * @return the registered Resource browser openers
+ */
+ public List<IResourceBrowserOpener> getAllRegisteredResourceBrowsers();
+
+ /**
+ * @return the default EPackage browser opener, can be <code>null</code>
+ */
+ public IEPackageBrowserOpener getDefaultEPackageBrowserOpener();
+
+ /**
+ * @return the default EObject browser opener, can be <code>null</code>
+ */
+ public IEObjectBrowserOpener getDefaultEObjectBrowserOpener();
+
+ /**
+ * @return the default Resource browser opener, can be <code>null</code>
+ */
+ public IResourceBrowserOpener getDefaultResourceBrowserOpener();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ICatalogManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ICatalogManager.java
new file mode 100644
index 00000000000..b8a0eab015e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ICatalogManager.java
@@ -0,0 +1,57 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 334000 Simple catalog manager
+ * Nicolas Guyomar (Mia-Software) - Bug 334000 Simple catalog manager
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.catalog.CatalogSetManager;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogSet;
+
+/**
+ * Manager for catalogs containing registered elements defined in models.
+ *
+ * @since 0.2
+ * @noextend This interface is not intended to be extended by clients.
+ */
+public interface ICatalogManager {
+
+ /**
+ * Return <code>true</code> if the eObject can be managed as a catalog entry.
+ *
+ * @param root
+ * the root element of a catalog
+ * @return whether the given element is of the right type to be a catalog root
+ */
+ public boolean canBeManaged(EObject root);
+
+ /**
+ * This method is called by {@link CatalogSetManager} when a model registration that can be
+ * managed (according to {@link ICatalogManager#canBeManaged(EObject) canBeManaged}) is detected
+ * while loading. This method adds the given root model element to the catalog.
+ *
+ * @param root
+ * a root element of a model that should be added to the catalog
+ */
+ public void manage(EObject root);
+
+ /**
+ * This method is called by the {@link CatalogSetManager} after the instantiation of this
+ * {@link ICatalogManager}. This method must attach the catalog(s) managed by this
+ * {@link ICatalogManager} to the given <code>catalogSet</code>.
+ *
+ * @param catalogSet
+ * the {@link CatalogSet} to which the catalog managed by this
+ * {@link ICatalogManager} should be attached
+ */
+ public void setCatalogSet(CatalogSet catalogSet);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ICatalogSetManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ICatalogSetManager.java
new file mode 100644
index 00000000000..398cb05315d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ICatalogSetManager.java
@@ -0,0 +1,64 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 334000 Simple catalog manager
+ * Nicolas Guyomar (Mia-Software) - Bug 334000 Simple catalog manager
+ * Nicolas Guyomar (Mia-Software) - Bug 334529 ICatalogManager should be exposed in org.eclipse.papyrus.emf.facet.common.core
+ * Nicolas Guyomar (Mia-Software) - Bug 338811 - A model registration method in the interface ICatalogSetManager
+ * Gregoire Dupe (Mia-Software) - Bug 362084 - Get the instance of a catalog manager
+ * Gregoire Dupe (Mia-Software) - Bug 362087 - [Deprecated] org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManager
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.util.emf.core.exception.InvalidFacetSetException;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.catalog.CatalogSetManager;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogSet;
+import org.osgi.framework.Bundle;
+
+/**
+ * @deprecated This interface has been replaced by {@link ICatalogSetManager2}
+ */
+@Deprecated
+public interface ICatalogSetManager {
+
+ /**
+ * This method returns the {@link CatalogSet} object which contains all the registered catalogs.
+ *
+ * @return the set of registered {@link Catalog}s
+ */
+ public CatalogSet getCatalogSet();
+
+ /**
+ * The singleton instance of this {@link ICatalogSetManager}.
+ */
+ public static ICatalogSetManager INSTANCE = CatalogSetManager.INSTANCE;
+
+ /**
+ * Return the bundle containing the file from which we have created the given resource.
+ *
+ * @param eResource
+ * @return the Bundle matching the given resource.
+ * @author Nicolas Guyomar
+ */
+ public Bundle getBundleByResource(Resource eResource);
+
+ /**
+ * This method takes a file to register it as a "modelDeclaration" extension in its containing
+ * plug-in.
+ *
+ * @param file
+ * the file to be registered as a "modelDeclaration"
+ * @throws InvalidFacetSetException
+ */
+ public void registerModelDeclaration(IFile file) throws InvalidFacetSetException;
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ICatalogSetManager2.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ICatalogSetManager2.java
new file mode 100644
index 00000000000..1c5833bee15
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ICatalogSetManager2.java
@@ -0,0 +1,83 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 334000 Simple catalog manager
+ * Nicolas Guyomar (Mia-Software) - Bug 334000 Simple catalog manager
+ * Nicolas Guyomar (Mia-Software) - Bug 334529 ICatalogManager should be exposed in org.eclipse.papyrus.emf.facet.common.core
+ * Nicolas Guyomar (Mia-Software) - Bug 338811 - A model registration method in the interface ICatalogSetManager
+ * Gregoire Dupe (Mia-Software) - Bug 362084 - Get the instance of a catalog manager
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core;
+
+import java.util.List;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.util.emf.core.exception.InvalidFacetSetException;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.catalog.CatalogSetManager;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.Catalog;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogSet;
+import org.osgi.framework.Bundle;
+
+/**
+ * @since 0.2
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICatalogSetManager2 {
+
+ /**
+ * This method returns the {@link CatalogSet} object which contains all the registered catalogs.
+ *
+ * @return the set of registered {@link Catalog}s
+ */
+ public CatalogSet getCatalogSet();
+
+ /**
+ * The singleton instance of this {@link ICatalogSetManager2}.
+ *
+ * @deprecated has been replaced by
+ * org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManagerFactory
+ * .createICatalogSetManager(ResourceSet)
+ */
+ @Deprecated
+ public static ICatalogSetManager2 INSTANCE = CatalogSetManager.INSTANCE;
+
+ /**
+ * Return the bundle containing the file from which we have created the given resource.
+ *
+ * @param eResource
+ * the EMF Resource
+ * @return the {@link Bundle} matching the given resource, or <code>null</code> if the resource
+ * is not defined in a Bundle.
+ * @throws IllegalArgumentException
+ * if the resource is <code>null</code>
+ *
+ * @author Nicolas Guyomar
+ */
+ public Bundle getBundleByResource(Resource eResource);
+
+ /**
+ * This method takes a file to register it as a "modelDeclaration" extension in its containing
+ * plug-in.
+ *
+ * @param file
+ * the file to be registered as a "modelDeclaration"
+ * @throws InvalidFacetSetException
+ */
+ public void registerModelDeclaration(IFile file) throws InvalidFacetSetException;
+
+ /**
+ * Return the registered catalogs conforming to the parameter class.
+ *
+ * @return a list of {@link ICatalogManager}
+ */
+ public <T> List<T> getCatalogManagerByType(Class<? extends T> catalogManagerClass);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ICatalogSetManagerFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ICatalogSetManagerFactory.java
new file mode 100644
index 00000000000..cf4e54d9c64
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ICatalogSetManagerFactory.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core;
+
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.catalog.CatalogSetManagerFactory;
+
+/**
+ * @since 0.2
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ICatalogSetManagerFactory {
+ ICatalogSetManagerFactory DEFAULT = new CatalogSetManagerFactory();
+
+ ICatalogSetManager2 createICatalogSetManager(ResourceSet resourceSet);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/IEObjectBrowserOpener.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/IEObjectBrowserOpener.java
new file mode 100644
index 00000000000..bbe74c860e8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/IEObjectBrowserOpener.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Giquel (Mia-Software)
+ * Nicolas Bros (Mia-Software) - Bug 335218 - Extension point for registering EObject, EPackage, model editor
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * This class is used to register a Browser (typically an Eclipse editor or view), that can be
+ * opened from a given EObject. The registration is done through the
+ * "org.eclipse.papyrus.emf.facet.util.emf.core.modelViewer" extension point.
+ */
+public interface IEObjectBrowserOpener {
+
+ /**
+ * This method opens the given {@link EObject} with the browser corresponding to this
+ * {@link IEObjectBrowserOpener}.
+ *
+ * @param eObject
+ * the {@link EObject} to be opened
+ */
+ public void openEObject(final EObject eObject);
+
+ /**
+ * Return a human readable name for the {@link EObject} browser.
+ *
+ * @return a human readable name for the {@link EObject} browser
+ */
+ public String getBrowserName();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/IEPackageBrowserOpener.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/IEPackageBrowserOpener.java
new file mode 100644
index 00000000000..f1131c71dee
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/IEPackageBrowserOpener.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ * Nicolas Bros (Mia-Software) - Bug 335218 - Extension point for registering EObject, EPackage, model editor
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core;
+
+import org.eclipse.emf.ecore.EPackage;
+
+/**
+ * This class is used to register a Browser (typically an Eclipse editor or view), that can be
+ * opened from a given EPackage. The registration is done through the
+ * "org.eclipse.papyrus.emf.facet.util.emf.core.modelViewer" extension point.
+ */
+public interface IEPackageBrowserOpener {
+
+ /**
+ * This method opens the given {@link EPackage} with the browser corresponding to this
+ * {@link IEPackageBrowserOpener}.
+ *
+ * @param ePackage
+ * the {@link EPackage} to be opened
+ */
+ public void openEPackage(final EPackage ePackage);
+
+ /**
+ * Return a human readable name for the {@link EPackage} browser.
+ *
+ * @return a human readable name for the {@link EPackage} browser
+ */
+ public String getBrowserName();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/IResourceBrowserOpener.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/IResourceBrowserOpener.java
new file mode 100644
index 00000000000..54f31b7c082
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/IResourceBrowserOpener.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Giquel (Mia-Software)
+ * Nicolas Bros (Mia-Software) - Bug 335218 - Extension point for registering EObject, EPackage, model editor
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core;
+
+import org.eclipse.emf.ecore.resource.Resource;
+
+/**
+ * This class is used to register a Browser (typically an Eclipse editor or view), that can be
+ * opened from a given EMF Resource. The registration is done through the
+ * "org.eclipse.papyrus.emf.facet.util.emf.core.modelViewer" extension point.
+ */
+public interface IResourceBrowserOpener {
+
+ /**
+ * This method opens the given {@link Resource} with the browser corresponding to this
+ * {@link IResourceBrowserOpener}.
+ *
+ * @param resource
+ * the {@link Resource} to be opened
+ */
+ public void openResource(final Resource resource);
+
+ /**
+ * Return a human readable name for the {@link Resource} browser.
+ *
+ * @return a human readable name for the {@link Resource} browser
+ */
+ public String getBrowserName();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ModelUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ModelUtils.java
new file mode 100644
index 00000000000..51087d4e391
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/ModelUtils.java
@@ -0,0 +1,253 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2010, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 366367 - To be able to change the "CanBePresentedInTheTable" query
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Laurent Pichierri (Soft-Maint) - Bug 371204 - Compatibility with Helios
+ * Gregoire Dupe (Mia-Software) - Bug 371367 - Hierarchical FacetSets
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.core;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IWorkspace;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.ENamedElement;
+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;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.emf.ecore.util.FeatureMap;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.core.internal.exported.StringUtils;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.Activator;
+
+/**
+ * Utility class for models.
+ * @since 0.2
+ */
+public final class ModelUtils {
+
+ /**
+ * Meta-model qualified name separator
+ */
+ private static final String MM_QNAME_SEPARATOR = "::"; //$NON-NLS-1$
+
+ /**
+ * Utility classes don't need to (and shouldn't) be instantiated.
+ */
+ private ModelUtils() {
+ // prevents instantiation
+ }
+
+ /**
+ * Computes a list of {@link EObject}s from the same {@link ResourceSet} as
+ * <code>source</code> that can be assigned to the given feature.
+ */
+ //Copied from org.eclipse.papyrus.emf.facet.infra.common.core.internal.utils.ModelUtils.computeAssignableElements(EStructuralFeature, EObject)
+ public static List<EObject> computeAssignableElements(final EStructuralFeature feature,
+ final EObject source) {
+ EClassifier eType = feature.getEType();
+
+ // build a list of EObjects assignable to the EReference
+ List<EObject> list = new ArrayList<EObject>();
+ Resource eResource = source.eResource();
+ ResourceSet resourceSet = eResource.getResourceSet();
+ TreeIterator<Notifier> allContents = resourceSet.getAllContents();
+ while (allContents.hasNext()) {
+ Notifier notifier = allContents.next();
+ if (notifier instanceof EObject) {
+ EObject eObject = (EObject) notifier;
+ if (eType.isInstance(eObject)) {
+ list.add(eObject);
+ }
+ }
+ }
+ return list;
+ }
+
+ public static boolean isBooleanDataType(final EClassifier classifier) {
+ if (classifier instanceof EDataType) {
+ EDataType dataType = (EDataType) classifier;
+ Class<?> instanceClass = dataType.getInstanceClass();
+ return instanceClass == Boolean.class || instanceClass == boolean.class;
+ }
+ return false;
+ }
+
+ /**
+ * Find all subclasses of the given metaclass in the package registry
+ *
+ * @param context
+ * the metaclass whose subclasses must be found
+ * @return all the subclasses
+ */
+ //Copied from org.eclipse.papyrus.emf.facet.infra.common.core.internal.utils.ModelUtils.allSubClasses(final EClass context)
+ public static List<EClass> allSubClasses(final EClass context) {
+ List<EClass> result = new ArrayList<EClass>();
+ // Set<Resource> resources = new HashSet<Resource>();
+ Collection<String> uris = new ArrayList<String>(EPackage.Registry.INSTANCE.keySet());
+ for (String ePackageURI : uris) {
+ try {
+ EPackage ePackage = EPackage.Registry.INSTANCE.getEPackage(ePackageURI);
+ EList<EClassifier> eClassifiers = ePackage.getEClassifiers();
+ for (EClassifier eClassifier : eClassifiers) {
+ if (eClassifier instanceof EClass) {
+ EClass eClass = (EClass) eClassifier;
+ if (isSuperTypeOf(context, eClass)) {
+ result.add(eClass);
+ }
+ }
+ }
+ } catch (Exception e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+ return result;
+ }
+
+ //Copied from org.eclipse.papyrus.emf.facet.infra.common.core.internal.utils.ModelUtils.isSuperTypeOf(final EClass self, final EClass typeDeclaration)
+ public static boolean isSuperTypeOf(final EClass self, final EClass typeDeclaration) {
+ return typeDeclaration.getEAllSuperTypes().contains(self);
+ }
+
+ /** @return the qualified name of the given metaclass */
+ //Copied from org.eclipse.papyrus.emf.facet.infra.common.core.internal.utils.ModelUtils.getMetaclassQualifiedName(final EClassifier eClass)
+ public static String getMetaclassQualifiedName(final EClassifier eClass) {
+ final ArrayList<String> qualifiedNameParts = new ArrayList<String>();
+ final StringBuilder builder = new StringBuilder();
+
+ EPackage ePackage = eClass.getEPackage();
+ while (ePackage != null) {
+ qualifiedNameParts.add(ePackage.getName());
+ ePackage = ePackage.getESuperPackage();
+ }
+
+ for (int i = qualifiedNameParts.size() - 1; i >= 0; i--) {
+ builder.append(qualifiedNameParts.get(i) + "."); //$NON-NLS-1$
+ }
+
+ builder.append(eClass.getName());
+
+ return builder.toString();
+ }
+
+ /**
+ * Returns a name for the given model element from the EMF global registry,
+ * or use a default name taken from a String attribute.
+ *
+ * @return a name for the given element
+ */
+ //Copied from org.eclipse.papyrus.emf.facet.infra.common.core.internal.utils.ModelUtils.getName(EObject)
+ public static String getName(final EObject eObject) {
+ IItemLabelProvider itemLabelProvider = (IItemLabelProvider) new ComposedAdapterFactory(
+ ComposedAdapterFactory.Descriptor.Registry.INSTANCE).adapt(eObject, IItemLabelProvider.class);
+ if (itemLabelProvider != null) {
+ return itemLabelProvider.getText(eObject);
+ }
+ return ModelUtils.getDefaultName(eObject);
+ }
+
+ /**
+ * @return a default name based on a string feature of the given
+ * {@link EObject}
+ */
+ //Copied from org.eclipse.papyrus.emf.facet.infra.common.core.internal.utils.ModelUtils.getDefaultName(EObject)
+ public static String getDefaultName(final EObject eObject) {
+ // find a feature that can be used as a name
+ final EStructuralFeature feature = ModelUtils.getLabelFeature(eObject.eClass());
+ if (feature != null) {
+ final Object value = eObject.eGet(feature);
+ if (value != null) {
+ return StringUtils.truncateBeforeNewline(value.toString());
+ }
+ }
+ return ""; //$NON-NLS-1$
+ }
+
+ //Copied from ReflectiveItemProvider class
+ //Copied from org.eclipse.papyrus.emf.facet.infra.common.core.internal.utils.ModelUtils.getLabelFeature(EClass)
+ private static EStructuralFeature getLabelFeature(final EClass eClass) {
+ EAttribute result = null;
+ for (final EAttribute eAttribute : eClass.getEAllAttributes()) {
+ if (!eAttribute.isMany()
+ && eAttribute.getEType().getInstanceClass() != FeatureMap.Entry.class) {
+ if ("name".equalsIgnoreCase(eAttribute.getName())) { //$NON-NLS-1$
+ result = eAttribute;
+ break;
+ } else if (result == null) {
+ result = eAttribute;
+ } else if (eAttribute.getEAttributeType().getInstanceClass() == String.class
+ && result.getEAttributeType().getInstanceClass() != String.class) {
+ result = eAttribute;
+ }
+ }
+ }
+ return result;
+ }
+
+ /**
+ * @author Gregoire Dupe (Mia-Software)
+ * @param namedElement
+ * @return
+ */
+ public static String getQualifiedName(final ENamedElement namedElement) {
+ String parentQName = ""; //$NON-NLS-1$
+ if (namedElement.eContainer() instanceof ENamedElement) {
+ ENamedElement parent = (ENamedElement) namedElement.eContainer();
+ parentQName = getQualifiedName(parent) + ModelUtils.MM_QNAME_SEPARATOR;
+ }
+ return parentQName + namedElement.getName();
+ }
+
+ /**
+ * @since 0.3
+ */
+ public static ResourceSet getOrCreateResourceSet(final EObject eObject) {
+ ResourceSet resourceSet = null;
+ if (eObject.eResource() == null) {
+ resourceSet = new ResourceSetImpl();
+ } else {
+ resourceSet = eObject.eResource().getResourceSet();
+ }
+ return resourceSet;
+ }
+
+ /**
+ * @since 0.3
+ */
+ public static IProject getProject(final EObject eObject) {
+ IProject result = null;
+ final Resource resource = eObject.eResource();
+ final URI uri = resource.getURI();
+ if (uri.isPlatformResource()) {
+ final String projectName = uri.segment(1);
+ final IWorkspace workspace = ResourcesPlugin.getWorkspace();
+ result = workspace.getRoot()
+ .getProject(projectName);
+ }
+ return result;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/command/EmfCommandUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/command/EmfCommandUtils.java
new file mode 100644
index 00000000000..ed4b24fcf57
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/command/EmfCommandUtils.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core.command;
+
+import java.util.List;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.common.command.CompoundCommand;
+
+/**
+ * @since 0.3
+ */
+public final class EmfCommandUtils {
+
+ private EmfCommandUtils() {
+ // Must not be used
+ }
+
+ public static final Command createResult(final List<Command> commandList,
+ final String label) {
+ Command result = null;
+ while (commandList.contains(null)) {
+ commandList.remove(null);
+ }
+ if (!commandList.isEmpty()) {
+ result = new CompoundCommand(label, commandList);
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/command/ICommandFactoryResult.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/command/ICommandFactoryResult.java
new file mode 100644
index 00000000000..f3ef4b4daf4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/command/ICommandFactoryResult.java
@@ -0,0 +1,24 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core.command;
+
+import org.eclipse.emf.common.command.Command;
+
+/**
+ * @since 0.2
+ */
+public interface ICommandFactoryResult<T> {
+ Command getCommand();
+ T getResult();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/command/ICommandFactoryResultFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/command/ICommandFactoryResultFactory.java
new file mode 100644
index 00000000000..848d3e0cba1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/command/ICommandFactoryResultFactory.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core.command;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.command.CommandFactoryResultFactory;
+
+/**
+ * @since 0.2
+ */
+public interface ICommandFactoryResultFactory {
+
+ ICommandFactoryResultFactory DEFAULT = new CommandFactoryResultFactory();
+
+ <T> ICommandFactoryResult<T> createCommandFactoryResult(Command command, T result);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/command/ILockableUndoCommand.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/command/ILockableUndoCommand.java
new file mode 100644
index 00000000000..2a4b8f94e3e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/command/ILockableUndoCommand.java
@@ -0,0 +1,23 @@
+/**
+ * Copyright (c) 2011 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 345730 - Deleting an element in the model breaks the table
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core.command;
+
+/**
+ * This interface is used to force an EMF command to not be "undo-able"
+ * @since 0.1.1
+ */
+public interface ILockableUndoCommand {
+
+ /**
+ * @param enableUndo false to lock the command in an not "undo-able" mode
+ */
+ public void enableCanUndo(boolean enableUndo);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/exception/DebugRuntimeException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/exception/DebugRuntimeException.java
new file mode 100644
index 00000000000..3419d198d1f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/exception/DebugRuntimeException.java
@@ -0,0 +1,25 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé - Bug 365843 - [Unit Test Failure][0.2/3.8][0.2/4.2]org.eclipse.papyrus.emf.facet.widgets.nattable.tests.swtbot.Bug344925Test.testBug344925
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.core.exception;
+
+/**
+ * @since 0.2
+ */
+public final class DebugRuntimeException extends RuntimeException {
+
+ private static final long serialVersionUID = -2130942266962627760L;
+
+ public DebugRuntimeException(final Throwable throwable) {
+ super(throwable);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/exception/InvalidFacetSetException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/exception/InvalidFacetSetException.java
new file mode 100644
index 00000000000..9dea3ea712c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/exception/InvalidFacetSetException.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 338811 - A model registration method in the interface ICatalogSetManager
+ * Gregoire Dupe (Mia-Software) - Bug 373078 - API Cleaning
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core.exception;
+
+/**
+ * This exception is raised when an invalid FacetSet is found
+ *
+ * @since 0.2
+ */
+public final class InvalidFacetSetException extends Exception {
+
+ private static final long serialVersionUID = -7684948344074635385L;
+
+ public InvalidFacetSetException(final String message) {
+ super(message);
+ }
+
+ public InvalidFacetSetException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+ public InvalidFacetSetException(final Throwable cause) {
+ super(cause);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/Activator.java
new file mode 100644
index 00000000000..8307e302782
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/Activator.java
@@ -0,0 +1,47 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 334000 - Simple catalog manager
+ * Nicolas Bros (Mia-Software) - Bug 335218 - Extension point for registering EObject, EPackage, model editor
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+public class Activator extends Plugin {
+
+ public static final String PLUGIN_ID = "org.eclipse.papyrus.emf.facet.util.emf.core"; //$NON-NLS-1$
+
+ private static BundleContext context;
+ private static Activator plugin;
+
+ public static Plugin getDefault() {
+ return Activator.plugin;
+ }
+
+ static BundleContext getContext() {
+ return Activator.context;
+ }
+
+ @Override
+ public void start(final BundleContext bundleContext) throws Exception {
+ super.start(bundleContext);
+ Activator.plugin = this;
+ Activator.context = bundleContext;
+ }
+
+ @Override
+ public void stop(final BundleContext bundleContext) throws Exception {
+ Activator.context = null;
+ Activator.plugin = null;
+ super.stop(bundleContext);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/EMFUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/EMFUtils.java
new file mode 100644
index 00000000000..bd738b210b1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/EMFUtils.java
@@ -0,0 +1,162 @@
+/*******************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 340588 - Least common supertype
+ * Vincent Lorenzo (CEA-LIST) - bug 341328 - We need to be able to specify which column have to be hidden/visible using the customization mechanism
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.ListIterator;
+import java.util.Set;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+
+public final class EMFUtils {
+
+ private EMFUtils() {
+ // prevent instantiation
+ }
+
+ /**
+ * Computes the least common supertype of all the given metaclasses. That is, the most derived
+ * type that is a supertype of all the given classes.
+ *
+ * @param classes
+ * the list of metaclasses
+ *
+ * @return the least common supertype of all the given metaclasses, or <code>null</code> if
+ * there is none, or several. In this case, the only common supertype can be considered
+ * as {@link EObject} .
+ */
+ public static EClass computeLeastCommonSupertype(final Collection<EClass> classes) {
+ return computeLeastCommonSupertype(classes, null);
+ }
+
+ /**
+ * Computes the least common supertype of all the given metaclasses. That is, the most derived
+ * type that is a supertype of all the given classes.
+ *
+ * @param classes
+ * the list of metaclasses
+ * @param feature
+ * if not <code>null</code>, then only metaclasses that contain this feature will be
+ * considered
+ *
+ * @return the least common supertype of all the given metaclasses, or the {@link EObject}
+ * {@link EClass} if there is none, or several.
+ */
+ public static EClass computeLeastCommonSupertype(final Collection<EClass> classes,
+ final EStructuralFeature feature) {
+ Set<EClass> commonClasses = new HashSet<EClass>();
+ Iterator<EClass> iterator = classes.iterator();
+ boolean first = true;
+ while (iterator.hasNext()) {
+ EClass eClass = iterator.next();
+ if (first) {
+ commonClasses.addAll(eClass.getEAllSuperTypes());
+ commonClasses.add(eClass);
+ first = false;
+ } else {
+ List<EClass> filter = new ArrayList<EClass>(eClass.getEAllSuperTypes());
+ filter.add(eClass);
+ commonClasses.retainAll(filter);
+ }
+ }
+
+ Collection<EClass> commonClassesFiltered;
+ // keep only metaclasses that contain the feature
+ if (feature != null) {
+ commonClassesFiltered = new ArrayList<EClass>();
+ for (EClass eClass : commonClasses) {
+ if (eClass.getEAllStructuralFeatures().contains(feature)) {
+ commonClassesFiltered.add(eClass);
+ }
+ }
+ } else {
+ commonClassesFiltered = commonClasses;
+ }
+
+ // handle the easy (and common) cases early
+ int size = commonClassesFiltered.size();
+ if (size == 0) {
+ return EcorePackage.eINSTANCE.getEObject();
+ }
+ if (size == 1) {
+ return commonClassesFiltered.iterator().next();
+ }
+
+ // now, remove EClasses that are not a direct or indirect sub- or super-type
+ // of all the other classes.
+ ArrayList<EClass> list = new ArrayList<EClass>(commonClassesFiltered);
+ ListIterator<EClass> listIterator = list.listIterator();
+ while (listIterator.hasNext()) {
+ EClass eClass = listIterator.next();
+ for (EClass eClass2 : commonClassesFiltered) {
+ if (eClass != eClass2 && !eClass.isSuperTypeOf(eClass2)
+ && !eClass2.isSuperTypeOf(eClass)) {
+ listIterator.remove();
+ break;
+ }
+ }
+ }
+
+ int size2 = list.size();
+ if (size2 == 0) {
+ return EcorePackage.eINSTANCE.getEObject();
+ }
+ if (size2 == 1) {
+ return list.iterator().next();
+ }
+
+ // now commonClasses only contains classes in the same hierarchy,
+ // so we can sort them using a "is subtype of" comparison operator
+
+ Collections.sort(list, new Comparator<EClass>() {
+ public int compare(final EClass e1, final EClass e2) {
+ if (e1 == e2) {
+ return 0;
+ } else if (e1.isSuperTypeOf(e2)) {
+ return 1;
+ } else if (e2.isSuperTypeOf(e1)) {
+ return -1;
+ } else {
+ throw new IllegalStateException("comparing classes not in the same hierarchy"); //$NON-NLS-1$
+ }
+ }
+ });
+
+ if (list.isEmpty()) {
+ return EcorePackage.eINSTANCE.getEObject();
+ }
+ return list.get(0);
+ }
+
+
+ public static Set<EClass> getAllFeatureOwner(final List<EObject> elements,
+ final EStructuralFeature feature) {
+ Set<EClass> owners = new HashSet<EClass>();
+ for (EObject el : elements) {
+ if (el.eClass().getEAllStructuralFeatures().contains(feature)) {
+ owners.add(el.eClass());
+ }
+ }
+ return owners;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/catalog/CatalogSetManager.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/catalog/CatalogSetManager.java
new file mode 100644
index 00000000000..e5ccc9a2976
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/catalog/CatalogSetManager.java
@@ -0,0 +1,187 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 334000 Simple catalog manager
+ * Nicolas Guyomar (Mia-Software) - Bug 334000 Simple catalog manager
+ * Nicolas Guyomar (Mia-Software) - Bug 334529 - ICatalogManager should be exposed in org.eclipse.papyrus.emf.facet.common.core
+ * Nicolas Guyomar (Mia-Software) - Bug 338811 - A model registration method in the interface ICatalogSetManager
+ * Gregoire Dupe (Mia-Software) - Bug 338811 - A model registration method in the interface ICatalogSetManager
+ * Emmanuelle Rouillé (Mia-Software) - Bug 352618 - To be able to use non derived facet structural features and save them values.
+ * Gregoire Dupe (Mia-Software) - Bug 362084 - Get the instance of a catalog manager
+ * Gregoire Dupe (Mia-Software) - Bug 362087 - [Deprecated] org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManager
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal.catalog;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.IExtension;
+import org.eclipse.core.runtime.IExtensionPoint;
+import org.eclipse.core.runtime.IExtensionRegistry;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogManager;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManager;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManager2;
+import org.eclipse.papyrus.emf.facet.util.emf.core.exception.InvalidFacetSetException;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.pde.core.internal.exported.PluginUtils;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogFactory;
+import org.eclipse.papyrus.emf.facet.util.emf.catalog.CatalogSet;
+import org.osgi.framework.Bundle;
+
+@SuppressWarnings("deprecation") //TODO Bug 362087 - [Deprecated] org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManager
+public class CatalogSetManager implements ICatalogSetManager, ICatalogSetManager2, Adapter {
+
+ private static final String CATALOG_MGR_EXTENSION_POINT_ID = "org.eclipse.papyrus.emf.facet.util.emf.core.catalogmanager"; //$NON-NLS-1$
+ private static final String MODEL_DECLARATION_EXTENSION_POINT_ID = "org.eclipse.papyrus.emf.facet.util.emf.core.modeldeclaration"; //$NON-NLS-1$
+ private static final String CLASS = "class"; //$NON-NLS-1$
+ private static final String FILE = "file"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of this {@link CatalogSetManager}.
+ */
+ public static final CatalogSetManager INSTANCE = new CatalogSetManager();
+
+ private final Map<Resource, Bundle> resourceToBundleMap = new HashMap<Resource, Bundle>();
+ private final ResourceSet resourceSet;
+
+ private final List<ICatalogManager> catalogManagers = new ArrayList<ICatalogManager>();
+ private final CatalogSet catalogSet;
+
+ public CatalogSetManager() {
+ this.resourceSet = new ResourceSetImpl();
+ this.catalogSet = CatalogFactory.eINSTANCE.createCatalogSet();
+ initRegisteredEntries();
+ }
+
+ public CatalogSetManager(final ResourceSet resourceSet) {
+ this.resourceSet = resourceSet;
+ this.catalogSet = CatalogFactory.eINSTANCE.createCatalogSet();
+ initRegisteredEntries();
+ }
+
+ private void initRegisteredEntries() {
+ IExtensionRegistry registry = Platform.getExtensionRegistry();
+ IExtensionPoint extPointCatalogMgr = registry
+ .getExtensionPoint(CatalogSetManager.CATALOG_MGR_EXTENSION_POINT_ID);
+ if (extPointCatalogMgr != null) {
+ for (IExtension ext : extPointCatalogMgr.getExtensions()) {
+ for (IConfigurationElement configElt : ext
+ .getConfigurationElements()) {
+ ICatalogManager catalogMgr;
+ try {
+ catalogMgr = (ICatalogManager) configElt
+ .createExecutableExtension(CatalogSetManager.CLASS);
+ this.catalogManagers.add(catalogMgr);
+ catalogMgr.setCatalogSet(this.catalogSet);
+ } catch (CoreException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+ }
+ }
+ IExtensionPoint modelDeclarationExtPoint = registry
+ .getExtensionPoint(CatalogSetManager.MODEL_DECLARATION_EXTENSION_POINT_ID);
+ if (modelDeclarationExtPoint != null) {
+ for (IExtension ext : modelDeclarationExtPoint.getExtensions()) {
+ for (IConfigurationElement configElt : ext
+ .getConfigurationElements()) {
+ String filePath = configElt
+ .getAttribute(CatalogSetManager.FILE);
+ if (filePath != null) {
+ String pluginName = ext.getNamespaceIdentifier();
+ Bundle bundle = Platform.getBundle(pluginName);
+ URI uri = URI.createPlatformPluginURI(pluginName + "/" //$NON-NLS-1$
+ + filePath, false);
+ try {
+ Resource resource = this.resourceSet.getResource(
+ uri, true);
+ this.resourceToBundleMap.put(resource, bundle);
+ for (EObject root : resource.getContents()) {
+ for (ICatalogManager catalogMgr : this.catalogManagers) {
+ if (catalogMgr.canBeManaged(root)) {
+ catalogMgr.manage(root);
+ }
+ }
+ }
+ } catch (Exception e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+ }
+ }
+ }
+ }
+
+ public CatalogSet getCatalogSet() {
+ return this.catalogSet;
+ }
+
+ /**
+ * @author Nicolas Guyomar
+ * Modified by Emmanuelle Rouillé
+ */
+ public Bundle getBundleByResource(final Resource eResource) {
+ if (eResource == null) {
+ throw new IllegalArgumentException("The resource cannot be null"); //$NON-NLS-1$
+ }
+ if (eResource.getURI().scheme().equals("platform") && eResource.getURI().segment(0).equals("plugin")) { //$NON-NLS-1$//$NON-NLS-2$
+ return Platform.getBundle(eResource.getURI().segment(1));
+ }
+ return this.resourceToBundleMap.get(eResource);
+ }
+
+ public void registerModelDeclaration(final IFile file) throws InvalidFacetSetException {
+ PluginUtils.register(file, CatalogSetManager.MODEL_DECLARATION_EXTENSION_POINT_ID,
+ "modeldeclaration"); //$NON-NLS-1$
+ }
+
+ public <T> List<T> getCatalogManagerByType(final Class<? extends T> catalogManagerClass) {
+ List<T> result = new ArrayList<T>();
+ for (ICatalogManager catalogManager : this.catalogManagers) {
+ if (catalogManagerClass.isInstance(catalogManager)) {
+ result.add((T) catalogManager);
+ }
+ }
+ return result;
+ }
+
+ public void notifyChanged(final Notification notification) {
+ // Nothing to do
+ }
+
+ public Notifier getTarget() {
+ return this.resourceSet;
+ }
+
+ public void setTarget(final Notifier newTarget) {
+ // Nothing to do
+ }
+
+ public boolean isAdapterForType(final Object type) {
+ return type == ICatalogSetManager2.class;
+ }
+
+
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/catalog/CatalogSetManagerFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/catalog/CatalogSetManagerFactory.java
new file mode 100644
index 00000000000..0ccbc435af1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/catalog/CatalogSetManagerFactory.java
@@ -0,0 +1,36 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal.catalog;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManager2;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ICatalogSetManagerFactory;
+
+public class CatalogSetManagerFactory implements ICatalogSetManagerFactory {
+
+ public ICatalogSetManager2 createICatalogSetManager(final ResourceSet resourceSet) {
+ CatalogSetManager result = null;
+ for (Adapter adapter : resourceSet.eAdapters()) {
+ if (adapter instanceof CatalogSetManager) {
+ result = (CatalogSetManager) adapter;
+
+ }
+ }
+ if (result == null) {
+ result = new CatalogSetManager(resourceSet);
+ resourceSet.eAdapters().add(result);
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/command/CommandFactoryResult.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/command/CommandFactoryResult.java
new file mode 100644
index 00000000000..7b9dfc0ff95
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/command/CommandFactoryResult.java
@@ -0,0 +1,35 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal.command;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.papyrus.emf.facet.util.emf.core.command.ICommandFactoryResult;
+
+public class CommandFactoryResult<T> implements ICommandFactoryResult<T> {
+
+ private final Command cmd;
+ private final T result;
+
+ public CommandFactoryResult(final Command cmd, final T result) {
+ this.cmd = cmd;
+ this.result = result;
+ }
+
+ public Command getCommand() {
+ return this.cmd;
+ }
+
+ public T getResult() {
+ return this.result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/command/CommandFactoryResultFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/command/CommandFactoryResultFactory.java
new file mode 100644
index 00000000000..6ae8e9663f5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/command/CommandFactoryResultFactory.java
@@ -0,0 +1,23 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal.command;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.papyrus.emf.facet.util.emf.core.command.ICommandFactoryResult;
+import org.eclipse.papyrus.emf.facet.util.emf.core.command.ICommandFactoryResultFactory;
+
+public class CommandFactoryResultFactory implements ICommandFactoryResultFactory {
+
+ public <T> ICommandFactoryResult<T> createCommandFactoryResult(final Command command, final T result) {
+ return new CommandFactoryResult<T>(command, result);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/command/SetResourceContentCommand.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/command/SetResourceContentCommand.java
new file mode 100644
index 00000000000..c3ed1dcc8f8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/command/SetResourceContentCommand.java
@@ -0,0 +1,105 @@
+/**
+ * Copyright (c) 2011 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 345730 - Deleting an element in the model breaks the table
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal.command;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.util.emf.core.command.ILockableUndoCommand;
+
+/**
+ * This command has to be used to set the content of a resource
+ */
+public class SetResourceContentCommand implements Command, ILockableUndoCommand {
+ private EList<EObject> oldContent = null;
+ private Collection<EObject> newContent = null;
+ private Resource resource;
+ private boolean enableUndo = true;
+
+ /**
+ * @param resource the resource of which we want to set the content.
+ * @param content a list of EObject to set as the content of the resource
+ */
+ public SetResourceContentCommand(final Resource resource, final Collection<EObject> content) {
+ this.resource = resource;
+ this.newContent = content;
+ }
+
+ public boolean canExecute() {
+ return true;
+ }
+
+ public void execute() {
+ this.oldContent = this.resource.getContents();
+ this.resource.getContents().clear();
+ this.resource.getContents().addAll(this.newContent);
+
+ }
+
+ public boolean canUndo() {
+ boolean canUndo = (this.enableUndo && (this.oldContent != null));
+ return canUndo;
+ }
+
+ public void undo() {
+ this.resource.getContents().clear();
+ this.resource.getContents().addAll(this.oldContent);
+
+ }
+
+ public void redo() {
+ this.resource.getContents().clear();
+ this.resource.getContents().addAll(this.newContent);
+ }
+
+ public Collection<?> getResult() {
+ Collection<Resource> result = new ArrayList<Resource>();
+ result.add(this.resource);
+ return result;
+ }
+
+ public Collection<?> getAffectedObjects() {
+ Collection<Object> affectedObjects = new ArrayList<Object>();
+ affectedObjects.add(this.resource);
+ affectedObjects.addAll(this.newContent);
+ affectedObjects.addAll(this.oldContent);
+ return affectedObjects;
+ }
+
+ public String getLabel() {
+ //TODO: Must be externalized
+ return "Set Resource Content"; //$NON-NLS-1$
+ }
+
+ public String getDescription() {
+ //TODO: Must be externalized
+ return "This command changes the content of an EMF resource"; //$NON-NLS-1$
+ }
+
+ public void dispose() {
+ this.oldContent = null;
+ this.newContent = null;
+ this.resource = null;
+ }
+
+ public Command chain(final Command command) {
+ return null;
+ }
+
+ public void enableCanUndo(final boolean enable) {
+ this.enableUndo = enable;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/exported/ICommandFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/exported/ICommandFactory.java
new file mode 100644
index 00000000000..384410e15de
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/exported/ICommandFactory.java
@@ -0,0 +1,71 @@
+/*******************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal.exported;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.edit.command.AddCommand;
+import org.eclipse.emf.edit.command.MoveCommand;
+import org.eclipse.emf.edit.command.RemoveCommand;
+import org.eclipse.emf.edit.command.SetCommand;
+import org.eclipse.emf.edit.domain.EditingDomain;
+
+/**
+ * Creates {@link Command}s for a specific {@link EditingDomain}.
+ * <p>
+ * See also {@link ICommandFactoriesRegistry}
+ *
+ * @since 0.2
+ */
+// Copied from org.eclipse.papyrus.emf.facet.widgets.celleditors.ICommandFactory
+public interface ICommandFactory {
+ /**
+ * Whether this command factory should be used for the given {@link EditingDomain}
+ */
+ boolean handles(EditingDomain editingDomain);
+
+ /**
+ * This creates a {@link SetCommand} to set the owner's feature to the specified value.
+ */
+ Command createSetCommand(EditingDomain domain, Object owner, Object feature, Object value);
+
+ /**
+ * This creates a {@link SetCommand} to set the owner's feature to the specified value at the
+ * specified index.
+ */
+ Command createSetCommand(EditingDomain domain, Object owner, Object feature,
+ Object value, int index);
+
+ /**
+ * This creates a {@link MoveCommand} to move a particular value to a particular index in the
+ * specified feature of the owner. The feature will often be <code>null</code> because the
+ * domain will deduce it.
+ */
+ Command createMoveCommand(EditingDomain domain, Object owner, Object feature, Object value,
+ int index);
+
+ /**
+ * This creates an {@link AddCommand} to add a particular value to the specified feature of the
+ * owner. The feature will often be <code>null</code> because the domain will deduce it.
+ */
+ Command createAddCommand(EditingDomain domain, Object owner, Object feature, Object value);
+
+ /**
+ * This creates a {@link RemoveCommand} to remove a particular value from the specified feature
+ * of the owner.
+ */
+ Command createRemoveCommand(EditingDomain domain, Object owner, Object feature, Object value);
+
+ /** This creates a command that deletes the given object. */
+ Command createDeleteCommand(EditingDomain domain, Object object);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/preferences/PreferenceConstants.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/preferences/PreferenceConstants.java
new file mode 100644
index 00000000000..14a3861aded
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/preferences/PreferenceConstants.java
@@ -0,0 +1,26 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ * Fabien Giquel (Mia-Software)
+ * Nicolas Bros (Mia-Software) - Bug 335218 - Extension point for registering EObject, EPackage, model editor
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal.preferences;
+
+public final class PreferenceConstants {
+
+ private PreferenceConstants() {
+ // constants class: no need to instantiate
+ }
+
+ public static final String P_DEFAULT_EPACKAGE_VIEWER = "emf_facet_default_epackage_viewer"; //$NON-NLS-1$
+ public static final String P_DEFAULT_EOBJECT_VIEWER = "emf_facet_default_eobject_viewer"; //$NON-NLS-1$
+ public static final String P_DEFAULT_RESOURCE_VIEWER = "emf_facet_default_resource_viewer"; //$NON-NLS-1$
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/preferences/PreferenceInitializer.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/preferences/PreferenceInitializer.java
new file mode 100644
index 00000000000..150fbf06d97
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/preferences/PreferenceInitializer.java
@@ -0,0 +1,54 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ * Nicolas Bros (Mia-Software) - Bug 335218 - Extension point for registering EObject, EPackage, model editor
+ * Laurent Pichierri (Soft-Maint) - Bug 371204 - Compatibility with Helios
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal.preferences;
+
+import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
+import org.eclipse.core.runtime.preferences.DefaultScope;
+import org.eclipse.core.runtime.preferences.IEclipsePreferences;
+import org.eclipse.papyrus.emf.facet.util.emf.core.IBrowserRegistry;
+import org.eclipse.papyrus.emf.facet.util.emf.core.IEObjectBrowserOpener;
+import org.eclipse.papyrus.emf.facet.util.emf.core.IEPackageBrowserOpener;
+import org.eclipse.papyrus.emf.facet.util.emf.core.IResourceBrowserOpener;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.Activator;
+
+public class PreferenceInitializer extends AbstractPreferenceInitializer {
+
+ @Override
+ public void initializeDefaultPreferences() {
+ IEclipsePreferences preferenceNode = new DefaultScope().getNode(Activator.PLUGIN_ID);
+ // general rule is to keep the same behavior as EMF by default
+ IEObjectBrowserOpener defaultEObjectBrowserOpener = IBrowserRegistry.INSTANCE
+ .getDefaultEObjectBrowserOpener();
+ if (defaultEObjectBrowserOpener != null) {
+ preferenceNode.put(PreferenceConstants.P_DEFAULT_EOBJECT_VIEWER,
+ defaultEObjectBrowserOpener.getClass().getName());
+ }
+
+ IEPackageBrowserOpener defaultEPackageBrowserOpener = IBrowserRegistry.INSTANCE
+ .getDefaultEPackageBrowserOpener();
+ if (defaultEPackageBrowserOpener != null) {
+ preferenceNode.put(PreferenceConstants.P_DEFAULT_EPACKAGE_VIEWER,
+ defaultEPackageBrowserOpener.getClass().getName());
+ }
+
+ IResourceBrowserOpener defaultResourceBrowserOpener = IBrowserRegistry.INSTANCE
+ .getDefaultResourceBrowserOpener();
+ if (defaultResourceBrowserOpener != null) {
+ preferenceNode.put(PreferenceConstants.P_DEFAULT_RESOURCE_VIEWER,
+ defaultResourceBrowserOpener.getClass().getName());
+ }
+
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/registry/BrowserRegistry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/registry/BrowserRegistry.java
new file mode 100644
index 00000000000..c75a593e6c8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/registry/BrowserRegistry.java
@@ -0,0 +1,212 @@
+/**********************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ * Nicolas Bros (Mia-Software) - Bug 335218 - Extension point for registering EObject, EPackage, model editor
+ * Laurent Pichierri (Soft-Maint) - Bug 371204 - Compatibility with Helios
+ ***********************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal.registry;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.IExtension;
+import org.eclipse.core.runtime.IExtensionPoint;
+import org.eclipse.core.runtime.IExtensionRegistry;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.preferences.IEclipsePreferences;
+import org.eclipse.core.runtime.preferences.InstanceScope;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.emf.core.IBrowserRegistry;
+import org.eclipse.papyrus.emf.facet.util.emf.core.IEObjectBrowserOpener;
+import org.eclipse.papyrus.emf.facet.util.emf.core.IEPackageBrowserOpener;
+import org.eclipse.papyrus.emf.facet.util.emf.core.IResourceBrowserOpener;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.preferences.PreferenceConstants;
+
+/** A registry for the EObject, EPackage, and Resource browser opener extension point. */
+public class BrowserRegistry implements IBrowserRegistry {
+
+ private static final String EXTENSION_POINT_RESOURCE_VIEWER_ELT = "resourceViewer"; //$NON-NLS-1$
+ private static final String EXTENSION_POINT_EOBJECT_VIEWER_ELT = "eObjectViewer"; //$NON-NLS-1$
+ private static final String EXTENSION_POINT_EPACKAGE_VIEWER_ELT = "ePackageViewer"; //$NON-NLS-1$
+ private final List<IEPackageBrowserOpener> epackageBrowserOpeners;
+ private final List<IEObjectBrowserOpener> eobjectBrowserOpeners;
+ private final List<IResourceBrowserOpener> resourceBrowserOpeners;
+
+ public static final String EXTENSION_POINT_MODEL_VIEWER_ID = "org.eclipse.papyrus.emf.facet.util.emf.core.modelViewer"; //$NON-NLS-1$
+
+ public static final String CLASS = "class"; //$NON-NLS-1$
+
+ public BrowserRegistry() {
+ this.epackageBrowserOpeners = new ArrayList<IEPackageBrowserOpener>();
+ this.eobjectBrowserOpeners = new ArrayList<IEObjectBrowserOpener>();
+ this.resourceBrowserOpeners = new ArrayList<IResourceBrowserOpener>();
+
+ IExtensionRegistry registry = Platform.getExtensionRegistry();
+ IExtensionPoint extensionPoint = registry
+ .getExtensionPoint(BrowserRegistry.EXTENSION_POINT_MODEL_VIEWER_ID);
+ if (extensionPoint != null) {
+ for (IExtension ext : extensionPoint.getExtensions()) {
+ for (IConfigurationElement configElt : ext.getConfigurationElements()) {
+
+ String kind = configElt.getName();
+ String classID = configElt.getAttribute(BrowserRegistry.CLASS);
+ try {
+ if (classID != null) {
+ if (kind.equals(BrowserRegistry.EXTENSION_POINT_EPACKAGE_VIEWER_ELT)) {
+ this.epackageBrowserOpeners.add((IEPackageBrowserOpener) configElt
+ .createExecutableExtension(BrowserRegistry.CLASS));
+ } else if (kind
+ .equals(BrowserRegistry.EXTENSION_POINT_EOBJECT_VIEWER_ELT)) {
+ this.eobjectBrowserOpeners.add((IEObjectBrowserOpener) configElt
+ .createExecutableExtension(BrowserRegistry.CLASS));
+ } else if (kind
+ .equals(BrowserRegistry.EXTENSION_POINT_RESOURCE_VIEWER_ELT)) {
+ this.resourceBrowserOpeners.add((IResourceBrowserOpener) configElt
+ .createExecutableExtension(BrowserRegistry.CLASS));
+ }
+ }
+ } catch (CoreException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+ }
+ } else {
+ Logger.logError(
+ "Extension point not found: " + BrowserRegistry.EXTENSION_POINT_MODEL_VIEWER_ID, //$NON-NLS-1$
+ Activator.getDefault());
+ }
+ }
+
+ public void browseEPackage(final EPackage ePackage) {
+ if (ePackage == null) {
+ throw new IllegalArgumentException();
+ }
+ IEPackageBrowserOpener opener = getDefaultEPackageBrowserOpener();
+ if (opener != null) {
+ opener.openEPackage(ePackage);
+ } else {
+ Logger.logWarning(
+ "No epackage browser opener is registered to open ePackage " + ePackage.getNsURI(), Activator.getDefault()); //$NON-NLS-1$
+ }
+ }
+
+ public void browseResource(final Resource resource) {
+ if (resource == null) {
+ throw new IllegalArgumentException();
+ }
+ IResourceBrowserOpener opener = getDefaultResourceBrowserOpener();
+ if (opener != null) {
+ opener.openResource(resource);
+ } else {
+ Logger.logWarning(
+ "No resource browser opener is registered to open " + resource.getURI(), Activator.getDefault()); //$NON-NLS-1$
+ }
+ }
+
+ public void browseEObject(final EObject eObject) {
+ if (eObject == null) {
+ throw new IllegalArgumentException();
+ }
+ IEObjectBrowserOpener opener = getDefaultEObjectBrowserOpener();
+ if (opener != null) {
+ opener.openEObject(eObject);
+ } else {
+ Logger.logWarning(
+ "No eobject browser opener is registered to open " + eObject.toString(), Activator.getDefault()); //$NON-NLS-1$
+ }
+ }
+
+ public List<IEPackageBrowserOpener> getAllRegisteredEPackageBrowsers() {
+ return Collections.unmodifiableList(this.epackageBrowserOpeners);
+ }
+
+ public List<IEObjectBrowserOpener> getAllRegisteredEObjectBrowsers() {
+ return Collections.unmodifiableList(this.eobjectBrowserOpeners);
+ }
+
+ public List<IResourceBrowserOpener> getAllRegisteredResourceBrowsers() {
+ return Collections.unmodifiableList(this.resourceBrowserOpeners);
+ }
+
+ /**
+ * @return the default EPackage browser opener, can be null
+ */
+ public IEPackageBrowserOpener getDefaultEPackageBrowserOpener() {
+ IEclipsePreferences preferenceNode = new InstanceScope().getNode(Activator.PLUGIN_ID);
+ String className = preferenceNode.get(PreferenceConstants.P_DEFAULT_EPACKAGE_VIEWER, null);
+ if (className != null) {
+ for (IEPackageBrowserOpener ePackageBrowserFactory : this.epackageBrowserOpeners) {
+ if (ePackageBrowserFactory.getClass().getName().equals(className)) {
+ return ePackageBrowserFactory;
+ }
+ }
+ }
+ // By default return the first editor registered through the extension
+ // point org.eclipse.papyrus.emf.facet.util.emf.core.modelViewer
+ if (!this.epackageBrowserOpeners.isEmpty()) {
+ return this.epackageBrowserOpeners.get(0);
+ }
+
+ return null;
+
+ }
+
+ /**
+ * @return the default EObject browser opener, can be null
+ */
+ public IEObjectBrowserOpener getDefaultEObjectBrowserOpener() {
+ IEclipsePreferences preferenceNode = new InstanceScope().getNode(Activator.PLUGIN_ID);
+ String className = preferenceNode.get(PreferenceConstants.P_DEFAULT_EOBJECT_VIEWER, null);
+ if (className != null) {
+ for (IEObjectBrowserOpener eObjectBrowserFactory : this.eobjectBrowserOpeners) {
+ if (eObjectBrowserFactory.getClass().getName().equals(className)) {
+ return eObjectBrowserFactory;
+ }
+ }
+ }
+ // By default return the first editor registered through the extension
+ // point org.eclipse.papyrus.emf.facet.util.emf.core.modelViewer
+ if (!this.eobjectBrowserOpeners.isEmpty()) {
+ return this.eobjectBrowserOpeners.get(0);
+ }
+
+ return null;
+
+ }
+
+ /**
+ * @return the default Resource browser opener, can be <code>null</code>
+ */
+ public IResourceBrowserOpener getDefaultResourceBrowserOpener() {
+ IEclipsePreferences preferenceNode = new InstanceScope().getNode(Activator.PLUGIN_ID);
+ String className = preferenceNode.get(PreferenceConstants.P_DEFAULT_RESOURCE_VIEWER, null);
+ if (className != null) {
+ for (IResourceBrowserOpener resourceBrowserOpener : this.resourceBrowserOpeners) {
+ if (resourceBrowserOpener.getClass().getName().equals(className)) {
+ return resourceBrowserOpener;
+ }
+ }
+ }
+ // By default return the first editor registered through the extension
+ // point org.eclipse.papyrus.emf.facet.util.emf.core.modelViewer
+ if (!this.resourceBrowserOpeners.isEmpty()) {
+ return this.resourceBrowserOpeners.get(0);
+ }
+
+ return null;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/SerializationRegistry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/SerializationRegistry.java
new file mode 100644
index 00000000000..b6c0ae0aa31
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/SerializationRegistry.java
@@ -0,0 +1,133 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Laurent Pichierri (Soft-Maint) - Bug 371204 - Compatibility with Helios
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal.serialization;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+//import org.eclipse.papyrus.emf.facet.infra.common.core.internal.extensions.AbstractRegistry;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.core.internal.exported.AbstractRegistry;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.emf.core.serialization.ISerializationRegistry;
+import org.eclipse.papyrus.emf.facet.util.emf.core.serialization.ISerializer;
+
+/** Registry for the "serialization" extension point */
+public class SerializationRegistry extends AbstractRegistry implements ISerializationRegistry {
+
+ private static final String EXTENSION_POINT_NAMESPACE = "org.eclipse.papyrus.emf.facet.util.emf.core"; //$NON-NLS-1$
+ private static final String EXTENSION_POINT_NAME = "serialization"; //$NON-NLS-1$
+
+ private static final String SERIALIZER_ELEMENT = "serializer"; //$NON-NLS-1$
+ private static final String CLASS_ATTRIBUTE = "class"; //$NON-NLS-1$
+
+ private static SerializationRegistry instance = null;
+
+ private final List<ISerializer<?>> serializers = new ArrayList<ISerializer<?>>();
+
+ public static SerializationRegistry getInstance() {
+ if (SerializationRegistry.instance == null) {
+ SerializationRegistry.instance = new SerializationRegistry();
+ }
+ return SerializationRegistry.instance;
+ }
+
+ public SerializationRegistry() {
+ initialize();
+ }
+
+ public List<ISerializer<?>> getSerializers() {
+ return Collections.unmodifiableList(this.serializers);
+ }
+
+ public ISerializer<?> getSerializerFor(final Class<?> type) {
+ for (ISerializer<?> serializer : this.serializers) {
+ if (serializer.getType().isAssignableFrom(type)) {
+ return serializer;
+ }
+ }
+ return null;
+ }
+
+ public ISerializer<?> getSerializerFor(final String type) {
+ for (ISerializer<?> serializer : this.serializers) {
+ if (serializer.getType().getName().equals(type)) {
+ return serializer;
+ }
+ }
+ return null;
+ }
+
+ @Override
+ protected String getExtensionPointName() {
+ return SerializationRegistry.EXTENSION_POINT_NAME;
+ }
+
+ @Override
+ protected String getExtensionPointNamespace() {
+ return SerializationRegistry.EXTENSION_POINT_NAMESPACE;
+ }
+
+ @Override
+ protected void handleRootElement(final IConfigurationElement configurationElement) {
+ final String name = configurationElement.getName();
+ if (name.equalsIgnoreCase(SerializationRegistry.SERIALIZER_ELEMENT)) {
+ readSerializerElement(configurationElement);
+ } else {
+ logUnknownElement(configurationElement);
+ }
+ }
+
+ /** Read a 'serializer' element */
+ private void readSerializerElement(final IConfigurationElement configurationElement) {
+ Object object;
+ try {
+ object = configurationElement
+ .createExecutableExtension(SerializationRegistry.CLASS_ATTRIBUTE);
+ } catch (CoreException e) {
+ Logger.logError(e, Activator.getDefault());
+ return;
+ }
+ if (object == null) {
+ logMissingAttribute(configurationElement, SerializationRegistry.CLASS_ATTRIBUTE);
+ return;
+ }
+
+ if (object instanceof ISerializer<?>) {
+ ISerializer<?> serializer = (ISerializer<?>) object;
+ ISerializer<?> existingSerializer = getSerializerFor(serializer.getType());
+ if (existingSerializer != null) {
+ logError(
+ configurationElement,
+ "Several serializers are provided for the type: " + serializer.getType().getName() + ". Only the first one will be used."); //$NON-NLS-1$ //$NON-NLS-2$
+
+ // always take the first one in the alphabetical order => determinism to avoid
+ // trying to serialize with one implementation and deserialize with an incompatible
+ // implementation
+ if (serializer.getClass().getName()
+ .compareTo(existingSerializer.getClass().getName()) < 0) {
+ // replace the already registered serializer by this one
+ this.serializers.remove(existingSerializer);
+ } else {
+ return;
+ }
+ }
+ this.serializers.add(serializer);
+ } else {
+ logError(configurationElement,
+ "class must implement " + ISerializer.class.getSimpleName()); //$NON-NLS-1$
+ }
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/SerializationService.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/SerializationService.java
new file mode 100644
index 00000000000..e8c21b702a1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/SerializationService.java
@@ -0,0 +1,66 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 338907 - expose serialization services from SerializationFactoryImpl
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal.serialization;
+
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.emf.core.serialization.ISerializationRegistry;
+import org.eclipse.papyrus.emf.facet.util.emf.core.serialization.ISerializationService;
+import org.eclipse.papyrus.emf.facet.util.emf.core.serialization.ISerializer;
+
+public class SerializationService implements ISerializationService {
+
+ public String serialize(final Object instanceValue) {
+ if (instanceValue == null) {
+ return "null"; //$NON-NLS-1$
+ }
+
+ ISerializer<Object> serializer = (ISerializer<Object>) ISerializationRegistry.INSTANCE
+ .getSerializerFor(instanceValue.getClass());
+ if (serializer != null) {
+ return serializer.getType().getName() + ":" //$NON-NLS-1$
+ + serializer.serialize(instanceValue);
+ }
+
+ Logger.logError("serialization of type " + instanceValue.getClass().getName() //$NON-NLS-1$
+ + " is not implemented.", Activator.getDefault()); //$NON-NLS-1$
+ return "null"; //$NON-NLS-1$
+ }
+
+ public Object deserialize(final String serializedValue) {
+ try {
+ if ("null".equals(serializedValue)) { //$NON-NLS-1$
+ return null;
+ }
+
+ int colonPos = serializedValue.indexOf(':');
+ if (colonPos == -1) {
+ throw new IllegalArgumentException("invalid serialization format"); //$NON-NLS-1$
+ }
+ String type = serializedValue.substring(0, colonPos);
+ String strValue = serializedValue.substring(colonPos + 1);
+
+ ISerializer<?> serializer = ISerializationRegistry.INSTANCE.getSerializerFor(type);
+ if (serializer != null) {
+ Object value = serializer.deserialize(strValue);
+ return value;
+ }
+
+ Logger.logError("deserialization of type " + type //$NON-NLS-1$
+ + " is not implemented.", Activator.getDefault()); //$NON-NLS-1$
+ } catch (Exception e) {
+ Logger.logError(e, "Error deserializing: " + serializedValue, //$NON-NLS-1$
+ Activator.getDefault());
+ }
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/BooleanSerializer.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/BooleanSerializer.java
new file mode 100644
index 00000000000..4eabaac1cf4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/BooleanSerializer.java
@@ -0,0 +1,32 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal.serialization.serializers;
+
+import org.eclipse.papyrus.emf.facet.util.emf.core.serialization.ISerializer;
+
+public class BooleanSerializer implements ISerializer<Boolean> {
+
+ public BooleanSerializer() {
+ //
+ }
+
+ public Class<Boolean> getType() {
+ return Boolean.class;
+ }
+
+ public String serialize(final Boolean value) {
+ return value.toString();
+ }
+
+ public Boolean deserialize(final String serializedValue) {
+ return Boolean.valueOf(serializedValue);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/EMFURISerializer.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/EMFURISerializer.java
new file mode 100644
index 00000000000..008fe7f745a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/EMFURISerializer.java
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal.serialization.serializers;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.papyrus.emf.facet.util.emf.core.serialization.ISerializer;
+
+public class EMFURISerializer implements ISerializer<URI> {
+
+ public EMFURISerializer() {
+ //
+ }
+
+ public Class<URI> getType() {
+ return URI.class;
+ }
+
+ public String serialize(final URI value) {
+ return value.toString();
+ }
+
+ public URI deserialize(final String serializedValue) {
+ return URI.createURI(serializedValue);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/IResourceSerializer.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/IResourceSerializer.java
new file mode 100644
index 00000000000..2ef2012dc19
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/IResourceSerializer.java
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal.serialization.serializers;
+
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.papyrus.emf.facet.util.emf.core.serialization.ISerializer;
+
+public class IResourceSerializer implements ISerializer<IResource> {
+
+ public IResourceSerializer() {
+ //
+ }
+
+ public Class<IResource> getType() {
+ return IResource.class;
+ }
+
+ public String serialize(final IResource value) {
+ return value.getFullPath().toPortableString();
+ }
+
+ public IResource deserialize(final String serializedValue) {
+ return ResourcesPlugin.getWorkspace().getRoot().findMember(serializedValue);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/IntegerSerializer.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/IntegerSerializer.java
new file mode 100644
index 00000000000..f2921bb159c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/IntegerSerializer.java
@@ -0,0 +1,32 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal.serialization.serializers;
+
+import org.eclipse.papyrus.emf.facet.util.emf.core.serialization.ISerializer;
+
+public class IntegerSerializer implements ISerializer<Integer> {
+
+ public IntegerSerializer() {
+ //
+ }
+
+ public Class<Integer> getType() {
+ return Integer.class;
+ }
+
+ public String serialize(final Integer value) {
+ return value.toString();
+ }
+
+ public Integer deserialize(final String serializedValue) {
+ return Integer.valueOf(serializedValue);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/StringSerializer.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/StringSerializer.java
new file mode 100644
index 00000000000..fc98b7bd6b1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/internal/serialization/serializers/StringSerializer.java
@@ -0,0 +1,32 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.core.internal.serialization.serializers;
+
+import org.eclipse.papyrus.emf.facet.util.emf.core.serialization.ISerializer;
+
+public class StringSerializer implements ISerializer<String> {
+
+ public StringSerializer() {
+ //
+ }
+
+ public Class<String> getType() {
+ return String.class;
+ }
+
+ public String serialize(final String value) {
+ return value;
+ }
+
+ public String deserialize(final String serializedValue) {
+ return serializedValue;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/ISerializationRegistry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/ISerializationRegistry.java
new file mode 100644
index 00000000000..6a1a5e9f7f0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/ISerializationRegistry.java
@@ -0,0 +1,35 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.core.serialization;
+
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.serialization.SerializationRegistry;
+
+/** The registry of {@link ISerializer}s per type. */
+public interface ISerializationRegistry {
+ public static ISerializationRegistry INSTANCE = new SerializationRegistry();
+
+ /** Get all the serializers . */
+ List<ISerializer<?>> getSerializers();
+
+ /**
+ * @return the serializer for the given type, or <code>null</code> if none has been registered.
+ * Also returns serializers for super-types of <code>type</code>.
+ */
+ ISerializer<?> getSerializerFor(Class<?> type);
+
+ /**
+ * @return the serializer for the given type qualified name, or <code>null</code> if none has
+ * been registered. Does not return serializers for super-types of <code>type</code>.
+ */
+ ISerializer<?> getSerializerFor(String type);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/ISerializationService.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/ISerializationService.java
new file mode 100644
index 00000000000..30ae9fc83b1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/ISerializationService.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 338907 - expose serialization services from SerializationFactoryImpl
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.core.serialization;
+
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.serialization.SerializationService;
+
+/**
+ * Provides a serialization service so that the following is true:<br/>
+ * <code>deserialize(serialize(object)) == object</code>
+ */
+public interface ISerializationService {
+
+ public ISerializationService INSTANCE = new SerializationService();
+
+ /** Serialize the given value. */
+ String serialize(Object instanceValue);
+
+ /** Deserialize the given string back into the value. */
+ Object deserialize(String serializedValue);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/ISerializer.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/ISerializer.java
new file mode 100644
index 00000000000..dfad827af45
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/ISerializer.java
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.core.serialization;
+
+/**
+ * The interface that must be implemented when adding an extension to the "serializer" extension
+ * point.
+ *
+ * @see ISerializationRegistry
+ */
+// note: the serializer has to return the {@link Class} object instead of a qualified name
+// because that's the one that has it on its bundle classpath.
+public interface ISerializer<T> {
+
+ /** @return the type handled by this serializer. */
+ Class<T> getType();
+
+ /** Serialize the given value into a String */
+ String serialize(T value);
+
+ /**
+ * Deserialize the given String back into the original value that was serialized with
+ * {@link ISerializer#serialize(Object)}
+ */
+ T deserialize(String serializedValue);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/model/serialization/SerializationFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/model/serialization/SerializationFactory.java
new file mode 100644
index 00000000000..94b1491cbdb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/model/serialization/SerializationFactory.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model.serialization;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model.serialization.SerializationPackage
+ * @generated
+ */
+public interface SerializationFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ SerializationFactory eINSTANCE = org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model.serialization.impl.SerializationFactoryImpl.init();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ SerializationPackage getSerializationPackage();
+
+} //SerializationFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/model/serialization/SerializationPackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/model/serialization/SerializationPackage.java
new file mode 100644
index 00000000000..9e772576927
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/model/serialization/SerializationPackage.java
@@ -0,0 +1,121 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model.serialization;
+
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model.serialization.SerializationFactory
+ * @model kind="package"
+ * @generated
+ */
+@SuppressWarnings("all")
+public interface SerializationPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "serialization"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/emf/facet/serialization/0.1.incubation"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "serialization"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ SerializationPackage eINSTANCE = org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model.serialization.impl.SerializationPackageImpl.init();
+
+ /**
+ * The meta object id for the '<em>Extensible Serializable Java Object</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see java.lang.Object
+ * @see org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model.serialization.impl.SerializationPackageImpl#getExtensibleSerializableJavaObject()
+ * @generated
+ */
+ int EXTENSIBLE_SERIALIZABLE_JAVA_OBJECT = 0;
+
+
+ /**
+ * Returns the meta object for data type '{@link java.lang.Object <em>Extensible Serializable Java Object</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for data type '<em>Extensible Serializable Java Object</em>'.
+ * @see java.lang.Object
+ * @model instanceClass="java.lang.Object"
+ * @generated
+ */
+ EDataType getExtensibleSerializableJavaObject();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ SerializationFactory getSerializationFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '<em>Extensible Serializable Java Object</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see java.lang.Object
+ * @see org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model.serialization.impl.SerializationPackageImpl#getExtensibleSerializableJavaObject()
+ * @generated
+ */
+ EDataType EXTENSIBLE_SERIALIZABLE_JAVA_OBJECT = SerializationPackage.eINSTANCE.getExtensibleSerializableJavaObject();
+
+ }
+
+} //SerializationPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/model/serialization/impl/SerializationFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/model/serialization/impl/SerializationFactoryImpl.java
new file mode 100644
index 00000000000..9781c440886
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/model/serialization/impl/SerializationFactoryImpl.java
@@ -0,0 +1,151 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 338907 - expose serialization services from SerializationFactoryImpl
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model.serialization.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.papyrus.emf.facet.util.emf.core.serialization.ISerializationService;
+import org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model.serialization.SerializationFactory;
+import org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model.serialization.SerializationPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model <b>Factory</b>. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class SerializationFactoryImpl extends EFactoryImpl implements SerializationFactory {
+ /**
+ * Creates the default factory implementation. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public static SerializationFactory init() {
+ try {
+ SerializationFactory theSerializationFactory = (SerializationFactory) EPackage.Registry.INSTANCE
+ .getEFactory("http://www.eclipse.org/papyrus/emf/facet/serialization/0.1.incubation"); //$NON-NLS-1$
+ if (theSerializationFactory != null) {
+ return theSerializationFactory;
+ }
+ } catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new SerializationFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public SerializationFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EObject create(final EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ default:
+ throw new IllegalArgumentException(
+ "The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object createFromString(final EDataType eDataType, final String initialValue) {
+ switch (eDataType.getClassifierID()) {
+ case SerializationPackage.EXTENSIBLE_SERIALIZABLE_JAVA_OBJECT:
+ return createExtensibleSerializableJavaObjectFromString(eDataType, initialValue);
+ default:
+ throw new IllegalArgumentException(
+ "The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String convertToString(final EDataType eDataType, final Object instanceValue) {
+ switch (eDataType.getClassifierID()) {
+ case SerializationPackage.EXTENSIBLE_SERIALIZABLE_JAVA_OBJECT:
+ return convertExtensibleSerializableJavaObjectToString(eDataType, instanceValue);
+ default:
+ throw new IllegalArgumentException(
+ "The datatype '" + eDataType.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> Deserializes a value.
+ *
+ * @param eDataType
+ * the datatype
+ * @param initialValue
+ * the serialized value to deserialize <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public static Object createExtensibleSerializableJavaObjectFromString(
+ final EDataType eDataType, final String initialValue) {
+ return ISerializationService.INSTANCE.deserialize(initialValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> Serializes a value.
+ *
+ * @param eDataType
+ * the datatype
+ * @param instanceValue
+ * the value to serialize <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public static String convertExtensibleSerializableJavaObjectToString(final EDataType eDataType,
+ final Object instanceValue) {
+ return ISerializationService.INSTANCE.serialize(instanceValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public SerializationPackage getSerializationPackage() {
+ return (SerializationPackage) getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static SerializationPackage getPackage() {
+ return SerializationPackage.eINSTANCE;
+ }
+
+} // SerializationFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/model/serialization/impl/SerializationPackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/model/serialization/impl/SerializationPackageImpl.java
new file mode 100644
index 00000000000..6a49664b98c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.core/src/org/eclipse/papyrus/emf/facet/util/emf/core/serialization/model/serialization/impl/SerializationPackageImpl.java
@@ -0,0 +1,170 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model.serialization.impl;
+
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model.serialization.SerializationFactory;
+import org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model.serialization.SerializationPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class SerializationPackageImpl extends EPackageImpl implements SerializationPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EDataType extensibleSerializableJavaObjectEDataType = 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.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.util.emf.core.serialization.model.serialization.SerializationPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private SerializationPackageImpl() {
+ super(SerializationPackage.eNS_URI, SerializationFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 SerializationPackage#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 -->
+ * <!-- end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static SerializationPackage init() {
+ if (SerializationPackageImpl.isInited) {
+ return (SerializationPackage)EPackage.Registry.INSTANCE.getEPackage(SerializationPackage.eNS_URI);
+ }
+
+ // Obtain or create and register package
+ SerializationPackageImpl theSerializationPackage = (SerializationPackageImpl)(EPackage.Registry.INSTANCE.get(SerializationPackage.eNS_URI) instanceof SerializationPackageImpl ? EPackage.Registry.INSTANCE.get(SerializationPackage.eNS_URI) : new SerializationPackageImpl());
+
+ SerializationPackageImpl.isInited = true;
+
+ // Create package meta-data objects
+ theSerializationPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theSerializationPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theSerializationPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(SerializationPackage.eNS_URI, theSerializationPackage);
+ return theSerializationPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EDataType getExtensibleSerializableJavaObject() {
+ return this.extensibleSerializableJavaObjectEDataType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SerializationFactory getSerializationFactory() {
+ return (SerializationFactory)getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (this.isCreated) {
+ return;
+ }
+ this.isCreated = true;
+
+ // Create data types
+ this.extensibleSerializableJavaObjectEDataType = createEDataType(SerializationPackage.EXTENSIBLE_SERIALIZABLE_JAVA_OBJECT);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (this.isInitialized) {
+ return;
+ }
+ this.isInitialized = true;
+
+ // Initialize package
+ setName(SerializationPackage.eNAME);
+ setNsPrefix(SerializationPackage.eNS_PREFIX);
+ setNsURI(SerializationPackage.eNS_URI);
+
+ // Initialize data types
+ initEDataType(this.extensibleSerializableJavaObjectEDataType, Object.class, "ExtensibleSerializableJavaObject", EPackageImpl.IS_SERIALIZABLE, !EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+
+ // Create resource
+ createResource(SerializationPackage.eNS_URI);
+ }
+
+} //SerializationPackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.checkstyle
new file mode 100644
index 00000000000..9975b61e3a5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.checkstyle
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2010 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Guyomar (Mia-Software)
+ Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+-->
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+ <local-check-config name="EmfFacet" location="/org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.pmd b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.pmd
new file mode 100644
index 00000000000..91a7c8fa772
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.pmd
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<pmd>
+ <useProjectRuleSet>true</useProjectRuleSet>
+ <ruleSetFile>../org.eclipse.papyrus.emf.facet.archi.tech.rules/pmd/ruleset.xml</ruleSetFile>
+ <includeDerivedFiles>false</includeDerivedFiles>
+ <violationsAsErrors>true</violationsAsErrors>
+</pmd>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.project
new file mode 100644
index 00000000000..f911953f80c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.project
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.util.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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ <nature>net.sourceforge.pmd.eclipse.plugin.pmdNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..4824b802631
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..00c46550b96
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,36 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.util.emf.ui;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Activator
+Bundle-Vendor: %Bundle-Vendor
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.core.resources;bundle-version="3.6.0",
+ org.eclipse.emf.common.ui;bundle-version="2.6.0",
+ org.eclipse.emf.common;bundle-version="2.6.0",
+ org.eclipse.emf.ecore;bundle-version="2.6.0",
+ org.eclipse.ui.ide;bundle-version="3.6.0",
+ org.eclipse.papyrus.emf.facet.common.ui;bundle-version="0.1.0",
+ org.eclipse.emf.edit;bundle-version="2.6.0",
+ org.eclipse.emf.edit.ui;bundle-version="2.6.0",
+ org.eclipse.papyrus.emf.facet.util.emf.core;bundle-version="0.1.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.1.0",
+ org.eclipse.papyrus.emf.facet.util.ui;bundle-version="0.3.0",
+ org.eclipse.papyrus.emf.facet.util.swt;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.common.ui
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package:
+ org.eclipse.papyrus.emf.facet.util.emf.ui.internal.dialogs;x-friends:="org.eclipse.papyrus.emf.facet.widgets.celleditors",
+ org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported,
+ org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.composite,
+ org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.widget.component.metaclass,
+ org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard,
+ org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page,
+ org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page.exception,
+ org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard,
+ org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.page,
+ org.eclipse.papyrus.emf.facet.util.emf.ui.internal.utils,
+ org.eclipse.papyrus.emf.facet.util.emf.ui.util
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..46f0f39ba11
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,11 @@
+#Properties file for org.eclipse.papyrus.emf.facet.util.emf.ui
+category.name = EMF Facet
+view.name = EPackage Registry
+actionSet.label = EMF Facet Model Browser Actions
+action.label = Open EPackage
+action.tooltip = Open a model from the EMF EPackage registry
+page.name = Default Browser
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet U.I. Utilities for EMF (Incubation)
+emf.facet.category.name = EMF Facet
+openmodel.command.name = Open Model From EMF Registry \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/about.html
new file mode 100644
index 00000000000..d1714826b27
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.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>January 4, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/build.properties
new file mode 100644
index 00000000000..53d3a9f6a0b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/build.properties
@@ -0,0 +1,19 @@
+###############################################################################
+# Copyright (c) 2011 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+###############################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ icons/,\
+ about.html,\
+ OSGI-INF/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/icons/EPackageView.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/icons/EPackageView.gif
new file mode 100644
index 00000000000..ae0cdff0958
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/icons/EPackageView.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/icons/ModelIcon.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/icons/ModelIcon.gif
new file mode 100644
index 00000000000..239367a3cb0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/icons/ModelIcon.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/icons/catalog.png b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/icons/catalog.png
new file mode 100644
index 00000000000..725c0d2fa7d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/icons/catalog.png
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/icons/logoEmfFacetMini.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/icons/logoEmfFacetMini.gif
new file mode 100644
index 00000000000..19c468b1c61
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/icons/logoEmfFacetMini.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/plugin.xml
new file mode 100644
index 00000000000..3378b06b22c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/plugin.xml
@@ -0,0 +1,117 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<!--
+ Copyright (c) 2011 Mia-Software.
+ All rights reserved. This program and the accompanying materials
+ are made available under the terms of the Eclipse Public License v1.0
+ which accompanies this distribution, and is available at
+ http://www.eclipse.org/legal/epl-v10.html
+
+ Contributors:
+ Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ Fabien Giquel (Mia-Software)
+ Gregoire Dupe (Mia-software) - Bug 366155 - [Unit Test Failure][0.2/3.8][0.2/4.2] org.eclipse.papyrus.emf.facet.util.emf.ui.tests.EPackageRegistryTest.canOpenERegistryView
+ Gregoire Dupe (Mia-Sodtware) - Bug 406570 - Handlers to Save and SaveAs EMF resources
+ -->
+<plugin>
+ <extension
+ point="org.eclipse.ui.views">
+ <view
+ category="org.eclipse.papyrus.emf.facet.common.ui.views"
+ class="org.eclipse.papyrus.emf.facet.util.emf.ui.internal.view.PackageRegistryView"
+ icon="icons/EPackageView.gif"
+ id="org.eclipse.papyrus.emf.facet.infra.common.ui.views.packageRegistry"
+ name="%view.name"
+ restorable="true">
+ </view>
+ </extension>
+
+ <extension
+ point="org.eclipse.ui.commands">
+ <category
+ id="org.eclipse.papyrus.emf.facet.util.emf.ui.category"
+ name="%emf.facet.category.name">
+ </category>
+ <command
+ categoryId="org.eclipse.papyrus.emf.facet.util.emf.ui.category"
+ id="org.eclipse.papyrus.emf.facet.util.emf.ui.OpenModelFromEmfRegistryCommand"
+ name="%openmodel.command.name">
+ </command>
+ </extension>
+
+ <extension
+ point="org.eclipse.ui.actionSets">
+ <actionSet
+ id="org.eclipse.papyrus.emf.facet.common.editor.actionSet"
+ label="%actionSet.label"
+ visible="true">
+ <action
+ class="org.eclipse.papyrus.emf.facet.util.emf.ui.internal.actions.OpenModelFromEmfRegistryAction"
+ definitionId="org.eclipse.papyrus.emf.facet.util.emf.ui.OpenModelFromEmfRegistryCommand"
+ icon="icons/logoEmfFacetMini.gif"
+ id="org.eclipse.papyrus.emf.facet.util.emf.actions.OpenModelFromEmfRegistry"
+ label="%action.label"
+ menubarPath="navigate/open.ext2"
+ style="push"
+ toolbarPath="Normal"
+ tooltip="%action.tooltip">
+ </action>
+ </actionSet>
+ </extension>
+ <extension
+ point="org.eclipse.ui.handlers">
+ <handler
+ class="org.eclipse.papyrus.emf.facet.util.emf.ui.internal.handler.SaveHandler"
+ commandId="org.eclipse.ui.file.save">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.modisco.infra.browser.resourcemanager.ui.expression.isResource">
+ </reference>
+ </activeWhen>
+ <enabledWhen>
+ <reference
+ definitionId="org.eclipse.modisco.infra.browser.resourcemanager.ui.expression.isResource">
+ </reference>
+ </enabledWhen>
+ </handler>
+ <handler
+ class="org.eclipse.papyrus.emf.facet.util.emf.ui.internal.handler.SaveAsHandler"
+ commandId="org.eclipse.ui.file.saveAs">
+ <activeWhen>
+ <reference
+ definitionId="org.eclipse.modisco.infra.browser.resourcemanager.ui.expression.isResource">
+ </reference>
+ </activeWhen>
+ <enabledWhen>
+ <reference
+ definitionId="org.eclipse.modisco.infra.browser.resourcemanager.ui.expression.isResource">
+ </reference>
+ </enabledWhen>
+ </handler>
+ </extension>
+ <extension
+ point="org.eclipse.core.expressions.definitions">
+ <definition
+ id="org.eclipse.modisco.infra.browser.resourcemanager.ui.expression.isResource">
+ <with
+ variable="activeMenuSelection">
+ <iterate
+ ifEmpty="false"
+ operator="or">
+ <adapt
+ type="org.eclipse.emf.ecore.resource.Resource">
+ </adapt>
+ </iterate>
+ </with>
+ </definition>
+ </extension>
+ <extension
+ point="org.eclipse.ui.preferencePages">
+ <page
+ category="org.eclipse.papyrus.emf.facet.common.ui.preference.pages.EmfFacetRootPreferencePage"
+ class="org.eclipse.papyrus.emf.facet.util.emf.ui.internal.preference.pages.DefaultBrowserPreferencePage"
+ id="org.eclipse.papyrus.emf.facet.util.emf.ui.DefaultBrowserPreferencePage"
+ name="%page.name">
+ </page>
+ </extension>
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/Activator.java
new file mode 100644
index 00000000000..31b4b1e0592
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/Activator.java
@@ -0,0 +1,73 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal;
+
+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.facet.util.emf.ui"; //$NON-NLS-1$
+
+ // The shared instance
+ private static Activator plugin;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ }
+
+ public static AbstractUIPlugin getPlugin() {
+ return Activator.plugin;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext
+ * )
+ */
+ @Override
+ public void start(final BundleContext context) throws Exception {
+ super.start(context);
+ Activator.plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext
+ * )
+ */
+ @Override
+ public void stop(final BundleContext context) throws Exception {
+ Activator.plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/EmfLabelProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/EmfLabelProvider.java
new file mode 100644
index 00000000000..422c62ea803
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/EmfLabelProvider.java
@@ -0,0 +1,140 @@
+/**
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 406578 - Generic Label Provider for EMF objects
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal;
+
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.emf.common.util.URI;
+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.papyrus.emf.facet.util.emf.core.ModelUtils;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.utils.ImageProvider;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.utils.ImageUtils;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.swt.graphics.Image;
+
+public class EmfLabelProvider extends LabelProvider {
+
+ @Override
+ public String getText(final Object element) {
+ String result = super.getText(element);
+ if (element instanceof ResourceSet) {
+ final ResourceSet resourceSet = (ResourceSet) element;
+ result = getResourceSetLabel(resourceSet);
+ } else if (element instanceof Resource) {
+ final Resource resource = (Resource) element;
+ result = getResourceLabel(resource);
+ } else if (element instanceof EObject) {
+ final EObject eObject = (EObject) element;
+ result = ModelUtils.getName(eObject);
+ } else if (element instanceof IAdaptable) {
+ final IAdaptable adaptable = (IAdaptable) element;
+ result = adaptAndGetResourceLabel(adaptable);
+ if (result == null) {
+ result = adaptAndGetResourceSetLabel(adaptable);
+ }
+ } else {
+ result = element.toString();
+ }
+ return result;
+ }
+
+ private static String adaptAndGetResourceLabel(final IAdaptable adaptable) {
+ String result = null;
+ final Resource resource = (Resource) adaptable
+ .getAdapter(Resource.class);
+ if (resource != null) {
+ result = getResourceLabel(resource);
+ }
+ return result;
+ }
+
+ private static String adaptAndGetResourceSetLabel(final IAdaptable adaptable) {
+ String result = null;
+ final ResourceSet resourceSet = (ResourceSet) adaptable
+ .getAdapter(ResourceSet.class);
+ if (resourceSet != null) {
+ result = getResourceSetLabel(resourceSet);
+ }
+ return result;
+ }
+
+ private static String getResourceSetLabel(final ResourceSet resourceSet) {
+ String result;
+ result = ResourceSet.class.getSimpleName() + ' '
+ + resourceSet.hashCode();
+ return result;
+ }
+
+ private static String getResourceLabel(final Resource resource) {
+ String result;
+ EObject firstRoot = null;
+ if (resource.getContents().size() > 0) {
+ firstRoot = resource.getContents().get(0);
+ }
+ final StringBuffer strBuffer = new StringBuffer();
+ final URI uri = resource.getURI();
+ final String lastSegment = uri.lastSegment();
+ strBuffer.append(lastSegment);
+ if (firstRoot != null) {
+ strBuffer.append(" - "); //$NON-NLS-1$
+ final EPackage ePackage = firstRoot.eClass().getEPackage();
+ final String nsURI = ePackage.getName();
+ strBuffer.append(nsURI);
+ }
+ if (resource.isModified()) {
+ strBuffer.append(" *"); //$NON-NLS-1$
+ }
+ result = strBuffer.toString();
+ return result;
+ }
+
+ @Override
+ public Image getImage(final Object element) {
+ Image result = super.getImage(element);
+ if (element instanceof Resource) {
+ final Resource resource = (Resource) element;
+ result = getResourceImage(resource);
+ } else if (element instanceof IAdaptable) {
+ final IAdaptable adaptable = (IAdaptable) element;
+ result = adaptAndGetResourceImage(adaptable);
+ } else if (element instanceof EObject) {
+ final EObject eObject = (EObject) element;
+ result = ImageUtils.getImage(eObject);
+ }
+ return result;
+ }
+
+ private static Image adaptAndGetResourceImage(final IAdaptable adaptable) {
+ Image result = null;
+ final Resource resource = (Resource) adaptable
+ .getAdapter(Resource.class);
+ if (resource != null) {
+ result = getResourceImage(resource);
+ }
+ return result;
+ }
+
+ private static Image getResourceImage(final Resource resource) {
+ Image result = null;
+ if (resource.getContents().size() > 0) {
+ final EObject firstRoot = resource.getContents().get(0);
+ result = ImageUtils.getImage(firstRoot);
+ if (result == null) {
+ result = ImageProvider.DEFAULT.getImage(ImageProvider.MODEL);
+ }
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/EmfLabelProviderFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/EmfLabelProviderFactory.java
new file mode 100644
index 00000000000..470af8fda56
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/EmfLabelProviderFactory.java
@@ -0,0 +1,24 @@
+/**
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 406578 - Generic Label Provider for EMF objects
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal;
+
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.IEmfLabelProviderFactory;
+import org.eclipse.jface.viewers.ILabelProvider;
+
+public class EmfLabelProviderFactory implements
+ IEmfLabelProviderFactory {
+
+ public ILabelProvider createLabelProvider() {
+ return new EmfLabelProvider();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/Messages.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/Messages.java
new file mode 100644
index 00000000000..f5a088dd553
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/Messages.java
@@ -0,0 +1,54 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Gregoire Dupe (Mia-Software) - Bug 406570 - Handlers to Save and SaveAs EMF resources
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal;
+
+import org.eclipse.osgi.util.NLS;
+
+public class Messages extends NLS {
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.emf.facet.util.emf.ui.internal.messages"; //$NON-NLS-1$
+ public static String CreateInstanceDialog_selectNewInstanceEClass;
+ public static String PackageRegistryView_initializing;
+ public static String PackageRegistryView_copyNsURI;
+ public static String PackageRegistryView_RefreshingPackageRegistryView;
+ public static String PackageRegistryView_nsURI;
+ public static String PackageRegistryView_Location;
+ public static String PackageRegistryView_Name;
+ public static String DialogUriSelection_RegisteredEPackages;
+ public static String DialogUriSelection_title_OpenModelFromEMFRegistry;
+ public static String EmfFacetRootPreferencePage_default_epackage_browser;
+ public static String EPackageBrowserPreferencePage_defaultEObjectViewer;
+ public static String EPackageBrowserPreferencePage_defaultResourceViewer;
+
+ public static String Select_EClass;
+ public static String Select_EDataType;
+ public static String Select_EClassifier;
+ public static String Select_ETypedElement;
+ public static String Select_EPackage;
+
+ public static String ResourceUiUtils_SavingFailed;
+ public static String ResourceUiUtils_TheResourceSavingFailed;
+ public static String SaveAsDialog_ResourceURI;
+ public static String SaveAsDialog_SaveAs;
+ public static String SaveAsDialog_YouHaveToProvideAValidEMFURI;
+
+ public static String No_result_found;
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/ResourceUiUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/ResourceUiUtils.java
new file mode 100644
index 00000000000..07d600b15d7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/ResourceUiUtils.java
@@ -0,0 +1,97 @@
+/**
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 406570 - Handlers to Save and SaveAs EMF resources
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal;
+
+import java.io.IOException;
+import java.net.MalformedURLException;
+import java.util.Collections;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.dialogs.SaveAsDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IOkDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IOkDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.swt.widgets.Shell;
+
+public final class ResourceUiUtils {
+
+ private ResourceUiUtils() {
+ // Must no be used
+ }
+
+ public static IOkDialog save(final Resource resource, final Shell shell) {
+ IOkDialog dialog = null;
+ try {
+ resource.save(Collections.EMPTY_MAP);
+ } catch (MalformedURLException e) {
+ ResourceUiUtils.openSaveAsDialog(resource, shell);
+ } catch (IOException e) {
+ final IDialogCallback<Void> callBack = new IDialogCallback<Void>() {
+ public void committed(final Void result2) {
+ // Nothing to do.
+ }
+ };
+ dialog = savingFailed(e, shell, callBack);
+ }
+ return dialog;
+ }
+
+ private static IOkDialog savingFailed(final IOException exception,
+ final Shell shell, final IDialogCallback<Void> callBack) {
+ Logger.logError(exception, Activator.getDefault());
+ final String errorMessage = NLS.bind(
+ Messages.ResourceUiUtils_TheResourceSavingFailed,
+ exception.getMessage());
+ return IOkDialogFactory.DEFAULT.openErrorDialog(shell,
+ Messages.ResourceUiUtils_SavingFailed, errorMessage, callBack);
+ }
+
+ public static SaveAsDialog openSaveAsDialog(final Resource resource,
+ final Shell shell) {
+ final IWithResultDialogCallback<String> callBack = new IWithResultDialogCallback<String>() {
+
+ public void commited(final String result) {
+ ResourceUiUtils.saveAs(resource, result, shell);
+ }
+
+ public void canceled(final String result) {
+ // Nothing to do
+ }
+ };
+ final SaveAsDialog dialog = new SaveAsDialog(shell, resource.getURI()
+ .toString(), callBack);
+ dialog.open();
+ return dialog;
+ }
+
+ protected static IOkDialog saveAs(final Resource resource,
+ final String result, final Shell shell) {
+ IOkDialog dialog = null;
+ try {
+ resource.setURI(URI.createURI(result));
+ resource.save(Collections.EMPTY_MAP);
+ } catch (IOException e) {
+ final IDialogCallback<Void> callBack = new IDialogCallback<Void>() {
+ public void committed(final Void result2) {
+ ResourceUiUtils.openSaveAsDialog(resource, shell);
+ }
+ };
+ dialog = savingFailed(e, shell, callBack);
+ }
+ return dialog;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/actions/OpenModelFromEmfRegistryAction.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/actions/OpenModelFromEmfRegistryAction.java
new file mode 100644
index 00000000000..e3ae54145c4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/actions/OpenModelFromEmfRegistryAction.java
@@ -0,0 +1,58 @@
+/*******************************************************************************
+ * Copyright (c) 2008, 2010, 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gabriel Barbier (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software)
+ * Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.actions;
+
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.util.emf.core.IBrowserRegistry;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.dialogs.UriSelectionDialog;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.window.Window;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.IWorkbenchWindowActionDelegate;
+
+/**
+ * This is an action class which opens a dialog to select an EPackage to browse
+ */
+public class OpenModelFromEmfRegistryAction implements IWorkbenchWindowActionDelegate {
+
+ private IWorkbenchWindow fWorkbenchWindow;
+
+ public void dispose() {
+ // nothing
+ }
+
+ public void init(final IWorkbenchWindow window) {
+ this.fWorkbenchWindow = window;
+ }
+
+ public void run(final IAction action) {
+ final IWorkbenchPage activePage = this.fWorkbenchWindow.getActivePage();
+ if (activePage != null) {
+ final UriSelectionDialog launcher = new UriSelectionDialog(
+ this.fWorkbenchWindow.getShell());
+ if (launcher.open() == Window.OK) {
+ final String nsURI = launcher.getUriSelected();
+ if (nsURI != null && nsURI.length() > 0) {
+ EPackage ePackage = EPackage.Registry.INSTANCE.getEPackage(nsURI);
+ IBrowserRegistry.INSTANCE.browseEPackage(ePackage);
+ }
+ }
+ }
+ }
+
+ public void selectionChanged(final IAction action, final ISelection selection) {
+ // nothing
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/dialogs/CreateInstanceDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/dialogs/CreateInstanceDialog.java
new file mode 100644
index 00000000000..038697bc313
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/dialogs/CreateInstanceDialog.java
@@ -0,0 +1,76 @@
+/*******************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Laurent Pichierri (Soft-Maint) - Bug 371204 - Compatibility with Helios
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.dialogs;
+
+import java.util.List;
+import java.util.ListIterator;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ModelUtils;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Messages;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.dialogs.ElementListSelectionDialog;
+
+public final class CreateInstanceDialog {
+
+ private CreateInstanceDialog() {
+ //
+ }
+
+ /**
+ * Open a dialog with a list of metaclasses that are subclasses of the given
+ * {@link EClass}. When the user chooses a metaclass, an instance is created
+ * an returned.
+ *
+ * @param shell
+ * the parent shell for the dialog
+ * @param eClass
+ * the {@link EClass} of the new instance
+ * @param labelProvider
+ * label provider for the displayed {@link EClass}es.
+ * @return the created instance, or <code>null</code> if the user cancelled
+ */
+ public static EObject open(final Shell shell, final EClass eClass,
+ final LabelProvider labelProvider) {
+ List<EClass> allSubClasses = ModelUtils.allSubClasses(eClass);
+ allSubClasses.add(eClass);
+ // remove non-instantiable metaclasses
+ ListIterator<EClass> listIterator = allSubClasses.listIterator();
+ while (listIterator.hasNext()) {
+ EClass e = listIterator.next();
+ if (e.isAbstract() || e.isInterface()) {
+ listIterator.remove();
+ }
+ }
+
+ ElementListSelectionDialog eClassSelectionDialog = new ElementListSelectionDialog(shell,
+ labelProvider);
+ eClassSelectionDialog.setTitle(Messages.CreateInstanceDialog_selectNewInstanceEClass);
+ eClassSelectionDialog.setElements(allSubClasses.toArray());
+ eClassSelectionDialog.open();
+ Object selectedElement = eClassSelectionDialog.getFirstResult();
+ if (selectedElement instanceof EClass) {
+ EClass selectedEClass = (EClass) selectedElement;
+ if (!selectedEClass.isInterface() && !selectedEClass.isAbstract()) {
+ EObject eObject = selectedEClass.getEPackage().getEFactoryInstance()
+ .create(selectedEClass);
+ return eObject;
+ }
+ }
+ return null;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/dialogs/SaveAsDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/dialogs/SaveAsDialog.java
new file mode 100644
index 00000000000..3f7778d246e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/dialogs/SaveAsDialog.java
@@ -0,0 +1,70 @@
+/**
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 406570 - Handlers to Save and SaveAs EMF resources
+ */
+
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.dialogs;
+
+
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Shell;
+
+public class SaveAsDialog extends Dialog {
+
+ private URIComposite uriComposite;
+ private final String initialText;
+ private final IWithResultDialogCallback<String> callBack;
+
+ public SaveAsDialog(final Shell parent, final String initialText,
+ final IWithResultDialogCallback<String> callBack) {
+ super(parent);
+ this.initialText = initialText;
+ this.callBack = callBack;
+ }
+
+ @Override
+ protected Control createDialogArea(final Composite parent) {
+ final Composite composite = new Composite(parent, SWT.NONE);
+ composite.setLayout(new GridLayout(1, false));
+ final Label text = new Label(composite, SWT.NONE);
+ text.setText(Messages.SaveAsDialog_YouHaveToProvideAValidEMFURI);
+ this.uriComposite = new URIComposite(composite, this.initialText);
+ return composite;
+ }
+
+ @Override
+ protected void cancelPressed() {
+ cancelled();
+ }
+
+ public void cancelled() {
+ final String text = this.uriComposite.getText();
+ this.callBack.canceled(text);
+ super.cancelPressed();
+ }
+
+ @Override
+ protected void okPressed() {
+ commit();
+ }
+
+ public void commit() {
+ this.callBack.commited(this.uriComposite.getText());
+ super.okPressed();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/dialogs/URIComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/dialogs/URIComposite.java
new file mode 100644
index 00000000000..66229e409b4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/dialogs/URIComposite.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 406570 - Handlers to Save and SaveAs EMF resources
+ */
+
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.dialogs;
+
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Messages;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Text;
+
+public class URIComposite extends Composite {
+
+ private final Text text;
+
+ public URIComposite(final Composite parent, final String initialText) {
+ super(parent, SWT.NONE);
+ this.setLayout(new GridLayout(2, false));
+ final Label label = new Label(this, SWT.NONE);
+ label.setText(Messages.SaveAsDialog_ResourceURI);
+ this.text = new Text(this, SWT.BORDER);
+ this.text.setText(initialText);
+ this.getShell().setText(Messages.SaveAsDialog_SaveAs);
+ }
+
+ public String getText() {
+ return this.text.getText();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/dialogs/UriSelectionDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/dialogs/UriSelectionDialog.java
new file mode 100644
index 00000000000..00b2d52b41f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/dialogs/UriSelectionDialog.java
@@ -0,0 +1,105 @@
+/**********************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gabriel Barbier (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ ***********************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.dialogs;
+
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeSet;
+
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.utils.ImageProvider;
+import org.eclipse.jface.dialogs.IDialogSettings;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.widgets.AnywhereFilterMatcher;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.dialogs.ElementListSelectionDialog;
+
+/**
+ * A dialog which displays a list of URIs from the EMF package registry, and
+ * allows the user to open one of them.
+ *
+ * @author Gabriel Barbier
+ */
+public class UriSelectionDialog extends ElementListSelectionDialog {
+
+ private static final String DIALOG_SETTINGS = "UriSelectionDialogSettings"; //$NON-NLS-1$
+ private String uri = ""; //$NON-NLS-1$
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent shell
+ */
+ public UriSelectionDialog(final Shell parent) {
+ super(parent, new LabelProvider());
+
+ setTitle(Messages.DialogUriSelection_title_OpenModelFromEMFRegistry);
+ setMessage(Messages.DialogUriSelection_RegisteredEPackages);
+
+ final Set<String> uris = new TreeSet<String>();
+ for (final Object name : ((Map<?, ?>) EPackage.Registry.INSTANCE)
+ .keySet()) {
+ uris.add((name).toString());
+ }
+
+ setElements(uris.toArray());
+ }
+
+ @Override
+ protected Control createDialogArea(final Composite parent) {
+ Composite composite = (Composite) super.createDialogArea(parent);
+ this.fFilteredList.setFilterMatcher(new AnywhereFilterMatcher());
+ return composite;
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.ui.dialogs.SelectionStatusDialog#okPressed()
+ */
+ @Override
+ protected void okPressed() {
+ super.okPressed();
+
+ if (getResult().length > 0) {
+ this.uri = getResult()[0].toString();
+ }
+ }
+
+ public String getUriSelected() {
+ return this.uri;
+ }
+
+ @Override
+ protected void configureShell(final Shell shell) {
+ super.configureShell(shell);
+ shell.setImage(ImageProvider.getInstance().getEmfFacetLogo());
+ }
+
+ @Override
+ protected IDialogSettings getDialogBoundsSettings() {
+ IDialogSettings settings = Activator.getPlugin().getDialogSettings();
+ IDialogSettings section = settings
+ .getSection(UriSelectionDialog.DIALOG_SETTINGS);
+ if (section == null) {
+ section = settings
+ .addNewSection(UriSelectionDialog.DIALOG_SETTINGS);
+ }
+ return section;
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/IEmfLabelProviderFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/IEmfLabelProviderFactory.java
new file mode 100644
index 00000000000..1cd30d9787c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/IEmfLabelProviderFactory.java
@@ -0,0 +1,25 @@
+/**
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 406578 - Generic Label Provider for EMF objects
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported;
+
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.EmfLabelProviderFactory;
+import org.eclipse.jface.viewers.ILabelProvider;
+
+/**
+ * @since 0.4
+ */
+public interface IEmfLabelProviderFactory {
+
+ IEmfLabelProviderFactory DEFAULT = new EmfLabelProviderFactory();
+
+ ILabelProvider createLabelProvider();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/composite/EClassifierSelectionControl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/composite/EClassifierSelectionControl.java
new file mode 100644
index 00000000000..e04b0ccf010
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/composite/EClassifierSelectionControl.java
@@ -0,0 +1,88 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2011, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.composite;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.composite.FilteredElementSelectionComposite;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * A control to select an {@link EClass}, that can be filtered using the
+ * associated text field.
+ *
+ * @since 0.3
+ */
+public class EClassifierSelectionControl<T extends EClassifier> extends
+ FilteredElementSelectionComposite {
+
+ private final Map<String, T> stringToEClass = new HashMap<String, T>();
+ private final Class<? extends EClassifier> eTypeSel;
+ private String metamodelNsUri;
+
+ public EClassifierSelectionControl(final Composite parent,
+ final String metamodelNsUri, final Class<? extends T> eTypeSel) {
+ super(parent, true, false);
+ this.eTypeSel = eTypeSel;
+ this.metamodelNsUri = metamodelNsUri;
+ }
+
+ public void updateList(final String metamodelNsUri2) {
+ this.metamodelNsUri = metamodelNsUri2;
+ final EPackage ePackage = EPackage.Registry.INSTANCE
+ .getEPackage(this.metamodelNsUri);
+ if (ePackage != null) {
+ final List<String> eClasses = new ArrayList<String>();
+ final EList<EClassifier> eClassifiers = ePackage.getEClassifiers();
+ addElements(eClasses, eClassifiers);
+ if (eClasses.isEmpty()) {
+ eClasses.add(Messages.No_result_found);
+ setEnabled(false);
+ } else {
+ setEnabled(true);
+ }
+ setElements(eClasses.toArray());
+ }
+ }
+
+ private void addElements(final List<String> eClasses,
+ final EList<? extends EClassifier> eClassifiers) {
+ for (final EClassifier eClassifier : eClassifiers) {
+ if (this.eTypeSel.isInstance(eClassifier)) {
+ eClasses.add(eClassifier.getName());
+ @SuppressWarnings("unchecked")
+ // @SuppressWarnings("unchecked") checked by the surrounding if
+ final T eClassifier2 = (T) eClassifier;
+ this.stringToEClass.put(eClassifier.getName(), eClassifier2);
+ }
+ }
+ }
+
+ public T getSelectedEClassifier() {
+ T result = null;
+ final Object[] selectElements = getSelectedElements();
+ if ((selectElements != null) && (selectElements.length > 0)
+ && this.stringToEClass.containsKey(selectElements[0])) {
+ result = this.stringToEClass.get(selectElements[0]);
+ }
+ return result;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/widget/component/metaclass/AbstractGetMetaclassWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/widget/component/metaclass/AbstractGetMetaclassWidget.java
new file mode 100644
index 00000000000..a1d5e0d451d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/widget/component/metaclass/AbstractGetMetaclassWidget.java
@@ -0,0 +1,163 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.widget.component.metaclass;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.SelectETypeWizardImpl;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.SynchronizedSelectETypeWizard;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWithWizardButtonWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This abstract class provides a simple way for the selection of a type.
+ *
+ * Label : [ textField ][...] </p>
+ *
+ * The button will display the {@link SelectETypeWizardImpl} wizard when
+ * pressed. </p>
+ *
+ * The {@link #getLabel()} method have to be override and provide the label of
+ * the 'Label'.</p>
+ *
+ * The {@link #createTextField(boolean)} create a non editable text field.</p>
+ *
+ * The {@link #getETypeSelectionOption()} have to be override and type of the
+ * selection in the wizard.</p>
+ *
+ * If the value of the {@link PropertyElement} is null, then the message
+ * returned by {@link #getErrorMessage()} is displayed on the top of the dialog.
+ *
+ * @see SelectETypeWizardImpl
+ * @see ETypeSelectionOptions
+ *
+ * @see GetConformanceMetaclassWidget
+ * @see GetElementTypeWidget
+ * @see GetExtendedMetaclassWidget
+ * @since 0.3
+ */
+public abstract class AbstractGetMetaclassWidget<T extends EClassifier>
+ extends
+ AbstractGetOrCreateElementWithWizardButtonWidget<T, ISelectETypeWizard<T>> {
+
+ private final PropertyElement2<? extends EPackage> ePackagePropery;
+ private final Class<? extends T> eTypeOption;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param editingDomain
+ * the current editing domain.
+ * @param typeProperty
+ * the property element that will be edited by this composite.
+ * @param ePackageProperty
+ * the property element to get the super, main, element of the
+ * model.
+ */
+ protected AbstractGetMetaclassWidget(final Composite parent,
+ final PropertyElement2<T> typeProperty,
+ final PropertyElement2<? extends EPackage> ePackageProperty,
+ final Class<? extends T> eTypeOption) {
+ super(parent, typeProperty);
+ this.ePackagePropery = ePackageProperty;
+ this.eTypeOption = eTypeOption;
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param editingDomain
+ * the current editing domain.
+ * @param propertyElement
+ * the property element that will be edited by this composite.
+ * @param ePackageProperty
+ * the property element to get the super, main, element of the
+ * model.
+ * @param buttonEnabled
+ * boolean to set if the button is enabled or not.
+ */
+ protected AbstractGetMetaclassWidget(final Composite parent,
+ final PropertyElement2<T> propertyElement,
+ final PropertyElement2<EPackage> ePackageProperty,
+ final boolean buttonEnabled, final Class<T> eTypeOption) {
+ this(parent, propertyElement, ePackageProperty, eTypeOption);
+ this.setButtonEnabled(buttonEnabled);
+ }
+
+ /**
+ * @return return the label. Null if no label have to be displayed.
+ */
+ @Override
+ protected abstract String getLabel();
+
+ @Override
+ public String getError() {
+ String error = null;
+ final EClassifier eclassifier = this.getPropertyElement().getValue2();
+ if (eclassifier == null) {
+ error = getErrorMessage();
+ }
+ return error;
+ }
+
+ @Override
+ protected void onWizardCommited(final ISelectETypeWizard<T> wizard) {
+ final T eClassifier = wizard.getSelectedEClassifier();
+ getPropertyElement().setValue2(eClassifier);
+ setText(eClassifier.getName());
+ fireChanged();
+ }
+
+ @Override
+ protected void onWizardCanceled() {
+ fireChanged();
+ }
+
+ /**
+ * Return the EPackage.
+ *
+ * @return the ePackage.
+ */
+ protected abstract EPackage getEPackage();
+
+ /**
+ * @return the facetSetProperty
+ */
+ public PropertyElement2<? extends EPackage> getEPackageProperty() {
+ return this.ePackagePropery;
+ }
+
+ public void setValue(final T eClassifier) {
+ getPropertyElement().setValue2(eClassifier);
+ }
+
+ @Override
+ protected ISelectETypeWizard<T> createIWizard() {
+ final EPackage parent = getEPackage();
+ return new SelectETypeWizardImpl<T>(this.eTypeOption, parent);
+ }
+
+ @Override
+ protected ISelectETypeWizard<T> createSynchronizedWizard(
+ final ISelectETypeWizard<T> wizard) {
+ return new SynchronizedSelectETypeWizard<T>(wizard,
+ this.getDisplay());
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/widget/component/metaclass/MetamodelSelectionControl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/widget/component/metaclass/MetamodelSelectionControl.java
new file mode 100644
index 00000000000..b7f9a415fb1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/widget/component/metaclass/MetamodelSelectionControl.java
@@ -0,0 +1,45 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.widget.component.metaclass;
+
+import java.util.Map;
+import java.util.Set;
+import java.util.TreeSet;
+
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.composite.FilteredElementSelectionComposite;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * A control to select a metamodel from a list of metamodels, that can be
+ * filtered using the associated text field.
+ *
+ * @since 0.3
+ */
+public class MetamodelSelectionControl extends
+ FilteredElementSelectionComposite {
+
+ public MetamodelSelectionControl(final Composite parent) {
+ super(parent, true, false);
+ final Set<String> uris = getUris();
+ setElements(uris.toArray());
+ }
+
+ private static Set<String> getUris() {
+ final Set<String> uris = new TreeSet<String>();
+ for (final Object name : ((Map<?, ?>) EPackage.Registry.INSTANCE)
+ .keySet()) {
+ uris.add(name.toString());
+ }
+ return uris;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/SelectETypeWizardImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/SelectETypeWizardImpl.java
new file mode 100644
index 00000000000..a9fbc38f39f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/SelectETypeWizardImpl.java
@@ -0,0 +1,151 @@
+/**
+ * Copyright (c) 2011, 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 349546 - EMF Facet facetSet editor
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.util.core.DebugUtils;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page.SelectEClassifierWizardPage;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page.SelectEPackageWizardPage;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page.SynchronizedSelectEClassifierWizardPage;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page.SynchronizedSelectEPackageWizardPage;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.page.ISelectEClassifierWizardPage;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.page.ISelectEPackageWizardPage;
+import org.eclipse.jface.window.Window;
+import org.eclipse.jface.wizard.IWizardPage;
+import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.jface.wizard.WizardDialog;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Shell;
+
+/**
+ * @since 0.3
+ */
+public class SelectETypeWizardImpl<T extends EClassifier> extends Wizard
+ implements ISelectETypeWizard<T> {
+
+ private static final boolean DEBUG = DebugUtils.getDebugStatus(Activator
+ .getDefault());
+ private final WizardDialog dialog;
+ private final ISelectEPackageWizardPage ePackageWP;
+ private final ISelectEClassifierWizardPage<T> eClassifierWP;
+ private T eClassifier;
+
+ public SelectETypeWizardImpl(final Class<? extends T> eTypeOption,
+ final EPackage ePackage) {
+ super();
+ this.dialog = new WizardDialog(new Shell(Display.getDefault()),
+ this);
+ this.ePackageWP = new SelectEPackageWizardPage();
+ this.eClassifierWP = new SelectEClassifierWizardPage<T>(eTypeOption,
+ ePackage);
+ if (eTypeOption == EClass.class) {
+ setWindowTitle(Messages.Select_EClass);
+ } else if (eTypeOption == EDataType.class) {
+ setWindowTitle(Messages.Select_EDataType);
+ } else if (eTypeOption == EClassifier.class) {
+ setWindowTitle(Messages.Select_EClassifier);
+ } else if (eTypeOption == ETypedElement.class) {
+ setWindowTitle(Messages.Select_ETypedElement);
+ }
+ }
+
+ @Override
+ public void addPages() {
+ addPage(this.ePackageWP);
+ addPage(this.eClassifierWP);
+ }
+
+ public int open() {
+ int result = Window.CANCEL;
+
+ if (this.dialog != null) {
+ result = this.dialog.open();
+ }
+ return result;
+ }
+
+ @Override
+ public boolean performFinish() {
+ this.eClassifier = this.eClassifierWP.getSelectedEClassifier();
+ return true;
+ }
+
+ public T getSelectedEClassifier() {
+ return this.eClassifier;
+ }
+
+ public ISelectEClassifierWizardPage<T> getSelectEClassifierWizardPage() {
+ return this.eClassifierWP;
+ }
+
+ public ISelectEPackageWizardPage getSelectEPackageWizardPage() {
+ return this.ePackageWP;
+ }
+
+ public boolean finish() {
+ final boolean result = performFinish();
+ dispose();
+ setContainer(null);
+ this.dialog.close();
+ return result;
+ }
+
+ public IWizardPage getCurrentPage() {
+ return getSynchronizedPage(getContainer().getCurrentPage());
+ }
+
+ public IWizardPage next() {
+ DebugUtils.debug(SelectETypeWizardImpl.DEBUG);
+ final IWizardPage nextPage = getNextPage(getContainer()
+ .getCurrentPage());
+ this.dialog.showPage(nextPage);
+ return getSynchronizedPage(nextPage);
+ }
+
+ public IWizardPage previous() {
+ final IWizardPage previousPage = getPreviousPage(getContainer()
+ .getCurrentPage());
+ this.dialog.showPage(previousPage);
+ return getSynchronizedPage(previousPage);
+ }
+
+ private static IWizardPage getSynchronizedPage(final IWizardPage page) {
+ IWizardPage result = null;
+ if (page instanceof ISelectEClassifierWizardPage) {
+ result = new SynchronizedSelectEClassifierWizardPage(
+ (ISelectEClassifierWizardPage<?>) page,
+ Display.getDefault());
+ } else if (page instanceof ISelectEPackageWizardPage) {
+ result = new SynchronizedSelectEPackageWizardPage(
+ (ISelectEPackageWizardPage) page, Display.getDefault());
+ }
+ return result;
+ }
+
+ public void selectPackage(final String packageName) {
+ getSelectEPackageWizardPage().selectPackage(packageName);
+ }
+
+ public void selectEClassifier(final String eClassifierName) {
+ getSelectEClassifierWizardPage().selectEClassifier(eClassifierName);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/SynchronizedSelectETypeWizard.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/SynchronizedSelectETypeWizard.java
new file mode 100644
index 00000000000..111a579e7c6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/SynchronizedSelectETypeWizard.java
@@ -0,0 +1,65 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.widget.component.metaclass.AbstractGetMetaclassWidget;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.ISelectETypeWizard;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.wizard.SynchronizedWizard;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Synchronized class for safe run.
+ *
+ * @see AbstractGetMetaclassWidget
+ * @since 0.3
+ */
+public class SynchronizedSelectETypeWizard<T extends EClassifier> extends
+ SynchronizedWizard<ISelectETypeWizard<T>> implements
+ ISelectETypeWizard<T> {
+
+ /**
+ * Constructor.
+ *
+ * @param object
+ * the to synchronized.
+ * @param display
+ * the display.
+ */
+ public SynchronizedSelectETypeWizard(final ISelectETypeWizard<T> object,
+ final Display display) {
+ super(object, display);
+ }
+
+ public T getSelectedEClassifier() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<T>() {
+ @Override
+ public T safeRun() {
+ return SynchronizedSelectETypeWizard.this
+ .getSynchronizedObject().getSelectedEClassifier();
+ }
+ });
+ }
+
+ @Override
+ public int open() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Integer>() {
+ @Override
+ public Integer safeRun() {
+ return Integer.valueOf(SynchronizedSelectETypeWizard.this
+ .getSynchronizedObject().open());
+ }
+ }).intValue();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SelectEClassifierWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SelectEClassifierWizardPage.java
new file mode 100644
index 00000000000..5433dbb9912
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SelectEClassifierWizardPage.java
@@ -0,0 +1,188 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2011, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page;
+
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.ETypedElement;
+import org.eclipse.papyrus.emf.facet.util.core.DebugUtils;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.composite.EClassifierSelectionControl;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page.exception.SelectedEClassifierRuntimeException;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.page.ISelectEClassifierWizardPage;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.page.ISelectEPackageWizardPage;
+import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.dialogs.FilteredList;
+
+/**
+ * @since 0.3
+ */
+public class SelectEClassifierWizardPage<T extends EClassifier> extends
+ WizardPage implements ISelectEClassifierWizardPage<T> {
+
+ private static final boolean DEBUG = DebugUtils.getDebugStatus(Activator
+ .getDefault());
+ private EClassifierSelectionControl<T> eClassSelection;
+ private final Class<? extends T> eTypeOption;
+ private String metamodelNsUri;
+
+ public SelectEClassifierWizardPage(final Class<? extends T> eTypeOption,
+ final EPackage ePackage) {
+ super("Whatever"); //$NON-NLS-1$
+ if (eTypeOption == EClass.class) {
+ setTitle(Messages.Select_EClass);
+ } else if (eTypeOption == EDataType.class) {
+ setTitle(Messages.Select_EDataType);
+ } else if (eTypeOption == EClassifier.class) {
+ setTitle(Messages.Select_EClassifier);
+ } else if (eTypeOption == ETypedElement.class) {
+ setTitle(Messages.Select_ETypedElement);
+ }
+ if (ePackage != null) {
+ this.metamodelNsUri = ePackage.getNsURI();
+ }
+ this.eTypeOption = eTypeOption;
+ }
+
+ @Override
+ public boolean isPageComplete() {
+ return this.eClassSelection.getSelectedEClassifier() != null;
+ }
+
+ @Override
+ public void setVisible(final boolean visible) {
+ super.setVisible(visible);
+ if (getPreviousPage() instanceof SelectEPackageWizardPage) {
+ final ISelectEPackageWizardPage selectEPackage = (ISelectEPackageWizardPage) getPreviousPage();
+ this.metamodelNsUri = selectEPackage.getSelectedEPackage()
+ .getNsURI();
+ if (this.metamodelNsUri != null) {
+ setDescription(selectEPackage.getSelectedEPackage()
+ .getNsURI());
+ }
+ }
+ this.eClassSelection.updateList(this.metamodelNsUri);
+ }
+
+ public void createControl(final Composite parent) {
+ this.eClassSelection = new EClassifierSelectionControl<T>(parent,
+ this.metamodelNsUri, this.eTypeOption);
+ final FilteredList filteredList = this.eClassSelection
+ .getFilteredList();
+
+ filteredList.addSelectionListener(new SelectionListener() {
+ public void widgetSelected(final SelectionEvent event) {
+ if (event.item != null) {
+ updateButton();
+ // setPageComplete(filteredList.getSelection().length == 1);
+ }
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent event) {
+ if (getWizard().canFinish()) {
+ getWizard().performFinish();
+ }
+ if (getNextPage() != null) {
+ goToNextPage();
+ }
+ }
+ });
+
+ this.eClassSelection.getFilterText().addModifyListener(
+ new ModifyListener() {
+
+ public void modifyText(final ModifyEvent event) {
+ updateButton();
+ }
+ });
+
+ // avoid the page being "complete" when still on a previous page
+ filteredList.setSelection(new int[0]);
+ setPageComplete(false);
+
+ setControl(this.eClassSelection);
+ }
+
+ protected void goToNextPage() {
+ getContainer().showPage(getNextPage());
+ }
+
+ protected void updateButton() {
+ if ((getContainer() != null) && (getContainer().getCurrentPage() != null)) {
+ getContainer().updateButtons();
+ }
+ }
+
+ public T getSelectedEClassifier() {
+ return this.eClassSelection.getSelectedEClassifier();
+ }
+
+ /**
+ * Select the <code>eclassifierName</code> into the list.
+ *
+ * @param eclassifierName
+ * the name of the classifier to select.
+ */
+ public void selectEClassifier(final String eclassifierName) {
+ DebugUtils.debug(DEBUG);
+ boolean doItNow = true;
+ // We get all the jobs
+ for (final Job job : Job.getJobManager().find(null)) {
+ // We check if the job of 'FilteredList' is ended. If not, we
+ // recursively call this method to check again without interfering
+ // with the 'FilteredList' job (doing an asynchrony call).
+ if (job.getClass().getName()
+ .startsWith(FilteredList.class.getName())) {
+ asyncSelectionClassifier(eclassifierName);
+ DebugUtils.debug(DEBUG, "Selection defered."); //$NON-NLS-1$
+ doItNow = false;
+ break;
+ }
+ }
+
+ // If the job 'FilteredList' is done, we can do the selection.
+ if (doItNow) {
+ internalSelectEClassifier(eclassifierName);
+ }
+ }
+
+ private void asyncSelectionClassifier(final String eclassifierName) {
+ Display.getDefault().asyncExec(new Runnable() {
+ public void run() {
+ selectEClassifier(eclassifierName);
+ }
+ });
+ }
+
+ private void internalSelectEClassifier(final String packageName) {
+ final FilteredList filteredList = this.eClassSelection
+ .getFilteredList();
+ filteredList.setSelection(new String[] { packageName });
+ if (getSelectedEClassifier() == null) {
+ throw new SelectedEClassifierRuntimeException();
+ }
+ DebugUtils.debug(DEBUG, "Selection setting finished."); //$NON-NLS-1$
+ DebugUtils.debug(DEBUG,
+ "selectedEClassifier=" + getSelectedEClassifier()); //$NON-NLS-1$
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SelectEPackageWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SelectEPackageWizardPage.java
new file mode 100644
index 00000000000..0fda4e6d76f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SelectEPackageWizardPage.java
@@ -0,0 +1,190 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2011, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page;
+
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EPackage.Registry;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.util.core.DebugUtils;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.widget.component.metaclass.MetamodelSelectionControl;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page.exception.SelectedEPackageRuntimeException;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.page.ISelectEPackageWizardPage;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.util.EditingUtil;
+import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.dialogs.FilteredList;
+
+/**
+ * @since 0.3
+ */
+public class SelectEPackageWizardPage extends WizardPage implements
+ ISelectEPackageWizardPage {
+
+ private static final boolean DEBUG = DebugUtils.getDebugStatus(Activator
+ .getDefault());
+
+ private MetamodelSelectionControl mmSelectionCtl;
+
+ public SelectEPackageWizardPage() {
+ super("Whatever"); //$NON-NLS-1$
+ setTitle(Messages.Select_EPackage);
+ }
+
+ @Override
+ public void setVisible(final boolean visible) {
+ super.setVisible(visible);
+ if (visible) {
+ this.mmSelectionCtl.getFilterText().setFocus();
+ setPageComplete(true);
+ }
+ }
+
+ public void createControl(final Composite parent) {
+ this.mmSelectionCtl = new MetamodelSelectionControl(parent);
+ this.mmSelectionCtl.setLayoutData(new GridData(
+ GridData.FILL_BOTH));
+ final FilteredList filteredList = this.mmSelectionCtl
+ .getFilteredList();
+
+ filteredList.addSelectionListener(new SelectionListener() {
+
+ public void widgetSelected(final SelectionEvent event) {
+ if (event.item != null) {
+ setPageComplete(filteredList.getSelection().length == 1);
+ }
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent event) {
+ if (getWizard().canFinish()) {
+ getWizard().performFinish();
+ }
+ if (getNextPage() != null) {
+ goToNextPage();
+ }
+ }
+ });
+
+ // prevent the page from being "complete" when still on a previous page
+ filteredList.setSelection(new int[0]);
+ setPageComplete(false);
+ setControl(this.mmSelectionCtl);
+ }
+
+ protected void goToNextPage() {
+ getContainer().showPage(getNextPage());
+ }
+
+ public EPackage getSelectedEPackage() {
+ EPackage ePackage = null;
+ // Only one result
+ if (this.mmSelectionCtl.getSelectedElements() != null) {
+ final Object result = this.mmSelectionCtl
+ .getSelectedElements()[0];
+ if (EPackage.Registry.INSTANCE.containsKey(result.toString())) {
+ ePackage = EPackage.Registry.INSTANCE
+ .getEPackage(result.toString());
+ }
+ }
+ return ePackage;
+ }
+
+ public void loadSelectedMetamodel() {
+ final Object[] results = this.mmSelectionCtl
+ .getSelectedElements();
+ // if user cancel the selection of meta models, results = null
+ if (results != null) {
+ final ResourceSet resourceSet = EditingUtil.getEditingDomain()
+ .getResourceSet();
+ for (final Object result : results) {
+ final URI uri = URI.createURI(result.toString());
+ final Resource resource = resourceSet.getResource(uri, true);
+ if (!resourceSet.getResources().contains(resource)) {
+ final Registry packageRegistry = resourceSet
+ .getPackageRegistry();
+ packageRegistry.putAll(putResourceContents(resource,
+ packageRegistry));
+ resourceSet.getResources().add(resource);
+ }
+ }
+ }
+ }
+
+ private static Registry putResourceContents(final Resource resource,
+ final Registry packageRegistry) {
+ final Registry result = packageRegistry;
+ for (final EObject eObject : resource.getContents()) {
+ if (eObject instanceof EPackage) {
+ final EPackage ePackage = (EPackage) eObject;
+ result.put(ePackage.getNsURI(), ePackage);
+ }
+ }
+ return result;
+ }
+
+ /**
+ * Select the <code>packageName</code> into the list.
+ *
+ * @param packageName
+ * the name of the package to select.
+ */
+ public void selectPackage(final String packageName) {
+ DebugUtils.debug(DEBUG);
+ boolean doItNow = true;
+ // We get all the jobs
+ for (final Job job : Job.getJobManager().find(null)) {
+ // We check if the job of 'FilteredList' is ended. If not, we
+ // recursively call this method to check again without interfering
+ // with the 'FilteredList' job (with an asynchrony call).
+ if (job.getClass().getName()
+ .startsWith(FilteredList.class.getName())) {
+ asyncSelectionPackage(packageName);
+ DebugUtils.debug(DEBUG, "Selection defered."); //$NON-NLS-1$
+ doItNow = false;
+ break;
+ }
+ }
+
+ // If the job 'FilteredList' is done, we can do the selection.
+ if (doItNow) {
+ internalSelectPackage(packageName);
+ }
+ }
+
+ private void asyncSelectionPackage(final String packageName) {
+ Display.getDefault().asyncExec(new Runnable() {
+ public void run() {
+ selectPackage(packageName);
+ }
+ });
+ }
+
+ private void internalSelectPackage(final String packageName) {
+ final FilteredList filteredList = this.mmSelectionCtl
+ .getFilteredList();
+ filteredList.setSelection(new String[] { packageName });
+ if (getSelectedEPackage() == null) {
+ throw new SelectedEPackageRuntimeException();
+ }
+ DebugUtils.debug(DEBUG, "Selection setting finished."); //$NON-NLS-1$
+ DebugUtils.debug(DEBUG, "selectedEPackage=" + getSelectedEPackage()); //$NON-NLS-1$
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SynchronizedSelectEClassifierWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SynchronizedSelectEClassifierWizardPage.java
new file mode 100644
index 00000000000..e63154c64c3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SynchronizedSelectEClassifierWizardPage.java
@@ -0,0 +1,78 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.papyrus.emf.facet.util.core.DebugUtils;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.page.ISelectEClassifierWizardPage;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Synchronized class for safe run.
+ *
+ * @since 0.3
+ *
+ */
+public class SynchronizedSelectEClassifierWizardPage extends
+ SynchronizedWizardPage<ISelectEClassifierWizardPage> implements
+ ISelectEClassifierWizardPage {
+
+ private static final boolean DEBUG = DebugUtils.getDebugStatus(Activator
+ .getDefault());
+
+ /**
+ * Constructor.
+ *
+ * @param object
+ * the to synchronized.
+ * @param display
+ * the display.
+ */
+ public SynchronizedSelectEClassifierWizardPage(
+ final ISelectEClassifierWizardPage object, final Display display) {
+ super(object, display);
+ }
+
+ public EClassifier getSelectedEClassifier() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<EClassifier>() {
+ @Override
+ public EClassifier safeRun() {
+ return SynchronizedSelectEClassifierWizardPage.this
+ .getSynchronizedObject()
+ .getSelectedEClassifier();
+ }
+ });
+ }
+
+ public void selectEClassifier(final String selection) {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedSelectEClassifierWizardPage.this
+ .getSynchronizedObject().selectEClassifier(
+ selection);
+ }
+ });
+
+ // We keep the thread waiting until the selection is not done.
+ // If we release the thread, the selection may not be done and made some
+ // errors
+ while (this.getSelectedEClassifier() == null) {
+ DebugUtils.debug(DEBUG, "Waiting."); //$NON-NLS-1$
+ }
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SynchronizedSelectEPackageWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SynchronizedSelectEPackageWizardPage.java
new file mode 100644
index 00000000000..4b6e2fe4e39
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SynchronizedSelectEPackageWizardPage.java
@@ -0,0 +1,75 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page;
+
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.facet.util.core.DebugUtils;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.page.ISelectEPackageWizardPage;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Synchronized class for safe run.
+ *
+ * @author amenager_stage
+ * @since 0.3
+ *
+ */
+public class SynchronizedSelectEPackageWizardPage extends
+ SynchronizedWizardPage<ISelectEPackageWizardPage> implements
+ ISelectEPackageWizardPage {
+
+ private static final boolean DEBUG = DebugUtils.getDebugStatus(Activator
+ .getDefault());
+
+ /**
+ * Constructor.
+ *
+ * @param object
+ * the to synchronized.
+ * @param display
+ * the display.
+ */
+ public SynchronizedSelectEPackageWizardPage(
+ final ISelectEPackageWizardPage object, final Display display) {
+ super(object, display);
+ }
+
+ public EPackage getSelectedEPackage() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<EPackage>() {
+ @Override
+ public EPackage safeRun() {
+ return SynchronizedSelectEPackageWizardPage.this
+ .getSynchronizedObject().getSelectedEPackage();
+ }
+ });
+ }
+
+ public void selectPackage(final String selection) {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedSelectEPackageWizardPage.this
+ .getSynchronizedObject().selectPackage(selection);
+ }
+ });
+
+ // We keep the thread waiting until the selection is not done.
+ // If we release the thread, the selection may not be done and made some
+ // errors
+ while (this.getSelectedEPackage() == null) {
+ DebugUtils.debug(DEBUG, "Waiting."); //$NON-NLS-1$
+ }
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SynchronizedWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SynchronizedWizardPage.java
new file mode 100644
index 00000000000..71c544ed85a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/SynchronizedWizardPage.java
@@ -0,0 +1,260 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.jface.wizard.IWizard;
+import org.eclipse.jface.wizard.IWizardPage;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Synchronized class for safe run.
+ *
+ * @author amenager_stage
+ * @since 0.3
+ *
+ */
+public class SynchronizedWizardPage<WP extends IWizardPage> extends
+ SynchronizedObject<WP>
+ implements IWizardPage {
+
+ /**
+ * Constructor.
+ *
+ * @param object
+ * the to synchronized.
+ * @param display
+ * the display.
+ */
+ public SynchronizedWizardPage(final WP object,
+ final Display display) {
+ super(object, display);
+ }
+
+ public void createControl(final Composite parent) {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedWizardPage.this.getSynchronizedObject()
+ .createControl(parent);
+ }
+ });
+ }
+
+ public void dispose() {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedWizardPage.this.getSynchronizedObject().dispose();
+ }
+ });
+ }
+
+ public Control getControl() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Control>() {
+ @Override
+ public Control safeRun() {
+ return SynchronizedWizardPage.this.getSynchronizedObject()
+ .getControl();
+ }
+ });
+ }
+
+ public String getDescription() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<String>() {
+ @Override
+ public String safeRun() {
+ return SynchronizedWizardPage.this.getSynchronizedObject()
+ .getDescription();
+ }
+ });
+ }
+
+ public String getErrorMessage() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<String>() {
+ @Override
+ public String safeRun() {
+ return SynchronizedWizardPage.this.getSynchronizedObject()
+ .getErrorMessage();
+ }
+ });
+ }
+
+ public Image getImage() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Image>() {
+ @Override
+ public Image safeRun() {
+ return SynchronizedWizardPage.this.getSynchronizedObject()
+ .getImage();
+ }
+ });
+ }
+
+ public String getMessage() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<String>() {
+ @Override
+ public String safeRun() {
+ return SynchronizedWizardPage.this.getSynchronizedObject()
+ .getMessage();
+ }
+ });
+ }
+
+ public String getTitle() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<String>() {
+ @Override
+ public String safeRun() {
+ return SynchronizedWizardPage.this.getSynchronizedObject()
+ .getTitle();
+ }
+ });
+ }
+
+ public void performHelp() {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedWizardPage.this.getSynchronizedObject()
+ .performHelp();
+ }
+ });
+ }
+
+ public void setDescription(final String description) {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedWizardPage.this.getSynchronizedObject()
+ .setDescription(description);
+ }
+ });
+ }
+
+ public void setImageDescriptor(final ImageDescriptor image) {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedWizardPage.this.getSynchronizedObject()
+ .setImageDescriptor(image);
+ }
+ });
+ }
+
+ public void setTitle(final String title) {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedWizardPage.this.getSynchronizedObject().setTitle(
+ title);
+ }
+ });
+ }
+
+ public void setVisible(final boolean visible) {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedWizardPage.this.getSynchronizedObject().setVisible(
+ visible);
+ }
+ });
+ }
+
+ public boolean canFlipToNextPage() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedWizardPage.this
+ .getSynchronizedObject()
+ .canFlipToNextPage());
+ }
+ }).booleanValue();
+ }
+
+ public IWizardPage getNextPage() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IWizardPage>() {
+ @Override
+ public IWizardPage safeRun() {
+ return SynchronizedWizardPage.this
+ .getSynchronizedObject().getNextPage();
+ }
+ });
+ }
+
+ public IWizardPage getPreviousPage() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IWizardPage>() {
+ @Override
+ public IWizardPage safeRun() {
+ return SynchronizedWizardPage.this
+ .getSynchronizedObject().getPreviousPage();
+ }
+ });
+ }
+
+ public IWizard getWizard() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<IWizard>() {
+ @Override
+ public IWizard safeRun() {
+ return SynchronizedWizardPage.this.getSynchronizedObject()
+ .getWizard();
+ }
+ });
+ }
+
+ public boolean isPageComplete() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedWizardPage.this
+ .getSynchronizedObject().isPageComplete());
+ }
+ }).booleanValue();
+ }
+
+ public void setPreviousPage(final IWizardPage page) {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedWizardPage.this.getSynchronizedObject()
+ .setPreviousPage(page);
+ }
+ });
+ }
+
+ public void setWizard(final IWizard newWizard) {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedWizardPage.this.getSynchronizedObject().setWizard(
+ newWizard);
+ }
+ });
+ }
+
+ public String getName() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<String>() {
+ @Override
+ public String safeRun() {
+ return SynchronizedWizardPage.this.getSynchronizedObject()
+ .getName();
+ }
+ });
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/exception/SelectedEClassifierRuntimeException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/exception/SelectedEClassifierRuntimeException.java
new file mode 100644
index 00000000000..0461084bd50
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/exception/SelectedEClassifierRuntimeException.java
@@ -0,0 +1,39 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page.exception;
+
+/**
+ * @since 0.3
+ */
+public class SelectedEClassifierRuntimeException extends RuntimeException {
+
+
+ private static final long serialVersionUID = -1021467669726982508L;
+
+ public SelectedEClassifierRuntimeException() {
+ super(
+ "List not totally loaded. Check if the list's job is done before doing the selection."); //$NON-NLS-1$
+ }
+
+ public SelectedEClassifierRuntimeException(final String message) {
+ super(message);
+ }
+
+ public SelectedEClassifierRuntimeException(final String message,
+ final Throwable cause) {
+ super(message, cause);
+ }
+
+ public SelectedEClassifierRuntimeException(final Throwable cause) {
+ super(cause);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/exception/SelectedEPackageRuntimeException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/exception/SelectedEPackageRuntimeException.java
new file mode 100644
index 00000000000..fdad621a71b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/util/wizard/page/exception/SelectedEPackageRuntimeException.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page.exception;
+
+/**
+ * Exception when the list (where the selection has to be done) is not totally
+ * loaded.
+ *
+ * @since 0.3
+ */
+public class SelectedEPackageRuntimeException extends RuntimeException {
+
+ private static final long serialVersionUID = -5317379187255054199L;
+
+ public SelectedEPackageRuntimeException() {
+ super(
+ "List not totally loaded. Check if the list's job is done before doing the selection."); //$NON-NLS-1$
+ }
+
+ public SelectedEPackageRuntimeException(final String message) {
+ super(message);
+ }
+
+ public SelectedEPackageRuntimeException(final String message,
+ final Throwable cause) {
+ super(message, cause);
+ }
+
+ public SelectedEPackageRuntimeException(final Throwable cause) {
+ super(cause);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/wizard/ISelectETypeWizard.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/wizard/ISelectETypeWizard.java
new file mode 100644
index 00000000000..6fce046126d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/wizard/ISelectETypeWizard.java
@@ -0,0 +1,25 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.wizard.IExtendedWizard;
+
+/**
+ * @since 0.3
+ */
+public interface ISelectETypeWizard<T extends EClassifier> extends
+ IExtendedWizard {
+
+ T getSelectedEClassifier();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/wizard/page/ISelectEClassifierWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/wizard/page/ISelectEClassifierWizardPage.java
new file mode 100644
index 00000000000..450e91fdb47
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/wizard/page/ISelectEClassifierWizardPage.java
@@ -0,0 +1,43 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.page;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.util.wizard.page.SelectEClassifierWizardPage;
+import org.eclipse.jface.wizard.IWizardPage;
+
+/**
+ * Interface for {@link SelectEClassifierWizardPage}.
+ *
+ * @see SelectEClassifierWizardPage
+ * @since 0.3
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ISelectEClassifierWizardPage<T extends EClassifier> extends
+ IWizardPage {
+
+ /**
+ * @return the selected {@link EClassifier}.
+ */
+ T getSelectedEClassifier();
+
+ /**
+ * Set the {@link EClassifier}.
+ *
+ * @param selection
+ * the name of the {@link EClassifier} to select.
+ */
+ void selectEClassifier(final String selection);
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/wizard/page/ISelectEPackageWizardPage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/wizard/page/ISelectEPackageWizardPage.java
new file mode 100644
index 00000000000..933428333ad
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/exported/wizard/page/ISelectEPackageWizardPage.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.exported.wizard.page;
+
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.jface.wizard.IWizardPage;
+
+/**
+ * Interface for {@link SelectEPackageWizardPage}.
+ *
+ * @see SelectEPackageWizardPage
+ * @since 0.3
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ISelectEPackageWizardPage extends IWizardPage {
+
+ /**
+ * @return the first {@link EPackage} selected in the list.
+ */
+ EPackage getSelectedEPackage();
+
+ /**
+ * Set the {@link EPackage} to select.
+ *
+ * @param selection
+ * the name of the {@link EPackage} to select.
+ */
+ void selectPackage(final String selection);
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/handler/SaveAsHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/handler/SaveAsHandler.java
new file mode 100644
index 00000000000..33bec73672e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/handler/SaveAsHandler.java
@@ -0,0 +1,94 @@
+/**
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 406570 - Handlers to Save and SaveAs EMF resources
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.handler;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.commands.IHandler;
+import org.eclipse.core.commands.IHandlerListener;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.ResourceUiUtils;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.ISelectionService;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.handlers.HandlerUtil;
+
+public class SaveAsHandler implements IHandler {
+
+ public void addHandlerListener(final IHandlerListener handlerListener) {
+ // Nothing to do
+ }
+
+ public void dispose() {
+ // Nothing to do
+ }
+
+ public Object execute(final ExecutionEvent event) throws ExecutionException {
+ final Shell shell = HandlerUtil.getActiveShell(event);
+ for (Object object : getSelection()) {
+ if (object instanceof Resource) {
+ final Resource resource = (Resource) object;
+ ResourceUiUtils.openSaveAsDialog(resource, shell);
+ } else if (object instanceof IAdaptable) {
+ final IAdaptable adaptable = (IAdaptable) object;
+ final Resource resource = (Resource) adaptable
+ .getAdapter(Resource.class);
+ if (resource != null) {
+ ResourceUiUtils.openSaveAsDialog(resource, shell);
+ }
+ }
+ }
+ return null;
+ }
+
+ public boolean isEnabled() {
+ return true;
+ }
+
+ public boolean isHandled() {
+ return isEnabled();
+ }
+
+ public void removeHandlerListener(final IHandlerListener handlerListener) {
+ // Nothing to do
+ }
+
+ private static <E> List<E> getSelection() {
+ final List<E> result = new ArrayList<E>();
+ final IWorkbenchWindow wWindow = getActiveWindow();
+ final ISelectionService selectService = wWindow.getSelectionService();
+ final ISelection selection = selectService.getSelection();
+ if (selection instanceof StructuredSelection) {
+ final StructuredSelection structS = (StructuredSelection) selection;
+ @SuppressWarnings("unchecked")
+ // @SuppressWarnings This cast is unsafe but the framework does not
+ // provide other way to do
+ final List<E> list = structS.toList();
+ result.addAll(list);
+ }
+ return result;
+ }
+
+ private static IWorkbenchWindow getActiveWindow() {
+ final IWorkbench workbench = PlatformUI.getWorkbench();
+ return workbench.getActiveWorkbenchWindow();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/handler/SaveHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/handler/SaveHandler.java
new file mode 100644
index 00000000000..77b6a094b0d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/handler/SaveHandler.java
@@ -0,0 +1,95 @@
+/**
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 406570 - Handlers to Save and SaveAs EMF resources
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.handler;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.commands.IHandler;
+import org.eclipse.core.commands.IHandlerListener;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.ResourceUiUtils;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.ISelectionService;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.handlers.HandlerUtil;
+
+public class SaveHandler implements IHandler {
+
+ public void addHandlerListener(final IHandlerListener handlerListener) {
+ // Nothing to do
+ }
+
+ public void dispose() {
+ // Nothing to do
+ }
+
+ public Object execute(final ExecutionEvent event) throws ExecutionException {
+ final Shell shell = HandlerUtil.getActiveShell(event);
+ for (Object object : getSelection()) {
+ if (object instanceof Resource) {
+ final Resource resource = (Resource) object;
+ ResourceUiUtils.save(resource, shell);
+ } else if (object instanceof IAdaptable) {
+ final IAdaptable adaptable = (IAdaptable) object;
+ final Resource resource = (Resource) adaptable
+ .getAdapter(Resource.class);
+ if (resource != null) {
+ ResourceUiUtils.save(resource, shell);
+ }
+ }
+ }
+ return null;
+ }
+
+ public boolean isEnabled() {
+ return true;
+ }
+
+ public boolean isHandled() {
+ return isEnabled();
+ }
+
+ public void removeHandlerListener(final IHandlerListener handlerListener) {
+ // Nothing to do
+ }
+
+ private static <E> List<E> getSelection() {
+ final List<E> result = new ArrayList<E>();
+ final IWorkbenchWindow wWindow = getActiveWindow();
+ final ISelectionService selectService = wWindow.getSelectionService();
+ wWindow.getActivePage().getActivePart();
+ final ISelection selection = selectService.getSelection();
+ if (selection instanceof StructuredSelection) {
+ final StructuredSelection structS = (StructuredSelection) selection;
+ @SuppressWarnings("unchecked")
+ // @SuppressWarnings This cast is unsafe but the framework does not
+ // provide other way to do
+ final List<E> list = structS.toList();
+ result.addAll(list);
+ }
+ return result;
+ }
+
+ private static IWorkbenchWindow getActiveWindow() {
+ final IWorkbench workbench = PlatformUI.getWorkbench();
+ return workbench.getActiveWorkbenchWindow();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/messages.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/messages.properties
new file mode 100644
index 00000000000..7aa88f7a583
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/messages.properties
@@ -0,0 +1,40 @@
+###############################################################################
+# Copyright (c) 2011, 2012 Mia-Software and CEA LIST.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+# Nicolas Bros (Mia-Software) - Copy of data form /org.eclipse.papyrus.emf.facet.infra.common.ui/src/org/eclipse/emf/facet/infra/common/ui/messages.properties
+# Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+# Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+# Gregoire Dupe (Mia-Software) - Bug 406570 - Handlers to Save and SaveAs EMF resources
+###############################################################################
+PackageRegistryView_copyNsURI=Copy nsURI
+PackageRegistryView_initializing=Initializing...
+PackageRegistryView_Location=Location
+PackageRegistryView_Name=Name
+PackageRegistryView_nsURI=nsUri
+PackageRegistryView_RefreshingPackageRegistryView=Refreshing EPackage Registry View
+DialogUriSelection_RegisteredEPackages=Registered EPackages:
+DialogUriSelection_title_OpenModelFromEMFRegistry=Open Model From EMF Registry
+EmfFacetRootPreferencePage_default_epackage_browser=Default EPackage Model Viewer
+EPackageBrowserPreferencePage_defaultEObjectViewer=Default EObject Model Viewer
+EPackageBrowserPreferencePage_defaultResourceViewer=Default Resource Model Viewer
+CreateInstanceDialog_selectNewInstanceEClass=Select new instance metaclass
+
+Select_EClass=Select an EClass
+Select_EClassifier=Select an EClassifier
+Select_EDataType=Select an EDataType
+Select_EPackage=Select an EPackage
+Select_ETypedElement= Select an ETypedElement
+
+No_result_found=No result found
+
+ResourceUiUtils_SavingFailed=Saving failed
+ResourceUiUtils_TheResourceSavingFailed=The resource saving failed: {0} \n See error for more details.
+SaveAsDialog_ResourceURI=Resource URI
+SaveAsDialog_SaveAs=Save As
+SaveAsDialog_YouHaveToProvideAValidEMFURI=You have to provide a valid EMF URI such as:\n - file:/C:/my_file.xmi\n - platform:/resource/my_projet/my_folder/my_file.xmi
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/preference/pages/DefaultBrowserPreferencePage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/preference/pages/DefaultBrowserPreferencePage.java
new file mode 100644
index 00000000000..0b3fccd43da
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/preference/pages/DefaultBrowserPreferencePage.java
@@ -0,0 +1,106 @@
+/**********************************************************************************
+ * Copyright (c) 2009, 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software)
+ * Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ * Nicolas Bros (Mia-Software) - Bug 335218 - Extension point for registering EObject, EPackage, model editor
+ ***********************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.preference.pages;
+
+import java.util.List;
+
+import org.eclipse.core.runtime.preferences.InstanceScope;
+import org.eclipse.papyrus.emf.facet.util.emf.core.IBrowserRegistry;
+import org.eclipse.papyrus.emf.facet.util.emf.core.IEObjectBrowserOpener;
+import org.eclipse.papyrus.emf.facet.util.emf.core.IEPackageBrowserOpener;
+import org.eclipse.papyrus.emf.facet.util.emf.core.IResourceBrowserOpener;
+import org.eclipse.papyrus.emf.facet.util.emf.core.internal.preferences.PreferenceConstants;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Messages;
+import org.eclipse.jface.preference.ComboFieldEditor;
+import org.eclipse.jface.preference.FieldEditorPreferencePage;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPreferencePage;
+import org.eclipse.ui.preferences.ScopedPreferenceStore;
+
+/**
+ * This class implements a preference page that allows the user to choose which EPackage Browser
+ * they want to use.
+ */
+public class DefaultBrowserPreferencePage extends FieldEditorPreferencePage implements
+ IWorkbenchPreferencePage {
+
+ public DefaultBrowserPreferencePage() {
+ super(FieldEditorPreferencePage.GRID);
+ ScopedPreferenceStore scopedPreferenceStore = new ScopedPreferenceStore(
+ new InstanceScope(),
+ org.eclipse.papyrus.emf.facet.util.emf.core.internal.Activator.PLUGIN_ID);
+ setPreferenceStore(scopedPreferenceStore);
+ }
+
+ /**
+ * Creates the field editors. Field editors are abstractions of the common GUI blocks needed to
+ * manipulate various types of preferences. Each field editor knows how to save and restore
+ * itself.
+ */
+ @Override
+ public void createFieldEditors() {
+ createResourceOpenerField();
+ createEObjectOpenerField();
+ createEPackageOpenerField();
+ }
+
+ private void createEPackageOpenerField() {
+ List<IEPackageBrowserOpener> openers = IBrowserRegistry.INSTANCE
+ .getAllRegisteredEPackageBrowsers();
+ int size = openers.size();
+ String[][] entryNamesAndValues = new String[size][2];
+ for (int i = 0; i < size; i++) {
+ IEPackageBrowserOpener opener = openers.get(i);
+ entryNamesAndValues[i][0] = opener.getBrowserName();
+ entryNamesAndValues[i][1] = opener.getClass().getName();
+ }
+ addField(new ComboFieldEditor(PreferenceConstants.P_DEFAULT_EPACKAGE_VIEWER,
+ Messages.EmfFacetRootPreferencePage_default_epackage_browser, entryNamesAndValues,
+ getFieldEditorParent()));
+ }
+
+ private void createEObjectOpenerField() {
+ List<IEObjectBrowserOpener> openers = IBrowserRegistry.INSTANCE
+ .getAllRegisteredEObjectBrowsers();
+ int size = openers.size();
+ String[][] entryNamesAndValues = new String[size][2];
+ for (int i = 0; i < size; i++) {
+ IEObjectBrowserOpener opener = openers.get(i);
+ entryNamesAndValues[i][0] = opener.getBrowserName();
+ entryNamesAndValues[i][1] = opener.getClass().getName();
+ }
+ addField(new ComboFieldEditor(PreferenceConstants.P_DEFAULT_EOBJECT_VIEWER,
+ Messages.EPackageBrowserPreferencePage_defaultEObjectViewer, entryNamesAndValues,
+ getFieldEditorParent()));
+ }
+
+ private void createResourceOpenerField() {
+ List<IResourceBrowserOpener> openers = IBrowserRegistry.INSTANCE
+ .getAllRegisteredResourceBrowsers();
+ int size = openers.size();
+ String[][] entryNamesAndValues = new String[size][2];
+ for (int i = 0; i < size; i++) {
+ IResourceBrowserOpener opener = openers.get(i);
+ entryNamesAndValues[i][0] = opener.getBrowserName();
+ entryNamesAndValues[i][1] = opener.getClass().getName();
+ }
+ addField(new ComboFieldEditor(PreferenceConstants.P_DEFAULT_RESOURCE_VIEWER,
+ Messages.EPackageBrowserPreferencePage_defaultResourceViewer, entryNamesAndValues,
+ getFieldEditorParent()));
+ }
+
+ public void init(final IWorkbench workbench) {
+ // Nothing to do
+ }
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/utils/ImageProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/utils/ImageProvider.java
new file mode 100644
index 00000000000..e15f9eed943
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/utils/ImageProvider.java
@@ -0,0 +1,62 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ * Gregoire Dupe (Mia-Software) - Bug 406578 - Generic Label Provider for EMF objects
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.utils;
+
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.swt.imageprovider.IImageProvider;
+import org.eclipse.papyrus.emf.facet.util.swt.imageprovider.IImageProviderFactory;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.swt.graphics.Image;
+
+/**
+ * Provides icons for EMF Facet, and caches them.
+ */
+public final class ImageProvider {
+ public static final String EMFFACET_LOGO = "icons/logoEmfFacetMini.gif"; //$NON-NLS-1$
+ public static final String CATALOG = "icons/catalog.png"; //$NON-NLS-1$
+ public static final String MODEL = "icons/ModelIcon.gif"; //$NON-NLS-1$
+
+ private static final ImageProvider SINGLETON = new ImageProvider();
+ public static final IImageProvider DEFAULT = IImageProviderFactory.DEFAULT
+ .createIImageProvider(Activator.getDefault());
+
+ private ImageProvider() {
+ // Must not be used
+ }
+
+ @Deprecated
+ public static ImageProvider getInstance() {
+ return ImageProvider.SINGLETON;
+ }
+
+ @SuppressWarnings("static-method")
+ // @SuppressWarnings("static-method") This warning is caused by the
+ // redirection code associated to the deprecation of this method.
+ @Deprecated
+ public Image getEmfFacetLogo() {
+ return DEFAULT.getImage(EMFFACET_LOGO);
+ }
+
+ @Deprecated
+ public static ImageDescriptor getEmfFacetLogoDescriptor() {
+ return DEFAULT.createImageDescriptor(ImageProvider.EMFFACET_LOGO);
+ }
+
+ /** Return the icon representing a bidirectional link */
+ @SuppressWarnings("static-method")
+ // @SuppressWarnings("static-method") This warning is caused by the
+ // redirection code associated to the deprecation of this method.
+ @Deprecated
+ public Image getCatalogIcon() {
+ return DEFAULT.getImage(CATALOG);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/utils/ImageUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/utils/ImageUtils.java
new file mode 100644
index 00000000000..81f1e0a0577
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/utils/ImageUtils.java
@@ -0,0 +1,55 @@
+/*******************************************************************************
+ * Copyright (c) 2009 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software)
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.utils;
+
+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.IItemLabelProvider;
+import org.eclipse.emf.edit.ui.provider.ExtendedImageRegistry;
+import org.eclipse.swt.graphics.Image;
+
+/**
+ * Utility class for handling {@link Image}s.
+ *
+ * @author Gregoire Dupe
+ */
+public final class ImageUtils {
+ private static AdapterFactory composedAdapterFactory = new ComposedAdapterFactory(
+ ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
+
+ private ImageUtils() {
+ // Nothing to do
+ }
+
+ /**
+ * Returns an image for the given model element from the EMF global
+ * registry.
+ *
+ * @param object
+ * an {@link EObject} for which an {@link Image} is required
+ * @return an image or <code>null</code> if none was found for the given
+ * element, or the element is not an {@link EObject}
+ */
+ public static Image getImage(final Object object) {
+ Image result = null;
+ if (object instanceof EObject) {
+ EObject eObject = (EObject) object;
+ IItemLabelProvider itemLabelProvider = (IItemLabelProvider) ImageUtils.composedAdapterFactory
+ .adapt(eObject, IItemLabelProvider.class);
+ if (itemLabelProvider != null) {
+ Object image = itemLabelProvider.getImage(eObject);
+ result = ExtendedImageRegistry.getInstance().getImage(image);
+ }
+ }
+ return result;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/view/PackageRegistryView.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/view/PackageRegistryView.java
new file mode 100644
index 00000000000..8c406f4db41
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/internal/view/PackageRegistryView.java
@@ -0,0 +1,335 @@
+/*******************************************************************************
+ * Copyright (c) 2009, 2010, 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software)
+ * Nicolas Guyomar (Mia-Software) - Bug 333652 Extension point offering the possibility to declare an EPackage browser
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.emf.ui.internal.view;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EPackage.Registry;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.emf.core.IBrowserRegistry;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.utils.ImageUtils;
+import org.eclipse.jface.action.Action;
+import org.eclipse.jface.action.GroupMarker;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.action.IMenuListener;
+import org.eclipse.jface.action.IMenuManager;
+import org.eclipse.jface.action.MenuManager;
+import org.eclipse.jface.viewers.ColumnLabelProvider;
+import org.eclipse.jface.viewers.IContentProvider;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.papyrus.emf.facet.common.ui.internal.views.AbstractTreeView;
+import org.eclipse.swt.dnd.Clipboard;
+import org.eclipse.swt.dnd.TextTransfer;
+import org.eclipse.swt.dnd.Transfer;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Menu;
+import org.eclipse.ui.IWorkbenchActionConstants;
+
+/**
+ * An Eclipse view that displays a list of available Ecore meta-models.
+ */
+public class PackageRegistryView extends AbstractTreeView implements IMenuListener {
+
+ private static final String NAME_COLUMN = "PackageRegistryView_NameColumn"; //$NON-NLS-1$
+ private static final String NSURI_COLUMN = "PackageRegistryView_NsURIColumn"; //$NON-NLS-1$
+
+ private static final int COLUMN_WIDTH = 200;
+
+ private static final String DEBUG_ID = "org.eclipse.papyrus.emf.facet.infra.common.ui/debug/PackageRegistryView/event_debug"; //$NON-NLS-1$
+ private static final boolean DEBUG = Activator.getDefault().isDebugging()
+ && new Boolean(Platform.getDebugOption(PackageRegistryView.DEBUG_ID)).booleanValue();
+
+ @Override
+ public void createPartControl(final Composite parent) {
+ super.createPartControl(parent);
+ createContextMenu();
+ }
+
+ @Override
+ protected void createContextMenu() {
+ final MenuManager contextMenu = new MenuManager("#PopUp"); //$NON-NLS-1$
+ contextMenu.add(this.actionCopyNsURI);
+ contextMenu.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
+ contextMenu.addMenuListener(this);
+ final Menu menu = contextMenu.createContextMenu(getViewer().getControl());
+ getViewer().getControl().setMenu(menu);
+ getSite().registerContextMenu(contextMenu, getViewer());
+ }
+
+ @Override
+ public void dispose() {
+ super.dispose();
+ }
+
+ @Override
+ protected void createColumns() {
+ createNameColumn();
+ createNsUriColumn();
+ }
+
+ private void createNameColumn() {
+ ColumnLabelProvider columnLabelProvider = new ColumnLabelProvider() {
+ @Override
+ public String getText(final Object element) {
+ if (element instanceof EPackage) {
+ EPackage ePackage = (EPackage) element;
+ return ePackage.getName();
+ } else if (element instanceof String) {
+ return (String) element;
+ }
+ return ""; //$NON-NLS-1$
+ }
+
+ @Override
+ public Image getImage(final Object element) {
+ return ImageUtils.getImage(element);
+ }
+ };
+ createColumn(Messages.PackageRegistryView_Name, PackageRegistryView.NAME_COLUMN,
+ PackageRegistryView.COLUMN_WIDTH, columnLabelProvider);
+ }
+
+ private void createNsUriColumn() {
+ ColumnLabelProvider columnLabelProvider = new ColumnLabelProvider() {
+ @Override
+ public String getText(final Object element) {
+ if (!(element instanceof EPackage)) {
+ return ""; //$NON-NLS-1$
+ }
+ EPackage ePackage = (EPackage) element;
+ return ePackage.getNsURI();
+ }
+ };
+ createColumn(Messages.PackageRegistryView_nsURI, PackageRegistryView.NSURI_COLUMN,
+ PackageRegistryView.COLUMN_WIDTH * 2, columnLabelProvider);
+ }
+
+ /**
+ * Reads the registry in a non-UI thread, so that the UI thread will be able to access it faster
+ *
+ * @param registry
+ * the registry to preload
+ */
+ private static void preloadRegistry(final Registry registry) {
+ // avoid ConcurrentModificationException
+ List<String> keys = new ArrayList<String>();
+ keys.addAll(registry.keySet());
+ for (String nsURI : keys) {
+ try {
+ registry.getEPackage(nsURI);
+ } catch (Exception e) {
+ Logger.logWarning(e,
+ "An error happened while loading an EPackage from Package.Registry.INSTANCE: " //$NON-NLS-1$
+ + nsURI, Activator.getDefault());
+ } catch (LinkageError e) {
+ Logger.logError(e, "An error prevented an EPackage from being loaded: " //$NON-NLS-1$
+ + nsURI, Activator.getDefault());
+ }
+ }
+ }
+
+ /**
+ * An {@link EObject} was added to the package registry
+ *
+ * @param eObject
+ * @param file
+ */
+ public void added(final EObject eObject, final IFile file) {
+ if (PackageRegistryView.DEBUG) {
+ System.out.println(this.getClass().getSimpleName() + ".added(EObject,IFile)"); //$NON-NLS-1$
+ }
+ refresh(true);
+ }
+
+ /**
+ * An {@link EObject} was changed in the package registry
+ *
+ * @param eObject
+ * @param file
+ */
+ public void changed(final EObject eObject, final IFile file) {
+ if (PackageRegistryView.DEBUG) {
+ System.out.println(this.getClass().getSimpleName() + ".changed(EObject,IFile)"); //$NON-NLS-1$
+ }
+ refresh(true);
+ }
+
+ /**
+ * A file was removed from the package registry
+ *
+ * @param file
+ */
+ public void removed(final IFile file) {
+ if (PackageRegistryView.DEBUG) {
+ System.out.println(this.getClass().getSimpleName() + ".removed(EObject,IFile)"); //$NON-NLS-1$
+ }
+ refresh(true);
+ }
+
+ @Override
+ protected IContentProvider getContentProvider() {
+ return new ITreeContentProvider() {
+ public Object[] getElements(final Object inputElement) {
+ if (inputElement instanceof EPackage.Registry) {
+ EPackage.Registry registry = (EPackage.Registry) inputElement;
+ List<EPackage> ePackages = new ArrayList<EPackage>();
+ // avoid a ConcurrentModificationException
+ List<String> keys = new ArrayList<String>();
+ keys.addAll(registry.keySet());
+ for (String nsURI : keys) {
+ try {
+ EPackage ePackage = registry.getEPackage(nsURI);
+ if (ePackage == null) {
+ throw new Exception("ePackage is null for : " //$NON-NLS-1$
+ + nsURI);
+ }
+ ePackages.add(ePackage);
+ } catch (Exception e) {
+ Logger.logWarning(e,
+ "An error happened while loading an EPackage from Package.Registry.INSTANCE: " //$NON-NLS-1$
+ + nsURI, Activator.getDefault());
+ }
+ }
+ return ePackages.toArray();
+ } else if (inputElement == null) {
+ return new Object[] {};
+ } else if (inputElement instanceof String) {
+ String message = (String) inputElement;
+ return new Object[] { message };
+ } else {
+ throw new RuntimeException("Unexpected element type: " //$NON-NLS-1$
+ + inputElement.getClass().getName());
+ }
+ }
+
+ public void inputChanged(final Viewer viewer, final Object oldInput,
+ final Object newInput) {
+ // Nothing to do
+ }
+
+ public Object[] getChildren(final Object parentElement) {
+ if (parentElement instanceof EPackage.Registry) {
+ EPackage.Registry registry = (EPackage.Registry) parentElement;
+ return registry.values().toArray();
+ } else if (parentElement == null || parentElement instanceof String) {
+ return new Object[] {};
+ } else {
+ throw new RuntimeException("Unexpected element type: " //$NON-NLS-1$
+ + parentElement.getClass().getName());
+ }
+ }
+
+ public Object getParent(final Object element) {
+ return null;
+ }
+
+ public boolean hasChildren(final Object element) {
+ if (element instanceof EPackage.Registry) {
+ return true;
+ }
+ return false;
+ }
+
+ public void dispose() {
+ // Nothing to do
+ }
+ };
+ }
+
+ @Override
+ protected void openElement(final Object element) {
+ if (element instanceof EPackage) {
+ EPackage ePackage = (EPackage) element;
+ IBrowserRegistry.INSTANCE.browseEPackage(ePackage);
+ }
+ }
+
+ @Override
+ protected String getRefreshMessage() {
+ return Messages.PackageRegistryView_RefreshingPackageRegistryView;
+ }
+
+ @Override
+ protected void doRefresh() {
+ // display a message while initializing
+ // (initialization can take a while)
+ Display.getDefault().syncExec(new Runnable() {
+ public void run() {
+ getViewer().setInput(Messages.PackageRegistryView_initializing);
+ }
+ });
+ final EPackage.Registry registry = EPackage.Registry.INSTANCE;
+ // Read a first time in a non-UI thread so as to avoid
+ // blocking. Then it will be cached for the UI thread.
+ preloadRegistry(registry);
+ Display.getDefault().syncExec(new Runnable() {
+ public void run() {
+ // the control might be disposed if the view was closed
+ // in the meantime
+ if (!getViewer().getControl().isDisposed()) {
+ getViewer().setInput(registry);
+ getViewer().refresh();
+ }
+ }
+ });
+ }
+
+ @Override
+ protected Object getInput() {
+ return EPackage.Registry.INSTANCE;
+ }
+
+ private final Action actionCopyNsURI = new Action(Messages.PackageRegistryView_copyNsURI,
+ IAction.AS_PUSH_BUTTON) {
+ @Override
+ public void run() {
+ EPackage selectedPackage = PackageRegistryView.this.getSelectedPackage();
+ if (selectedPackage != null) {
+ String nsURI = selectedPackage.getNsURI();
+ Clipboard clipboard = new Clipboard(Display.getDefault());
+ clipboard.setContents(new Object[] { nsURI },
+ new Transfer[] { TextTransfer.getInstance() });
+ clipboard.dispose();
+ }
+ }
+ };
+
+ protected EPackage getSelectedPackage() {
+ ISelection selection = getViewer().getSelection();
+ if (selection instanceof IStructuredSelection) {
+ IStructuredSelection structuredSelection = (IStructuredSelection) selection;
+ Object element = structuredSelection.getFirstElement();
+ if (element instanceof EPackage) {
+ EPackage ePackage = (EPackage) element;
+ return ePackage;
+ }
+ }
+ return null;
+ }
+
+ public void menuAboutToShow(final IMenuManager manager) {
+ this.actionCopyNsURI.setEnabled(getSelectedPackage() != null);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/util/EditingUtil.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/util/EditingUtil.java
new file mode 100644
index 00000000000..91aa8062615
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.emf.ui/src/org/eclipse/papyrus/emf/facet/util/emf/ui/util/EditingUtil.java
@@ -0,0 +1,60 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.emf.ui.util;
+
+import java.io.File;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.emf.edit.domain.IEditingDomainProvider;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.PlatformUI;
+
+/**
+ * @since 0.3
+ */
+public final class EditingUtil {
+
+ private EditingUtil() {
+ // Hidden constructor.
+ }
+
+ /**
+ * Return the current editing domain.
+ *
+ * @return the current editing domain.
+ */
+ public static EditingDomain getEditingDomain() {
+ // Retrieve the editor
+ final IWorkbenchPart editor = PlatformUI.getWorkbench()
+ .getWorkbenchWindows()[0].getPages()[0].getActivePart();
+ // Retrieve the editing domain
+ final IEditingDomainProvider edProvider = (IEditingDomainProvider) editor
+ .getAdapter(IEditingDomainProvider.class);
+ EditingDomain editingDomain = null;
+ if (edProvider != null) {
+ editingDomain = edProvider.getEditingDomain();
+ }
+ return editingDomain;
+ }
+
+ /**
+ * Create and return a new {@link Resource}.
+ *
+ * @return the new {@link Resource}.
+ */
+ public static Resource createDefaultResource(final File file) {
+ return getEditingDomain().getResourceSet().createResource(
+ URI.createFileURI(file.getPath()));
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.checkstyle
new file mode 100644
index 00000000000..d4080e48cdc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.checkstyle
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true">
+ <local-check-config name="EmfFacet" location="../org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ <file-match-pattern match-pattern=".*/generated/.*\.java" include-pattern="false"/>
+ </fileset>
+</fileset-config> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.options b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.options
new file mode 100644
index 00000000000..88a4da0b230
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.options
@@ -0,0 +1,11 @@
+# Copyright (c) 2013 Soft-Maint.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Thomas Cicognani (Soft-Maint) - Bug 424416 - Plug-in for JFace Utilities
+org.eclipse.papyrus.emf.facet.util.jface.ui.ui/debug=false
+org.eclipse.papyrus.emf.facet.util.jface.ui.ui/debug/ImageProvider=false \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.pmd b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.pmd
new file mode 100644
index 00000000000..e8d3e27588f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.pmd
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<pmd>
+ <useProjectRuleSet>true</useProjectRuleSet>
+ <ruleSetFile>../org.eclipse.papyrus.emf.facet.archi.tech.rules/pmd/ruleset.xml</ruleSetFile>
+ <includeDerivedFiles>false</includeDerivedFiles>
+ <violationsAsErrors>true</violationsAsErrors>
+</pmd>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.project
new file mode 100644
index 00000000000..760c59a1a09
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.util.jface.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>
+ <nature>net.sourceforge.pmd.eclipse.plugin.pmdNature</nature>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..4824b802631
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..72889bf5c06
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,14 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.util.jface.ui
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.util.jface.ui.internal.Activator
+Require-Bundle: org.eclipse.core.runtime;bundle-version="3.6.0",
+ org.eclipse.jface;bundle-version="3.6.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.util.swt;bundle-version="0.4.0"
+Bundle-ActivationPolicy: lazy
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-Vendor: %Bundle-Vendor
+Export-Package: org.eclipse.papyrus.emf.facet.util.jface.ui.imageprovider
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..14481efce4b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,13 @@
+###############################################################################
+# Copyright (c) 2013 Soft-Maint.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Thomas Cicognani (Soft-Maint) - Bug 424416 - Plug-in for JFace Utilities
+###############################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.util.jface.ui.ui
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet JFace Utilities UI (Incubation) \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/about.html
new file mode 100644
index 00000000000..3019b95b9cf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.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>December 22, 2008</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/build.properties
new file mode 100644
index 00000000000..835b823d22f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/build.properties
@@ -0,0 +1,18 @@
+###############################################################################
+# Copyright (c) 2013 Soft-Maint.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Thomas Cicognani (Soft-Maint) - Bug 424416 - Plug-in for JFace Utilities
+###############################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ .options,\
+ OSGI-INF/,\
+ about.html
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/imageprovider/IImageProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/imageprovider/IImageProvider.java
new file mode 100644
index 00000000000..b8667918c8f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/imageprovider/IImageProvider.java
@@ -0,0 +1,64 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Thomas Cicognani (Soft-Maint) - Bug 424416 - Plug-in for JFace Utilities
+ ******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.util.jface.ui.imageprovider;
+
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.jface.viewers.DecorationOverlayIcon;
+import org.eclipse.swt.graphics.Image;
+
+/**
+ * JFace Image Provider
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ * @since 0.4.0
+ */
+public interface IImageProvider {
+
+ /**
+ * Return an image from an Overlay Icon description.
+ *
+ * @param imgDescriptor
+ * Overlay Icon description
+ * @return A new image
+ */
+ Image getImage(DecorationOverlayIcon imgDescriptor);
+
+ /**
+ * Return an image from its path
+ *
+ * @param path
+ * The path of the image
+ * @return A new image
+ */
+ Image getImage(String path);
+
+ /**
+ * Return an image descriptor from its path
+ *
+ * @param resourcePath
+ * The path from which to create the descriptor
+ * @return The new image descriptor
+ */
+ ImageDescriptor createImageDescriptor(String resourcePath);
+
+ /**
+ * Return an image from an image descriptor
+ *
+ * @param imgDescriptor
+ * An image descriptor to create the image
+ * @return A new image
+ */
+ Image getImage(ImageDescriptor imgDescriptor);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/imageprovider/IImageProviderFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/imageprovider/IImageProviderFactory.java
new file mode 100644
index 00000000000..ca0afe687e8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/imageprovider/IImageProviderFactory.java
@@ -0,0 +1,37 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Thomas Cicognani (Soft-Maint) - Bug 424416 - Plug-in for JFace Utilities
+ ******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.jface.ui.imageprovider;
+
+import org.eclipse.core.runtime.Plugin;
+import org.eclipse.papyrus.emf.facet.util.jface.ui.internal.imageprovider.ImageProviderFactory;
+
+/**
+ * JFace Image Provider Factory
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ * @since 0.4.0
+ */
+public interface IImageProviderFactory {
+
+ IImageProviderFactory DEFAULT = new ImageProviderFactory();
+
+ /**
+ * Create a new Image Provider Factory. Factories are cached with plugin
+ * instances.
+ *
+ * @param plugin
+ * Current plugin which wants an image provider
+ * @return An image provider factory
+ */
+ IImageProvider createIImageProvider(Plugin plugin);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/internal/Activator.java
new file mode 100644
index 00000000000..a290a3eaaf4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/internal/Activator.java
@@ -0,0 +1,50 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Thomas Cicognani (Soft-Maint) - Bug 424416 - Plug-in for JFace Utilities
+ ******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.jface.ui.internal;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+@SuppressWarnings("PMD.UseSingleton")
+//@SuppressWarnings("PMD.UseSingleton") We cannot conforms to this rule because
+//this class is an Eclipse plug-in activator which will be instantiated by the
+//Eclipse framework.
+public class Activator extends Plugin {
+
+ private static Activator plugin;
+
+ @Override
+ @SuppressWarnings("PMD.SignatureDeclareThrowsException")
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ public void start(final BundleContext bundleContext) throws Exception {
+ super.start(bundleContext);
+ Activator.plugin = this;
+ }
+
+ @Override
+ @SuppressWarnings("PMD.SignatureDeclareThrowsException")
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ public void stop(final BundleContext bundleContext) throws Exception {
+ // NOPMD: PMD say "Assigning an Object to null is a code smell."
+ // No choice to right it in another way : this is an Eclipse pattern.
+ Activator.plugin = null; // NOPMD by gdupe on 30/03/12 10:19
+ super.stop(bundleContext);
+ }
+
+ public static Plugin getDefault() {
+ return Activator.plugin;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/internal/imageprovider/ImageProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/internal/imageprovider/ImageProvider.java
new file mode 100644
index 00000000000..cf910c44a93
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/internal/imageprovider/ImageProvider.java
@@ -0,0 +1,70 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Thomas Cicognani (Soft-Maint) - Bug 424416 - Plug-in for JFace Utilities
+ ******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.util.jface.ui.internal.imageprovider;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.core.runtime.Plugin;
+import org.eclipse.papyrus.emf.facet.util.core.DebugUtils;
+import org.eclipse.papyrus.emf.facet.util.jface.ui.imageprovider.IImageProvider;
+import org.eclipse.papyrus.emf.facet.util.jface.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.swt.imageprovider.IImageProviderFactory;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.jface.viewers.DecorationOverlayIcon;
+import org.eclipse.swt.graphics.Image;
+import org.osgi.framework.Bundle;
+
+public final class ImageProvider implements IImageProvider {
+
+ private static final boolean DEBUG = DebugUtils.getDebugStatus(Activator
+ .getDefault());
+ private final Map<Object, Image> map = new HashMap<Object, Image>();
+ private final Plugin plugin;
+ private final org.eclipse.papyrus.emf.facet.util.swt.imageprovider.IImageProvider delegate;
+
+ ImageProvider(final Plugin plugin) {
+ this.plugin = plugin;
+ this.delegate = IImageProviderFactory.DEFAULT
+ .createIImageProvider(plugin);
+ }
+
+ public Image getImage(final DecorationOverlayIcon imgDescriptor) {
+ Image result = this.map.get(imgDescriptor);
+ if (result == null) {
+ result = imgDescriptor.createImage();
+ this.map.put(imgDescriptor, result);
+ if (DEBUG) {
+ final Bundle bundle = this.plugin.getBundle();
+ final String bundleId = bundle.getSymbolicName();
+ final String message = String.format(
+ "New image loaded from an overlay icon (bundle=%s)", //$NON-NLS-1$
+ bundleId);
+ DebugUtils.debug(message);
+ }
+ }
+ return result;
+ }
+
+ public Image getImage(final String path) {
+ return this.delegate.getImage(path);
+ }
+
+ public ImageDescriptor createImageDescriptor(final String resourcePath) {
+ return this.delegate.createImageDescriptor(resourcePath);
+ }
+
+ public Image getImage(final ImageDescriptor imgDescriptor) {
+ return this.delegate.getImage(imgDescriptor);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/internal/imageprovider/ImageProviderFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/internal/imageprovider/ImageProviderFactory.java
new file mode 100644
index 00000000000..c8b10d876e4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.jface.ui/src/org/eclipse/papyrus/emf/facet/util/jface/ui/internal/imageprovider/ImageProviderFactory.java
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Thomas Cicognani (Soft-Maint) - Bug 424416 - Plug-in for JFace Utilities
+ ******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.jface.ui.internal.imageprovider;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.core.runtime.Plugin;
+import org.eclipse.papyrus.emf.facet.util.jface.ui.imageprovider.IImageProvider;
+import org.eclipse.papyrus.emf.facet.util.jface.ui.imageprovider.IImageProviderFactory;
+
+public class ImageProviderFactory implements IImageProviderFactory {
+
+ private final Map<Plugin, IImageProvider> map = new HashMap<Plugin, IImageProvider>();
+
+ public IImageProvider createIImageProvider(final Plugin plugin) {
+ IImageProvider result = this.map.get(plugin);
+ if (result == null) {
+ result = new ImageProvider(plugin);
+ this.map.put(plugin, result);
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.checkstyle
new file mode 100644
index 00000000000..9975b61e3a5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.checkstyle
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2010 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Guyomar (Mia-Software)
+ Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+-->
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+ <local-check-config name="EmfFacet" location="/org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.pmd b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.pmd
new file mode 100644
index 00000000000..91a7c8fa772
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.pmd
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<pmd>
+ <useProjectRuleSet>true</useProjectRuleSet>
+ <ruleSetFile>../org.eclipse.papyrus.emf.facet.archi.tech.rules/pmd/ruleset.xml</ruleSetFile>
+ <includeDerivedFiles>false</includeDerivedFiles>
+ <violationsAsErrors>true</violationsAsErrors>
+</pmd>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.project
new file mode 100644
index 00000000000..067c85ebfe0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.project
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.util.pde.core</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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ <nature>net.sourceforge.pmd.eclipse.plugin.pmdNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..44217f8c068
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..a6b9d0d8ffa
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/META-INF/MANIFEST.MF
@@ -0,0 +1,17 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: EMF Facet PDE Core Utils (Incubation)
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.util.pde.core
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.util.pde.core.internal.Activator
+Bundle-Vendor: Eclipse Modeling Project
+Require-Bundle: org.eclipse.core.runtime;bundle-version="3.6.0",
+ org.eclipse.pde.core;bundle-version="3.6.0",
+ org.eclipse.core.resources;bundle-version="3.6.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.4.0",
+ org.eclipse.jdt.core;bundle-version="3.6.0",
+ com.ibm.icu;bundle-version="4.2.1"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.util.pde.core.internal.exported,
+ org.eclipse.papyrus.emf.facet.util.pde.core.internal.exported.exception
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/about.html
new file mode 100644
index 00000000000..d1714826b27
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/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>January 4, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/build.properties
new file mode 100644
index 00000000000..2fff7a88aa1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/build.properties
@@ -0,0 +1,16 @@
+# Copyright (c) 2013 Mia-Software
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Bug 417789 - org.eclipse.papyrus.emf.facet.util.core should not so much dependencies
+# Fabien Treguer (Soft-Maint) - Bug 367168 - [Unit Test Failure][0.2/3.8] org.eclipse.papyrus.emf.facet.util.core.tests.internal.PluginUtilsTests.testPluginUtils
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ about.html,\
+ resources/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/resources/Activator.java.template b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/resources/Activator.java.template
new file mode 100644
index 00000000000..329f8643720
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/resources/Activator.java.template
@@ -0,0 +1,45 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software)
+ *******************************************************************************/
+package {0};
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+/** The activator class controls the plug-in life cycle */
+public class Activator extends Plugin {
+
+ // The plug-in ID
+ public static final String PLUGIN_ID = "{0}"; //$NON-NLS-1$
+
+ // The shared instance
+ private static Activator plugin;
+
+ @Override
+ public void start(final BundleContext context) throws Exception {
+ super.start(context);
+ Activator.plugin = this;
+ }
+
+ @Override
+ public void stop(final BundleContext context) throws Exception {
+ Activator.plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return Activator.plugin;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/resources/MANIFEST.MF.template b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/resources/MANIFEST.MF.template
new file mode 100644
index 00000000000..5f3cd4fbfdc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/resources/MANIFEST.MF.template
@@ -0,0 +1,11 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: {projectName}
+Bundle-SymbolicName: {packageName};singleton:=true
+Bundle-Version: 0.0.1.qualifier
+Bundle-Activator: {activator}
+Bundle-Vendor: bundle vendor
+Require-Bundle: org.eclipse.core.runtime
+Bundle-RequiredExecutionEnvironment: {javaVersion}
+Bundle-ActivationPolicy: lazy
+Bundle-ClassPath: .,bin
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/Activator.java
new file mode 100644
index 00000000000..f83b963ac92
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/Activator.java
@@ -0,0 +1,50 @@
+/**
+ * Copyright (c) 2013 Mia-Software
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 417789 - org.eclipse.papyrus.emf.facet.util.core should not so much dependencies
+ */
+ package org.eclipse.papyrus.emf.facet.util.pde.core.internal;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+@SuppressWarnings("PMD.UseSingleton")
+// @SuppressWarnings("PMD.UseSingleton") We cannot conforms to this rule because
+// this class is an Eclipse plug-in activator which will be instantiated by the
+// Eclipse framework.
+public class Activator extends Plugin {
+
+ private static Activator plugin;
+
+ @Override
+ @SuppressWarnings("PMD.SignatureDeclareThrowsException")
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ public void start(final BundleContext bundleContext) throws Exception {
+ super.start(bundleContext);
+ Activator.plugin = this;
+ }
+
+ @Override
+ @SuppressWarnings("PMD.SignatureDeclareThrowsException")
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ public void stop(final BundleContext bundleContext) throws Exception {
+ // NOPMD: PMD say "Assigning an Object to null is a code smell."
+ // No choice to right it in another way : this is an Eclipse pattern.
+ Activator.plugin = null; // NOPMD
+ super.stop(bundleContext);
+ }
+
+ public static Plugin getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/BuildPropertiesUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/BuildPropertiesUtils.java
new file mode 100644
index 00000000000..27ca045e6a4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/BuildPropertiesUtils.java
@@ -0,0 +1,146 @@
+/*******************************************************************************
+ * Copyright (c) 2010-2013 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 339991 - don't use internal APIs in org.eclipse.papyrus.emf.facet.util.core.internal.BuildPropertiesUtils
+ * Laurent Pichierri (Soft-Maint) - Bug 371204 - Compatibility with Helios
+ * Gregoire Dupe (Mia-Software) - Bug 371204 - Compatibility with Helios
+ * Gregoire Dupe (Mia-Software) - Bug 417789 - org.eclipse.papyrus.emf.facet.util.core should not so much dependencies
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.pde.core.internal;
+
+import java.io.ByteArrayInputStream;
+import java.lang.reflect.Method;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.pde.core.internal.exception.PdeCoreUtilsRuntimeException;
+import org.eclipse.pde.core.IEditableModel;
+import org.eclipse.pde.core.build.IBuild;
+import org.eclipse.pde.core.build.IBuildEntry;
+import org.eclipse.pde.core.build.IBuildModel;
+import org.eclipse.pde.core.plugin.IPluginModelBase;
+import org.eclipse.pde.core.plugin.PluginRegistry;
+
+public final class BuildPropertiesUtils {
+
+ // This class has been copied from org.eclipse.papyrus.emf.facet.infra.common.core.internal.utils.BuildPropertiesUtils
+
+ private BuildPropertiesUtils() {
+ // utilities class
+ }
+
+ /**
+ * Get the build model of an Eclipse plug-in
+ *
+ * @param model
+ * a plug-in's PDE model
+ * @return a build model or <code>null</code> if the build.properties file
+ * does not exist
+ * @throws CoreException
+ */
+ public static IBuildModel getBuildModel(final IPluginModelBase model) throws CoreException {
+ final IProject project = model.getUnderlyingResource().getProject();
+ final IPluginModelBase pluginModelBase = PluginRegistry.findModel(project);
+ //Here we use a reflexive call to be able to build against an Helios platform.
+ //This method will build with Helios, but will fail at runtime.
+ //We do not have a better solution. Otherwise we would have to use an internal API.
+ //We prefer some loose of functionality with Helios that to use internal API.
+ IBuildModel buildModel = null;
+ try {
+ final Class<? extends IPluginModelBase> class1 = pluginModelBase.getClass();
+ final Method method = class1.getMethod("getBuildModel"); //$NON-NLS-1$
+ if (method != null) {
+ buildModel = (IBuildModel) method.invoke(pluginModelBase);
+ }
+ } catch (Exception e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ return buildModel;
+ }
+
+ /**
+ * @param project
+ * the project for which to get a build model top level object
+ * @return a build model top level object or <code>null</code> if the
+ * build.properties file does not exist
+ * @throws CoreException
+ */
+ public static IBuild getBuild(final IProject project) throws CoreException {
+ IBuild result = null;
+ final IPluginModelBase pluginModel = PluginRegistry.findModel(project);
+ if (pluginModel != null) {
+ final IBuildModel buildModel = getBuildModel(pluginModel);
+ if (buildModel != null) {
+ result = buildModel.getBuild();
+ }
+ }
+ return result;
+ }
+
+ /**
+ * @param elementFile
+ * the file whose presence in the build.properties is being
+ * tested
+ * @return whether the file is in the build.properties (<code>false</code>
+ * if the build.properties file does not exist)
+ * @throws CoreException
+ */
+ public static boolean isInBuild(final IFile elementFile) throws CoreException {
+ final IProject project = elementFile.getProject();
+ final IPath filePath = elementFile.getFullPath().removeFirstSegments(1);
+ final IBuild build = getBuild(project);
+ boolean result = false;
+ if (build != null) {
+ final IBuildEntry entry = build.getEntry(IBuildEntry.BIN_INCLUDES);
+ if (entry != null) {
+ final String[] tokens = entry.getTokens();
+ for (String token : tokens) {
+ final IPath path = new Path(token);
+ // if "abc/" is included, then "abc/def/" is too
+ if (path.isPrefixOf(filePath)) {
+ result = true;
+ }
+ }
+ }
+ }
+ return result;
+ }
+
+ public static void addToBuild(final IFile elementFile) throws CoreException {
+ final IProject project = elementFile.getProject();
+ if (isInBuild(elementFile)) {
+ return;
+ }
+ final IPath filePath = elementFile.getFullPath().removeFirstSegments(1);
+ final IPluginModelBase pluginModel = PluginRegistry.findModel(project);
+ final IFile buildProperties = elementFile.getProject().getFile("build.properties"); //$NON-NLS-1$
+ if (!buildProperties.exists()) {
+ buildProperties.create(new ByteArrayInputStream(new byte[0]), true,
+ new NullProgressMonitor());
+ }
+ final IBuildModel buildModel = getBuildModel(pluginModel);
+ if (buildModel == null) {
+ throw new PdeCoreUtilsRuntimeException("Couldn't get build model"); //$NON-NLS-1$
+ }
+ final IBuild build = buildModel.getBuild();
+ IBuildEntry entry = build.getEntry(IBuildEntry.BIN_INCLUDES);
+ // if entry "bin.includes" does not exist, then create it
+ if (entry == null) {
+ entry = buildModel.getFactory().createEntry(IBuildEntry.BIN_INCLUDES);
+ build.add(entry);
+ }
+ entry.addToken(filePath.toPortableString());
+ ((IEditableModel) buildModel).save();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/PluginUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/PluginUtils.java
new file mode 100644
index 00000000000..36b73049883
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/PluginUtils.java
@@ -0,0 +1,605 @@
+/*******************************************************************************
+ * Copyright (c) 2010-2013 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 340339 - Need some Utils class for Folder/File/Project management
+ * Gregoire Dupe (Mia-Software) - Bug 340339 - Need some Utils class for Folder/File/Project management
+ * Nicolas Guyomar (Mia-Software) - Bug 340681 - Facet column implementation
+ * Nicolas Bros (Mia-Software) - Bug 380391 - PluginUtils#importPlugin should use the Bundle API
+ * Gregoire Dupe (Mia-Software) - Bug 408344 - [Releng] Deep folders cause build break
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.pde.core.internal;
+
+import java.io.ByteArrayInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.StringWriter;
+import java.net.URISyntaxException;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Enumeration;
+import java.util.List;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+import javax.xml.transform.OutputKeys;
+import javax.xml.transform.Transformer;
+import javax.xml.transform.TransformerException;
+import javax.xml.transform.TransformerFactory;
+import javax.xml.transform.dom.DOMSource;
+import javax.xml.transform.stream.StreamResult;
+
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IProjectDescription;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IWorkspace;
+import org.eclipse.core.resources.IWorkspaceRoot;
+import org.eclipse.core.resources.IWorkspaceRunnable;
+import org.eclipse.core.resources.IncrementalProjectBuilder;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.MultiStatus;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.core.internal.exported.FileUtils;
+import org.eclipse.papyrus.emf.facet.util.core.internal.exported.FolderUtils;
+import org.eclipse.papyrus.emf.facet.util.core.internal.exported.IFilter;
+import org.eclipse.jdt.core.IClasspathEntry;
+import org.eclipse.jdt.core.IJavaProject;
+import org.eclipse.jdt.core.JavaConventions;
+import org.eclipse.jdt.core.JavaCore;
+import org.eclipse.jdt.core.JavaModelException;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.pde.core.plugin.IExtensions;
+import org.eclipse.pde.core.plugin.IPluginAttribute;
+import org.eclipse.pde.core.plugin.IPluginElement;
+import org.eclipse.pde.core.plugin.IPluginExtension;
+import org.eclipse.pde.core.plugin.IPluginModelBase;
+import org.eclipse.pde.core.plugin.IPluginObject;
+import org.eclipse.pde.core.plugin.PluginRegistry;
+import org.osgi.framework.Bundle;
+import org.w3c.dom.Attr;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.Text;
+import org.xml.sax.SAXException;
+
+import com.ibm.icu.lang.UCharacter;
+
+public final class PluginUtils {
+
+ // This class has been copied from
+ // org.eclipse.papyrus.emf.facet.infra.common.core.internal.utils.PluginUtils
+
+ private PluginUtils() {
+ // utilities class
+ }
+
+ /**
+ * Returns whether the given file is registered in the plugin.xml of the
+ * given project, using the given extension point.
+ *
+ * @param extensionPoint
+ * the extension point that is used to register elements of this
+ * kind (elements must be declared with a "file" attribute)
+ */
+ public static boolean isRegistered(final IFile elementFile, final String extensionPoint) {
+ final IProject project = elementFile.getProject();
+ final IPluginModelBase pluginModel = PluginRegistry.findModel(project);
+ boolean result = false;
+ if (pluginModel != null) {
+ final IExtensions extensions2 = pluginModel.getExtensions();
+ final IPluginExtension[] extensions = extensions2.getExtensions();
+ for (IPluginExtension pluginExtension : extensions) {
+ if (extensionPoint.equals(pluginExtension.getPoint())) {
+ final IPluginObject[] children = pluginExtension.getChildren();
+ for (IPluginObject child : children) {
+ if (child instanceof IPluginElement) {
+ final IPluginElement pluginElement = (IPluginElement) child;
+ final IPluginAttribute[] attributes = pluginElement.getAttributes();
+ for (IPluginAttribute pluginAttribute : attributes) {
+ if ("file".equalsIgnoreCase(pluginAttribute.getName())) { //$NON-NLS-1$
+ final String strFile = pluginAttribute.getValue();
+ if (strFile != null && strFile.length() > 0) {
+ final IFile file = project.getFile(strFile);
+ if (file.exists() && elementFile.equals(file)) {
+ result = true;
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ return result;
+ }
+
+ /**
+ * Registers the given file in the plugin.xml of the given project, using
+ * the given extension point.
+ *
+ * @param project
+ * the project in which the element should be registered
+ * @param extensionToCheck
+ * the file extension of the element that should be registered
+ * @param extensionPoint
+ * the extension point that is used to register elements of this
+ * kind (elements must be declared with a "file" attribute)
+ */
+ /**
+ * Registers the given file in the plugin.xml of the given project, using
+ * the given extension point.
+ *
+ * @param file
+ * the file to register
+ * @param extensionPointId
+ * the extension point that is used to register the file
+ * @param elementName
+ * the name of the XML element in which an attribute named "file"
+ * will be set to the path of the file
+ * @throws ParserConfigurationException
+ * @throws IOException
+ * @throws SAXException
+ * @throws TransformerException
+ * @throws CoreException
+ */
+ public static void register(final IFile file, final String extensionPointId,
+ final String elementName) {
+ if (isRegistered(file, extensionPointId)) {
+ return;
+ }
+
+ final IPath filePath = file.getFullPath().removeFirstSegments(1);
+ final IProject project = file.getProject();
+
+ final IFile pluginXML = project.getFile("plugin.xml"); //$NON-NLS-1$
+ if (pluginXML.exists()) {
+ final DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
+ DocumentBuilder docBuilder;
+
+ try {
+ docBuilder = docFactory.newDocumentBuilder();
+ final String pluginXmlLoc = pluginXML.getLocation().toOSString();
+ final Document doc = docBuilder.parse(pluginXmlLoc);
+ final Element root = doc.getDocumentElement();
+
+ final Text whitespace = doc.createTextNode(" "); //$NON-NLS-1$
+ root.appendChild(whitespace);
+
+ final Node extensionNode = doc.createElement("extension"); //$NON-NLS-1$
+ final Attr pointAttr = doc.createAttribute("point"); //$NON-NLS-1$
+ pointAttr.setValue(extensionPointId);
+ extensionNode.getAttributes().setNamedItem(pointAttr);
+ root.appendChild(extensionNode);
+
+ final Node elementNode = doc.createElement(elementName);
+ final Attr fileAttr = doc.createAttribute("file"); //$NON-NLS-1$
+ fileAttr.setValue(filePath.toString());
+ elementNode.getAttributes().setNamedItem(fileAttr);
+ extensionNode.appendChild(elementNode);
+
+ final TransformerFactory trFactory = TransformerFactory.newInstance();
+ final int indent = 3;
+ trFactory.setAttribute("indent-number", Integer.valueOf(indent)); //$NON-NLS-1$
+ final Transformer transformer = trFactory.newTransformer();
+ transformer.setOutputProperty(OutputKeys.ENCODING, "UTF-8"); //$NON-NLS-1$
+ transformer.setOutputProperty(OutputKeys.INDENT, "yes"); //$NON-NLS-1$
+ final StreamResult result = new StreamResult(new StringWriter());
+ final DOMSource source = new DOMSource(doc);
+ transformer.transform(source, result);
+ final String xmlString = result.getWriter().toString();
+
+ final byte[] byteArray = xmlString.getBytes("UTF-8"); //$NON-NLS-1$
+ pluginXML.setContents(new ByteArrayInputStream(byteArray), true, true,
+ new NullProgressMonitor());
+
+ } catch (Exception e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ } else {
+ try {
+ // create plugin.xml
+ final String template = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n" //$NON-NLS-1$
+ + "<?eclipse version=\"3.4\"?>\n" + "<plugin>\n" //$NON-NLS-1$ //$NON-NLS-2$
+ + " <extension point=\"{0}\">\n" + " <{1} file=\"{2}\"/>\n" //$NON-NLS-1$ //$NON-NLS-2$
+ + " </extension>\n" //$NON-NLS-1$
+ + "</plugin>\n"; //$NON-NLS-1$
+
+ final String content = NLS.bind(template, new Object[] { extensionPointId, elementName,
+ filePath.toString() });
+ byte[] byteArray;
+ byteArray = content.getBytes("UTF-8"); //$NON-NLS-1$
+ pluginXML.create(new ByteArrayInputStream(byteArray), true,
+ new NullProgressMonitor());
+ try {
+ BuildPropertiesUtils.addToBuild(pluginXML);
+ } catch (Exception e) {
+ Logger.logError(e, "Error adding file " + pluginXML.getFullPath() //$NON-NLS-1$
+ + " to the build.properties", null); //$NON-NLS-1$
+ }
+ } catch (Exception e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ }
+ }
+
+ private static final String JAVA_VERSION = "J2SE-1.5"; //$NON-NLS-1$
+ private static final String ACTIVATOR_NAME = "Activator"; //$NON-NLS-1$
+ private static final String MANIFEST_MF_TPL = "resources/MANIFEST.MF.template"; //$NON-NLS-1$
+ private static final String ACTIVATOR_TPL = "resources/Activator.java.template"; //$NON-NLS-1$
+ private static final String PDE_CLASSPATH_ID = "org.eclipse.pde.core.requiredPlugins"; //$NON-NLS-1$
+ private static final String PLUGIN_NATURE = "org.eclipse.pde.PluginNature"; //$NON-NLS-1$
+
+ private static void addPdeClassPath(final IProject project)
+ throws JavaModelException {
+ final IJavaProject javaProject = JavaCore.create(project);
+ final IClasspathEntry[] oldClassPath = javaProject.getRawClasspath();
+ for (IClasspathEntry classpathEntry : oldClassPath) {
+ if (classpathEntry.getPath().equals(new Path(PluginUtils.PDE_CLASSPATH_ID))) {
+ return;
+ }
+ }
+ final IClasspathEntry[] newClassPath = new IClasspathEntry[oldClassPath.length + 1];
+ System.arraycopy(oldClassPath, 0, newClassPath, 0, oldClassPath.length);
+ newClassPath[oldClassPath.length] = JavaCore
+ .newContainerEntry(new Path(PluginUtils.PDE_CLASSPATH_ID));
+ javaProject.setRawClasspath(newClassPath, new NullProgressMonitor());
+ }
+
+ /**
+ * @author Gregoire Dupe (Mia-Software) - Removing "Require-Bundle"
+ * statement
+ * @throws IOException
+ */
+ private static void createManifest(final IProject project)
+ throws CoreException, IOException {
+ final IFolder folder = project.getFolder("META-INF"); //$NON-NLS-1$
+ if (!folder.exists()) {
+ folder.create(true, true, new NullProgressMonitor());
+ }
+ final IFile manifestFile = folder.getFile("MANIFEST.MF"); //$NON-NLS-1$
+ if (!manifestFile.exists()) {
+ String template = FileUtils.getFileContents(Activator.getDefault()
+ .getBundle(), PluginUtils.MANIFEST_MF_TPL);
+ template = template.replace("{projectName}", project.getName()); //$NON-NLS-1$
+ final String packageName = PluginUtils
+ .stringToValidPackageName(project.getName());
+ template = template.replace("{packageName}", packageName); //$NON-NLS-1$
+ final String activator = PluginUtils
+ .bundleActivatorQualifiedName(packageName);
+ template = template.replace("{activator}", activator); //$NON-NLS-1$
+ template = template.replace("{javaVersion}", //$NON-NLS-1$
+ PluginUtils.JAVA_VERSION);
+ final InputStream source = new ByteArrayInputStream(
+ template.getBytes());
+ manifestFile.create(source, true, new NullProgressMonitor());
+ }
+ }
+
+ private static String bundleActivatorQualifiedName(final String packageName) {
+ return packageName + '.' + PluginUtils.ACTIVATOR_NAME;
+ }
+
+ private static void createActivator(final IProject project)
+ throws CoreException, IOException {
+ final String packageName = PluginUtils.stringToValidPackageName(project
+ .getName());
+ final String qualifiedName = PluginUtils
+ .bundleActivatorQualifiedName(packageName);
+ final String path = qualifiedName.replaceAll("\\.", "/"); //$NON-NLS-1$ //$NON-NLS-2$
+ final IFile activatorFile = project
+ .getFile(new Path("src").append(path).addFileExtension("java")); //$NON-NLS-1$ //$NON-NLS-2$
+ FolderUtils.createFolder((IFolder) activatorFile.getParent());
+ if (!activatorFile.exists()) {
+ final String template = FileUtils.getFileContents(Activator
+ .getDefault().getBundle(), PluginUtils.ACTIVATOR_TPL);
+ final String activatorContents = template.replace("{0}", packageName); //$NON-NLS-1$
+ final InputStream source = new ByteArrayInputStream(
+ activatorContents.getBytes());
+ activatorFile.create(source, true, new NullProgressMonitor());
+ }
+ }
+
+ /** Transform the given name into a valid package and bundle name */
+ private static String stringToValidPackageName(final String name) {
+ final StringBuilder builder = new StringBuilder();
+ char prev = ' ';
+ for (int i = 0; i < name.length(); i++) {
+ final char character = name.charAt(i);
+ if (character >= 'a' && character <= 'z' || character >= 'A'
+ && character <= 'Z' || character == '_') {
+ builder.append(character);
+ prev = character;
+ } else if (character >= '0' && character <= '9') {
+ if (builder.length() == 0 || prev == '.') {
+ builder.append("_"); //$NON-NLS-1$
+ }
+ builder.append(character);
+ prev = character;
+ } else if (character == '.') {
+ if (prev == '.') {
+ continue;
+ }
+ if (builder.length() == 0 || prev >= '0' && prev <= '9') {
+ builder.append("_"); //$NON-NLS-1$
+ }
+ builder.append(character);
+ prev = character;
+ } else {
+ builder.append("_"); //$NON-NLS-1$
+ }
+ }
+
+ String result = builder.toString();
+ // first letter to lowercase
+ if (result.length() > 0 && UCharacter.isUpperCase(result.charAt(0))) {
+ result = UCharacter.toLowerCase(result.charAt(0))
+ + result.substring(1);
+ }
+
+ final IStatus status = JavaConventions.validatePackageName(result,
+ JavaCore.VERSION_1_5, JavaCore.VERSION_1_5);
+ if (!status.isOK()) {
+ Logger.logWarning(
+ "Couldn't make valid package name from project name: " //$NON-NLS-1$
+ + status.getMessage(), Activator.getDefault());
+ result = name;
+ }
+ return result;
+ }
+
+ private static void addPdeNature(final IProject project)
+ throws CoreException {
+ final String pluginNature = PluginUtils.PLUGIN_NATURE;
+ final IProjectDescription description = project.getDescription();
+ final String[] natures = description.getNatureIds();
+ if (!Arrays.asList(natures).contains(pluginNature)) {
+ String[] newNatures = new String[natures.length + 1];
+ System.arraycopy(natures, 0, newNatures, 0, natures.length);
+ newNatures[natures.length] = pluginNature;
+ description.setNatureIds(newNatures);
+ project.setDescription(description, new NullProgressMonitor());
+ }
+ }
+
+ /**
+ * This method transforms a Java project into a plug-in project by creating
+ * a MANIFEST.MF and an activator and by adding a the PDE nature and the PDE
+ * classpath.
+ *
+ * @param project
+ * The project to transform in an plug-in project
+ * @throws CoreException
+ * @throws IOException
+ */
+ public static void configureAsPluginProject(final IProject project)
+ throws CoreException, IOException {
+ PluginUtils.addPdeNature(project);
+ // PDE builders are automatically added when the PDE nature is added
+ PluginUtils.addPdeClassPath(project);
+ PluginUtils.createManifest(project);
+ PluginUtils.createActivator(project);
+ }
+
+ /**
+ * This method returns true if the project is a plug-in project.
+ *
+ * @param project
+ * @return True if the project is a plug-in project.
+ * @throws CoreException
+ */
+ public static boolean isPluginProject(final IProject project)
+ throws CoreException {
+ boolean result = false;
+ if (project.isAccessible()) {
+ result = project.getNature(PluginUtils.PLUGIN_NATURE) != null;
+ }
+ return result;
+ }
+
+ /**
+ * This method returns true if the path refers a file or a folder contained
+ * in a plug-in project.
+ *
+ * @param path
+ * @return True if the path refers a file or a folder contained in a plug-in
+ * project.
+ * @throws CoreException
+ */
+ public static boolean isInPluginProject(final IPath path)
+ throws CoreException {
+ IProject project;
+ if (path.segmentCount() == 1) {
+ project = ResourcesPlugin.getWorkspace().getRoot()
+ .getProject(path.segment(0));
+ } else {
+ final IFolder folder = ResourcesPlugin.getWorkspace().getRoot()
+ .getFolder(path);
+ project = folder.getProject();
+ }
+ return isPluginProject(project);
+ }
+
+ /**
+ * This method imports a plug-in in the workspace.
+ *
+ * @param bundle
+ * the bundle to import into a new project
+ * @return the created project
+ * @throws CoreException
+ * in case of error
+ */
+ public static IProject importPlugin(final Bundle bundle) throws CoreException {
+ return PluginUtils.importPlugin(bundle, new IFilter<String>() {
+ public boolean filter(final String fileName) {
+ return true;
+ }
+ });
+ }
+
+ /**
+ * This method imports a plug-in in the workspace.
+ *
+ * @param bundle
+ * the bundle to import into a new project
+ * @param filter
+ * can be used to filter out files or folders from the import
+ * @return the created project
+ * @throws CoreException
+ * in case of error
+ */
+ public static IProject importPlugin(final Bundle bundle, final IFilter<String> filter) throws CoreException {
+ final IProject[] project = new IProject[1];
+ final IWorkspaceRunnable workspaceRunnable = new IWorkspaceRunnable() {
+ public void run(final IProgressMonitor monitor) throws CoreException {
+ project[0] = internalImportPlugin(bundle, filter);
+ }
+ };
+ ResourcesPlugin.getWorkspace().run(workspaceRunnable, new NullProgressMonitor());
+ return project[0];
+ }
+
+ /**
+ * This method imports a plug-in in the workspace.
+ *
+ * @param bundle
+ * the bundle to import into a new project
+ * @param filter
+ * can be used to filter out files or folders from the import
+ * @return the created project
+ * @throws CoreException
+ * in case of error
+ */
+ protected static IProject internalImportPlugin(final Bundle bundle, final IFilter<String> filter) throws CoreException {
+ final IProject project = createProjectWithUniqueName(bundle.getSymbolicName());
+ final List<IStatus> errors = new ArrayList<IStatus>();
+ final List<URL> urls = getURLsToCopy(bundle, project,
+ "/", filter, errors); //$NON-NLS-1$
+ for (URL url : urls) {
+ copyUrlToFile(project, errors, url);
+ }
+ handleErrors(errors);
+ project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor());
+ project.build(IncrementalProjectBuilder.CLEAN_BUILD, new NullProgressMonitor());
+ project.build(IncrementalProjectBuilder.FULL_BUILD, new NullProgressMonitor());
+ return project;
+ }
+
+ private static void copyUrlToFile(final IProject project,
+ final List<IStatus> errors, final URL url) throws CoreException {
+ try {
+ final InputStream inputStream = url.openStream();
+ final String strSubpath = url.toString().replaceAll(
+ "bundleentry://[^/]*/", ""); //$NON-NLS-1$ //$NON-NLS-2$
+ final IFile file = project.getFile(new Path(strSubpath));
+ if (file.exists()) {
+ file.delete(true, new NullProgressMonitor());
+ }
+ final IContainer parent = file.getParent();
+ if ((!parent.exists()) && parent instanceof IFolder) {
+ createDir((IFolder) parent);
+ }
+ file.create(inputStream, true, new NullProgressMonitor());
+ inputStream.close();
+ } catch (FileNotFoundException e) {
+ /*
+ * gdupe> We ignore files removed during the execution of
+ * internalImportPlugin.
+ */
+ String message;
+ try {
+ message = String.format("Ignoring the missing file %s.", //$NON-NLS-1$
+ url.toURI());
+ } catch (URISyntaxException e1) {
+ message = String.format("Ignoring the missing file."); //$NON-NLS-1$
+ }
+ Logger.logError(message, Activator.getDefault());
+ } catch (IOException e) {
+ final Bundle localBundle = Activator.getDefault().getBundle();
+ final String symbolicName = localBundle.getSymbolicName();
+ final Status status = new Status(IStatus.ERROR, symbolicName,
+ e.getMessage(), e);
+ errors.add(status);
+ }
+ }
+
+ private static void createDir(final IFolder folder) throws CoreException {
+ final IContainer parent = folder.getParent();
+ if ((!parent.exists()) && parent instanceof IFolder) {
+ createDir((IFolder) parent);
+ }
+ folder.create(true, true, new NullProgressMonitor());
+ }
+ protected static void handleErrors(final List<IStatus> errors) throws CoreException {
+ if (!errors.isEmpty()) {
+ final IStatus[] statusArray = errors.toArray(new IStatus[errors.size()]);
+ final IStatus status = new MultiStatus(Activator.getDefault().getBundle().getSymbolicName(),
+ IStatus.ERROR, statusArray, "Errors importing project", new Exception()); //$NON-NLS-1$
+ throw new CoreException(status);
+ }
+ }
+
+ private static List<URL> getURLsToCopy(final Bundle bundle,
+ final IProject project, final String path,
+ final IFilter<String> filter, final List<IStatus> errors) {
+ final List<URL> result = new ArrayList<URL>();
+ final Enumeration<?> entryPaths = bundle.getEntryPaths(path);
+ while (entryPaths != null && entryPaths.hasMoreElements()) {
+ final Object nextElement = entryPaths.nextElement();
+ if (nextElement instanceof String) {
+ final String strSubpath = (String) nextElement;
+ if (filter.filter(strSubpath)) {
+ // directory
+ if (strSubpath.endsWith("/")) { //$NON-NLS-1$
+ final List<URL> fromSubFolder = getURLsToCopy(bundle,
+ project, strSubpath, filter, errors);
+ result.addAll(fromSubFolder);
+ } else {
+ final URL url = bundle.getEntry(strSubpath);
+ if (url != null) {
+ result.add(url);
+ }
+ }
+ }
+ }
+ }
+ return result;
+ }
+
+ protected static IProject createProjectWithUniqueName(final String baseName) throws CoreException {
+ final IWorkspace workspace = ResourcesPlugin.getWorkspace();
+ final IWorkspaceRoot root = workspace.getRoot();
+ IProject project = root.getProject(baseName);
+ if (project.exists()) {
+ int version = 1;
+ final int maxIter = 100;
+ while (project.exists() && version < maxIter) {
+ final String uniqueName = baseName + " (" + version + ')'; //$NON-NLS-1$
+ project = root.getProject(uniqueName);
+ version++;
+ }
+ }
+ project.create(new NullProgressMonitor());
+ project.open(new NullProgressMonitor());
+ return project;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exception/PdeCoreUtilsRuntimeException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exception/PdeCoreUtilsRuntimeException.java
new file mode 100644
index 00000000000..0a4b9139439
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exception/PdeCoreUtilsRuntimeException.java
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 408344 - [Releng] Deep folders cause build break
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.pde.core.internal.exception;
+
+public class PdeCoreUtilsRuntimeException extends RuntimeException {
+
+ private static final long serialVersionUID = -7462304304846835284L;
+
+ public PdeCoreUtilsRuntimeException() {
+ super();
+ }
+
+ public PdeCoreUtilsRuntimeException(final String message) {
+ super(message);
+ }
+
+ public PdeCoreUtilsRuntimeException(final Throwable cause) {
+ super(cause);
+ }
+
+ public PdeCoreUtilsRuntimeException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/BuildPropertiesUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/BuildPropertiesUtils.java
new file mode 100644
index 00000000000..9864a84a619
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/BuildPropertiesUtils.java
@@ -0,0 +1,37 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.pde.core.internal.exported;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.pde.core.build.IBuildModel;
+import org.eclipse.pde.core.plugin.IPluginModelBase;
+
+/**
+ * @since 0.3
+ */
+public final class BuildPropertiesUtils {
+
+ private BuildPropertiesUtils() {
+ // Must not be used
+ }
+
+ public static void addToBuild(final IFile file) throws CoreException {
+ org.eclipse.papyrus.emf.facet.util.pde.core.internal.BuildPropertiesUtils
+ .addToBuild(file);
+ }
+
+ public static IBuildModel getBuildModel(final IPluginModelBase model)
+ throws CoreException {
+ return org.eclipse.papyrus.emf.facet.util.pde.core.internal.BuildPropertiesUtils
+ .getBuildModel(model);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/PluginUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/PluginUtils.java
new file mode 100644
index 00000000000..83700f1eaac
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/PluginUtils.java
@@ -0,0 +1,73 @@
+/**
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.pde.core.internal.exported;
+
+import java.io.IOException;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.papyrus.emf.facet.util.core.internal.exported.IFilter;
+import org.osgi.framework.Bundle;
+
+/**
+ * @since 0.4
+ */
+public final class PluginUtils {
+
+ private PluginUtils() {
+ // Must not be used.
+ }
+
+ public static boolean isInPluginProject(final IPath path)
+ throws CoreException {
+ return org.eclipse.papyrus.emf.facet.util.pde.core.internal.PluginUtils
+ .isInPluginProject(path);
+ }
+
+ public static void register(final IFile file,
+ final String extensionPointId, final String elementName) {
+ org.eclipse.papyrus.emf.facet.util.pde.core.internal.PluginUtils.register(file,
+ extensionPointId, elementName);
+ }
+
+ public static boolean isRegistered(final IFile iFile,
+ final String extensionPointId) {
+ return org.eclipse.papyrus.emf.facet.util.pde.core.internal.PluginUtils
+ .isRegistered(iFile, extensionPointId);
+ }
+
+ public static void configureAsPluginProject(final IProject project)
+ throws CoreException, IOException {
+ org.eclipse.papyrus.emf.facet.util.pde.core.internal.PluginUtils
+ .configureAsPluginProject(project);
+ }
+
+ public static boolean isPluginProject(final IProject project)
+ throws CoreException {
+ return org.eclipse.papyrus.emf.facet.util.pde.core.internal.PluginUtils
+ .isPluginProject(project);
+ }
+
+ public static IProject importPlugin(final Bundle bundle,
+ final IFilter<String> filter) throws CoreException {
+ return org.eclipse.papyrus.emf.facet.util.pde.core.internal.PluginUtils
+ .importPlugin(bundle, filter);
+ }
+
+ public static IProject importPlugin(final Bundle bundle)
+ throws CoreException {
+ return org.eclipse.papyrus.emf.facet.util.pde.core.internal.PluginUtils
+ .importPlugin(bundle);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/TargetPlatformUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/TargetPlatformUtils.java
new file mode 100644
index 00000000000..cae955c0a50
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/TargetPlatformUtils.java
@@ -0,0 +1,576 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Soft-Maint.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Treguer (Soft-Maint) - Bug 418565 - [Unit Test Failure] Missing dependencies during tests, target platform creation and load
+ ******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.pde.core.internal.exported;
+
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.lang.reflect.Array;
+import java.lang.reflect.Constructor;
+import java.lang.reflect.Method;
+import java.util.Enumeration;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.jar.JarEntry;
+import java.util.jar.JarFile;
+import java.util.jar.JarOutputStream;
+
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.papyrus.emf.facet.util.pde.core.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.pde.core.internal.exported.exception.PdeCoreUtilsException;
+import org.eclipse.papyrus.emf.facet.util.pde.core.internal.exported.exception.ReflexiveDiscouragedAccessException;
+import org.osgi.framework.Bundle;
+import org.osgi.framework.Version;
+
+public final class TargetPlatformUtils {
+
+ private static final String BUNDLE_SEPARATOR = ","; //$NON-NLS-1$
+ private static final String JAR_EXT = ".jar"; //$NON-NLS-1$
+ private static final String JAR_DIRECTORY = "jarFiles"; //$NON-NLS-1$
+ private static final int BUFFER_SIZE = 4096;
+ private static final String BUNDLE_PREFIX = "reference:file:"; //$NON-NLS-1$
+ private static final String FRAMEWORK_PREFIX = "file:"; //$NON-NLS-1$
+ private static final String OSGI_PROP = "osgi.bundles"; //$NON-NLS-1$
+ private static final String OSGI_PROP_FRK = "osgi.framework"; //$NON-NLS-1$
+ private static final String ARRAY_PREFIX = "[L"; //$NON-NLS-1$
+
+ private TargetPlatformUtils() {
+ //Must not be used.
+ }
+
+ /**
+ * Creates and loads a target platform with all needed bundles.
+ * @throws PdeCoreUtilsException
+ * @throws IOException
+ */
+ public static void loadTargetPlatform() throws PdeCoreUtilsException {
+ String copyDirectoryPath;
+ try {
+ /*ITargetPlatformService*/
+ final Object targetPlServ = reflexiveCall(
+ true,
+ "org.eclipse.pde.internal.core.target.TargetPlatformService", //$NON-NLS-1$
+ "getDefault", //$NON-NLS-1$
+ null);
+ /*ITargetDefinition*/
+ final Object targetDefinition = reflexiveCall(
+ false,
+ targetPlServ,
+ "newTarget", //$NON-NLS-1$
+ null);
+ copyDirectoryPath = Activator.getDefault().getStateLocation()
+ + File.separator + JAR_DIRECTORY;
+
+ final File copyDirectory = new File(copyDirectoryPath);
+ copyDirectory.mkdirs();
+
+ final List<String> dirPaths = parseBundlesList();
+
+ /*IBundleContainer*/
+ final Object[] dirContainers =
+ copyJarsAndGetContainers(dirPaths, copyDirectory);
+ reflexiveCall(
+ false,
+ targetDefinition,
+ getContainerSetterName(),
+ new Object[]{dirContainers});
+ reflexiveCall(
+ false,
+ targetDefinition,
+ "resolve", //$NON-NLS-1$
+ new Object[]{new NullProgressMonitor()});
+ reflexiveCall(
+ true,
+ getLoadTargetDefinitionJobQualifiedName(),
+ "load", //$NON-NLS-1$
+ new Object[]{targetDefinition});
+ reflexiveCall(
+ false,
+ targetPlServ,
+ "saveTargetDefinition", //$NON-NLS-1$
+ new Object[]{targetDefinition});
+ } catch (Exception e) {
+ throw new PdeCoreUtilsException(e);
+ }
+ new File(copyDirectoryPath).delete();
+ }
+
+ private static boolean isHigherVersion() {
+ final Version version = new Version(3, 7, 1);
+ final Bundle bundle = Platform.getBundle("org.eclipse.pde.core"); //$NON-NLS-1$
+ final Version currentVersion = bundle.getVersion();
+ return currentVersion.compareTo(version) > 0;
+ }
+
+ private static String getLoadTargetDefinitionJobQualifiedName() {
+ String lTDefJobName;
+ if (isHigherVersion()) {
+ lTDefJobName =
+ "org.eclipse.pde.core.target.LoadTargetDefinitionJob"; //$NON-NLS-1$
+ } else {
+ lTDefJobName =
+ "org.eclipse.pde.internal.core.target.provisional.LoadTargetDefinitionJob"; //$NON-NLS-1$
+ }
+ return lTDefJobName;
+ }
+
+ private static String getContainerSetterName() {
+ String setterName;
+ if (isHigherVersion()) {
+ setterName =
+ "setTargetLocations"; //$NON-NLS-1$
+ } else {
+ setterName =
+ "setBundleContainers"; //$NON-NLS-1$
+ }
+ return setterName;
+ }
+
+ /**
+ * Parses osgi.bundles property value to load all required bundles directories.
+ * @return List<String> array
+ * @throws PdeCoreUtilsException
+ * @throws IOException
+ */
+ private static List<String> parseBundlesList()
+ throws PdeCoreUtilsException, IOException {
+ final LinkedList<String> result = new LinkedList<String>();
+ final String bundlesFromConfig = System.getProperty(OSGI_PROP);
+ final String frwkFromConfig = System.getProperty(OSGI_PROP_FRK);
+ if (bundlesFromConfig != null && !"".equals(bundlesFromConfig)) { //$NON-NLS-1$
+ final String[] bundlesStr =
+ bundlesFromConfig.split(BUNDLE_SEPARATOR);
+ result.addAll(trimPaths(bundlesStr, BUNDLE_PREFIX));
+ }
+ if (frwkFromConfig != null && !"".equals(frwkFromConfig)) { //$NON-NLS-1$
+ final String[] frameworkStr =
+ frwkFromConfig.split(BUNDLE_SEPARATOR);
+ result.addAll(trimPaths(frameworkStr, FRAMEWORK_PREFIX));
+ }
+ return result;
+ }
+
+ /**
+ * Returns list of trimmed paths;
+ * @param paths String[]
+ * @param prefix String
+ * @return List<String>
+ */
+ private static List<String> trimPaths(final String[] paths,
+ final String prefix) {
+ final LinkedList<String> result = new LinkedList<String>();
+ for (String path : paths) {
+ int indexSuffix = path.indexOf("@"); //$NON-NLS-1$
+ if (indexSuffix < 0) {
+ indexSuffix = path.length();
+ }
+ result.add(path.substring(prefix.length(),
+ indexSuffix));
+ }
+ return result;
+ }
+
+ /**
+ * Reflexive call of DirectoryBundleContainer constructor.
+ * @param containerPath String
+ * @return Object
+ * @throws PdeCoreUtilsException
+ */
+ private static Object newDirectoryBundleContainer(
+ final String containerPath)
+ throws PdeCoreUtilsException {
+ Object container = null;
+ try {
+ final Bundle bundle = Activator.getDefault().getBundle();
+ final Class<?> classs =
+ bundle.loadClass("org.eclipse.pde.internal.core.target.DirectoryBundleContainer"); //$NON-NLS-1$
+ final Class<?>[] paramTypes = new Class[] {containerPath.getClass()};
+ final Constructor<?> constructor = classs.getConstructor(paramTypes);
+ final Object[] initargs = new Object[] { containerPath };
+ container = constructor.newInstance(initargs);
+ } catch (Exception e) {
+ throw new PdeCoreUtilsException(e);
+ }
+ return container;
+ }
+
+ /**
+ * Copies all needed jar files in a directory and returns set of containers.
+ * @param bundlesStr List<String>
+ * @param copyDirectory File
+ * @return Object[]
+ * @throws PdeCoreUtilsException
+ * @throws IOException
+ */
+ private static Object[] copyJarsAndGetContainers(
+ final List<String> bundlesStr, final File copyDirectory)
+ throws PdeCoreUtilsException, IOException {
+ final List<Object> bundleContainers = new LinkedList<Object>();
+ final Iterator<String> bundlesStrIter = bundlesStr.iterator();
+ while (bundlesStrIter.hasNext()) {
+ final File bundleFile = new File(bundlesStrIter.next()); // NOPMD
+ // NOPMD: gdupe> No other way to write this code
+ if (bundleFile.exists()) {
+ if (bundleFile.isDirectory()) {
+ copyJarFileOrAddContainerDirectory(bundleFile,
+ bundleContainers, copyDirectory);
+ } else {
+ try {
+ //FIXME gdupe> is a call to close() required ?
+ final JarFile jarFile = new JarFile(bundleFile); // NOPMD
+ // NOPMD: gdupe> No other way to write this code
+ copyJarFile(jarFile, copyDirectory);
+ } catch (IOException e) {
+ throw new PdeCoreUtilsException(e);
+ }
+ }
+ }
+ }
+ final Object copyDirContainer =
+ newDirectoryBundleContainer(copyDirectory.getAbsolutePath());
+ bundleContainers.add(copyDirContainer);
+ return bundleContainers.toArray();
+ }
+
+ /**
+ * Copies jarFile to the specified directory or creates a container
+ * if bundleFile is a directory.
+ * @param bundleFile File
+ * @param bundleContainers List<Object>
+ * @param copyDirectory File
+ * @throws PdeCoreUtilsException
+ * @throws IOException
+ */
+ private static void copyJarFileOrAddContainerDirectory(
+ final File bundleFile, final List<Object> bundleContainers,
+ final File copyDirectory)
+ throws PdeCoreUtilsException, IOException {
+ Object container;
+ //FIXME gdupe> is a call to close() required ?
+ final JarFile jarFile = getFirstMatchingJarFile(bundleFile);
+ if (jarFile == null) {
+ container = newDirectoryBundleContainer(bundleFile.getAbsolutePath());
+ bundleContainers.add(container);
+ } else {
+ copyJarFile(jarFile, copyDirectory);
+ }
+ }
+
+ /**
+ * Return first jar file that match with the bundle directory.
+ * @param bundleFile File
+ * @return JarFile
+ * @throws IOException
+ */
+ private static JarFile getFirstMatchingJarFile(final File bundleFile)
+ throws IOException {
+ JarFile result = null;
+ if (bundleFile.exists() && bundleFile.isDirectory()) {
+ final String bundleFileName = bundleFile.getName();
+ final File jar = findJarFile(bundleFile, bundleFileName);
+ if (jar != null) {
+ result = new JarFile(jar);
+ }
+ }
+ return result;
+ }
+
+ /**
+ * Search jar file in directory and sub-directories.
+ * @param directory File
+ * @param fileName String
+ * @return File
+ */
+ private static File findJarFile(final File directory,
+ final String fileName) {
+ final File[] children = directory.listFiles();
+ final LinkedList<File> toVisit = new LinkedList<File>();
+ int cpt = 0;
+ File foundFile = null;
+ String childName;
+ while (foundFile != null && cpt < children.length) {
+ final File child = children[cpt];
+ if (child.isFile()) {
+ childName = child.getName();
+ if (childName.startsWith(fileName)
+ && childName.endsWith(JAR_EXT)) {
+ foundFile = child;
+ }
+ } else {
+ toVisit.add(child);
+ }
+ cpt++;
+ }
+ if (foundFile == null) {
+ foundFile = searchInSubDirectories(fileName, toVisit);
+ }
+ return foundFile;
+ }
+
+ /**
+ * Search jar file and sub-directories.
+ * @param fileName String
+ * @param toVisit List<File>
+ * @return File
+ */
+ private static File searchInSubDirectories(final String fileName,
+ final List<File> toVisit) {
+ File result = null;
+ final Iterator<File> childrenIterator = toVisit.iterator();
+ while (childrenIterator.hasNext() && result != null) {
+ final File child = childrenIterator.next();
+ result = findJarFile(child.getAbsoluteFile(), fileName);
+ }
+ return result;
+ }
+
+
+ /**
+ * Copies a jarFile into specified directory.
+ * @param jarFile JarFile
+ * @param copyTo File
+ * @throws PdeCoreUtilsException
+ */
+ private static void copyJarFile(final JarFile jarFile, final File copyTo)
+ throws PdeCoreUtilsException {
+ final String fileName = jarFile.getName();
+ final String bundleName = fileName.substring(fileName
+ .lastIndexOf(File.separator));
+ final File copyToDirectory = new File(copyTo, bundleName);
+ JarOutputStream jarOutputStream = null;
+ try {
+ jarOutputStream = new JarOutputStream(
+ new FileOutputStream(copyToDirectory));
+ final Enumeration<JarEntry> jarFileEntries = jarFile.entries();
+ final byte[] buffer = new byte[BUFFER_SIZE];
+ while (jarFileEntries.hasMoreElements()) {
+ final JarEntry sourceEntry = jarFileEntries.nextElement();
+ final InputStream inputStream =
+ jarFile.getInputStream(sourceEntry);
+ final JarEntry targetEntry =
+ new JarEntry(sourceEntry.getName()); // NOPMD
+ // ftreguer> NOPMD This loop has to create one jar entry for
+ // each loop iteration
+ jarOutputStream.putNextEntry(targetEntry);
+ int bytesRead = inputStream.read(buffer);
+ while (bytesRead != -1) {
+ jarOutputStream.write(buffer, 0, bytesRead);
+ bytesRead = inputStream.read(buffer);
+ }
+ inputStream.close();
+ jarOutputStream.flush();
+ jarOutputStream.closeEntry();
+ }
+ } catch (IOException e) {
+ throw new PdeCoreUtilsException(e);
+ } finally { // NOPMD gdupe> No other choice if I want to managed the
+ // stream closing
+ if (jarOutputStream != null) {
+ try {
+ jarOutputStream.close();
+ } catch (IOException e) {
+ throw new PdeCoreUtilsException(e);
+ }
+ }
+ }
+ }
+
+ /**
+ * Calls a method reflexively on an object or a class (static call) with
+ * specified arguments.
+ * @param staticCall boolean
+ * @param callOn Object
+ * @param calledMethodName String
+ * @param args Object[]
+ * @throws ExpException
+ */
+ private static Object reflexiveCall(final boolean staticCall,
+ final Object callOn, final String calledMethodName,
+ final Object[] args) throws ReflexiveDiscouragedAccessException {
+ Object result = null;
+ Method aMethod;
+ final Class<?>[] classes = getClassesFromArgs(args);
+ try {
+ if (staticCall) {
+ // ftreguer> Static Call, the second parameter should be a
+ // String representing Class name.
+ if (callOn instanceof String) {
+ final Class<?> clazz = Activator.getDefault()
+ .getBundle().loadClass((String) callOn);
+ aMethod = getMethod(clazz, calledMethodName, classes);
+ } else {
+ throw new ReflexiveDiscouragedAccessException(
+ "Invalid parameter, callOn parameter should be a String. (Static Call)"); //$NON-NLS-1$
+ }
+ } else {
+ aMethod = getMethod(callOn.getClass(),
+ calledMethodName, classes);
+ }
+ if (aMethod == null) {
+ throw new ReflexiveDiscouragedAccessException(
+ "API break, no method with specified arguments found."); //$NON-NLS-1$
+ }
+ result = aMethod.invoke(callOn, manageArguments(args));
+ } catch (Exception e) {
+ throw new ReflexiveDiscouragedAccessException(e);
+ }
+ return result;
+ }
+
+
+ /**
+ * Transforms Object arrays to specific arrays.
+ * @param arguments Object[]
+ * @return Object[]
+ */
+ private static Object[] manageArguments(final Object[] arguments) {
+ Object[] result;
+ if (arguments != null && arguments.length > 0) {
+ result = new Object[arguments.length];
+ Object arg;
+ for (int i = 0; i < arguments.length; i++) {
+ arg = arguments[i];
+ if (isArray(arg)) {
+ final Object argElement = ((Object[]) arg)[0];
+ final int arraySize = Array.getLength(arg);
+ Object[] argTmp = (Object[]) Array.newInstance(
+ argElement.getClass(), arraySize);
+ for (int y = 0; y < arraySize; y++) {
+ argTmp[y] = ((Object[]) arg)[y];
+ }
+ result[i] = argTmp;
+ } else {
+ result[i] = arg;
+ }
+ }
+ } else {
+ result = arguments;
+ }
+ return result;
+ }
+
+ /**
+ * Returns true if the parameter represents an array.
+ * @param obj Object
+ * @return boolean
+ */
+ private static boolean isArray(final Object obj) {
+ return obj.getClass().getName().startsWith(ARRAY_PREFIX);
+ }
+
+ /**
+ * Returns array of Class that represents types of each arguments.
+ * @param args Object[]
+ * @return Class<?>[]
+ */
+ private static Class<?>[] getClassesFromArgs(final Object[] args) {
+ Class<?>[] classes = null;
+ if (args != null) {
+ classes = new Class[args.length];
+ Object arg = null;
+ for (int i = 0; i < args.length; i++) {
+ arg = args[i];
+ if (arg != null) {
+ if (isArray(arg)) {
+ arg = ((Object[]) arg)[0];
+ arg = Array.newInstance(arg.getClass(), 0);
+ }
+ classes[i] = arg.getClass();
+ }
+ }
+ }
+ return classes;
+ }
+
+ /**
+ * Returns a Method object that correspond to the specified name
+ * and parameters.
+ * @param clazz Class<?>
+ * @param methodName String
+ * @param parameterTypes Class<?>[]
+ * @return Method
+ * @throws ClassNotFoundException
+ */
+ private static Method getMethod(final Class<?> clazz,
+ final String methodName, final Class<?>... parameterTypes)
+ throws ClassNotFoundException {
+ Method result = null;
+ final Method[] methods = clazz.getMethods();
+ for (Method method : methods) {
+ if (methodName.equals(method.getName())) {
+ final Class<?>[] parameters = method.getParameterTypes();
+ if (checkTypes(parameters, parameterTypes)) {
+ result = method;
+ break;
+ }
+ }
+ }
+ return result;
+ }
+
+ /**
+ * Checks if all parameters are the same in both arrays.
+ * @param refParams
+ * @param parameterToTest
+ * @return boolean
+ * @throws ClassNotFoundException
+ */
+ private static boolean checkTypes(final Class<?>[] refParams,
+ final Class<?>[] parameterToTest) throws ClassNotFoundException {
+ boolean result = true;
+ if (refParams != null && parameterToTest != null
+ && (refParams.length == parameterToTest.length)) {
+ String refClazzName = null;
+ String clazzName = null;
+ for (int i = 0; i < parameterToTest.length; i++) {
+ refClazzName = refParams[i].getName();
+ clazzName = parameterToTest[i].getName();
+ if (!clazzName.equals(refClazzName)) {
+ final boolean isRefArray = refClazzName
+ .startsWith(ARRAY_PREFIX);
+ final boolean isParamArray = clazzName
+ .startsWith(ARRAY_PREFIX);
+ if (isRefArray == isParamArray) {
+ if (isRefArray) {
+ refClazzName = refClazzName
+ .substring(ARRAY_PREFIX.length(),
+ refClazzName.length() - 1);
+ clazzName = clazzName
+ .substring(ARRAY_PREFIX.length(),
+ clazzName.length() - 1);
+ }
+ result = paramExtendsRef(refClazzName, clazzName);
+ }
+ }
+ }
+ }
+ return result;
+ }
+
+ /**
+ * Returns true if className is a SubType of refClassName.
+ * @param refClassName String
+ * @param className String
+ * @return boolean
+ * @throws ClassNotFoundException
+ */
+ private static boolean paramExtendsRef(final String refClassName,
+ final String className) throws ClassNotFoundException {
+ final Bundle bundle = Activator.getDefault().getBundle();
+ final Class<?> refClazz = bundle.loadClass(refClassName);
+ final Class<?> clazz = bundle.loadClass(className);
+ return refClazz.isAssignableFrom(clazz);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/exception/PdeCoreUtilsException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/exception/PdeCoreUtilsException.java
new file mode 100644
index 00000000000..95c654f8076
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/exception/PdeCoreUtilsException.java
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Soft-Maint.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Treguer (Soft-Maint) - Bug 418565 - [Unit Test Failure] Missing dependencies during tests, target platform creation and load
+ ******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.pde.core.internal.exported.exception;
+
+public class PdeCoreUtilsException extends Exception {
+
+ private static final long serialVersionUID = -7462304304846835284L;
+
+ public PdeCoreUtilsException() {
+ super();
+ }
+
+ public PdeCoreUtilsException(final String message) {
+ super(message);
+ }
+
+ public PdeCoreUtilsException(final Throwable cause) {
+ super(cause);
+ }
+
+ public PdeCoreUtilsException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/exception/ReflexiveDiscouragedAccessException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/exception/ReflexiveDiscouragedAccessException.java
new file mode 100644
index 00000000000..67a649cd99c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.pde.core/src/org/eclipse/papyrus/emf/facet/util/pde/core/internal/exported/exception/ReflexiveDiscouragedAccessException.java
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Soft-Maint.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Treguer (Soft-Maint) - Bug 418565 - [Unit Test Failure] Missing dependencies during tests, target platform creation and load
+ ******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.pde.core.internal.exported.exception;
+
+public class ReflexiveDiscouragedAccessException extends Exception {
+
+ private static final long serialVersionUID = -7462304304846835284L;
+
+ public ReflexiveDiscouragedAccessException() {
+ super();
+ }
+
+ public ReflexiveDiscouragedAccessException(final String message) {
+ super(message);
+ }
+
+ public ReflexiveDiscouragedAccessException(final Throwable cause) {
+ super(cause);
+ }
+
+ public ReflexiveDiscouragedAccessException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.checkstyle
new file mode 100644
index 00000000000..d058aea5b90
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.checkstyle
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Copyright (c) 2010 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Bros (Mia-Software) - initial API and implementation
+-->
+<fileset-config file-format-version="1.2.0" simple-config="true">
+ <local-check-config name="EmfFacet" location="/org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.options b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.options
new file mode 100644
index 00000000000..b16715ecd35
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.options
@@ -0,0 +1,11 @@
+# Copyright (c) 2013 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Gregoire Dupe (Mia-Software) - Bug 423611 - ImageProvider doesn't use singleton instance
+org.eclipse.papyrus.emf.facet.util.swt/debug=false
+org.eclipse.papyrus.emf.facet.util.swt/debug/ImageProvider=false \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.project
new file mode 100644
index 00000000000..f6f216db599
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.project
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.util.swt</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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..4b8505e6d1e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,3 @@
+#Wed Sep 14 13:39:57 CEST 2011
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.settings/org.eclipse.core.runtime.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.settings/org.eclipse.core.runtime.prefs
new file mode 100644
index 00000000000..dea8d10ff97
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,3 @@
+#Tue Dec 13 09:46:07 CET 2011
+eclipse.preferences.version=1
+line.separator=\n
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..060c5ee3d2e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,11 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+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.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.settings/org.eclipse.jdt.ui.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 00000000000..069fa88fb66
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+formatter_settings_version=12
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..07837a39e30
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/META-INF/MANIFEST.MF
@@ -0,0 +1,17 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.util.swt;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.util.swt.internal.Activator
+Bundle-Vendor: %Bundle-Vendor
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.swt;bundle-version="3.6.0",
+ org.eclipse.ui;bundle-version="3.6.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.3.0"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.util.swt.colorprovider,
+ org.eclipse.papyrus.emf.facet.util.swt.fontprovider,
+ org.eclipse.papyrus.emf.facet.util.swt.imageprovider,
+ org.eclipse.papyrus.emf.facet.util.swt.internal.exported
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..54c2b97dfb1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,13 @@
+###############################################################################
+# Copyright (c) 2012 CEA LIST.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+###############################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.util.swt
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet SWT Utilities (Incubation)
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/about.html
new file mode 100644
index 00000000000..3019b95b9cf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/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>December 22, 2008</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/build.properties
new file mode 100644
index 00000000000..84556c2e0a9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/build.properties
@@ -0,0 +1,18 @@
+###############################################################################
+# Copyright (c) 2012 CEA LIST.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+###############################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ about.html,\
+ OSGI-INF/,\
+ .options
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/colorprovider/IColorProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/colorprovider/IColorProvider.java
new file mode 100644
index 00000000000..5760d9d0550
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/colorprovider/IColorProvider.java
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 424122 - [Table] Images, fonts and colors are not shared between the instances of table
+ ******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.util.swt.colorprovider;
+
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.RGB;
+
+public interface IColorProvider {
+
+ Color getColor(RGB path);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/colorprovider/IColorProviderFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/colorprovider/IColorProviderFactory.java
new file mode 100644
index 00000000000..9db56a1d0d9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/colorprovider/IColorProviderFactory.java
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 424122 - [Table] Images, fonts and colors are not shared between the instances of table
+ ******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.swt.colorprovider;
+
+import org.eclipse.papyrus.emf.facet.util.swt.internal.colorprovider.ColorProviderFactory;
+import org.eclipse.swt.graphics.Device;
+
+public interface IColorProviderFactory {
+
+ IColorProviderFactory DEFAULT = new ColorProviderFactory();
+
+ IColorProvider getOrCreateIColorProvider(Device device);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/fontprovider/IFontProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/fontprovider/IFontProvider.java
new file mode 100644
index 00000000000..dba8f7a79cc
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/fontprovider/IFontProvider.java
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 424122 - [Table] Images, fonts and colors are not shared between the instances of table
+ ******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.util.swt.fontprovider;
+
+import org.eclipse.swt.graphics.Font;
+import org.eclipse.swt.graphics.FontData;
+
+public interface IFontProvider {
+
+ Font getFont(FontData fontData);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/fontprovider/IFontProviderFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/fontprovider/IFontProviderFactory.java
new file mode 100644
index 00000000000..60a68e3b299
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/fontprovider/IFontProviderFactory.java
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 424122 - [Table] Images, fonts and colors are not shared between the instances of table
+ ******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.swt.fontprovider;
+
+import org.eclipse.papyrus.emf.facet.util.swt.internal.fontprovider.FontProviderFactory;
+import org.eclipse.swt.graphics.Device;
+
+public interface IFontProviderFactory {
+
+ IFontProviderFactory DEFAULT = new FontProviderFactory();
+
+ IFontProvider getOrCreateIFontProvider(Device device);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/imageprovider/IImageProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/imageprovider/IImageProvider.java
new file mode 100644
index 00000000000..92acac023a1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/imageprovider/IImageProvider.java
@@ -0,0 +1,27 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 406569 - Image provider factory
+ * Gregoire Dupe (Mia-Software) - Bug 424122 - [Table] Images, fonts and colors are not shared between the instances of table
+ ******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.util.swt.imageprovider;
+
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.swt.graphics.Image;
+
+public interface IImageProvider {
+
+ Image getImage(String path);
+
+ ImageDescriptor createImageDescriptor(String resourcePath);
+
+ Image getImage(ImageDescriptor imgDescriptor);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/imageprovider/IImageProviderFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/imageprovider/IImageProviderFactory.java
new file mode 100644
index 00000000000..0f962da6c63
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/imageprovider/IImageProviderFactory.java
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 406569 - Image provider factory
+ ******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.swt.imageprovider;
+
+import org.eclipse.core.runtime.Plugin;
+import org.eclipse.papyrus.emf.facet.util.swt.internal.imageprovider.ImageProviderFactory;
+
+public interface IImageProviderFactory {
+
+ IImageProviderFactory DEFAULT = new ImageProviderFactory();
+
+ IImageProvider createIImageProvider(Plugin plugin);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/Activator.java
new file mode 100644
index 00000000000..a662baf27ec
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/Activator.java
@@ -0,0 +1,45 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.swt.internal;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+/** The activator class controls the plug-in life cycle */
+public class Activator extends Plugin {
+
+ // The plug-in ID
+ public static final String PLUGIN_ID = "org.eclipse.papyrus.emf.facet.util.swt"; //$NON-NLS-1$
+
+ // The shared instance
+ private static Activator plugin;
+
+ @Override
+ public void start(final BundleContext context) throws Exception {
+ super.start(context);
+ Activator.plugin = this;
+ }
+
+ @Override
+ public void stop(final BundleContext context) throws Exception {
+ Activator.plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return Activator.plugin;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/colorprovider/ColorProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/colorprovider/ColorProvider.java
new file mode 100644
index 00000000000..9204028b0c3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/colorprovider/ColorProvider.java
@@ -0,0 +1,40 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 424122 - [Table] Images, fonts and colors are not shared between the instances of table
+ ******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.swt.internal.colorprovider;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.papyrus.emf.facet.util.swt.colorprovider.IColorProvider;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.Device;
+import org.eclipse.swt.graphics.RGB;
+
+public class ColorProvider implements IColorProvider {
+
+ private Map<RGB, Color> cash = new HashMap<RGB, Color>();
+ private Device device;
+
+ public ColorProvider(final Device device) {
+ this.device = device;
+ }
+
+ public Color getColor(final RGB rgb) {
+ Color result = this.cash.get(rgb);
+ if (result == null) {
+ result = new Color(this.device, rgb);
+ this.cash.put(rgb, result);
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/colorprovider/ColorProviderFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/colorprovider/ColorProviderFactory.java
new file mode 100644
index 00000000000..ea9ff55e410
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/colorprovider/ColorProviderFactory.java
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 424122 - [Table] Images, fonts and colors are not shared between the instances of table
+ ******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.swt.internal.colorprovider;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.papyrus.emf.facet.util.swt.colorprovider.IColorProvider;
+import org.eclipse.papyrus.emf.facet.util.swt.colorprovider.IColorProviderFactory;
+import org.eclipse.swt.graphics.Device;
+
+public class ColorProviderFactory implements IColorProviderFactory {
+
+ private Map<Device, IColorProvider> cash = new HashMap<Device, IColorProvider>();
+
+ public IColorProvider getOrCreateIColorProvider(final Device device) {
+ IColorProvider result = this.cash.get(device);
+ if (result == null) {
+ result = new ColorProvider(device);
+ this.cash.put(device, result);
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/exported/SWTTestUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/exported/SWTTestUtils.java
new file mode 100644
index 00000000000..f3a6b51aaa8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/exported/SWTTestUtils.java
@@ -0,0 +1,38 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.swt.internal.exported;
+
+import org.eclipse.swt.widgets.TreeItem;
+
+public final class SWTTestUtils {
+ private SWTTestUtils() {
+ // utility class
+ }
+
+ /**
+ * Find a tree item with the given text among the list of tree items.
+ *
+ * @param text
+ * the text of the tree item to find
+ * @param items
+ * the list of tree items to search
+ * @return the tree item or <code>null</code> if not found
+ */
+ public static TreeItem findTreeItem(final String text, final TreeItem[] items) {
+ TreeItem result = null;
+ for (TreeItem item : items) {
+ if (text.equals(item.getText())) {
+ result = item;
+ }
+ }
+ return result;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/exported/TestUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/exported/TestUtils.java
new file mode 100644
index 00000000000..c6392041a7c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/exported/TestUtils.java
@@ -0,0 +1,46 @@
+/*******************************************************************************
+ * Copyright (c) 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 378475 - unit test failures after table refactoring
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.swt.internal.exported;
+
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.IViewPart;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.part.IntroPart;
+
+public final class TestUtils {
+
+ private TestUtils() {
+ // utility class
+ }
+
+ public static void closeWelcomePage() {
+ Display.getDefault().syncExec(new Runnable() {
+ public void run() {
+ IWorkbenchPart activePart = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActivePart();
+ if (activePart != null) {
+ IntroPart adapter = (IntroPart) activePart.getAdapter(IntroPart.class);
+ if (adapter != null) {
+ PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().hideView((IViewPart) activePart);
+ }
+ }
+ }
+ });
+ }
+
+ public static void closeAllEditors() {
+ Display.getDefault().syncExec(new Runnable() {
+ public void run() {
+ PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().closeAllEditors(false);
+ }
+ });
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/fontprovider/FontProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/fontprovider/FontProvider.java
new file mode 100644
index 00000000000..3343b8088a8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/fontprovider/FontProvider.java
@@ -0,0 +1,40 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 424122 - [Table] Images, fonts and colors are not shared between the instances of table
+ ******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.swt.internal.fontprovider;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.papyrus.emf.facet.util.swt.fontprovider.IFontProvider;
+import org.eclipse.swt.graphics.Device;
+import org.eclipse.swt.graphics.Font;
+import org.eclipse.swt.graphics.FontData;
+
+public class FontProvider implements IFontProvider {
+
+ private Map<FontData, Font> cash = new HashMap<FontData, Font>();
+ private Device device;
+
+ public FontProvider(final Device device) {
+ this.device = device;
+ }
+
+ public Font getFont(final FontData fontData) {
+ Font result = this.cash.get(fontData);
+ if (result == null) {
+ result = new Font(this.device, fontData);
+ this.cash.put(fontData, result);
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/fontprovider/FontProviderFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/fontprovider/FontProviderFactory.java
new file mode 100644
index 00000000000..ce4016510ca
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/fontprovider/FontProviderFactory.java
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 424122 - [Table] Images, fonts and colors are not shared between the instances of table
+ ******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.swt.internal.fontprovider;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.papyrus.emf.facet.util.swt.fontprovider.IFontProvider;
+import org.eclipse.papyrus.emf.facet.util.swt.fontprovider.IFontProviderFactory;
+import org.eclipse.swt.graphics.Device;
+
+public class FontProviderFactory implements IFontProviderFactory {
+
+ private Map<Device, IFontProvider> cash = new HashMap<Device, IFontProvider>();
+
+ public IFontProvider getOrCreateIFontProvider(final Device device) {
+ IFontProvider result = this.cash.get(device);
+ if (result == null) {
+ result = new FontProvider(device);
+ this.cash.put(device, result);
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/imageprovider/ImageProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/imageprovider/ImageProvider.java
new file mode 100644
index 00000000000..f8fedfdf600
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/imageprovider/ImageProvider.java
@@ -0,0 +1,86 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 406569 - Image provider factory
+ * Gregoire Dupe (Mia-Software) - Bug 423611 - ImageProvider doesn't use singleton instance
+ * Gregoire Dupe (Mia-Software) - Bug 424122 - [Table] Images, fonts and colors are not shared between the instances of table
+ ******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.util.swt.internal.imageprovider;
+
+import java.net.URL;
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.core.runtime.Plugin;
+import org.eclipse.papyrus.emf.facet.util.core.DebugUtils;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.swt.imageprovider.IImageProvider;
+import org.eclipse.papyrus.emf.facet.util.swt.internal.Activator;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.swt.graphics.Image;
+import org.osgi.framework.Bundle;
+
+public final class ImageProvider implements IImageProvider {
+
+ private static final boolean DEBUG = DebugUtils.getDebugStatus(Activator.getDefault());
+ private final Map<Object, Image> map = new HashMap<Object, Image>();
+ private final Plugin activator;
+
+ ImageProvider(final Plugin activator) {
+ this.activator = activator;
+ }
+
+ public ImageDescriptor createImageDescriptor(final String resourcePath) {
+ ImageDescriptor result;
+ final URL url = this.activator.getBundle().getResource(resourcePath);
+ if (url == null) {
+ Logger.logError(NLS.bind("Resource not found: {0}", //$NON-NLS-1$
+ resourcePath), this.activator);
+ result = ImageDescriptor.getMissingImageDescriptor();
+ } else {
+ result = ImageDescriptor.createFromURL(url);
+ }
+ return result;
+ }
+
+ public Image getImage(final String path) {
+ Image result = this.map.get(path);
+ if (result == null) {
+ result = createImageDescriptor(path).createImage();
+ this.map.put(path, result);
+ if (DEBUG) {
+ final Bundle bundle = this.activator.getBundle();
+ final String bundleId = bundle.getSymbolicName();
+ final String message = String.format("New image loaded: %s:%s", //$NON-NLS-1$
+ bundleId, path);
+ DebugUtils.debug(message);
+ }
+ }
+ return result;
+ }
+
+ public Image getImage(final ImageDescriptor imgDescriptor) {
+ Image result = this.map.get(imgDescriptor);
+ if (result == null) {
+ result = imgDescriptor.createImage();
+ this.map.put(imgDescriptor, result);
+ if (DEBUG) {
+ final Bundle bundle = this.activator.getBundle();
+ final String bundleId = bundle.getSymbolicName();
+ final String message = String.format("New image loaded from an image descriptor (bundle=%s)", //$NON-NLS-1$
+ bundleId);
+ DebugUtils.debug(message);
+ }
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/imageprovider/ImageProviderFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/imageprovider/ImageProviderFactory.java
new file mode 100644
index 00000000000..e2de0a7568e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.swt/src/org/eclipse/papyrus/emf/facet/util/swt/internal/imageprovider/ImageProviderFactory.java
@@ -0,0 +1,35 @@
+/*******************************************************************************
+ * Copyright (c) 2013 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Bug 406569 - Image provider factory
+ * Gregoire Dupe (Mia-Software) - Bug 423611 - ImageProvider doesn't use singleton instance
+ ******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.swt.internal.imageprovider;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.core.runtime.Plugin;
+import org.eclipse.papyrus.emf.facet.util.swt.imageprovider.IImageProvider;
+import org.eclipse.papyrus.emf.facet.util.swt.imageprovider.IImageProviderFactory;
+
+public class ImageProviderFactory implements IImageProviderFactory {
+
+ private final Map<Plugin, IImageProvider> map = new HashMap<Plugin, IImageProvider>();
+
+ public IImageProvider createIImageProvider(final Plugin plugin) {
+ IImageProvider result = this.map.get(plugin);
+ if (result == null) {
+ result = new ImageProvider(plugin);
+ this.map.put(plugin, result);
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.checkstyle
new file mode 100644
index 00000000000..dc600c6216b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.checkstyle
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<fileset-config file-format-version="1.2.0" simple-config="true">
+ <local-check-config name="EmfFacet" location="/org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.fbprefs b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.fbprefs
new file mode 100644
index 00000000000..826b4150dbd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.fbprefs
@@ -0,0 +1,127 @@
+#FindBugs User Preferences
+#Tue Dec 20 09:44:24 CET 2011
+detectorAppendingToAnObjectOutputStream=AppendingToAnObjectOutputStream|true
+detectorBadAppletConstructor=BadAppletConstructor|true
+detectorBadResultSetAccess=BadResultSetAccess|true
+detectorBadSyntaxForRegularExpression=BadSyntaxForRegularExpression|true
+detectorBadUseOfReturnValue=BadUseOfReturnValue|true
+detectorBadlyOverriddenAdapter=BadlyOverriddenAdapter|true
+detectorBooleanReturnNull=BooleanReturnNull|true
+detectorCallToUnsupportedMethod=CallToUnsupportedMethod|true
+detectorCheckImmutableAnnotation=CheckImmutableAnnotation|true
+detectorCheckTypeQualifiers=CheckTypeQualifiers|true
+detectorCloneIdiom=CloneIdiom|true
+detectorComparatorIdiom=ComparatorIdiom|true
+detectorConfusedInheritance=ConfusedInheritance|true
+detectorConfusionBetweenInheritedAndOuterMethod=ConfusionBetweenInheritedAndOuterMethod|true
+detectorCrossSiteScripting=CrossSiteScripting|true
+detectorDoInsideDoPrivileged=DoInsideDoPrivileged|true
+detectorDontCatchIllegalMonitorStateException=DontCatchIllegalMonitorStateException|true
+detectorDontIgnoreResultOfPutIfAbsent=DontIgnoreResultOfPutIfAbsent|true
+detectorDontUseEnum=DontUseEnum|true
+detectorDroppedException=DroppedException|true
+detectorDumbMethodInvocations=DumbMethodInvocations|true
+detectorDumbMethods=DumbMethods|true
+detectorDuplicateBranches=DuplicateBranches|true
+detectorEmptyZipFileEntry=EmptyZipFileEntry|true
+detectorEqualsOperandShouldHaveClassCompatibleWithThis=EqualsOperandShouldHaveClassCompatibleWithThis|true
+detectorFinalizerNullsFields=FinalizerNullsFields|true
+detectorFindBadCast2=FindBadCast2|true
+detectorFindBadForLoop=FindBadForLoop|true
+detectorFindCircularDependencies=FindCircularDependencies|true
+detectorFindDeadLocalStores=FindDeadLocalStores|true
+detectorFindDoubleCheck=FindDoubleCheck|true
+detectorFindEmptySynchronizedBlock=FindEmptySynchronizedBlock|true
+detectorFindFieldSelfAssignment=FindFieldSelfAssignment|true
+detectorFindFinalizeInvocations=FindFinalizeInvocations|true
+detectorFindFloatEquality=FindFloatEquality|true
+detectorFindHEmismatch=FindHEmismatch|true
+detectorFindInconsistentSync2=FindInconsistentSync2|true
+detectorFindJSR166LockMonitorenter=FindJSR166LockMonitorenter|true
+detectorFindLocalSelfAssignment2=FindLocalSelfAssignment2|true
+detectorFindMaskedFields=FindMaskedFields|true
+detectorFindMismatchedWaitOrNotify=FindMismatchedWaitOrNotify|true
+detectorFindNakedNotify=FindNakedNotify|true
+detectorFindNonSerializableStoreIntoSession=FindNonSerializableStoreIntoSession|true
+detectorFindNonSerializableValuePassedToWriteObject=FindNonSerializableValuePassedToWriteObject|true
+detectorFindNonShortCircuit=FindNonShortCircuit|true
+detectorFindNullDeref=FindNullDeref|true
+detectorFindNullDerefsInvolvingNonShortCircuitEvaluation=FindNullDerefsInvolvingNonShortCircuitEvaluation|true
+detectorFindOpenStream=FindOpenStream|true
+detectorFindPuzzlers=FindPuzzlers|true
+detectorFindRefComparison=FindRefComparison|true
+detectorFindReturnRef=FindReturnRef|true
+detectorFindRunInvocations=FindRunInvocations|true
+detectorFindSelfComparison=FindSelfComparison|true
+detectorFindSelfComparison2=FindSelfComparison2|true
+detectorFindSleepWithLockHeld=FindSleepWithLockHeld|true
+detectorFindSpinLoop=FindSpinLoop|true
+detectorFindSqlInjection=FindSqlInjection|true
+detectorFindTwoLockWait=FindTwoLockWait|true
+detectorFindUncalledPrivateMethods=FindUncalledPrivateMethods|true
+detectorFindUnconditionalWait=FindUnconditionalWait|true
+detectorFindUninitializedGet=FindUninitializedGet|true
+detectorFindUnrelatedTypesInGenericContainer=FindUnrelatedTypesInGenericContainer|true
+detectorFindUnreleasedLock=FindUnreleasedLock|true
+detectorFindUnsatisfiedObligation=FindUnsatisfiedObligation|true
+detectorFindUnsyncGet=FindUnsyncGet|true
+detectorFindUselessControlFlow=FindUselessControlFlow|true
+detectorFormatStringChecker=FormatStringChecker|true
+detectorHugeSharedStringConstants=HugeSharedStringConstants|true
+detectorIDivResultCastToDouble=IDivResultCastToDouble|true
+detectorIncompatMask=IncompatMask|true
+detectorInconsistentAnnotations=InconsistentAnnotations|true
+detectorInefficientMemberAccess=InefficientMemberAccess|true
+detectorInefficientToArray=InefficientToArray|true
+detectorInfiniteLoop=InfiniteLoop|true
+detectorInfiniteRecursiveLoop=InfiniteRecursiveLoop|true
+detectorInfiniteRecursiveLoop2=InfiniteRecursiveLoop2|true
+detectorInheritanceUnsafeGetResource=InheritanceUnsafeGetResource|true
+detectorInitializationChain=InitializationChain|true
+detectorInstantiateStaticClass=InstantiateStaticClass|true
+detectorInvalidJUnitTest=InvalidJUnitTest|true
+detectorIteratorIdioms=IteratorIdioms|true
+detectorLazyInit=LazyInit|true
+detectorLoadOfKnownNullValue=LoadOfKnownNullValue|true
+detectorLostLoggerDueToWeakReference=LostLoggerDueToWeakReference|true
+detectorMethodReturnCheck=MethodReturnCheck|true
+detectorMultithreadedInstanceAccess=MultithreadedInstanceAccess|true
+detectorMutableLock=MutableLock|true
+detectorMutableStaticFields=MutableStaticFields|true
+detectorNaming=Naming|true
+detectorNumberConstructor=NumberConstructor|true
+detectorOverridingEqualsNotSymmetrical=OverridingEqualsNotSymmetrical|true
+detectorPreferZeroLengthArrays=PreferZeroLengthArrays|true
+detectorPublicSemaphores=PublicSemaphores|true
+detectorQuestionableBooleanAssignment=QuestionableBooleanAssignment|true
+detectorReadOfInstanceFieldInMethodInvokedByConstructorInSuperclass=ReadOfInstanceFieldInMethodInvokedByConstructorInSuperclass|true
+detectorReadReturnShouldBeChecked=ReadReturnShouldBeChecked|true
+detectorRedundantInterfaces=RedundantInterfaces|true
+detectorRepeatedConditionals=RepeatedConditionals|true
+detectorRuntimeExceptionCapture=RuntimeExceptionCapture|true
+detectorSerializableIdiom=SerializableIdiom|true
+detectorStartInConstructor=StartInConstructor|true
+detectorStaticCalendarDetector=StaticCalendarDetector|true
+detectorStringConcatenation=StringConcatenation|true
+detectorSuperfluousInstanceOf=SuperfluousInstanceOf|true
+detectorSuspiciousThreadInterrupted=SuspiciousThreadInterrupted|true
+detectorSwitchFallthrough=SwitchFallthrough|true
+detectorSynchronizeAndNullCheckField=SynchronizeAndNullCheckField|true
+detectorSynchronizeOnClassLiteralNotGetClass=SynchronizeOnClassLiteralNotGetClass|true
+detectorSynchronizingOnContentsOfFieldToProtectField=SynchronizingOnContentsOfFieldToProtectField|true
+detectorURLProblems=URLProblems|true
+detectorUncallableMethodOfAnonymousClass=UncallableMethodOfAnonymousClass|true
+detectorUnnecessaryMath=UnnecessaryMath|true
+detectorUnreadFields=UnreadFields|true
+detectorUseObjectEquals=UseObjectEquals|true
+detectorUselessSubclassMethod=UselessSubclassMethod|true
+detectorVarArgsProblems=VarArgsProblems|true
+detectorVolatileUsage=VolatileUsage|true
+detectorWaitInLoop=WaitInLoop|true
+detectorWrongMapIterator=WrongMapIterator|true
+detectorXMLFactoryBypass=XMLFactoryBypass|true
+detector_threshold=2
+effort=default
+filter_settings=Medium|BAD_PRACTICE,CORRECTNESS,MT_CORRECTNESS,PERFORMANCE,STYLE|false
+filter_settings_neg=MALICIOUS_CODE,NOISE,I18N,SECURITY,EXPERIMENTAL|
+run_at_full_build=true
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.options b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.options
new file mode 100644
index 00000000000..5374b338c59
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.options
@@ -0,0 +1,16 @@
+###############################################################################
+# Copyright (c) 2012 Mia-Software.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+###############################################################################
+org.eclipse.papyrus.emf.facet.util.ui/debug=false
+org.eclipse.papyrus.emf.facet.util.ui/debug/SelectEPackageWizardPage=false
+org.eclipse.papyrus.emf.facet.util.ui/debug/SelectEClassifierWizardPage=false
+org.eclipse.papyrus.emf.facet.util.ui/debug/SelectETypeWizardImpl=false
+org.eclipse.papyrus.emf.facet.util.ui/debug/FilteredElementSelectionComposite=false
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.pmd b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.pmd
new file mode 100644
index 00000000000..e8d3e27588f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.pmd
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<pmd>
+ <useProjectRuleSet>true</useProjectRuleSet>
+ <ruleSetFile>../org.eclipse.papyrus.emf.facet.archi.tech.rules/pmd/ruleset.xml</ruleSetFile>
+ <includeDerivedFiles>false</includeDerivedFiles>
+ <violationsAsErrors>true</violationsAsErrors>
+</pmd>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.project
new file mode 100644
index 00000000000..3fa919d7f12
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.project
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.util.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>
+ <nature>net.sourceforge.pmd.eclipse.plugin.pmdNature</nature>
+ <nature>edu.umd.cs.findbugs.plugin.eclipse.findbugsNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.settings/org.eclipse.core.resources.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 00000000000..cba18914e5d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,3 @@
+#Tue Dec 20 10:41:56 CET 2011
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..44217f8c068
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..81b82fb62bf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,41 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.util.ui
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.util.ui.internal.Activator
+Bundle-Vendor: %Bundle-Vendor
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.swt;bundle-version="3.6.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.2.0",
+ org.eclipse.core.resources;bundle-version="3.6.0",
+ org.eclipse.ui.workbench;bundle-version="3.6.0",
+ org.eclipse.jface;bundle-version="3.6.0",
+ org.eclipse.emf.edit;bundle-version="2.6.0"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package:
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.composite,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.handler,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.tree.menu,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.composite,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.item,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.menu,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.bounds,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.query,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.wizard,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.getorcreate,
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.wizard,
+ org.eclipse.papyrus.emf.facet.util.ui.utils
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..af295db5d08
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,11 @@
+# Copyright (c) 2011 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Grégoire Dupé (Mia-Software) - Bug 367153 - synchronization utilities
+#Properties file for org.eclipse.papyrus.emf.facet.util.ui
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet UI Utilities (Incubation) \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/about.html
new file mode 100644
index 00000000000..7a9b2ead5c7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.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>December 20, 2011</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/build.properties
new file mode 100644
index 00000000000..f39622a399c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/build.properties
@@ -0,0 +1,16 @@
+# Copyright (c) 2011 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Grégoire Dupé (Mia-Software) - Bug 367153 - synchronization utilities
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ OSGI-INF/,\
+ about.html
+src.includes = about.html
+ \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/Activator.java
new file mode 100644
index 00000000000..904422629b8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/Activator.java
@@ -0,0 +1,52 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal;
+
+import org.eclipse.core.runtime.Plugin;
+import org.osgi.framework.BundleContext;
+
+@SuppressWarnings("PMD.UseSingleton")
+// @SuppressWarnings("PMD.UseSingleton") We cannot conforms to this rule because
+// this class is an Eclipse plug-in activator which will be instantiated by the
+// Eclipse framework.
+public class Activator extends Plugin {
+
+ private static Activator plugin;
+
+ @Override
+ @SuppressWarnings("PMD.SignatureDeclareThrowsException")
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ public void start(final BundleContext bundleContext) throws Exception {
+ super.start(bundleContext);
+ Activator.plugin = this;
+ }
+
+ @Override
+ @SuppressWarnings({ "PMD.SignatureDeclareThrowsException",
+ "PMD.NullAssignment" })
+ // @SuppressWarnings("PMD.SignatureDeclareThrowsException") We have to use
+ // this signature because this is an override of an Eclipse framework's
+ // method.
+ // @SuppressWarnings("PMD.NullAssignment")
+ // No choice to right it in another way : this is an Eclipse pattern.
+ public void stop(final BundleContext bundleContext) throws Exception {
+ Activator.plugin = null;
+ super.stop(bundleContext);
+ }
+
+ public static Plugin getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/Messages.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/Messages.java
new file mode 100644
index 00000000000..8dfdc9a8bcf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/Messages.java
@@ -0,0 +1,37 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 366367 - To be able to change the "CanBePresentedInTheTable" query
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Thomas Cicognani (Soft-Maint) - Bug 406565 - Ok Dialog
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.ui.internal;
+
+import org.eclipse.osgi.util.NLS;
+
+public final class Messages extends NLS {
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.emf.facet.util.ui.internal.messages"; //$NON-NLS-1$
+ public static String FilteredElementSelectionControl_type_filter_text;
+ public static String QuestionDialog_yes;
+ public static String QuestionDialog_no;
+ public static String OK;
+
+ public static String item_todo;
+ public static String Type;
+ public static String Select;
+ public static String New;
+
+ public static String Select_Facet;
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(Messages.BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/dialog/OkDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/dialog/OkDialog.java
new file mode 100644
index 00000000000..969188b98e1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/dialog/OkDialog.java
@@ -0,0 +1,168 @@
+/**
+ * Copyright (c) Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Thomas Cicognani (Soft-Maint) - Bug 406565 - Ok Dialog
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.dialog;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IOkDialog;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.graphics.Rectangle;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Text;
+
+public class OkDialog implements IOkDialog {
+ private static final int SHELL_WIDTH = 450;
+ private static final int SHELL_HEIGHT = 170;
+ private static final int BUTTON_WIDTH_HINT = 80;
+ private static final int MARGIN_LEFT = 5;
+ private static final int MARGIN_TOP = 8;
+ private static final int VERTICAL_SPACING = 10;
+ private static final int HORIZONT_SPACING = 15;
+ private static final int BUTTONS_COMP_COL = 3;
+
+ private final List<Runnable> listeners = new ArrayList<Runnable>();
+
+ private final Shell parentShell;
+ private final String title;
+ private final String message;
+ private final IDialogCallback<Void> callback;
+ private Shell shell;
+ private final int kind;
+
+ public OkDialog(final Shell parentShell, final int kind,
+ final String title, final String message,
+ final IDialogCallback<Void> iDialogCallback) {
+ this.parentShell = parentShell;
+ this.title = title;
+ this.message = message;
+ this.callback = iDialogCallback;
+ this.kind = kind;
+ createContents();
+ }
+
+ private void createContents() {
+ this.shell = new Shell(this.parentShell, SWT.BORDER | SWT.RESIZE
+ | SWT.TITLE | SWT.APPLICATION_MODAL);
+ this.shell.setSize(OkDialog.SHELL_WIDTH, OkDialog.SHELL_HEIGHT);
+ this.shell.setText(this.title);
+ final GridLayout shellLayout = new GridLayout(2, false);
+
+ // constants to make checkstyle happy
+ shellLayout.marginLeft = OkDialog.MARGIN_LEFT;
+ shellLayout.marginTop = OkDialog.MARGIN_TOP;
+ shellLayout.verticalSpacing = OkDialog.VERTICAL_SPACING;
+ shellLayout.horizontalSpacing = OkDialog.HORIZONT_SPACING;
+
+ this.shell.setLayout(shellLayout);
+
+ final Label image = new Label(this.shell, SWT.NONE);
+ image.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false, 1, 1));
+ image.setImage(Display.getDefault().getSystemImage(this.kind));
+
+ final Text labelMessage = new Text(this.shell, SWT.WRAP | SWT.H_SCROLL
+ | SWT.V_SCROLL | SWT.READ_ONLY);
+ labelMessage.setText(this.message);
+ labelMessage
+ .setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+
+ final Composite buttonsComposite = new Composite(this.shell, SWT.NONE);
+ buttonsComposite.setLayout(new GridLayout(OkDialog.BUTTONS_COMP_COL,
+ false));
+ buttonsComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true,
+ false, 2, 1));
+
+ final Composite paddingComposite = new Composite(buttonsComposite,
+ SWT.NONE);
+ final GridData paddCompGridData = new GridData(SWT.FILL, SWT.CENTER,
+ true, false, 1, 1);
+ paddCompGridData.heightHint = 0;
+ paddingComposite.setLayoutData(paddCompGridData);
+
+ final Button btnOk = new Button(buttonsComposite, SWT.NONE);
+ final GridData button1GridData = new GridData(SWT.LEFT, SWT.BOTTOM,
+ false, false, 1, 1);
+ button1GridData.widthHint = OkDialog.BUTTON_WIDTH_HINT;
+ btnOk.setLayoutData(button1GridData);
+ btnOk.setText(Messages.OK);
+ btnOk.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ commit();
+ }
+ });
+ }
+
+ public void open() {
+ this.shell.layout();
+ // center the shell on its parent (if not parent shell then it will not
+ // be centered)
+ if (this.parentShell != null) {
+ final Rectangle parentShellBounds = this.parentShell.getBounds();
+ final Point shellSize = this.shell.getSize();
+ this.shell.setLocation(parentShellBounds.x
+ + (parentShellBounds.width - shellSize.x) / 2,
+ parentShellBounds.y
+ + (parentShellBounds.height - shellSize.y) / 2);
+ }
+ this.shell.open();
+ }
+
+ public final void commit() {
+ if (this.shell.isDisposed()) {
+ throw new UnsupportedOperationException("Dialog is disposed"); //$NON-NLS-1$
+ }
+ this.shell.dispose();
+ notifyListeners();
+ }
+
+ private void notifyListeners() {
+ if (this.callback != null) {
+ this.callback.committed(null);
+ }
+ for (final Runnable listener : this.listeners) {
+ listener.run();
+ }
+ }
+
+ public void addCloseListener(final Runnable paramRunnable) {
+ this.listeners.add(paramRunnable);
+ }
+
+ public Shell getShell() {
+ return this.shell;
+ }
+
+ public boolean isInformation() {
+ return this.kind == SWT.ICON_INFORMATION;
+ }
+
+ public boolean isWarning() {
+ return this.kind == SWT.ICON_WARNING;
+ }
+
+ public boolean isError() {
+ return this.kind == SWT.ICON_ERROR;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/dialog/OkDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/dialog/OkDialogFactory.java
new file mode 100644
index 00000000000..9f58c9a0f89
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/dialog/OkDialogFactory.java
@@ -0,0 +1,105 @@
+/**
+ * Copyright (c) Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Thomas Cicognani (Soft-Maint) - Bug 406565 - Ok Dialog
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.dialog;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IOkDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IOkDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.sync.generated.SynchronizedOkDialog;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Shell;
+
+public class OkDialogFactory implements IOkDialogFactory {
+
+ private final IDialogCallback<Void> noDialogCallback = new IDialogCallback<Void>() {
+ public void committed(final Void paramT) {
+ // Nothing to do
+ }
+ };
+
+ public IOkDialog openDialog(final Shell parentShell, final int kind,
+ final String title, final String message,
+ final IDialogCallback<Void> iDialogCallback) {
+ final OkDialog okDialog = new OkDialog(parentShell, kind, title,
+ message, iDialogCallback);
+
+ Display.getDefault().syncExec(new Runnable() {
+ public void run() {
+ okDialog.open();
+ }
+ });
+
+ return new SynchronizedOkDialog(okDialog, Display.getDefault());
+ }
+
+ public IOkDialog openDialog(final Shell parentShell, final int kind,
+ final String title, final String message) {
+ return openDialog(parentShell, kind, title, message,
+ this.noDialogCallback);
+ }
+
+ public IOkDialog openInformationDialog(final Shell parentShell,
+ final String title, final String message,
+ final IDialogCallback<Void> iDialogCallback) {
+ return openDialog(parentShell, SWT.ICON_INFORMATION, title, message,
+ iDialogCallback);
+ }
+
+ public IOkDialog openInformationDialog(final Shell parentShell,
+ final String title, final String message) {
+ return openInformationDialog(parentShell, title, message,
+ this.noDialogCallback);
+ }
+
+ public IOkDialog openWarningDialog(final Shell parentShell,
+ final String title, final String message,
+ final IDialogCallback<Void> iDialogCallback) {
+ return openDialog(parentShell, SWT.ICON_WARNING, title, message,
+ iDialogCallback);
+ }
+
+ public IOkDialog openWarningDialog(final Shell parentShell,
+ final String title, final String message) {
+ return openWarningDialog(parentShell, title, message,
+ this.noDialogCallback);
+ }
+
+ public IOkDialog openErrorDialog(final Shell parentShell,
+ final String title, final String message,
+ final IDialogCallback<Void> iDialogCallback) {
+ return openDialog(parentShell, SWT.ICON_ERROR, title, message,
+ iDialogCallback);
+ }
+
+ public IOkDialog openErrorDialog(final Shell parentShell,
+ final String title, final String message) {
+ return openErrorDialog(parentShell, title, message,
+ this.noDialogCallback);
+ }
+
+ public IOkDialog openErrorDialog(final Shell parentShell,
+ final Exception exception, final String message) {
+ final StringBuffer strBuffer = new StringBuffer();
+ strBuffer.append(message);
+ strBuffer.append("\n\n"); //$NON-NLS-1$
+ strBuffer.append(exception.getMessage());
+ strBuffer.append("\n\n"); //$NON-NLS-1$
+ for (StackTraceElement stkElt : exception.getStackTrace()) {
+ strBuffer.append(stkElt.toString());
+ strBuffer.append('\n');
+ }
+ return openErrorDialog(parentShell, exception.getClass().getName(),
+ strBuffer.toString(), this.noDialogCallback);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/dialog/QuestionDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/dialog/QuestionDialog.java
new file mode 100644
index 00000000000..4121bf8bc50
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/dialog/QuestionDialog.java
@@ -0,0 +1,184 @@
+/*******************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 366367 - To be able to change the "CanBePresentedInTheTable" query
+ * Gregoire Dupe (Mia-Software) - Bug 373248 - Clean PMD errors
+ * Gregoire Dupe (Mia-Software) - Bug 374903 - [Table] ITableWidget.setLoadedFacetSets
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.ui.internal.dialog;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IQuestionDialog;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.graphics.Rectangle;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Shell;
+
+/**
+ * A yes/no dialog, that replicates the JFace MessageDialog#openQuestion, but is designed to be easily testable with JUnit
+ *
+ * @since 0.2
+ */
+public class QuestionDialog implements IQuestionDialog {
+
+ private static final int SHELL_WIDTH = 450;
+ private static final int SHELL_HEIGHT = 170;
+
+ private final Shell parentShell;
+ private final List<Runnable> listeners = new ArrayList<Runnable>();
+ private Boolean result = null;
+ private Shell shell;
+ private Button btnYes;
+ private Button btnNo;
+ private final String title;
+ private final String message;
+ private IDialogCallback<Boolean> callback;
+
+ public QuestionDialog(final Shell parent, final String title,
+ final String message, final IDialogCallback<Boolean> callback) {
+ this.parentShell = parent;
+ this.title = title;
+ this.message = message;
+ this.callback = callback;
+ createContents();
+ }
+
+ /**
+ * Open the dialog.
+ *
+ * @return the result
+ */
+ public final void open() {
+ this.shell.layout();
+ // center the shell on its parent (if not parent shell then it will not be centered)
+ if (this.parentShell != null) {
+ final Rectangle parentShellBounds = this.parentShell.getBounds();
+ final Point shellSize = this.shell.getSize();
+ this.shell.setLocation(
+ parentShellBounds.x + (parentShellBounds.width - shellSize.x) / 2,
+ parentShellBounds.y + (parentShellBounds.height - shellSize.y) / 2);
+ }
+ this.shell.open();
+ }
+
+ /** Create the contents of the dialog. */
+ private void createContents() {
+ final int buttonWidthHint = 80;
+ this.shell = new Shell(this.parentShell, SWT.BORDER | SWT.RESIZE | SWT.TITLE
+ | SWT.APPLICATION_MODAL);
+ this.shell.setSize(QuestionDialog.SHELL_WIDTH,
+ QuestionDialog.SHELL_HEIGHT);
+ this.shell.setText(this.title);
+ final GridLayout shellLayout = new GridLayout(2, false);
+
+ // constants to make checkstyle happy
+ final int marginLeft = 5;
+ final int marginTop = 8;
+ final int verticalSpacing = 10;
+ final int horizontalSpacing = 15;
+ shellLayout.marginLeft = marginLeft;
+ shellLayout.marginTop = marginTop;
+ shellLayout.verticalSpacing = verticalSpacing;
+ shellLayout.horizontalSpacing = horizontalSpacing;
+
+ this.shell.setLayout(shellLayout);
+
+ final Label image = new Label(this.shell, SWT.NONE);
+ image.setLayoutData(new GridData(SWT.LEFT, SWT.TOP, false, false, 1, 1));
+ image.setImage(Display.getDefault().getSystemImage(SWT.ICON_QUESTION));
+
+ final Label labelMessage = new Label(this.shell, SWT.WRAP);
+ labelMessage.setText(this.message);
+ labelMessage.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+
+ final Composite buttonsComposite = new Composite(this.shell, SWT.NONE);
+ final int buttonsCompositeColumns = 3;
+ buttonsComposite.setLayout(new GridLayout(buttonsCompositeColumns, false));
+ buttonsComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 2, 1));
+
+ final Composite paddingComposite = new Composite(buttonsComposite, SWT.NONE);
+ final GridData paddingCompositeGridData = new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1);
+ paddingCompositeGridData.heightHint = 0;
+ paddingComposite.setLayoutData(paddingCompositeGridData);
+
+ this.btnYes = new Button(buttonsComposite, SWT.NONE);
+ final GridData button1GridData = new GridData(SWT.LEFT, SWT.BOTTOM, false, false, 1, 1);
+ button1GridData.widthHint = buttonWidthHint;
+ this.btnYes.setLayoutData(button1GridData);
+ this.btnYes.setText(Messages.QuestionDialog_yes);
+ this.btnYes.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ pressYes();
+ }
+ });
+
+ this.btnNo = new Button(buttonsComposite, SWT.NONE);
+ final GridData button2GridData = new GridData(SWT.LEFT, SWT.BOTTOM, false, false, 1, 1);
+ button2GridData.widthHint = buttonWidthHint;
+ this.btnNo.setLayoutData(button2GridData);
+ this.btnNo.setText(Messages.QuestionDialog_no);
+ this.btnNo.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ pressNo();
+ }
+ });
+ }
+
+ public final void pressYes() {
+ if (this.shell.isDisposed()) {
+ throw new UnsupportedOperationException("Dialog is disposed"); //$NON-NLS-1$
+ }
+ this.result = Boolean.TRUE;
+ this.shell.dispose();
+ notifyListeners();
+ }
+
+ public final void pressNo() {
+ if (this.shell.isDisposed()) {
+ throw new UnsupportedOperationException("Dialog is disposed"); //$NON-NLS-1$
+ }
+ this.result = Boolean.FALSE;
+ this.shell.dispose();
+ notifyListeners();
+ }
+
+ private synchronized void notifyListeners() {
+ if (this.callback != null) {
+ this.callback.committed(getResult());
+ }
+ for (final Runnable listener : new ArrayList<Runnable>(this.listeners)) {
+ listener.run();
+ }
+ }
+
+ public synchronized void addCloseListener(final Runnable runnable) {
+ this.listeners.add(runnable);
+ }
+
+ public final Boolean getResult() {
+ return this.result;
+ }
+
+ public final Shell getShell() {
+ return this.shell;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/dialog/QuestionDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/dialog/QuestionDialogFactory.java
new file mode 100644
index 00000000000..2e96d8c802e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/dialog/QuestionDialogFactory.java
@@ -0,0 +1,32 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 366367 - To be able to change the "CanBePresentedInTheTable" query
+ * Gregoire Dupe (Mia-Software) - Bug 374903 - [Table] ITableWidget.setLoadedFacetSets
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.ui.internal.dialog;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IQuestionDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IQuestionDialogFactory;
+import org.eclipse.swt.widgets.Shell;
+
+public class QuestionDialogFactory implements IQuestionDialogFactory {
+
+ public IQuestionDialog createQuestionDialog(final Shell parent, final String title, final String message) {
+ return new QuestionDialog(parent, title, message, null);
+ }
+
+ public IQuestionDialog createQuestionDialog(final Shell parent,
+ final String title, final String message,
+ final IDialogCallback<Boolean> callback) {
+ return new QuestionDialog(parent, title, message, callback);
+ }
+
+}
+
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/composite/IFilteredElementSelectionComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/composite/IFilteredElementSelectionComposite.java
new file mode 100644
index 00000000000..9be896017e1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/composite/IFilteredElementSelectionComposite.java
@@ -0,0 +1,34 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.composite;
+
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.dialogs.FilteredList;
+
+/**
+ * @since 0.3
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IFilteredElementSelectionComposite {
+
+ void setElements(final Object[] elements);
+
+ Object getFirstSelectedElement();
+
+ Object[] getSelectedElements();
+
+ FilteredList getFilteredList();
+
+ Text getFilterText();
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IDialog.java
new file mode 100644
index 00000000000..2ced2530a7d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IDialog.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.AbstractDialog;
+
+/**
+ * @see AbstractDialog
+ * @since 0.3
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IDialog<W extends Object> {
+
+ /**
+ * Press the "Ok" button.
+ */
+ void commit();
+
+ /**
+ * Press the "Cancel" button.
+ */
+ void cancel();
+
+ /**
+ * Open the dialog. This method is used for to open the dialog into the
+ * thread UI. So, this method has no to be called into the constructor.
+ *
+ * @return the result of the dialog (OK or CANCEL).
+ */
+ int open();
+
+ /**
+ * Return if the dialog is valid or not.
+ *
+ * @return true if all the necessaries properties are set.
+ */
+ boolean isDialogValid();
+
+ W getWidget();
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IDialogCallback.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IDialogCallback.java
new file mode 100644
index 00000000000..5492724e63b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IDialogCallback.java
@@ -0,0 +1,28 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Initial API
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog;
+
+/**
+ * A callback used to return a dialog's result asynchronously.
+ *
+ * @param <T>
+ * the type of the result
+ */
+public interface IDialogCallback<T> {
+ /**
+ * The user committed their selection in the dialog.
+ *
+ * @param result
+ * the result
+ */
+ void committed(T result);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IDialogCallbackWithPreCommit.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IDialogCallbackWithPreCommit.java
new file mode 100644
index 00000000000..be363daed88
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IDialogCallbackWithPreCommit.java
@@ -0,0 +1,59 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - Initial API
+ * Nicolas Bros (Mia-Software) - Bug 372865 - FacetSet selection dialog
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog;
+
+/**
+ * A callback used to return a dialog's result asynchronously. This interface makes it possible to open a second
+ * "pre-commit" dialog when the user commits their selection in the first dialog. This second dialog is given the
+ * opportunity to open before the first dialog closes. This can be useful to ask the user for confirmation for example.
+ * <p>
+ * The second dialog should either:
+ * <ul>
+ * <li>call {@link IDialogCallback#committed(Object) committed} on the callback passed to
+ * {@link IDialogCallbackWithPreCommit#openPrecommitDialog(Object, IDialogCallback) openPrecommitDialog} with the
+ * definitive result
+ * <li>do nothing if the pre-commit dialog was canceled
+ * </ul>
+ *
+ * @param <T1>
+ * the type of the result for the first dialog
+ * @param <T2>
+ * the type of the result for the pre-commit dialog
+ * @param <D>
+ * the type of the pre-commit dialog
+ */
+public interface IDialogCallbackWithPreCommit<T1, T2, D> {
+ /**
+ * The user confirmed their choice in the pre-commit dialog.
+ *
+ * @param result
+ * the result of the first dialog
+ * @param precommitResult
+ * the result of the pre-commit dialog
+ */
+ void committed(T1 result, T2 precommitResult);
+
+ /**
+ * The user committed their selection in the first dialog. This method is called to let you open a second
+ * "pre-commit" dialog, that can prompt the user for confirmation.
+ *
+ * @param result
+ * the result from the first dialog
+ * @param precommitCallback
+ * you must call {@link IDialogCallback#committed(Object) committed} on this callback if the user
+ * confirms their choice in the second (pre-commit) dialog, and pass the result of the pre-commit dialog.
+ * Or do nothing if the user chose to cancel. If you return <code>null</code> from this method, you
+ * mustn't call {@link IDialogCallback#committed(Object)} or the commit will be done twice
+ * @return the pre-commit dialog (for unit tests), or <code>null</code> if no pre-commit callback is needed
+ */
+ D openPrecommitDialog(T1 result, IDialogCallback<T2> precommitCallback);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IDialogWithoutResultCallback.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IDialogWithoutResultCallback.java
new file mode 100644
index 00000000000..069f9e3eb8b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IDialogWithoutResultCallback.java
@@ -0,0 +1,33 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog;
+
+
+/**
+ * A callback used to return a dialog's result asynchronously.
+ *
+ * @since 0.3
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IDialogWithoutResultCallback {
+
+ /**
+ * The user commit his action.
+ */
+ void commited();
+
+ /**
+ * The user cancel his action.
+ */
+ void canceled();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IOkDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IOkDialog.java
new file mode 100644
index 00000000000..e4128f8b8c0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IOkDialog.java
@@ -0,0 +1,32 @@
+/**
+ * Copyright (c) Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Thomas Cicognani (Soft-Maint) - Bug 406565 - Ok Dialog
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog;
+
+
+/**
+ *
+ * @author tcicognani
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ * @since 0.4
+ */
+public interface IOkDialog {
+
+ void commit();
+
+ boolean isInformation();
+
+ boolean isWarning();
+
+ boolean isError();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IOkDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IOkDialogFactory.java
new file mode 100644
index 00000000000..b9e2910a230
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IOkDialogFactory.java
@@ -0,0 +1,52 @@
+/**
+ * Copyright (c) Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Thomas Cicognani (Soft-Maint) - Bug 406565 - Ok Dialog
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.dialog.OkDialogFactory;
+import org.eclipse.swt.widgets.Shell;
+
+/**
+ *
+ * @author tcicognani
+ *
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ * @since 0.4
+ */
+public interface IOkDialogFactory {
+ IOkDialogFactory DEFAULT = new OkDialogFactory();
+
+ IOkDialog openDialog(Shell parentShell, int kind, String title,
+ String message, IDialogCallback<Void> iDialogCallback);
+
+ IOkDialog openDialog(Shell parentShell, int kind, String title,
+ String message);
+
+ IOkDialog openInformationDialog(Shell parentShell, String title,
+ String message, IDialogCallback<Void> iDialogCallback);
+
+ IOkDialog openInformationDialog(Shell parentShell, String title,
+ String message);
+
+ IOkDialog openWarningDialog(Shell parentShell, String title,
+ String message, IDialogCallback<Void> iDialogCallback);
+
+ IOkDialog openWarningDialog(Shell parentShell, String title, String message);
+
+ IOkDialog openErrorDialog(Shell parentShell, String title, String message,
+ IDialogCallback<Void> iDialogCallback);
+
+ IOkDialog openErrorDialog(Shell parentShell, String title, String message);
+
+ IOkDialog openErrorDialog(Shell parentShell, Exception exception,
+ String message);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IQuestionDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IQuestionDialog.java
new file mode 100644
index 00000000000..1a46bc8015b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IQuestionDialog.java
@@ -0,0 +1,43 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 366367 - To be able to change the "CanBePresentedInTheTable" query
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog;
+
+import org.eclipse.swt.widgets.Shell;
+
+/** A simple dialog with a title, a message, and "yes" and "no" buttons */
+public interface IQuestionDialog {
+
+ /** Opens the dialog */
+ void open();
+
+ /** Programmatically emulate a press on the "Yes" button */
+ void pressYes();
+
+ /** Programmatically emulate a press on the "No" button */
+ void pressNo();
+
+ /** Add a listener that will be modified when the dialog closes */
+ void addCloseListener(final Runnable runnable);
+
+ /**
+ * Get the user's answer
+ *
+ * @return <ul>
+ * <li><code>true</code> if the user clicked "Yes"
+ * <li><code>false</code> if the user clicked "No"
+ * <li><code>null</code> if the user closed the dialog without clicking either on "Yes" or "No"
+ * </ul>
+ */
+ Boolean getResult();
+
+ /** @return the dialog's shell */
+ Shell getShell();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IQuestionDialogFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IQuestionDialogFactory.java
new file mode 100644
index 00000000000..bee29a87f88
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IQuestionDialogFactory.java
@@ -0,0 +1,49 @@
+/*******************************************************************************
+ * Copyright (c) 2012 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 366367 - To be able to change the "CanBePresentedInTheTable" query
+ * Gregoire Dupe (Mia-Software) - Bug 374903 - [Table] ITableWidget.setLoadedFacetSets
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.dialog.QuestionDialogFactory;
+import org.eclipse.swt.widgets.Shell;
+
+/** A factory to instantiate {@link IQuestionDialog} */
+public interface IQuestionDialogFactory {
+ static IQuestionDialogFactory INSTANCE = new QuestionDialogFactory();
+
+ /**
+ * Instantiates a question dialog (without opening it)
+ *
+ * @param parent
+ * the parent shell for the new dialog
+ * @param title
+ * the text that appears in the title of the dialog
+ * @param message
+ * the text that appears in the message area of the dialog
+ * @return the dialog, ready to be {@link IQuestionDialog#open() opened}
+ */
+ @Deprecated
+ IQuestionDialog createQuestionDialog(Shell parent, String title, String message);
+
+ /**
+ * Instantiates a question dialog (without opening it)
+ *
+ * @param parent
+ * the parent shell for the new dialog
+ * @param title
+ * the text that appears in the title of the dialog
+ * @param message
+ * the text that appears in the message area of the dialog
+ * @return the dialog, ready to be {@link IQuestionDialog#open() opened}
+ * @since 0.2
+ */
+ IQuestionDialog createQuestionDialog(Shell parent, String title,
+ String message, IDialogCallback<Boolean> callback);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IWithResultDialogCallback.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IWithResultDialogCallback.java
new file mode 100644
index 00000000000..3cdeabe0393
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/dialog/IWithResultDialogCallback.java
@@ -0,0 +1,34 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 406570 - Handlers to Save and SaveAs EMF resources
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog;
+
+
+/**
+ * A callback used to return a dialog's result asynchronously.
+ *
+ * @since 0.3
+ * @noextend This interface is not intended to be extended by clients.
+ */
+public interface IWithResultDialogCallback<T> {
+
+ /**
+ * The user commit his action.
+ */
+ void commited(T result);
+
+ /**
+ * The user cancel his action.
+ */
+ void canceled(T result);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/AbstractExceptionFreeRunnable.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/AbstractExceptionFreeRunnable.java
new file mode 100644
index 00000000000..44c9d70daf4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/AbstractExceptionFreeRunnable.java
@@ -0,0 +1,20 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gr�goire Dup� (Mia-Software) - Bug 365808 - [Unit Test Failure][0.2/4.2][0.2/3.8] org.eclipse.papyrus.emf.facet.widgets.nattable.tests.NatTableAPITests
+ * Gr�goire Dup� (Mia-Software) - Bug 367153 - synchronization utilities
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync;
+
+public abstract class AbstractExceptionFreeRunnable<T> implements IRunnable<T, Exception> {
+ public abstract T safeRun();
+
+ public T run() throws Exception {
+ return this.safeRun();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/AbstractVoidExceptionFreeRunnable.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/AbstractVoidExceptionFreeRunnable.java
new file mode 100644
index 00000000000..734a34c596e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/AbstractVoidExceptionFreeRunnable.java
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gr�goire Dup� (Mia-Software) - Bug 365808 - [Unit Test Failure][0.2/4.2][0.2/3.8] org.eclipse.papyrus.emf.facet.widgets.nattable.tests.NatTableAPITests
+ * Gr�goire Dup� (Mia-Software) - Bug 367153 - synchronization utilities
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync;
+
+public abstract class AbstractVoidExceptionFreeRunnable implements
+ IRunnable<Object, Exception> {
+ public abstract void voidSafeRun();
+
+ public Object run() throws Exception {
+ voidSafeRun();
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/AbstractVoidRunnable.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/AbstractVoidRunnable.java
new file mode 100644
index 00000000000..5ddf790c9a7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/AbstractVoidRunnable.java
@@ -0,0 +1,22 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gr�goire Dup� (Mia-Software) - Bug 365808 - [Unit Test Failure][0.2/4.2][0.2/3.8] org.eclipse.papyrus.emf.facet.widgets.nattable.tests.NatTableAPITests
+ * Gr�goire Dup� (Mia-Software) - Bug 367153 - synchronization utilities
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync;
+
+public abstract class AbstractVoidRunnable<E extends Exception> implements
+ IRunnable<Object, E> {
+ public abstract void voidRun() throws E;
+
+ public Object run() throws E {
+ this.voidRun();
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/DisplaySyncRuntimeException.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/DisplaySyncRuntimeException.java
new file mode 100644
index 00000000000..e717d163392
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/DisplaySyncRuntimeException.java
@@ -0,0 +1,34 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gr�goire Dup� (Mia-Software) - Bug 365808 - [Unit Test Failure][0.2/4.2][0.2/3.8] org.eclipse.papyrus.emf.facet.widgets.nattable.tests.NatTableAPITests
+ * Gr�goire Dup� (Mia-Software) - Bug 367153 - synchronization utilities
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync;
+
+class DisplaySyncRuntimeException extends RuntimeException {
+
+ private static final long serialVersionUID = -4424355632936609905L;
+
+ public DisplaySyncRuntimeException() {
+ super();
+ }
+
+ public DisplaySyncRuntimeException(final String message) {
+ super(message);
+ }
+
+ public DisplaySyncRuntimeException(final Throwable cause) {
+ super(cause);
+ }
+
+ public DisplaySyncRuntimeException(final String message, final Throwable cause) {
+ super(message, cause);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/IRunnable.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/IRunnable.java
new file mode 100644
index 00000000000..eb175fefde5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/IRunnable.java
@@ -0,0 +1,16 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gr�goire Dup� (Mia-Software) - Bug 365808 - [Unit Test Failure][0.2/4.2][0.2/3.8] org.eclipse.papyrus.emf.facet.widgets.nattable.tests.NatTableAPITests
+ * Gr�goire Dup� (Mia-Software) - Bug 367153 - synchronization utilities
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync;
+
+public interface IRunnable<T extends Object, E extends Exception> {
+ T run() throws E;
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/SynchronizedComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/SynchronizedComposite.java
new file mode 100644
index 00000000000..b5336294f81
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/SynchronizedComposite.java
@@ -0,0 +1,38 @@
+/*******************************************************************************
+ * Copyright (c) 2011-2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 365808 - [Unit Test Failure][0.2/4.2][0.2/3.8] org.eclipse.papyrus.emf.facet.widgets.nattable.tests.NatTableAPITests
+ * Grégoire Dupé (Mia-Software) - Bug 367153 - synchronization utilities
+ * Nicolas Bros (Mia-Software) - Bug 370442 - rewrite the Facet loading dialog for v0.2
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync;
+
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * <ul>
+ * <li>syncExecWithResult (has return type, throws exception)
+ * <li>safeSyncExec (has return type, no exception)
+ * <li>voidSyncExec (no return type, throws exception)
+ * <li>voidExceptionFreeRunnable (no return type, no exception)
+ * </ul>
+ */
+public class SynchronizedComposite<C extends Composite> extends SynchronizedObject<C> {
+
+ public SynchronizedComposite(final C composite) {
+ super(composite, composite.getDisplay());
+ }
+
+ @Deprecated
+ protected C getSynchronizedComposite() {
+ return getSynchronizedObject();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/SynchronizedObject.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/SynchronizedObject.java
new file mode 100644
index 00000000000..2aabc8443e1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/displaysync/SynchronizedObject.java
@@ -0,0 +1,115 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 365808 - [Unit Test Failure][0.2/4.2][0.2/3.8] org.eclipse.papyrus.emf.facet.widgets.nattable.tests.NatTableAPITests
+ * Grégoire Dupé (Mia-Software) - Bug 367153 - synchronization utilities
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync;
+
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * <ul>
+ * <li>syncExecWithResult (has return type, throws exception)
+ * <li>safeSyncExec (has return type, no exception)
+ * <li>voidSyncExec (no return type, throws exception)
+ * <li>voidExceptionFreeRunnable (no return type, no exception)
+ * </ul>
+ */
+public class SynchronizedObject<O extends Object> {
+
+ private final O object;
+ private final Thread widgetThread;
+ private final Display display;
+
+ public SynchronizedObject(final O object, final Display display) {
+ this.object = object;
+ this.display = display;
+ this.widgetThread = this.display.getThread();
+ }
+
+ protected final <T, E extends Exception> T syncExecWithResult(
+ final IRunnable<T, E> runnable) throws E {
+ T result;
+ if (this.widgetThread == Thread.currentThread()) {
+ result = runnable.run();
+ } else {
+ final ExceptionHandler exceptionHandler = new ExceptionHandler();
+ final Object[] resultHandler = new Object[1];
+ this.display.syncExec(new java.lang.Runnable() {
+ public void run() {
+ try {
+ resultHandler[0] = runnable.run();
+ } catch (final Exception e) {
+ exceptionHandler.setException(e);
+ }
+
+ }
+ });
+ if (exceptionHandler.getException() != null) {
+ @SuppressWarnings("unchecked")
+ // @SuppressWarnings("unchecked") This cast is safe because
+ // "exceptionHandler" contains an exception thrown by "runnable"
+ // and
+ // "runnable" throws by definition a instance of E
+ final E castException = (E) exceptionHandler.getException();
+ throw castException;
+ }
+ @SuppressWarnings("unchecked")
+ // @SuppressWarnings("unchecked") This cast is safe because
+ // "resultHandler" contains a value returned by "runnable" and
+ // "runnable" returns by definition a instance of T
+ final T tmpResult = (T) resultHandler[0];
+ result = tmpResult;
+ }
+ return result;
+ }
+
+ protected class ExceptionHandler {
+
+ private Exception exception;
+
+ public Exception getException() {
+ return this.exception;
+ }
+
+ public void setException(final Exception exception) {
+ this.exception = exception;
+ }
+ }
+
+ protected final <E extends Exception> void voidSyncExec(
+ final AbstractVoidRunnable<E> runnable) throws E {
+ this.syncExecWithResult(runnable);
+ }
+
+ protected final <T> T safeSyncExec(
+ final AbstractExceptionFreeRunnable<T> runnable) {
+ try {
+ return this.syncExecWithResult(runnable);
+ } catch (final Exception e) {
+ throw new DisplaySyncRuntimeException(e);
+ }
+ }
+
+ protected final void voidExceptionFreeRunnable(
+ final AbstractVoidExceptionFreeRunnable runnable) {
+ try {
+ this.syncExecWithResult(runnable);
+ } catch (final Exception e) {
+ throw new DisplaySyncRuntimeException(e);
+ }
+ }
+
+ public O getSynchronizedObject() {
+ return this.object;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/handler/HandlerUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/handler/HandlerUtils.java
new file mode 100644
index 00000000000..932099591b1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/handler/HandlerUtils.java
@@ -0,0 +1,90 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 423181 - Unchecked cast in HandlerUtils.getStructuredSelection()
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.handler;
+
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.IWorkbenchPartSite;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PlatformUI;
+
+/**
+ * Util class for Handlers.
+ *
+ * @since 0.3
+ */
+public final class HandlerUtils {
+
+ private HandlerUtils() {
+ // Hidden constructor.
+ }
+
+ /**
+ * Return the tree selection of the user's selection.
+ *
+ * @return the current tree selection.
+ */
+ public static IStructuredSelection getStructuredSelection() {
+ ISelection selection = null;
+ final IWorkbench workbench = PlatformUI.getWorkbench();
+ if (workbench != null) {
+ final IWorkbenchWindow[] workbenchWindows = workbench
+ .getWorkbenchWindows();
+ if ((workbenchWindows.length > 0)
+ && (workbenchWindows[0].getSelectionService() != null)) {
+ selection = workbenchWindows[0].getSelectionService()
+ .getSelection();
+ }
+ }
+ IStructuredSelection result = null;
+ if (selection instanceof IStructuredSelection) {
+ result = (IStructuredSelection) selection;
+ }
+ return result;
+ }
+
+ /**
+ * Return the current selection.
+ *
+ * @return the current selection.
+ */
+ public static Object getSelection() {
+ Object result = null;
+ // on a facet model, the selection is obviously a TreeSelection
+ final IStructuredSelection structSelection = getStructuredSelection();
+ if (structSelection != null) {
+ result = structSelection.getFirstElement();
+ }
+ return result;
+ }
+
+ /**
+ * Return the active workbench window.
+ *
+ * @return the active workbench window.
+ */
+ public static Shell getWorkbenchWindowShell() {
+ final IWorkbenchWindow iWorkbenchWindow = PlatformUI.getWorkbench()
+ .getWorkbenchWindows()[0];
+ final IWorkbenchPage iWorkbenchPage = iWorkbenchWindow.getPages()[0];
+ final IWorkbenchPart activePart = iWorkbenchPage.getActivePart();
+ final IWorkbenchPartSite site = activePart.getSite();
+
+ return site.getShell();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/tree/menu/ITreeMenu.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/tree/menu/ITreeMenu.java
new file mode 100644
index 00000000000..714efd206f3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/tree/menu/ITreeMenu.java
@@ -0,0 +1,44 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.tree.menu;
+
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.item.AbstractTreeItem;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.menu.AbstractTreeMenuItem;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.menu.ExtendedTreeMenu;
+
+/**
+ * @see ExtendedTreeMenu
+ * @since 0.3
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface ITreeMenu<T extends Object> {
+
+ /**
+ * Select a menu item in the tree menu.
+ *
+ * @param menuItemType
+ * @return an instance of T.
+ */
+ T selectMenuItem(Class<? extends AbstractTreeMenuItem<T>> menuItemType);
+
+ /**
+ * Select all the items of the tree with the name <code>treeItemName</code>
+ *
+ * @param treeItemName
+ * the name of the item to select.
+ * @return the list of all the tree item with the name in parameter.
+ */
+ List<AbstractTreeItem<T>> getTreeItems(String treeItemName);
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/composite/FilteredElementSelectionComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/composite/FilteredElementSelectionComposite.java
new file mode 100644
index 00000000000..9e5960b6248
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/composite/FilteredElementSelectionComposite.java
@@ -0,0 +1,174 @@
+/*******************************************************************************
+ * Copyright (c) 2010, 2011, 2012 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.composite;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.composite.IFilteredElementSelectionComposite;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.KeyEvent;
+import org.eclipse.swt.events.KeyListener;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.dialogs.FilteredList;
+
+/**
+ * A control for selecting an element from a list of elements, that can be
+ * filtered using the associated text field.
+ *
+ * @since 0.3
+ */
+public class FilteredElementSelectionComposite extends Composite implements
+ IFilteredElementSelectionComposite {
+
+ private final Text filterText;
+ private final FilteredList fFilteredList;
+ private String matchPrefix;
+
+ public FilteredElementSelectionComposite(final Composite parent,
+ final boolean matchAnywhere, final boolean multiSelection) {
+ super(parent, SWT.BORDER);
+ setLayout(new GridLayout());
+
+ this.filterText = createFilterText(this);
+ this.fFilteredList = createFilteredList(this, multiSelection);
+
+ this.filterText.addModifyListener(new ModifyListener() {
+ public void modifyText(final ModifyEvent event) {
+ getfFilteredList().setFilter(
+ getMatchPrefix(matchAnywhere)
+ + getFilterText().getText());
+ }
+ });
+
+ this.filterText.addKeyListener(new KeyListener() {
+ public void keyPressed(final KeyEvent event) {
+ if (event.keyCode == SWT.ARROW_DOWN) {
+ getfFilteredList().setFocus();
+ }
+ }
+
+ public void keyReleased(final KeyEvent event) {
+ // nothing
+ }
+ });
+ }
+
+ protected String getMatchPrefix(final boolean matchAnywhere) {
+ if (matchAnywhere) {
+ this.matchPrefix = "*"; //$NON-NLS-1$
+ } else {
+ this.matchPrefix = ""; //$NON-NLS-1$
+ }
+ return this.matchPrefix;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.composite.
+ * IFilteredElementSelectionComposite#setElements(java.lang.Object[])
+ */
+ public void setElements(final Object[] elements) {
+ this.fFilteredList.setElements(elements);
+ }
+
+ protected static FilteredList createFilteredList(final Composite parent,
+ final boolean multiSelection) {
+ int multi;
+ if (multiSelection) {
+ multi = SWT.MULTI;
+ } else {
+ multi = SWT.SINGLE;
+ }
+ final FilteredList filteredList = new FilteredList(parent, SWT.BORDER
+ | SWT.V_SCROLL | SWT.H_SCROLL | multi, new LabelProvider(),
+ true, false, true);
+ final GridData data = new GridData();
+ data.grabExcessVerticalSpace = true;
+ data.grabExcessHorizontalSpace = true;
+ data.horizontalAlignment = GridData.FILL;
+ data.verticalAlignment = GridData.FILL;
+ filteredList.setLayoutData(data);
+ filteredList.setFilter(""); //$NON-NLS-1$
+ return filteredList;
+ }
+
+ protected static Text createFilterText(final Composite parent) {
+ final Text text = new Text(parent, SWT.BORDER);
+ text.setMessage(Messages.FilteredElementSelectionControl_type_filter_text);
+ final GridData data = new GridData();
+ data.grabExcessVerticalSpace = false;
+ data.grabExcessHorizontalSpace = true;
+ data.horizontalAlignment = GridData.FILL;
+ data.verticalAlignment = GridData.BEGINNING;
+ text.setLayoutData(data);
+ return text;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.composite.
+ * IFilteredElementSelectionComposite#getFirstSelectedElement()
+ */
+ public Object getFirstSelectedElement() {
+ Object result = null;
+ final Object[] selection = this.fFilteredList.getSelection();
+ if (selection.length > 0) {
+ result = selection[0];
+ }
+ return result;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.composite.
+ * IFilteredElementSelectionComposite#getSelectedElements()
+ */
+ public Object[] getSelectedElements() {
+ Object[] result = null;
+ if (this.fFilteredList.getSelection().length > 0) {
+ result = this.fFilteredList.getSelection();
+ }
+ return result;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.composite.
+ * IFilteredElementSelectionComposite#getFilteredList()
+ */
+ public FilteredList getFilteredList() {
+ return this.fFilteredList;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.composite.
+ * IFilteredElementSelectionComposite#getFilterText()
+ */
+ public Text getFilterText() {
+ return this.filterText;
+ }
+
+ protected FilteredList getfFilteredList() {
+ return this.fFilteredList;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/composite/SynchronizedFilteredElementSelectionComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/composite/SynchronizedFilteredElementSelectionComposite.java
new file mode 100644
index 00000000000..db9811e7cb3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/composite/SynchronizedFilteredElementSelectionComposite.java
@@ -0,0 +1,89 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.composite;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.composite.IFilteredElementSelectionComposite;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.dialogs.FilteredList;
+
+/**
+ * @since 0.3
+ */
+public class SynchronizedFilteredElementSelectionComposite<T extends IFilteredElementSelectionComposite>
+ extends SynchronizedObject<T> implements
+ IFilteredElementSelectionComposite {
+
+ /**
+ * @param object
+ * @param display
+ */
+ public SynchronizedFilteredElementSelectionComposite(final T object,
+ final Display display) {
+ super(object, display);
+ }
+
+ public void setElements(final Object[] elements) {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedFilteredElementSelectionComposite.this
+ .getSynchronizedObject().setElements(elements);
+ }
+ });
+ }
+
+ public Object getFirstSelectedElement() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Object>() {
+ @Override
+ public Object safeRun() {
+ return SynchronizedFilteredElementSelectionComposite.this
+ .getSynchronizedObject().getFirstSelectedElement();
+ }
+ });
+ }
+
+ public Object[] getSelectedElements() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Object[]>() {
+ @Override
+ public Object[] safeRun() {
+ return SynchronizedFilteredElementSelectionComposite.this
+ .getSynchronizedObject().getSelectedElements();
+ }
+ });
+ }
+
+ public FilteredList getFilteredList() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<FilteredList>() {
+ @Override
+ public FilteredList safeRun() {
+ return SynchronizedFilteredElementSelectionComposite.this
+ .getSynchronizedObject().getFilteredList();
+ }
+ });
+ }
+
+ public Text getFilterText() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Text>() {
+ @Override
+ public Text safeRun() {
+ return SynchronizedFilteredElementSelectionComposite.this
+ .getSynchronizedObject().getFilterText();
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/dialog/AbstractDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/dialog/AbstractDialog.java
new file mode 100644
index 00000000000..db94d0ee6db
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/dialog/AbstractDialog.java
@@ -0,0 +1,169 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog;
+
+import org.eclipse.core.commands.Command;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.WidgetProperties;
+import org.eclipse.jface.dialogs.TitleAreaDialog;
+import org.eclipse.swt.graphics.Rectangle;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Monitor;
+import org.eclipse.swt.widgets.Shell;
+
+/**
+ * Abstract class representing a dialog. Some methods are implemented to avoid
+ * unnecessary duplication code.
+ *
+ * @param <CB>
+ * The type of the callback.
+ * @param <P>
+ * The type of the key of the {@link WidgetProperties}
+ * @since 0.3
+ */
+public abstract class AbstractDialog<CB extends Object, W extends ICommandWidget>
+ extends TitleAreaDialog implements IDialog<W> {
+
+ // Attributes.
+ private W widget;
+ private Composite dialogComposite;
+ private CB callback;
+
+ /**
+ * Constructor.
+ *
+ * @param callback
+ * the callback
+ * @param properties
+ * the properties that the widget needs
+ */
+ protected AbstractDialog(final CB callback) {
+ this();
+ this.callback = callback;
+ }
+
+ /**
+ * Constructor.
+ */
+ protected AbstractDialog() {
+ super(createDisplayedShell());
+ }
+
+ private static Shell createDisplayedShell() {
+ final Display display = Display.getDefault();
+ final Shell shell = new Shell(display);
+ final Monitor primary = display.getPrimaryMonitor();
+ final Rectangle bounds = primary.getBounds();
+ final Rectangle rect = shell.getBounds();
+ final int xLocation = bounds.x + ((bounds.width - rect.width) / 2);
+ final int yLocation = bounds.y + ((bounds.height - rect.height) / 2);
+ shell.setLocation(xLocation, yLocation);
+ return shell;
+ }
+
+ /**
+ * Execute the widget {@link Command}.
+ */
+ protected abstract void execute();
+
+ /**
+ * Check if all the required attributes are setted ({@link #isDialogValid()}
+ * and call the method {@link #execute()} to get and execute the widget
+ * command. If the dialog is not valid, this method display the errors with
+ * the method {@link #setErrorMessage(String)}.
+ */
+ @Override
+ protected void okPressed() {
+ if (isDialogValid()) {
+ getWidget().onDialogValidation();
+ execute();
+ super.okPressed();
+ } else {
+ setErrorMessage(getWidget().getError());
+ }
+ }
+
+ /**
+ * Set the title and the message dialog. Create the associated widget and
+ * all sub widgets of this widget.
+ */
+ @Override
+ protected Control createDialogArea(final Composite parent) {
+ setTitle(getDialogTitle());
+ setMessage(getDialogMessage());
+ // Composite is a subtype of Control.
+ this.dialogComposite = (Composite) super.createDialogArea(parent);
+ this.widget = createWidget();
+ this.widget.createWidgetContent();
+ return this.widget.adapt(Control.class);
+ }
+
+ public Composite getDialogComposite() {
+ return this.dialogComposite;
+ }
+
+ /**
+ * Create the associated widget to the dialog.
+ *
+ * @return an instance of the widget.
+ */
+ protected abstract W createWidget();
+
+ /**
+ * Return the message at the top of the dialog.
+ *
+ * @return the message.
+ */
+ protected abstract String getDialogMessage();
+
+ /**
+ * Return the title of the dialog.
+ *
+ * @return the title.
+ */
+ protected abstract String getDialogTitle();
+
+
+ public boolean isDialogValid() {
+ boolean result = true;
+ final String error = getWidget().getError();
+ if (error != null) {
+ result = false;
+ }
+
+ return result;
+ }
+
+ public W getWidget() {
+ return this.widget;
+ }
+
+ public void commit() {
+ okPressed();
+ }
+
+ public void cancel() {
+ cancelPressed();
+ }
+
+ /**
+ * @return the callback
+ */
+ public CB getCallback() {
+ return this.callback;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/dialog/AbstractDialogWithCallback.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/dialog/AbstractDialogWithCallback.java
new file mode 100644
index 00000000000..1b14343e307
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/dialog/AbstractDialogWithCallback.java
@@ -0,0 +1,58 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogWithoutResultCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+
+/**
+ * Abstract dialog with an {@link IDialogWithoutResultCallback} in parameter.
+ *
+ * @since 0.3
+ */
+public abstract class AbstractDialogWithCallback<T extends Object, W extends ICommandWidget>
+ extends AbstractDialog<IWithResultDialogCallback<T>, W> {
+
+ /**
+ * Constructor.
+ *
+ * @param editingDomain
+ * the current editing domain
+ * @param properties
+ * the properties that the widget needs
+ */
+ protected AbstractDialogWithCallback(
+ final IWithResultDialogCallback<T> callback) {
+ super(callback);
+ }
+
+ @Override
+ protected void okPressed() {
+ if (isDialogValid() && (getCallback() != null)) {
+ getCallback().commited(getResult());
+ }
+ super.okPressed();
+ }
+
+ protected abstract T getResult();
+
+ @Override
+ protected void cancelPressed() {
+ if (getCallback() != null) {
+ getCallback().canceled(getResult());
+ }
+ super.cancelPressed();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/dialog/AbstractMainDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/dialog/AbstractMainDialog.java
new file mode 100644
index 00000000000..ec9e183e4e5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/dialog/AbstractMainDialog.java
@@ -0,0 +1,62 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractCommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.WidgetProperties;
+
+/**
+ * This abstract class will create a dialog. All the action's dialog must
+ * extends this class. It provides a simple way to create a standard dialog for
+ * this ui.</p>
+ *
+ * A single {@link AbstractCommandWidget} is created by the dialog wich will
+ * contain all the subwidgets {@link AbstractWidget}.
+ *
+ * The dialog have to create all the properties {@link WidgetProperties} that
+ * the widgets {@link AbstractCommandWidget} will need.
+ *
+ * @see AbstractCommandWidget
+ * @see AbstractWidget
+ * @see AbstractAddElementDialog
+ * @since 0.3
+ */
+public abstract class AbstractMainDialog<W extends ICommandWidget>
+ extends AbstractDialog<Object, W> {
+
+ private final Object selection;
+
+ /**
+ * Constructor.
+ *
+ * @param callback
+ * the callback.
+ * @param editedElement
+ * the selection in the model (ecore file).
+ */
+ protected AbstractMainDialog(final Object editedElement) {
+ super();
+ this.selection = editedElement;
+ }
+
+ /**
+ * @return the selection in the model.
+ */
+ protected Object getSelection() {
+ return this.selection;
+ }
+
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/dialog/SynchronizedAbstractDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/dialog/SynchronizedAbstractDialog.java
new file mode 100644
index 00000000000..ac0051d495c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/dialog/SynchronizedAbstractDialog.java
@@ -0,0 +1,94 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Synchronized class for safe run.
+ *
+ * @see AbstractDialog
+ * @since 0.3
+ *
+ */
+public class SynchronizedAbstractDialog<W extends Object> extends
+ SynchronizedObject<IDialog<W>> implements IDialog<W> {
+
+ /**
+ * Constructor.
+ *
+ * @param object
+ * the to synchronized.
+ * @param display
+ * the display.
+ */
+ public SynchronizedAbstractDialog(final IDialog<W> object,
+ final Display display) {
+ super(object, display);
+ }
+
+ public void commit() {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedAbstractDialog.this.getSynchronizedObject()
+ .commit();
+ }
+ });
+ }
+
+ public void cancel() {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedAbstractDialog.this.getSynchronizedObject()
+ .cancel();
+ }
+ });
+ }
+
+ public int open() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Integer>() {
+ @Override
+ public Integer safeRun() {
+ return Integer.valueOf(SynchronizedAbstractDialog.this
+ .getSynchronizedObject().open());
+ }
+ }).intValue();
+ }
+
+ public boolean isDialogValid() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedAbstractDialog.this
+ .getSynchronizedObject().isDialogValid());
+ }
+ }).booleanValue();
+ }
+
+ public W getWidget() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<W>() {
+ @Override
+ public W safeRun() {
+ return SynchronizedAbstractDialog.this.getSynchronizedObject()
+ .getWidget();
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/handler/AbstractSelectionExpectedTypeHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/handler/AbstractSelectionExpectedTypeHandler.java
new file mode 100644
index 00000000000..717f16f2460
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/handler/AbstractSelectionExpectedTypeHandler.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.handler;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.handler.HandlerUtils;
+
+/**
+ * Abstract handler. All handlers must extends this class.
+ *
+ * @see IFunctionDialogFactory
+ *
+ * @see CreateFacetInFacetSetHandler
+ * @see CreateFacetSetInFacetSetHandler
+ * @see AddAttributeInFacetHandler
+ * @see AddOperationInFacetHandler
+ * @see AddReferenceInFacetHandler
+ * @see AddParameterInOperationHandler
+ * @since 0.3
+ */
+public abstract class AbstractSelectionExpectedTypeHandler extends AbstractHandler {
+
+ @Override
+ public boolean isEnabled() {
+ boolean result = false;
+ if ((HandlerUtils.getStructuredSelection() != null && HandlerUtils
+ .getStructuredSelection().size() == 1)
+ && getSelectionExpectedType().isInstance(
+ HandlerUtils.getSelection())) {
+ result = true;
+ }
+ return result;
+ }
+
+ /**
+ * Return the expected type of the selection.
+ *
+ * @return the type expected.
+ */
+ protected abstract Class<?> getSelectionExpectedType();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/ExtendedTree.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/ExtendedTree.java
new file mode 100644
index 00000000000..3418d245250
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/ExtendedTree.java
@@ -0,0 +1,174 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree;
+
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.item.AbstractTreeItem;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.menu.AbstractTreeMenu;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.menu.ExtendedTreeMenu;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.KeyEvent;
+import org.eclipse.swt.events.KeyListener;
+import org.eclipse.swt.events.MouseEvent;
+import org.eclipse.swt.events.MouseListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Tree;
+
+/**
+ * This class provides the creation of a {@link Tree} but with extended
+ * elements.</p>
+ *
+ * This tree creates its menu {@link ExtendedTreeMenu} and had the list of all the items
+ * of the tree accessible with the method {@link #getTreeItems()}.
+ *
+ * </p> Only one element of the tree can be selected at the same time.
+ *
+ * @since 0.3
+ */
+public class ExtendedTree {
+
+ private static final int TREE_HEIGHT = 250;
+ private final Tree tree;
+ private final ExtendedTreeMenu<IDialog> treeMenu;
+ private Listener listener;
+
+ /**
+ * Constructor.
+ *
+ * Create a new instance of a {@link Tree} and create the {@link ExtendedTreeMenu}
+ * with the <code>menuItems</code> in parameter.
+ *
+ * @param parent
+ * the parent of the TreeExtended.
+ * @param menuItems
+ * the items of the menu.
+ *
+ * @see ExtendedTreeMenu
+ * @see AbstractTreeMenu
+ */
+ public ExtendedTree(final Composite parent,
+ final List<AbstractTreeMenu<IDialog>> menuItems) {
+
+ // SWT.SINGLE -> a unique selection on the tree possible
+ this.tree = new Tree(parent, SWT.SINGLE | SWT.NONE);
+ final GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
+ gridData.heightHint = TREE_HEIGHT;
+ this.tree.setLayoutData(gridData);
+ this.tree.addMouseListener(new MouseListener() {
+
+ public void mouseUp(final MouseEvent mouseEvent) {
+ // Nothing.
+ }
+
+ public void mouseDown(final MouseEvent mouseEvent) {
+ // Nothing.
+ }
+
+ public void mouseDoubleClick(final MouseEvent mouseEvent) {
+ onMouseDoubleClick();
+ }
+ });
+ this.tree.addKeyListener(new KeyListener() {
+
+ public void keyReleased(final KeyEvent event) {
+ // Nothing.
+ }
+
+ public void keyPressed(final KeyEvent event) {
+ onKeyPressed(event);
+ }
+ });
+ this.treeMenu = new ExtendedTreeMenu<IDialog>(parent, this, menuItems);
+ this.getTreeMenu().createMenu();
+ this.tree.setMenu(this.getTreeMenu().getMenu());
+ }
+
+ /**
+ * This method is called when a key is pressed on the tree.
+ */
+ protected void onKeyPressed(final KeyEvent event) {
+ if (event.keyCode == SWT.DEL) {
+ this.getTreeMenu().removeCurrentItemSelected();
+ }
+ }
+
+ /**
+ * When the mouse does a double click on an element of the tree.
+ */
+ protected void onMouseDoubleClick() {
+ if (getTree().getSelection().length > 0) {
+ // new Tree(parent, SWT.SINGLE | SWT.NONE) -> the tree can only had
+ // one selection at the same time.
+ this.getTreeMenu().onMouseSelection();
+ }
+ }
+
+ /**
+ * @return the {@link Tree} created by this class.
+ */
+ public Tree getTree() {
+ return this.tree;
+ }
+
+ /**
+ * Add a {@link ModificationListener} to the list of listeners of the tree.
+ *
+ * @param listener
+ */
+ public void setListener(final Listener listener) {
+ this.listener = listener;
+ }
+
+ /**
+ * When a modification appends, this method has to be called and the method
+ * {@link #notifyChanged()} is called for the listener of this Tree.
+ */
+ public void fireChanged() {
+ this.listener.handleEvent(null);
+ }
+
+ /**
+ * @return a map of properties to pass to the {@link AbstractTreeItem}. Each
+ * items add to override the method
+ * {@link AbstractTreeItem#getExtraProperties(Map)} to get this
+ * properties.
+ */
+ public void putExtraPropertiesToItems(final Map<String, Object> properties) {
+ this.getTreeMenu().putExtraProperties(properties);
+ }
+
+ /**
+ * Return the first {@link AbstractTreeItem} of the tree.
+ *
+ * @return the first item of the tree.
+ */
+ public AbstractTreeItem<IDialog> getFirstTreeItem() {
+ AbstractTreeItem<IDialog> result = null;
+ if (this.tree.getItemCount() > 0) {
+ result = this.getTreeMenu().getTreeItemExtended(this.tree.getItem(0));
+ }
+ return result;
+ }
+
+ /**
+ * @return the treeMenu of this tree.
+ */
+ public ExtendedTreeMenu<IDialog> getTreeMenu() {
+ return this.treeMenu;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/item/AbstractTreeItem.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/item/AbstractTreeItem.java
new file mode 100644
index 00000000000..a91d24700ba
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/item/AbstractTreeItem.java
@@ -0,0 +1,210 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.item;
+
+import java.util.Map;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.ExtendedTree;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.menu.AbstractTreeMenuItem;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Tree;
+import org.eclipse.swt.widgets.TreeItem;
+
+/**
+ * This abstract class represent an item of the tree. All the item types of the
+ * tree must extend this abstract class.
+ *
+ * @since 0.3
+ */
+public abstract class AbstractTreeItem<T extends Object> {
+
+ private AbstractTreeMenuItem<T> menuItem;
+ private TreeItem treeItem;
+ private Map<String, Object> extraProperties;
+
+ /**
+ * Create a new item {@link TreeItem} into the parent.
+ *
+ * @param parent
+ * the parent of the item to create.
+ */
+ public TreeItem createItem(final AbstractTreeMenuItem<T> itemMenu,
+ final Tree parent) {
+ this.menuItem = itemMenu;
+ final TreeItem item = new TreeItem(parent, SWT.NONE);
+ initialize(item);
+ return item;
+ }
+
+ /**
+ * Create a new item {@link TreeItem} into the parent.
+ *
+ * @param parent
+ * the parent of the item to create.
+ */
+ public TreeItem createItem(final AbstractTreeMenuItem<T> itemMenu,
+ final TreeItem parent) {
+ this.menuItem = itemMenu;
+ final TreeItem item = new TreeItem(parent, SWT.NONE);
+ // Open the parent of the item on the tree.
+ parent.setExpanded(true);
+ initialize(item);
+ return item;
+ }
+
+ /**
+ * Initialize the tree item with the text and call the method
+ * {@link #onItemCreation()} if the user wants an extra action.
+ */
+ private void initialize(final TreeItem item) {
+ item.setChecked(true);
+ if ((getItemText() == null) || "".equals(getItemText())) { //$NON-NLS-1$
+ item.setText(getDefaultItemText());
+ } else {
+ item.setText(getItemText());
+ }
+ fireChanged();
+ this.setTreeItem(item);
+ }
+
+ /**
+ * Return the default message when the item is created.
+ *
+ * @return the default message.
+ */
+ public static String getDefaultItemText() {
+ return Messages.item_todo;
+ }
+
+ /**
+ * Return the text to display for the item. This text can be null or an
+ * empty string (the value of the string will be {@link Messages#item_todo}
+ * ). The item text can be setted later with {@link #setItemText(String)}.
+ *
+ * @return the text of the item in the tree.
+ */
+ public abstract String getItemText();
+
+ /**
+ * Called when this object will be instantiate.
+ */
+ public abstract T onItemCreation();
+
+ /**
+ * This method is called when the item of the tree is selected.
+ */
+ public abstract IDialog onItemMouseSelection();
+
+ /**
+ * Return the value of this item.
+ *
+ * @return the value.
+ */
+ public abstract Object returnValue();
+
+ /**
+ * Delete the item and all his children of the tree.
+ */
+ public void removeItem() {
+ for (final TreeItem item : getChildren()) {
+ findTreeItemExtended(item).removeItem();
+ }
+ this.getTreeItem().dispose();
+ fireChanged();
+ }
+
+ /**
+ * Return the children of this item in the tree.
+ *
+ * @return the list of the children.
+ */
+ public TreeItem[] getChildren() {
+ return this.getTreeItem().getItems();
+ }
+
+ /**
+ * Return the parent of this item on the tree.
+ *
+ * @return the parent of the item or null if the item is root.
+ */
+ public AbstractTreeItem<T> getParent() {
+ return findTreeItemExtended(getTreeItem().getParentItem());
+ }
+
+ /**
+ * Edit the text of the item into the tree.
+ *
+ * @param newText
+ * the new text.
+ */
+ public void setTreeItemText(final String newText) {
+ this.getTreeItem().setText(newText);
+ }
+
+ /**
+ * When a modification append, this method has to be called and the method
+ * {@link #notifyChanged()} is called for the listener of this Tree.
+ */
+ protected void fireChanged() {
+ this.getMenuItem().fireChanged();
+ }
+
+ /**
+ * @return the treeItem
+ */
+ public TreeItem getTreeItem() {
+ return this.treeItem;
+ }
+
+ /**
+ * @param treeItem
+ * the treeItem to set
+ */
+ private void setTreeItem(final TreeItem treeItem) {
+ this.treeItem = treeItem;
+ }
+
+ /**
+ * @return the menuItem
+ */
+ public AbstractTreeMenuItem<T> getMenuItem() {
+ return this.menuItem;
+ }
+
+ /**
+ * @param item
+ * @return
+ */
+ public AbstractTreeItem<T> findTreeItemExtended(final TreeItem item) {
+ return getMenuItem().findTreeItemExtended(item);
+ }
+
+ /**
+ * This method gets the <code>properties</code> passed by the
+ * {@link #treeExtended} via the method
+ * {@link ExtendedTree#putExtraPropertiesToItems(Map)}.
+ *
+ * @return the extraProperties
+ */
+ public Map<String, Object> getExtraProperties() {
+ return this.extraProperties;
+ }
+
+ /**
+ * @param extraProperties the extraProperties to set
+ */
+ public void setExtraProperties(final Map<String, Object> extraProperties) {
+ this.extraProperties = extraProperties;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/menu/AbstractTreeMenu.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/menu/AbstractTreeMenu.java
new file mode 100644
index 00000000000..5915f90568c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/menu/AbstractTreeMenu.java
@@ -0,0 +1,205 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.menu;
+
+import java.util.Map;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.item.AbstractTreeItem;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.widgets.Menu;
+import org.eclipse.swt.widgets.MenuItem;
+import org.eclipse.swt.widgets.Tree;
+import org.eclipse.swt.widgets.TreeItem;
+
+/**
+ * Abstract class providing the creation of any item into the menu.
+ *
+ * @see AbstractTreeMenuItem
+ * @see AbstractTreeSubMenu
+ * @since 0.3
+ */
+public abstract class AbstractTreeMenu<T extends Object> {
+
+ private ExtendedTreeMenu<T> treeMenu;
+ private MenuItem menuItem;
+ private boolean menuItemCreated;
+ private Map<String, Object> properties;
+
+ /**
+ * Refresh the the menu according to the actual context.
+ */
+ public void refresh(final ExtendedTreeMenu<T> menu) {
+ this.treeMenu = menu;
+ refreshMenu(this.treeMenu.getMenu());
+ }
+
+ /**
+ * Refresh the the menu according to the actual context.
+ */
+ public void refresh(final ExtendedTreeMenu<T> menuTree, final Menu menu) {
+ this.treeMenu = menuTree;
+ refreshMenu(menu);
+ }
+
+ /**
+ * Refresh the the menu according to the actual context.
+ */
+ private void refreshMenu(final Menu menu) {
+ if (isEnabled()) {
+ if (this.isMenuItemCreated()) {
+ deleteMenuItem();
+ }
+ this.setMenuItemCreated(true);
+ this.menuItem = createMenuItem(menu);
+ } else {
+ deleteMenuItem();
+ this.setMenuItemCreated(false);
+ }
+ }
+
+ /**
+ * Return if the menu item has to be enabled or not (by checking if the
+ * associated AbstractTreeItem is enabled or not).
+ *
+ * @return if the menu item has to be enabled or not.
+ */
+ public boolean isEnabled(final ExtendedTreeMenu<T> menuTree) {
+ this.treeMenu = menuTree;
+ return isEnabled();
+ }
+
+ /**
+ * Return if the menu item has to be enabled or not (by checking if the
+ * associated AbstractTreeItem is enabled or not).
+ *
+ * @return if the menu item has to be enabled or not.
+ */
+ public abstract boolean isEnabled();
+
+ /**
+ * Create the concrete item. Has to be overrided by the classes extending
+ * this abstract class.
+ *
+ * @param parent
+ * the parent of the item.
+ * @return the item created.
+ */
+ protected MenuItem createMenuItem(final Menu parent) {
+ final MenuItem item = new MenuItem(parent, SWT.NONE);
+ item.setText(getMenuName());
+ item.addSelectionListener(new SelectionListener() {
+
+ public void widgetSelected(final SelectionEvent selectionEvent) {
+ onMenuItemSelection();
+ }
+
+ public void widgetDefaultSelected(
+ final SelectionEvent selectionEvent) {
+ // Nothing.
+ }
+ });
+ return item;
+ }
+
+ /**
+ * @return the menu item name.
+ */
+ public abstract String getMenuName();
+
+ /**
+ * This method is called when the menu item is selected.
+ *
+ * @return can return an instance of T.
+ */
+ public abstract T onMenuItemSelection();
+
+ /**
+ * Delete the item of the menu.
+ */
+ public void deleteMenuItem() {
+ if (this.isMenuItemCreated() && (this.menuItem != null)
+ && !this.menuItem.isDisposed()) {
+ if (this.menuItem.getMenu() != null) {
+ this.menuItem.getMenu().dispose();
+ }
+ this.menuItem.dispose();
+ }
+ }
+
+ /**
+ * @return the treeMenu of the tree.
+ */
+ public ExtendedTreeMenu<T> getTreeMenu() {
+ return this.treeMenu;
+ }
+
+ /**
+ * Set the properties to pass to the new items.
+ *
+ * @param extraProperties
+ * the properties to pass.
+ *
+ */
+ public void setExtraProperties(final Map<String, Object> extraProperties) {
+ this.properties = extraProperties;
+ }
+
+ /**
+ * @return the {@link Tree}.
+ */
+ public Tree getTree() {
+ return this.treeMenu.getTree();
+ }
+
+ /**
+ * @return the properties.
+ */
+ public Map<String, Object> getProperties() {
+ return this.properties;
+ }
+
+ /**
+ * @return true if the menu for this concrete item is created or not.
+ */
+ public boolean isMenuItemCreated() {
+ return this.menuItemCreated;
+ }
+
+ /**
+ * @param menuItemCreated
+ * the menuItemCreated to set.
+ */
+ public void setMenuItemCreated(final boolean menuItemCreated) {
+ this.menuItemCreated = menuItemCreated;
+ }
+
+ /**
+ * Return the {@link AbstractTreeItem} according to the {@link TreeItem}.
+ *
+ * @param treeItem
+ * the treeItem related.
+ * @return the {@link AbstractTreeItem} related to the <code>treeItem</code>
+ * .
+ */
+ public abstract AbstractTreeItem<T> getTreeItemExtended(
+ final TreeItem treeItem);
+
+ /**
+ * Remove the item in parameter of the tree.
+ *
+ * @param item
+ * the item to remove.
+ */
+ public abstract boolean removeItem(final TreeItem item);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/menu/AbstractTreeMenuItem.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/menu/AbstractTreeMenuItem.java
new file mode 100644
index 00000000000..e23ce06e430
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/menu/AbstractTreeMenuItem.java
@@ -0,0 +1,213 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.menu;
+
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.Activator;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.item.AbstractTreeItem;
+import org.eclipse.swt.widgets.Tree;
+import org.eclipse.swt.widgets.TreeItem;
+
+/**
+ * Abstract class for the tree menu item. Each Menu Item had an handler which
+ * provide the methods: <li>{@link #isEnabled()} : return if the menu item has
+ * to be displayed.</li> <li>{@link #onMenuItemSelection()} : this method will
+ * be execute when the item is selected.</li> <li>
+ * {@link #getAssociatedTreeItemClass()} : links this class with an
+ * {@link AbstractTreeItem}. This item will be instantiate when the user select
+ * this element on the tree menu.</li>
+ *
+ * @see AbstractTreeItem
+ * @see AbstractTreeMenu
+ * @since 0.3
+ */
+public abstract class AbstractTreeMenuItem<T extends Object> extends
+ AbstractTreeMenu<T> {
+
+ private final List<AbstractTreeItem<T>> items;
+
+ /**
+ * Constructor.
+ */
+ public AbstractTreeMenuItem() {
+ super();
+ this.items = new LinkedList<AbstractTreeItem<T>>();
+ }
+
+ /**
+ * This method creates the associated item and set the extra properties to
+ * it.
+ */
+ @Override
+ public T onMenuItemSelection() {
+ AbstractTreeItem<T> item = null;
+ if (getCurrentItemSelected() == null) {
+ item = createItem(getTree());
+ } else {
+ item = createItem(getCurrentItemSelected());
+ }
+ this.getItems().add(item);
+ item.setExtraProperties(getProperties());
+ fireChanged();
+ return item.onItemCreation();
+ }
+
+ /**
+ * Create a new item {@link TreeItem} into the parent.
+ *
+ * @param parent
+ * the parent of the item to create.
+ */
+ public AbstractTreeItem<T> createItem(final Tree parent) {
+ return createTreeItem(parent);
+ }
+
+ /**
+ * Create a new item {@link TreeItem} into the parent.
+ *
+ * @param parent
+ * the parent of the item to create.
+ */
+ public AbstractTreeItem<T> createItem(final TreeItem parent) {
+ return createTreeItem(parent);
+ }
+
+ /**
+ * Create a new item {@link TreeItem} into the parent.
+ *
+ * @param parent
+ * the parent of the item to create.
+ */
+ protected AbstractTreeItem<T> createTreeItem(final Object parent) {
+ AbstractTreeItem<T> newTreeItem = null;
+ try {
+ newTreeItem = getAssociatedTreeItemClass().newInstance();
+ if (parent instanceof Tree) {
+ newTreeItem.createItem(this, (Tree) parent);
+ } else if (parent instanceof TreeItem) {
+ newTreeItem.createItem(this, (TreeItem) parent);
+ }
+ } catch (final SecurityException e) {
+ Logger.logError(e, Activator.getDefault());
+ } catch (final IllegalArgumentException e) {
+ Logger.logError(e, Activator.getDefault());
+ } catch (final InstantiationException e) {
+ Logger.logError(e, Activator.getDefault());
+ } catch (final IllegalAccessException e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+
+ return newTreeItem;
+ }
+
+ /**
+ * Find the treeItem searching into the all tree.
+ *
+ * @param treeItem
+ * the treeItem to find.
+ * @return the corresponding {@link AbstractTreeItem}. Null if not.
+ */
+ public AbstractTreeItem<T> findTreeItemExtended(final TreeItem treeItem) {
+ return this.getTreeMenu().getTreeItemExtended(treeItem);
+ }
+
+ /**
+ * This method only find the item into the corresponding element of this
+ * menu item. To find an element searching it into the all tree, use the
+ * method {@link #findTreeItemExtended(TreeItem)}.
+ */
+ @Override
+ public AbstractTreeItem<T> getTreeItemExtended(final TreeItem item) {
+ AbstractTreeItem<T> result = null;
+ for (final AbstractTreeItem<T> itemExtended : this.getItems()) {
+ if (itemExtended.getTreeItem().equals(item)) {
+ result = itemExtended;
+ break;
+ }
+ }
+ return result;
+ }
+
+ @Override
+ public boolean removeItem(final TreeItem item) {
+ boolean removed = false;
+ final AbstractTreeItem<T> itemExtended = findTreeItemExtended(item);
+ if (itemExtended != null) {
+ this.getItems().remove(itemExtended);
+ itemExtended.removeItem();
+ removed = true;
+ fireChanged();
+ }
+ return removed;
+ }
+
+ /**
+ * @return get the current selection of the tree.
+ */
+ public TreeItem getCurrentItemSelected() {
+ return getTreeMenu().getCurrentItemSelected();
+ }
+
+ /**
+ * Remove the last item created.
+ */
+ protected void removeLastItem() {
+ // The list created is a LinkedList<AbstractTreeItem>
+ ((LinkedList<AbstractTreeItem<T>>) this.getItems()).getLast()
+ .removeItem();
+ fireChanged();
+ }
+
+ /**
+ * Set a new text to the last item created.
+ *
+ * @param newText
+ * the new text to set.
+ */
+ protected void setLastItemText(final String newText) {
+ // The list created is a LinkedList<AbstractTreeItem>
+ ((LinkedList<AbstractTreeItem<T>>) this.getItems()).getLast()
+ .setTreeItemText(newText);
+ fireChanged();
+ }
+
+ /**
+ * When a modification append, this method has to be called and the method
+ * {@link #notifyChanged()} is called for the listener of this Tree.
+ */
+ public void fireChanged() {
+ final ExtendedTreeMenu<T> treeMenu = getTreeMenu();
+ if (treeMenu != null) {
+ treeMenu.fireChanged();
+ }
+ }
+
+ /**
+ * Return the class associated with this menu item. When this menu item will
+ * be selected, a new instance of this associated {@link AbstractTreeItem}
+ * will be created.
+ *
+ * @return the associated class.
+ */
+ public abstract Class<? extends AbstractTreeItem<T>> getAssociatedTreeItemClass();
+
+
+ /**
+ * @return the items created by this menu item.
+ */
+ public List<AbstractTreeItem<T>> getItems() {
+ return this.items;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/menu/AbstractTreeSubMenu.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/menu/AbstractTreeSubMenu.java
new file mode 100644
index 00000000000..bb2b03c2dd6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/menu/AbstractTreeSubMenu.java
@@ -0,0 +1,128 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.menu;
+
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.item.AbstractTreeItem;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Menu;
+import org.eclipse.swt.widgets.MenuItem;
+import org.eclipse.swt.widgets.TreeItem;
+
+/**
+ * Class for the creation of a sub-menu in the menu. The sub-menu is not
+ * selectable and own a list of sub-items (declared by the contributor with the
+ * extension point).
+ *
+ * @since 0.3
+ */
+public abstract class AbstractTreeSubMenu<T extends Object> extends
+ AbstractTreeMenu<T> {
+
+ private final List<AbstractTreeMenu<T>> items;
+
+ /**
+ * Constructor.
+ */
+ public AbstractTreeSubMenu() {
+ super();
+ this.items = new LinkedList<AbstractTreeMenu<T>>();
+ }
+
+ /**
+ * Add an item to the list of the sub-menu items.
+ *
+ * @param item
+ * the item to add.
+ */
+ public void addItem(final AbstractTreeMenu<T> item) {
+ this.getItems().add(item);
+ }
+
+ /**
+ * Creation of the sub-menu and all his children.
+ */
+ @Override
+ protected MenuItem createMenuItem(final Menu parent) {
+ MenuItem menuItem = null;
+ for (final AbstractTreeMenu<T> item : this.getItems()) {
+ if (item.isEnabled(getTreeMenu())) {
+ if (menuItem == null) {
+ menuItem = createConcreteMenu(parent);
+ }
+ item.setExtraProperties(getProperties());
+ item.refresh(getTreeMenu(), menuItem.getMenu());
+ }
+ }
+ return menuItem;
+ }
+
+ /**
+ * Create the concrete sub menu into the tree menu.
+ *
+ * @param parent
+ * the menu parent of this sub menu.
+ * @return the new item into the menu.
+ */
+ protected MenuItem createConcreteMenu(final Menu parent) {
+ final MenuItem menuItem = new MenuItem(parent, SWT.CASCADE);
+ menuItem.setText(getMenuName());
+ menuItem.setMenu(new Menu(parent));
+ return menuItem;
+ }
+
+ @Override
+ public boolean isEnabled() {
+ boolean result = false;
+ for (final AbstractTreeMenu<T> item : this.getItems()) {
+ if (item.isEnabled(getTreeMenu())) {
+ result = true;
+ }
+ }
+ return result;
+ }
+
+ @Override
+ public AbstractTreeItem<T> getTreeItemExtended(final TreeItem treeItem) {
+ AbstractTreeItem<T> result = null;
+ for (final AbstractTreeMenu<T> menuItem : this.getItems()) {
+ final AbstractTreeItem<T> itemExtended = menuItem
+ .getTreeItemExtended(treeItem);
+ if (itemExtended != null) {
+ result = itemExtended;
+ break;
+ }
+ }
+ return result;
+ }
+
+ @Override
+ public boolean removeItem(final TreeItem item) {
+ boolean removed = false;
+ for (final AbstractTreeMenu<T> menuItem : this.getItems()) {
+ removed = menuItem.removeItem(item);
+ if (removed) {
+ break;
+ }
+ }
+ return removed;
+ }
+
+ /**
+ * @return the items
+ */
+ public List<AbstractTreeMenu<T>> getItems() {
+ return this.items;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/menu/ExtendedTreeMenu.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/menu/ExtendedTreeMenu.java
new file mode 100644
index 00000000000..36560d76519
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/tree/menu/ExtendedTreeMenu.java
@@ -0,0 +1,341 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.menu;
+
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.tree.menu.ITreeMenu;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.ExtendedTree;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.tree.item.AbstractTreeItem;
+import org.eclipse.swt.events.MenuEvent;
+import org.eclipse.swt.events.MenuListener;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Menu;
+import org.eclipse.swt.widgets.Tree;
+import org.eclipse.swt.widgets.TreeItem;
+
+/**
+ * This class provide the creation of the menu {@link Menu} of the tree (
+ * {@link #createMenu(Control, ExtendedTree)}. The menu add a list of
+ * {@link AbstractTreeItem} and for each an {@link AbstractTreeItem} which will
+ * be instantiate when the menu item is selected.
+ *
+ * @since 0.3
+ */
+public class ExtendedTreeMenu<IDialog> implements ITreeMenu<IDialog> {
+
+ private final Control parent;
+ private final ExtendedTree treeExtended;
+ private final List<AbstractTreeMenu<IDialog>> menuItems;
+ private Menu menu;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of the menu.
+ * @param treeExtended
+ * the tree to which the menu will be linked.
+ * @param menuItems
+ */
+ public ExtendedTreeMenu(final Control parent, final ExtendedTree treeExtended,
+ final List<AbstractTreeMenu<IDialog>> menuItems) {
+ this.parent = parent;
+ this.treeExtended = treeExtended;
+ this.menuItems = menuItems;
+ }
+
+ /**
+ * This method creates the tree menu, add put the listener into the menu.
+ *
+ * @param parent
+ * the parent of the menu.
+ * @param treeExtended
+ * the associated {@link ExtendedTree} of the menu.
+ */
+ public void createMenu() {
+ this.menu = new Menu(this.parent);
+ this.menu.addMenuListener(new MenuListener() {
+
+ public void menuShown(final MenuEvent menuEvent) {
+ onMenuShown();
+ }
+
+ public void menuHidden(final MenuEvent menuEvent) {
+ // Nothing.
+ }
+ });
+ }
+
+ /**
+ * This method is called when the menu is displayed. It calls all the
+ * {@link AbstractTreeMenu#refresh(TreeMenu)} method of each element of the
+ * menu.
+ */
+ public void onMenuShown() {
+ for (final AbstractTreeMenu<IDialog> menuItem : this.getMenuItems()) {
+ menuItem.refresh(this);
+ }
+ }
+
+ /**
+ * Return the list of all the items of this menu.
+ *
+ * @return the list of the {@link AbstractTreeMenu} of this menu.
+ */
+ public List<AbstractTreeMenu<IDialog>> getTreeMenuItems() {
+ return this.getMenuItems();
+ }
+
+ /**
+ * Return the {@link Menu} of this TreeMenu.
+ *
+ * @return the menu.
+ */
+ public Menu getMenu() {
+ return this.menu;
+ }
+
+ /**
+ * Put this <code>properties</code> to each items created.
+ *
+ * @param properties
+ * the list of properties to pass.
+ */
+ public void putExtraProperties(final Map<String, Object> properties) {
+ for (final AbstractTreeMenu<IDialog> menuItem : this.getMenuItems()) {
+ menuItem.setExtraProperties(properties);
+ }
+ }
+
+ /**
+ * @return the current {@link TreeItem} selected on the tree.
+ */
+ public TreeItem getCurrentItemSelected() {
+ TreeItem result = null;
+ final TreeItem[] items = this.treeExtended.getTree().getSelection();
+ if (items.length > 0) {
+ result = this.treeExtended.getTree().getSelection()[0];
+ }
+ return result;
+ }
+
+ /**
+ * @return the {@link AbstractTreeItem} selected on the tree. Can be null.
+ */
+ public AbstractTreeItem<IDialog> getTreeItemExtended(final TreeItem treeItem) {
+ AbstractTreeItem<IDialog> result = null;
+ for (final AbstractTreeMenu<IDialog> menuItem : this.getMenuItems()) {
+ final AbstractTreeItem<IDialog> itemExtended = menuItem
+ .getTreeItemExtended(treeItem);
+ if (itemExtended != null) {
+ result = itemExtended;
+ break;
+ }
+ }
+ return result;
+ }
+
+ /**
+ * @return the {@link AbstractTreeMenu} selected on the tree. Can be null.
+ */
+ public AbstractTreeMenu<IDialog> getTreeMenu(final TreeItem treeItem) {
+ AbstractTreeMenu<IDialog> result = null;
+
+ for (final AbstractTreeMenu<IDialog> menuItem : this.getMenuItems()) {
+ final AbstractTreeItem<IDialog> itemExtended = menuItem
+ .getTreeItemExtended(treeItem);
+ if (itemExtended != null) {
+ result = menuItem;
+ break;
+ }
+ }
+ return result;
+ }
+
+ /**
+ * Remove the current item selected of the tree.
+ */
+ public void removeCurrentItemSelected() {
+ final AbstractTreeMenu<IDialog> treeMenu = getTreeMenu(getCurrentItemSelected());
+ if (treeMenu != null) {
+ treeMenu.removeItem(getCurrentItemSelected());
+ }
+ }
+
+ /**
+ * @return the {@link Tree}.
+ */
+ public Tree getTree() {
+ return this.treeExtended.getTree();
+ }
+
+ /**
+ * This method call the method
+ * {@link AbstractTreeItem#onItemMouseSelection()} of the current selection.
+ */
+ public void onMouseSelection() {
+ final AbstractTreeItem<IDialog> treeMenu = getTreeItemExtended(getCurrentItemSelected());
+ if (treeMenu != null) {
+ treeMenu.onItemMouseSelection();
+ fireChanged();
+ }
+ }
+
+ /**
+ * When a modification append, this method has to be called and the method
+ * {@link #notifyChanged()} is called for the listener of this Tree.
+ */
+ public void fireChanged() {
+ this.treeExtended.fireChanged();
+ }
+
+ /**
+ * @return the all the items of the menu.
+ */
+ private List<AbstractTreeMenu<IDialog>> getMenuItems() {
+ return this.menuItems;
+ }
+
+ /**
+ * Select the item into the menu (if the item exist).
+ *
+ * @return can return a {@link IDialog}. Can be null.
+ */
+ public IDialog selectMenuItem(
+ final Class<? extends AbstractTreeMenuItem<IDialog>> menuItemType) {
+ IDialog result = null;
+ final AbstractTreeMenu<IDialog> treeMenu = findMenuItem(menuItemType);
+ if (treeMenu != null) {
+ result = treeMenu.onMenuItemSelection();
+ }
+ return result;
+ }
+
+ /**
+ * Return (if exist) the {@link AbstractTreeMenu} with the name
+ * <code>menuItemName</code> into the items of the tree menu.
+ *
+ * @param menuItemType
+ * the name of the element to find.
+ * @return the item menu with the name in parameter (can be null).
+ */
+ private AbstractTreeMenuItem<IDialog> findMenuItem(
+ final Class<? extends AbstractTreeMenuItem<IDialog>> menuItemType) {
+ AbstractTreeMenuItem<IDialog> result = null;
+ for (final AbstractTreeMenuItem<IDialog> item : getAllTreeMenuItems()) {
+ if (item.getClass().isInstance(menuItemType)) {
+ result = item;
+ }
+ }
+ return result;
+ }
+
+ private List<AbstractTreeMenuItem<IDialog>> getAllTreeMenuItems() {
+ final List<AbstractTreeMenuItem<IDialog>> result = new LinkedList<AbstractTreeMenuItem<IDialog>>();
+ for (final AbstractTreeMenu<IDialog> menuItem : getMenuItems()) {
+ if (menuItem instanceof AbstractTreeSubMenu) {
+ result.addAll(getAllTreeMenuItems((AbstractTreeSubMenu<IDialog>) menuItem));
+ } else {
+ result.add((AbstractTreeMenuItem<IDialog>) menuItem);
+ }
+ }
+ return result;
+ }
+
+ private List<AbstractTreeMenuItem<IDialog>> getAllTreeMenuItems(
+ final AbstractTreeSubMenu<IDialog> subMenu) {
+ final List<AbstractTreeMenuItem<IDialog>> result = new LinkedList<AbstractTreeMenuItem<IDialog>>();
+ for (final AbstractTreeMenu<IDialog> menuItem : subMenu.getItems()) {
+ if (menuItem instanceof AbstractTreeSubMenu) {
+ result.addAll(getAllTreeMenuItems((AbstractTreeSubMenu<IDialog>) menuItem));
+ } else {
+ result.add((AbstractTreeMenuItem<IDialog>) menuItem);
+ }
+ }
+ return result;
+ }
+
+ /**
+ * @return the treeMenuItem into the menu with is an instance of the type in
+ * parameter.
+ */
+ public AbstractTreeMenu<IDialog> getTreeMenuItem(final Class<?> treeMenuType) {
+ AbstractTreeMenu<IDialog> result = null;
+ final List<AbstractTreeMenu<IDialog>> treeMenuItems = getTreeMenuItems();
+ for (final AbstractTreeMenu<IDialog> item : treeMenuItems) {
+ result = getTreeMenuItem(item, treeMenuType);
+ if (result != null) {
+ break;
+ }
+ }
+ return result;
+ }
+
+ private AbstractTreeMenu<IDialog> getTreeMenuItem(
+ final AbstractTreeSubMenu<IDialog> item,
+ final Class<?> treeMenuType) {
+ AbstractTreeMenu<IDialog> result = null;
+ for (final AbstractTreeMenu<IDialog> subItem : item.getItems()) {
+ result = getTreeMenuItem(subItem, treeMenuType);
+ if (result != null) {
+ break;
+ }
+ }
+ return result;
+ }
+
+ private AbstractTreeMenu<IDialog> getTreeMenuItem(
+ final AbstractTreeMenu<IDialog> item,
+ final Class<?> treeMenuType) {
+ AbstractTreeMenu<IDialog> result = null;
+ if (treeMenuType.isInstance(item)) {
+ result = item;
+ } else if (item instanceof AbstractTreeSubMenu) {
+ result = getTreeMenuItem((AbstractTreeSubMenu<IDialog>) item,
+ treeMenuType);
+ }
+ return result;
+ }
+
+ /**
+ * get all the items of the tree with the name <code>treeItemName</code>
+ *
+ * @param treeItemName
+ * the name of the item to select.
+ * @return the list of all the tree item with the name in parameter.
+ */
+ public List<AbstractTreeItem<IDialog>> getTreeItems(
+ final String treeItemName) {
+ final List<AbstractTreeItem<IDialog>> result = new LinkedList<AbstractTreeItem<IDialog>>();
+ for (final AbstractTreeMenuItem<IDialog> menuItem : getAllTreeMenuItems()) {
+ for (final AbstractTreeItem<IDialog> treeItem : menuItem.getItems()) {
+ if (treeItemName.equals(treeItem.getItemText())) {
+ result.add(treeItem);
+ }
+ }
+ }
+ return result;
+ }
+
+ /**
+ * Select a item into the tree.
+ *
+ * @param treeItem
+ * the {@link AbstractTreeItem} to select
+ */
+ public void selectTreeItem(final AbstractTreeItem<IDialog> treeItem) {
+ this.treeExtended.getTree().setSelection(treeItem.getTreeItem());
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/AbstractWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/AbstractWidget.java
new file mode 100644
index 00000000000..78680f27444
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/AbstractWidget.java
@@ -0,0 +1,155 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget;
+
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractCommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractGetOrCreateFilteredElementCommandWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.AbstractGetPropertyWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.bounds.AbstractGetBoundsWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.IAbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.widget.metaclass.FilteredElementSelectionWidget;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * An abstract class providing the creation of a specific action widget.</p>
+ *
+ * The listener provided by the {@link #getWidgetListener()} is applied on the
+ * widget and called when the mouse move into the dialog.
+ *
+ * @see AbstractCommandWidget
+ * @see AbstractGetOrCreateFilteredElementCommandWidget
+ * @see FilteredElementSelectionWidget
+ * @see SelectSubTypingTypeWidget
+ * @see AbstractGetBoundsWidget
+ * @see AbstractGetPropertyWidget
+ * @see GetQueryWidgetComposite
+ * @see SelectQueryTypeWidget
+ * @since 0.3
+ */
+public abstract class AbstractWidget extends Composite implements IAbstractWidget {
+
+ protected static final int VERTICAL_SPACING = 2;
+ protected static final int WIDTH_HINT = 110;
+ private final Composite widgetParent;
+ private final List<IAbstractWidget> subWidgets;
+ private final List<IAbstractWidget> listeners;
+
+ /**
+ * The constructor.
+ *
+ * @param parent
+ * the parent of the widget.
+ * @param editingDomain
+ * the editing domain.
+ */
+ public AbstractWidget(final Composite parent) {
+ super(parent, SWT.NONE);
+ this.widgetParent = parent;
+ this.subWidgets = new LinkedList<IAbstractWidget>();
+ this.setLayout(new GridLayout());
+ this.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ this.listeners = new LinkedList<IAbstractWidget>();
+ }
+
+ /**
+ * Add the widget to the list of sub widgets.
+ *
+ * @param widget
+ * the widget to add.
+ */
+ protected void addSubWidget(final IAbstractWidget widget) {
+ this.subWidgets.add(widget);
+ }
+
+ /**
+ * This method add all the sub widgets of this widget.
+ * <p/>
+ * Use the method {@link #addSubWidget(AbstractCommandWidget)}
+ */
+ protected abstract void addSubWidgets();
+
+ /**
+ * @return the widget parent.
+ */
+ protected Composite getWidgetParent() {
+ return this.widgetParent;
+ }
+
+ /**
+ * Return the string containing the error for this widget.
+ *
+ * @return null if there is no error. The string containing the error if
+ * there is an error.
+ */
+ public abstract String getError();
+
+ /**
+ * Create the content of the widget (call {@link #addSubWidgets()}) and
+ * sub-widgets.
+ */
+ public void createWidgetContent() {
+ addSubWidgets();
+ for (final IAbstractWidget widget : this.subWidgets) {
+ widget.createWidgetContent();
+ widget.addListener(this);
+ }
+ }
+
+ /**
+ * Add the abstractWidget in parameter to the list of listeners of the
+ * widget.
+ *
+ * @param abstractWidget
+ * the abstractWidget to listen.
+ */
+ public void addListener(final AbstractWidget abstractWidget) {
+ // This method is public because PMD doesn't want it to be private...
+ // This is due to the fact that this method is used on the method
+ // 'createWidgetContent' but it is called on the same object type but
+ // not on the same instance. So, programatly, put the method private is
+ // correct because the object type is the same that the owner but not on
+ // the same instance.
+ this.listeners.add(abstractWidget);
+ }
+
+ /**
+ * When a modification append, this method is called and the method
+ * {@link #notifyChanged()} is called for each listeners of this widget.
+ */
+ protected void fireChanged() {
+ for (final IAbstractWidget listener : this.listeners) {
+ listener.notifyChanged();
+ }
+ }
+
+ /**
+ * When a change in a sub-widget append, this method is execute. If no
+ * action has to be done when a modification append, this method has to be
+ * void.
+ */
+ public abstract void notifyChanged();
+
+ /**
+ * @return the subWidgets
+ */
+ public List<IAbstractWidget> getSubWidgets() {
+ return this.subWidgets;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/command/AbstractCommandWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/command/AbstractCommandWidget.java
new file mode 100644
index 00000000000..85d0621e515
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/command/AbstractCommandWidget.java
@@ -0,0 +1,86 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command;
+
+import org.eclipse.core.commands.Command;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.AbstractDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.AbstractMainDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.IAbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.WidgetProperties;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This abstract class provides all the necessary methods for the creation of a
+ * widget. The widget must return a {@link Command} (with the method
+ * {@link #getCommand()}) that will be executed when the "ok" button of the
+ * dialog will be pressed.</p>
+ *
+ * The widget have to get all the necessary properties for the creation of the
+ * element (with the command). To get all the properties, the widget have to add
+ * all the subwidgets he needs for the edition of the command. Each subwidget
+ * {@link AbstractWidget} will edit a specific property of the
+ * {@link WidgetProperties}.
+ *
+ * @since 0.3
+ */
+public abstract class AbstractCommandWidget extends AbstractWidget implements ICommandWidget {
+
+ /**
+ * Constructor. Initialize the {@link IFacetCommandFactory} for the creation
+ * of the command.
+ *
+ * @param parent
+ * the parent {@link AbstractDialog} of this widget.
+ * @param editingDomain
+ * the current editing domain.
+ * @param properties
+ * The {@link WidgetProperties} provided by the
+ * {@link AbstractMainDialog} that the widget had to edit.
+ */
+ public AbstractCommandWidget(final Composite parent) {
+ super(parent);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.ICommandWidget#getCommand()
+ */
+ public abstract Object getCommand();
+
+ @Override
+ public String getError() {
+ String result = null;
+ for (final IAbstractWidget widgets : this.getSubWidgets()) {
+ final String error = widgets.getError();
+ if (error != null) {
+ result = error;
+ break;
+ }
+ }
+ return result;
+ }
+
+
+ public abstract void onDialogValidation();
+
+ public <A> A adapt(final Class<A> adapterType) {
+ A result = null;
+ if (adapterType.isInstance(this)) {
+ @SuppressWarnings("unchecked")
+ final A adapted = (A) this;
+ result = adapted;
+ }
+ return result;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/command/AbstractGetOrCreateFilteredElementCommandWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/command/AbstractGetOrCreateFilteredElementCommandWidget.java
new file mode 100644
index 00000000000..c7a147ee050
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/command/AbstractGetOrCreateFilteredElementCommandWidget.java
@@ -0,0 +1,147 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command;
+
+import java.util.Map;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.AbstractDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.SynchronizedAbstractDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.CreateElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.widget.metaclass.FilteredElementSelectionWidget;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This abstract class allows the user to select or create an element (the
+ * concretes classes extending this abstract class will specify the type for
+ * this elements).</p>
+ *
+ * The widget contains two composite:
+ * <nl>
+ * <li> {@link FilteredElementSelectionWidget} : display a filtered list with the
+ * elements returned by {@link #getElements()}</li>
+ * <li> {@link CreateElementWidget} : create a "new..." button, and display the
+ * dialog returned by {@link #createDialog()} when clicked</li>
+ * </nl>
+ *
+ * @see GetOrCreateFacetSetWidget
+ * @see GetOrCreateFacetWidget
+ * @see GetOrCreateOperationWidget
+ * @see FilteredElementSelectionWidget
+ * @see CreateElementWidget
+ * @since 0.3
+ */
+public abstract class AbstractGetOrCreateFilteredElementCommandWidget<T extends Object, W extends Object>
+ extends AbstractCommandWidget implements IGetOrCreateFilteredElementCommmandWidget<T, W> {
+
+ private static final int COLUMNS_NUMBER = 2;
+ private FilteredElementSelectionWidget elementSelection;
+ private CreateElementWidget<W> createElementW;
+
+ /**
+ * Constructor. Initialize a new layout containing {@value #COLUMN_NUMBER}
+ * columns.
+ *
+ * @param parent
+ * the parent of this widget.
+ * @param editingDomain
+ * the current editing domain.
+ * @param properties
+ * the properties.
+ */
+ protected AbstractGetOrCreateFilteredElementCommandWidget(
+ final Composite parent) {
+ super(parent);
+ this.setLayout(new GridLayout(COLUMNS_NUMBER, false));
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ final Object[] array = getElements().keySet().toArray();
+ this.elementSelection = new FilteredElementSelectionWidget(this, array);
+ addSubWidget(this.elementSelection);
+ final IDialog<W> dialog = createDialog();
+ if (dialog != null) {
+ this.createElementW = new CreateElementWidget<W>(this, dialog);
+ addSubWidget(this.createElementW);
+ }
+ }
+
+ /**
+ * This method must return the all the elements that the user can choose
+ * (with the name to display has the key to the map). The method
+ * {@link #getSuperFacetSet(Object)} can be useful.
+ *
+ * @return a map of the elements to display.
+ */
+ protected abstract Map<String, T> getElements();
+
+ /**
+ * @return the dialog that the "New..." button of this widget will open.
+ * Null if you want no "New..." button.
+ *
+ * @see AbstractDialog
+ */
+ protected abstract IDialog<W> createDialog();
+
+ /**
+ * Update the filtered list. The list will be updated with the elements
+ * returned by {@link #getElements()}.
+ */
+ public void updateFilteredList() {
+ this.elementSelection.setElements(getElements().keySet().toArray());
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget#getElementSelected()
+ */
+ public T getElementSelected() {
+ T result = null;
+ final Object selectedElement = this.elementSelection
+ .getFirstSelectedElement();
+ if (selectedElement != null) {
+ final String elementName = selectedElement.toString();
+ result = getElements().get(elementName);
+ }
+ return result;
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget#selectElement(T)
+ */
+ public void selectElement(final T element) {
+ Object[] selectionsParam = new Object[1];
+ for (String key : getElements().keySet()) {
+ if (getElements().get(key) == element) {
+ selectionsParam[0] = key;
+ this.elementSelection.getFilteredList().setSelection(
+ selectionsParam);
+ break;
+ }
+ }
+ }
+
+ public void selectElementByName(final String name) {
+ final T element = this.getElements().get(name);
+ selectElement(element);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget#pressNewButton()
+ */
+ public IDialog<W> pressNewButton() {
+ return new SynchronizedAbstractDialog<W>(
+ this.createElementW.pressNewButton(), this.getDisplay());
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/command/ICommandWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/command/ICommandWidget.java
new file mode 100644
index 00000000000..18cd3f2c235
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/command/ICommandWidget.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command;
+
+import org.eclipse.core.commands.Command;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.IAbstractWidget;
+
+/**
+ * @since 0.3
+ */
+public interface ICommandWidget extends IAbstractWidget {
+
+ /**
+ * Return the command for the widget specific action. The factory can be
+ * used for the creation of the {@link Command}.
+ *
+ * @see IFacetCommandFactory
+ *
+ * @return the command.
+ */
+ Object getCommand();
+
+ /**
+ * This method is execute when the "OK" button of the {@link #parent} is
+ * pressed.
+ */
+ void onDialogValidation();
+
+ <A> A adapt(Class<A> adapterType);
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/command/IGetOrCreateFilteredElementCommmandWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/command/IGetOrCreateFilteredElementCommmandWidget.java
new file mode 100644
index 00000000000..3467e9820c0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/command/IGetOrCreateFilteredElementCommmandWidget.java
@@ -0,0 +1,33 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+
+/**
+ * @since 0.3
+ */
+public interface IGetOrCreateFilteredElementCommmandWidget<T extends Object, W extends Object>
+ extends ICommandWidget {
+
+ /**
+ * @return the selected element in the filtredList.
+ */
+ T getElementSelected();
+
+ void selectElement(T element);
+
+ void selectElementByName(String name);
+
+ IDialog<W> pressNewButton();
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/CreateElementWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/CreateElementWidget.java
new file mode 100644
index 00000000000..2c3480285b2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/CreateElementWidget.java
@@ -0,0 +1,132 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractGetOrCreateFilteredElementCommandWidget;
+import org.eclipse.jface.viewers.CellEditor.LayoutData;
+import org.eclipse.jface.window.Window;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+
+/**
+ * WidgetComposite for the creation of the "New..." button. This widget will
+ * open the dialog passed in the constructor.
+ *
+ * @since 0.3
+ */
+public class CreateElementWidget<W extends Object> extends AbstractWidget {
+
+ private final IDialog<W> dialog;
+ private final AbstractGetOrCreateFilteredElementCommandWidget<?, ?> typedParent;
+
+ /**
+ * Constructor. Initialize the {@link LayoutData} with the
+ * {@link AbstractWidget} attribute 'fillGridData'.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param editingDomain
+ * the current editing domain.
+ * @param dialog
+ * the dialog displayed when the "new.." is pressed.
+ */
+ public CreateElementWidget(
+ final AbstractGetOrCreateFilteredElementCommandWidget<?, ?> parent,
+ final IDialog<W> dialog) {
+ super(parent);
+ // Set the new button at the TOP.
+ setLayoutData(new GridData(SWT.CENTER, SWT.BEGINNING, true, false));
+ this.typedParent = parent;
+ this.dialog = dialog;
+ }
+
+ /**
+ * @return the dialog
+ */
+ public IDialog<W> getDialog() {
+ return this.dialog;
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ createButton();
+ }
+
+ /**
+ * Creation of the 'new...' button. When pressed, the {@link #dialog} will
+ * be displayed.
+ */
+ private void createButton() {
+ final Button button = new Button(this, SWT.NONE);
+ button.setText(Messages.New);
+ button.addListener(SWT.Selection, new Listener() {
+
+ public void handleEvent(final Event event) {
+ onWidgetSelected();
+ }
+
+ });
+ }
+
+ public IDialog<W> onWidgetSelected() {
+ final IDialog<W> newDialog = getDialog();
+ Display.getDefault().asyncExec(new Runnable() {
+ public void run() {
+ final int result = newDialog.open();
+ if (result == Window.OK) {
+ onCommited();
+ } else {
+ onCanceled();
+ }
+ }
+ });
+ return newDialog;
+ }
+
+ /**
+ * Action to do when the dialog opened with the button "..." is closed with
+ * the "Ok" button.
+ */
+ protected void onCommited() {
+ this.typedParent.updateFilteredList();
+ }
+
+ /**
+ * Action to do when the dialog opened with the button "..." is closed with
+ * the "Cancel" button.
+ */
+ protected void onCanceled() {
+ // Nothing
+ }
+
+ @Override
+ public String getError() {
+ return null;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+
+ public IDialog<W> pressNewButton() {
+ return onWidgetSelected();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/getorcreate/AbstractGetOrCreateElementWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/getorcreate/AbstractGetOrCreateElementWidget.java
new file mode 100644
index 00000000000..808857ad998
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/getorcreate/AbstractGetOrCreateElementWidget.java
@@ -0,0 +1,168 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name.AbstractGetElementNameWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.getorcreate.IAbstractGetOrCreateElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.UIUtils;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Text;
+
+/**
+ * Abstract class for the creation of a composite that allows the selection or
+ * creation of an element. Classes implementing this class must overrides
+ * {@link #getSubWidgets()} method. This class prepare the composite for
+ * {@link #COLUMN_NUMBER} subComposites and provide the method
+ * {@link #createTextField(boolean)} for the creation of a textField area.
+ *
+ * @see AbstractGetOrCreateElementWithButtonWidget
+ * @see AbstractGetElementNameWidget
+ * @since 0.3
+ */
+public abstract class AbstractGetOrCreateElementWidget<T extends Object>
+ extends AbstractWidget
+ implements IAbstractGetOrCreateElementWidget {
+
+ /**
+ * The number of columns of this composite.
+ */
+ public static final int COLUMN_NUMBER = 3;
+ private PropertyElement2<T> propertyElement;
+ private Text text;
+
+ /**
+ * Constructor. Initialize the composite with a layout of
+ * {@value #COLUMN_NUMBER} columns.
+ *
+ * @param parent
+ * the parent containing this composite.
+ * @param style
+ * the style of the composite.
+ * @param editingDomain
+ * the current editing domain.
+ * @param propertyElement
+ * the property element that this composite will edit.
+ */
+ protected AbstractGetOrCreateElementWidget(final Composite parent,
+ final PropertyElement2<T> propertyElement) {
+ super(parent);
+ this.propertyElement = propertyElement;
+ this.setLayout(new GridLayout(COLUMN_NUMBER, false));
+ }
+
+ /**
+ * @return the property element.
+ */
+ public final PropertyElement2<T> getPropertyElement() {
+ return this.propertyElement;
+ }
+
+ public Text getTextField() {
+ return this.text;
+ }
+
+ /**
+ * Create the text field in the composite.</p> If the property
+ * {@link #propertyElement} has a value, the field is not editable.
+ *
+ * @param enabled
+ * set if the field must be editable or not.
+ */
+ protected void createTextField(final boolean enabled) {
+ ModifyListener modifyListener = null;
+ if (enabled) {
+ modifyListener = new ModifyListener() {
+
+ public void modifyText(final ModifyEvent event) {
+ onTextModfified();
+ }
+ };
+ }
+ String initialText = ""; //$NON-NLS-1$
+ if ((this.propertyElement.getValue() != null)
+ && (getTextFieldInitialText() != null)) {
+ initialText = getTextFieldInitialText();
+ }
+ this.text = UIUtils.createTextField(this, initialText, enabled,
+ modifyListener);
+ fireChanged();
+ }
+
+ protected void onTextModfified() {
+ this.propertyElement.setValue(this.text.getText().toString());
+ onFieldEdited();
+ }
+
+ /**
+ * Execute an action when the text field is edited. If not override, nothing
+ * appends. Can be override if needed.
+ */
+ protected void onFieldEdited() {
+ fireChanged();
+ }
+
+ /**
+ * @return the initial text of the textField of this composite. Null or void
+ * if no text has to be displayed.
+ */
+ protected String getTextFieldInitialText() {
+ String result = ""; //$NON-NLS-1$
+ final Object value = this.getPropertyElement().getValue();
+ if (value != null) {
+ result = value.toString();
+ }
+ return result;
+ }
+
+ @Override
+ public String getError() {
+ String error = null;
+ final Object value = this.propertyElement.getValue();
+ if (value == null && !this.propertyElement.isCanBeNull()) {
+ error = getErrorMessage();
+ }
+ return error;
+ }
+
+ /**
+ * @return the error message if the {@link #propertyElement} is not edited.
+ * Return 'null' if no error can be returned.
+ */
+ protected abstract String getErrorMessage();
+
+ /**
+ * @param propertyElement
+ * the propertyElement to set
+ */
+ public void setPropertyElement(final PropertyElement2<T> propertyElement) {
+ this.propertyElement = propertyElement;
+ }
+
+ public T getElement() {
+ return getPropertyElement().getValue2();
+ }
+
+ public String getText() {
+ return this.text.getText();
+ }
+
+ public void setText(final String text) {
+ this.text.setText(text);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/getorcreate/AbstractGetOrCreateElementWithButtonWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/getorcreate/AbstractGetOrCreateElementWithButtonWidget.java
new file mode 100644
index 00000000000..05e9d8a2295
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/getorcreate/AbstractGetOrCreateElementWithButtonWidget.java
@@ -0,0 +1,120 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.getorcreate.IAbstractGetOrCreateElementWithButtonWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.UIUtils;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Provide all the necessary for the creation of a composite that have: </p>
+ *
+ * Label : [ textField ][...] </p>
+ *
+ * The button will execute {@link #openDialog()} method when pressed. </p>
+ *
+ * The {@link #getLabel()} method have to be override and provide the label of
+ * the 'Label'.
+ *
+ * @see GetOrCreateFacetSetWidget
+ * @see GetOrCreateFacetWidget
+ * @see GetOrCreateOperationWidget
+ * @since 0.3
+ */
+public abstract class AbstractGetOrCreateElementWithButtonWidget<T extends Object, D extends Object>
+ extends AbstractGetOrCreateElementWidget<T> implements
+ IAbstractGetOrCreateElementWithButtonWidget<D> {
+
+ private Button button;
+ private boolean buttonEnabled;
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param editingDomain
+ * the current editing domain.
+ * @param propertyElement
+ * the property element that be edited with this composite.
+ */
+ protected AbstractGetOrCreateElementWithButtonWidget(
+ final Composite parent,
+ final PropertyElement2<T> propertyElement) {
+ super(parent, propertyElement);
+ this.setPropertyElement(propertyElement);
+ this.setLayout(new GridLayout(COLUMN_NUMBER, false));
+ this.buttonEnabled = propertyElement.isChangeable();
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ if ((getLabel() != null) && !"".equals(getLabel())) { //$NON-NLS-1$
+ UIUtils.createLabel(this, getLabel());
+ }
+ createTextField(false);
+ createButton();
+ }
+
+ public void setButtonEnabled(final boolean buttonEnabled) {
+ this.buttonEnabled = buttonEnabled;
+ this.button.setEnabled(this.buttonEnabled);
+ }
+
+ /**
+ * Create a button [...]. When pressed, the {@link #openDialog()} method is
+ * called.
+ */
+ private void createButton() {
+ final SelectionListener selectionListener = new SelectionListener() {
+
+ public void widgetSelected(final SelectionEvent selectionEvent) {
+ onButtonPressed();
+ }
+
+ public void widgetDefaultSelected(
+ final SelectionEvent selectionEvent) {
+ // Nothing.
+ }
+ };
+ this.button = UIUtils.createButton(this, "...", this.buttonEnabled, //$NON-NLS-1$
+ selectionListener);
+ }
+
+ /**
+ * The method will be called when the button "..." is pressed.
+ */
+ public abstract D onButtonPressed();
+
+ /**
+ * @return the label for this composite. If no label has to be displayed,
+ * null or void must be returned.
+ */
+ protected abstract String getLabel();
+
+ /**
+ * @return the button
+ */
+ public Button getButton() {
+ return this.button;
+ }
+
+ public D pressButton() {
+ return onButtonPressed();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/getorcreate/AbstractGetOrCreateElementWithDialogButtonWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/getorcreate/AbstractGetOrCreateElementWithDialogButtonWidget.java
new file mode 100644
index 00000000000..ebb2d31f50a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/getorcreate/AbstractGetOrCreateElementWithDialogButtonWidget.java
@@ -0,0 +1,89 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate;
+
+import org.eclipse.emf.ecore.ENamedElement;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IWithResultDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.dialog.SynchronizedAbstractDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Text;
+
+/**
+ * Has the same goal than {@link AbstractGetOrCreateElementWithButtonWidget} but
+ * especially for dialogs.
+ *
+ * @since 0.3
+ */
+public abstract class AbstractGetOrCreateElementWithDialogButtonWidget<T extends ENamedElement, W extends Object>
+ extends AbstractGetOrCreateElementWithButtonWidget<T, IDialog<W>> {
+
+ protected AbstractGetOrCreateElementWithDialogButtonWidget(
+ final Composite parent,
+ final PropertyElement2<T> propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ public IDialog<W> onButtonPressed() {
+ final IWithResultDialogCallback<T> callback = new IWithResultDialogCallback<T>() {
+ public void commited(final T result) {
+ onCommited(result);
+ }
+ public void canceled(final T result) {
+ onCanceled();
+ }
+ };
+ final IDialog<W> dialog = getCreationDialog(callback);
+ Display.getDefault().asyncExec(new Runnable() {
+ public void run() {
+ dialog.open();
+ }
+ });
+ return createSynchronizedDialog(dialog);
+ }
+
+ protected final void onCommited(final T result) {
+ this.getPropertyElement().setValue2(result);
+ final String name = result.getName();
+ final Text textField = this.getTextField();
+ textField.setText(name);
+ }
+
+ /**
+ * Action to do when the dialog opened with the button "..." is closed with
+ * the "Cancel" button.
+ */
+ protected abstract void onCanceled();
+
+ /**
+ * Create and return the dialog that will be display when the [...] button
+ * is pressed.
+ *
+ * @return the dialog.
+ */
+ protected abstract IDialog<W> getCreationDialog(
+ final IWithResultDialogCallback<T> callback);
+
+ /**
+ * Create the synchronized dialog for the selection of the type.
+ *
+ * @return the dialog.
+ */
+ private IDialog<W> createSynchronizedDialog(final IDialog<W> dialog) {
+ return new SynchronizedAbstractDialog<W>(dialog, this.getDisplay());
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/getorcreate/AbstractGetOrCreateElementWithWizardButtonWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/getorcreate/AbstractGetOrCreateElementWithWizardButtonWidget.java
new file mode 100644
index 00000000000..8f605c793b2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/getorcreate/AbstractGetOrCreateElementWithWizardButtonWidget.java
@@ -0,0 +1,82 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.wizard.IExtendedWizard;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.jface.window.Window;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Has the same goal than {@link AbstractGetOrCreateElementWithButtonWidget} but
+ * especially for dialogs.
+ *
+ * @since 0.3
+ */
+public abstract class AbstractGetOrCreateElementWithWizardButtonWidget<T extends Object, W extends IExtendedWizard>
+ extends AbstractGetOrCreateElementWithButtonWidget<T, W> {
+
+ protected AbstractGetOrCreateElementWithWizardButtonWidget(
+ final Composite parent,
+ final PropertyElement2<T> propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ public W onButtonPressed() {
+ final W wizard = createIWizard();
+ Display.getDefault().asyncExec(new Runnable() {
+ public void run() {
+ final int openResult = wizard.open();
+ // TODO The wizard closing events must be cached by the use of
+ // call back pattern. The use of this pattern must be done in
+ // the subclass of this class, like in
+ // org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWithWizardButtonWidget<ETypedElement>
+ // The following if statement and the methods 'onWizardCommited'
+ // 'onWizardCanceled' must be removed (replaced by the use of
+ // call backs)
+ if (openResult == Window.OK) {
+ onWizardCommited(wizard);
+ } else {
+ onWizardCanceled();
+ }
+ }
+ });
+ return createSynchronizedWizard(wizard);
+ }
+
+ /**
+ * Create the wizard for the selection of the type.
+ *
+ * @return the wizard.
+ */
+ protected abstract W createIWizard();
+
+ /**
+ * Action to do when the dialog opened with the button "..." is closed with
+ * the "Ok" button.
+ *
+ * @param selectETypeDialog
+ */
+ protected abstract void onWizardCommited(W wizard);
+
+ /**
+ * Action to do when the dialog opened with the button "..." is closed with
+ * the "Cancel" button.
+ */
+ protected abstract void onWizardCanceled();
+
+ protected abstract W createSynchronizedWizard(final W wizard);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/properties/AbstractGetPropertyWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/properties/AbstractGetPropertyWidget.java
new file mode 100644
index 00000000000..9bc6fd62f68
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/properties/AbstractGetPropertyWidget.java
@@ -0,0 +1,159 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.UIUtils;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+
+/**
+ * This Abstract class provides all the elements to create:</p>
+ *
+ * Label : [x]</p>
+ *
+ * The label is set by {@link #getLabel()}. The checkbox is initialized with the
+ * {@link PropertyElement} attributes
+ * <nl>
+ * <li>{@link PropertyElement#getValue()} (the value of the property must be a
+ * boolean)</li>
+ * <li>{@link PropertyElement#isChangeable()}</li>
+ * </nl>
+ *
+ * The {@link #getError()} method return 'null' because no error can be returned
+ * (the value of the checkbox is 'true' or 'false').
+ *
+ * @see GetChangeableWidget
+ * @see GetOrderedWidget
+ * @see GetDerivedWidget
+ * @see GetTransientWidget
+ * @see GetUniqueWidget
+ * @see GetVolatileWidget
+ * @since 0.3
+ */
+public abstract class AbstractGetPropertyWidget extends AbstractWidget {
+
+ private static final int COLUMN_NUMBER = 2;
+ private static final int WIDTH_HINT_DEF = 65;
+ private int labelWidthHint;
+ private final PropertyElement propertyElement;
+ private Button propertyButton;
+
+ /**
+ * Constructor. Initialize the composite with a layout of
+ * {@value #COLUMN_NUMBER} columns and the layoutData with the
+ * 'fillGridData' attribute of {@link AbstractWidget}.
+ *
+ * @param parent
+ * the parent containing this composite.
+ * @param style
+ * the style of the composite.
+ * @param editingDomain
+ * the current editing domain.
+ * @param propertyElement
+ * the property element that this composite will edit.
+ *
+ * @see AbstractWidget
+ */
+ protected AbstractGetPropertyWidget(final Composite parent,
+ final PropertyElement propertyElement) {
+ super(parent);
+ this.propertyElement = propertyElement;
+ this.labelWidthHint = WIDTH_HINT_DEF;
+ this.setLayout(new GridLayout(COLUMN_NUMBER, false));
+ this.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ if ((getLabel() != null) && !"".equals(getLabel())) { //$NON-NLS-1$
+ final Label label = UIUtils.createLabel(this, getLabel());
+ final GridData layoutData = new GridData(SWT.FILL);
+ layoutData.widthHint = this.labelWidthHint;
+ label.setLayoutData(layoutData);
+ label.setEnabled(this.propertyElement.isChangeable());
+ }
+ createCheckbox();
+ }
+
+ public void setPropertyEnabled(final boolean enabled) {
+ this.propertyButton.setSelection(enabled);
+ }
+
+ /**
+ * Create a checkbox initialized with the {@link PropertyElement} attributes
+ * <nl>
+ * <li>Default value : {@link PropertyElement#getValue()} (the value of the
+ * property must be a boolean)</li>
+ * <li>Enabled : {@link PropertyElement#isChangeable()}</li>
+ * </nl>
+ */
+ private void createCheckbox() {
+ if (this.propertyElement.getValue() == null) {
+ this.propertyElement.setValue(Boolean.TRUE);
+ }
+ SelectionListener selectionListener = null;
+ if (this.propertyElement.isChangeable()) {
+ selectionListener = new SelectionListener() {
+
+ public void widgetSelected(final SelectionEvent event) {
+ onSelection((Button) event.getSource());
+ }
+
+ public void widgetDefaultSelected(final SelectionEvent event) {
+ // Nothing.
+ }
+ };
+ }
+ this.propertyButton = UIUtils.createCheckbox(this,
+ this.propertyElement.isChangeable(),
+ ((Boolean) this.propertyElement.getValue()).booleanValue(),
+ selectionListener);
+ }
+
+ /**
+ * @param source
+ */
+ protected void onSelection(final Button source) {
+ this.propertyElement.setValue(Boolean.valueOf(source.getSelection()));
+ }
+
+ /**
+ * @return the label of the label field. If no label has to be displayed,
+ * null or void must be returned.
+ */
+ protected abstract String getLabel();
+
+ /**
+ * Method to change the distance between the label and the checkbox.
+ *
+ * @param lABEL_WIDTH_HINT
+ * the lABEL_WIDTH_HINT to set
+ */
+ public void setLabelWidthHint(final int labelWidthHint) {
+ this.labelWidthHint = labelWidthHint;
+ }
+
+ /**
+ * @return the value of the property.
+ */
+ public boolean isSelected() {
+ return this.propertyButton.getSelection();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/properties/bounds/AbstractGetBoundsWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/properties/bounds/AbstractGetBoundsWidget.java
new file mode 100644
index 00000000000..7b3a64dda33
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/properties/bounds/AbstractGetBoundsWidget.java
@@ -0,0 +1,127 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.bounds;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.UIUtils;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Spinner;
+
+/**
+ * This abstract class provide a simple way to create a composite for the
+ * edition of bounds. The {@link Spinner} composite is used for the edition of
+ * number.</p>
+ *
+ * No error is return because the default value is 0.
+ *
+ * @see Spinner
+ * @see GetUpperBoundWidget
+ * @see GetLowerBoundWidget
+ * @since 0.3
+ */
+public abstract class AbstractGetBoundsWidget extends AbstractWidget {
+
+ private static final int COLUMN_NUMBER = 3;
+ private static final int MAX_VALUE = Integer.MAX_VALUE;
+ private static final int MIN_VALUE = Integer.MIN_VALUE;
+ private static final int INCREMENT = 1;
+
+ private final PropertyElement2<Integer> propertyElement;
+ private Spinner spinner;
+
+ /**
+ * Constructor. Initialize the composite with a layout of
+ * {@value #COLUMN_NUMBER} columns.
+ *
+ * @param parent
+ * the parent containing this composite.
+ * @param style
+ * the style of the composite.
+ * @param editingDomain
+ * the current editing domain.
+ * @param propertyElement
+ * the property element that this composite will edit.
+ */
+ protected AbstractGetBoundsWidget(final Composite parent,
+ final PropertyElement2<Integer> propertyElement) {
+ super(parent);
+ this.propertyElement = propertyElement;
+ this.setLayout(new GridLayout(COLUMN_NUMBER, false));
+ }
+
+ /**
+ * @return the propertyElement
+ */
+ public PropertyElement getPropertyElement() {
+ return this.propertyElement;
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ if ((getLabel() != null) && !"".equals(getLabel())) { //$NON-NLS-1$
+ UIUtils.createLabel(this, getLabel());
+ }
+ createSpinner();
+ }
+
+ /**
+ * Creation of a spinner.
+ */
+ private void createSpinner() {
+ // SPINNER
+ final ModifyListener modifyListener = new ModifyListener() {
+ public void modifyText(final ModifyEvent event) {
+ textModified();
+ }
+ };
+ this.spinner = UIUtils.createSpinner(this, MAX_VALUE, MIN_VALUE,
+ INCREMENT, this.propertyElement.isChangeable(), modifyListener);
+ final Integer value = this.propertyElement.getValue2();
+ if (value != null) {
+ setBoundValue(value.intValue());
+ }
+ }
+
+ /**
+ * Method called when the text is modified.
+ */
+ protected void textModified() {
+ getPropertyElement().setValue(Integer.valueOf(this.spinner.getText()));
+ }
+
+ /**
+ * @return the label. If no label has to be displayed, null or void must be
+ * returned.
+ */
+ protected abstract String getLabel();
+
+ /**
+ * Set the bound value.
+ *
+ * @param value
+ * the value to set.
+ */
+ public void setBoundValue(final int value) {
+ this.spinner.setSelection(value);
+ }
+
+ public int getBoundValue() {
+ final String text = this.spinner.getText();
+ return Integer.parseInt(text);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/properties/name/AbstractGetElementNameWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/properties/name/AbstractGetElementNameWidget.java
new file mode 100644
index 00000000000..66b6de548d9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/properties/name/AbstractGetElementNameWidget.java
@@ -0,0 +1,86 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.UIUtils;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This abstract class provide the creation of:</p>
+ *
+ * Label : [ TextFiled ]</p>
+ *
+ * Where the label is getted by {@link #getLabel()}. The TextField will set the
+ * value of the {@link PropertyElement} when edited. If the field is not setted,
+ * an error will be displayed at the top of the dialog when the 'ok' button is
+ * pressed.
+ *
+ * @see GetAttributeNameWidget
+ * @see GetFacetNameWidget
+ * @see GetFacetSetNameWidget
+ * @see GetOperationNameWidget
+ * @see GetReferenceNameWidget
+ * @see GetQueryNameWidget
+ * @since 0.3
+ */
+public abstract class AbstractGetElementNameWidget extends
+ AbstractGetOrCreateElementWidget<String> {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param editingDomain
+ * the current editing domain.
+ * @param propertyElement
+ * the property element that be edited with this composite.
+ */
+ protected AbstractGetElementNameWidget(final Composite parent,
+ final PropertyElement2<String> propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ if ((getLabel() != null) && !"".equals(getLabel())) { //$NON-NLS-1$
+ UIUtils.createLabel(this, getLabel());
+ }
+ createTextField(this.getPropertyElement().isChangeable());
+ }
+
+ /**
+ * @return the label for this composite. If no label has to be displayed,
+ * null or empty string must be returned.
+ */
+ protected abstract String getLabel();
+
+ @Override
+ public String getError() {
+ String result = null;
+ final String elementName = this.getPropertyElement().getValue2();
+ if ((elementName == null) || "".equals(elementName)) { //$NON-NLS-1$
+ result = getErrorMessage();
+ }
+ return result;
+ }
+
+ /**
+ * @return the error message.
+ */
+ @Override
+ protected abstract String getErrorMessage();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/properties/name/AbstractPrintElementWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/properties/name/AbstractPrintElementWidget.java
new file mode 100644
index 00000000000..24b11088dbb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/component/properties/name/AbstractPrintElementWidget.java
@@ -0,0 +1,59 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.properties.name;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.PropertyElement2;
+import org.eclipse.papyrus.emf.facet.util.ui.utils.UIUtils;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This abstract class provide the creation of:</p>
+ *
+ * Label : [//TextFiled//]</p>
+ *
+ * Where the label is getted by {@link #getLabel()}. The textField is disabled
+ * an initializated with the value of the {@link #getTextFieldInitialText()}.
+ *
+ * @since 0.3
+ */
+public abstract class AbstractPrintElementWidget<T extends Object> extends
+ AbstractGetOrCreateElementWidget<T> {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this composite.
+ * @param editingDomain
+ * the current editing domain.
+ */
+ protected AbstractPrintElementWidget(final Composite parent,
+ final PropertyElement2<T> propertyElement) {
+ super(parent, propertyElement);
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ if ((getLabel() != null) && !"".equals(getLabel())) { //$NON-NLS-1$
+ UIUtils.createLabel(this, getLabel());
+ }
+ createTextField(false);
+ }
+
+ /**
+ * @return the label for this composite. If no label has to be displayed,
+ * null or void must be returned.
+ */
+ protected abstract String getLabel();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/query/AbstractQueryWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/query/AbstractQueryWidget.java
new file mode 100644
index 00000000000..3ac0dced850
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/widget/query/AbstractQueryWidget.java
@@ -0,0 +1,40 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.query;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.AbstractCommandWidget;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This abstract class must be used by the plug-ins extending this plug-in. It
+ * provides a simple way to create the widget for the edition of the query.
+ *
+ * @since 0.3
+ */
+public abstract class AbstractQueryWidget<P extends Object> extends
+ AbstractCommandWidget {
+
+ /**
+ * Constructor.
+ *
+ * @param parent
+ * the parent of this widget.
+ * @param editingDomain
+ * the current editing domain.
+ * @param properties
+ * the properties.
+ */
+ protected AbstractQueryWidget(final Composite parent) {
+ super(parent);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/wizard/SynchronizedWizard.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/wizard/SynchronizedWizard.java
new file mode 100644
index 00000000000..d15b25d56ce
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/util/wizard/SynchronizedWizard.java
@@ -0,0 +1,314 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.wizard;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.wizard.IExtendedWizard;
+import org.eclipse.jface.dialogs.IDialogSettings;
+import org.eclipse.jface.wizard.IWizardContainer;
+import org.eclipse.jface.wizard.IWizardPage;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.graphics.RGB;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+
+/**
+ * Synchronized class for safe run.
+ *
+ * @see WizardFactoryImpl
+ * @since 0.3
+ */
+public class SynchronizedWizard<T extends IExtendedWizard> extends
+ SynchronizedObject<T> implements IExtendedWizard {
+
+ /**
+ * Constructor.
+ *
+ * @param object
+ * the to synchronized.
+ * @param display
+ * the display.
+ */
+ public SynchronizedWizard(final T object, final Display display) {
+ super(object, display);
+ }
+
+ public int open() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Integer>() {
+ @Override
+ public Integer safeRun() {
+ return Integer.valueOf(SynchronizedWizard.this
+ .getSynchronizedObject().open());
+ }
+ }).intValue();
+ }
+
+ public IWizardPage getCurrentPage() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IWizardPage>() {
+ @Override
+ public IWizardPage safeRun() {
+ return SynchronizedWizard.this.getSynchronizedObject()
+ .getCurrentPage();
+ }
+ });
+ }
+
+ public IWizardPage next() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IWizardPage>() {
+ @Override
+ public IWizardPage safeRun() {
+ return SynchronizedWizard.this.getSynchronizedObject()
+ .next();
+ }
+ });
+ }
+
+ public IWizardPage previous() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IWizardPage>() {
+ @Override
+ public IWizardPage safeRun() {
+ return SynchronizedWizard.this.getSynchronizedObject()
+ .previous();
+ }
+ });
+ }
+
+ public boolean finish() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedWizard.this
+ .getSynchronizedObject().finish());
+ }
+ }).booleanValue();
+ }
+
+ public void addPages() {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedWizard.this.getSynchronizedObject().addPages();
+ }
+ });
+ }
+
+ public boolean canFinish() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedWizard.this
+ .getSynchronizedObject().canFinish());
+ }
+ }).booleanValue();
+ }
+
+ public void createPageControls(final Composite pageContainer) {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedWizard.this.getSynchronizedObject()
+ .createPageControls(pageContainer);
+ }
+ });
+ }
+
+ public void dispose() {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedWizard.this.getSynchronizedObject().dispose();
+ }
+ });
+ }
+
+ public IWizardContainer getContainer() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IWizardContainer>() {
+ @Override
+ public IWizardContainer safeRun() {
+ return SynchronizedWizard.this.getSynchronizedObject()
+ .getContainer();
+ }
+ });
+ }
+
+ public Image getDefaultPageImage() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Image>() {
+ @Override
+ public Image safeRun() {
+ return SynchronizedWizard.this.getSynchronizedObject()
+ .getDefaultPageImage();
+ }
+ });
+ }
+
+ public IDialogSettings getDialogSettings() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IDialogSettings>() {
+ @Override
+ public IDialogSettings safeRun() {
+ return SynchronizedWizard.this.getSynchronizedObject()
+ .getDialogSettings();
+ }
+ });
+ }
+
+ public IWizardPage getNextPage(final IWizardPage page) {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IWizardPage>() {
+ @Override
+ public IWizardPage safeRun() {
+ return SynchronizedWizard.this.getSynchronizedObject()
+ .getNextPage(page);
+ }
+ });
+ }
+
+ public IWizardPage getPage(final String pageName) {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IWizardPage>() {
+ @Override
+ public IWizardPage safeRun() {
+ return SynchronizedWizard.this.getSynchronizedObject()
+ .getPage(pageName);
+ }
+ });
+ }
+
+ public int getPageCount() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Integer>() {
+ @Override
+ public Integer safeRun() {
+ return Integer.valueOf(SynchronizedWizard.this
+ .getSynchronizedObject().getPageCount());
+ }
+ }).intValue();
+ }
+
+ public IWizardPage[] getPages() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IWizardPage[]>() {
+ @Override
+ public IWizardPage[] safeRun() {
+ return SynchronizedWizard.this.getSynchronizedObject()
+ .getPages();
+ }
+ });
+ }
+
+ public IWizardPage getPreviousPage(final IWizardPage page) {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IWizardPage>() {
+ @Override
+ public IWizardPage safeRun() {
+ return SynchronizedWizard.this.getSynchronizedObject()
+ .getPreviousPage(page);
+ }
+ });
+ }
+
+ public IWizardPage getStartingPage() {
+ return this
+ .safeSyncExec(new AbstractExceptionFreeRunnable<IWizardPage>() {
+ @Override
+ public IWizardPage safeRun() {
+ return SynchronizedWizard.this.getSynchronizedObject()
+ .getStartingPage();
+ }
+ });
+ }
+
+ public RGB getTitleBarColor() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<RGB>() {
+ @Override
+ public RGB safeRun() {
+ return SynchronizedWizard.this.getSynchronizedObject()
+ .getTitleBarColor();
+ }
+ });
+ }
+
+ public String getWindowTitle() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<String>() {
+ @Override
+ public String safeRun() {
+ return SynchronizedWizard.this.getSynchronizedObject()
+ .getWindowTitle();
+ }
+ });
+ }
+
+ public boolean isHelpAvailable() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedWizard.this
+ .getSynchronizedObject().isHelpAvailable());
+ }
+ }).booleanValue();
+ }
+
+ public boolean needsPreviousAndNextButtons() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedWizard.this
+ .getSynchronizedObject().needsPreviousAndNextButtons());
+ }
+ }).booleanValue();
+ }
+
+ public boolean needsProgressMonitor() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedWizard.this
+ .getSynchronizedObject().needsProgressMonitor());
+ }
+ }).booleanValue();
+ }
+
+ public boolean performCancel() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedWizard.this
+ .getSynchronizedObject().performCancel());
+ }
+ }).booleanValue();
+ }
+
+ public boolean performFinish() {
+ return this.safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedWizard.this
+ .getSynchronizedObject().performFinish());
+ }
+ }).booleanValue();
+ }
+
+ public void setContainer(final IWizardContainer wizardContainer) {
+ this.voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedWizard.this.getSynchronizedObject().setContainer(
+ wizardContainer);
+ }
+ });
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/widget/IAbstractWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/widget/IAbstractWidget.java
new file mode 100644
index 00000000000..cecc8c172f2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/widget/IAbstractWidget.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget;
+
+/**
+ *
+ * @see AbstractWidget
+ * @since 0.3
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IAbstractWidget {
+
+ /**
+ * Add the abstractWidget in parameter to the list of listeners of the
+ * widget.
+ *
+ * @param abstractWidget
+ * the abstractWidget to listen.
+ */
+ void addListener(final AbstractWidget abstractWidget);
+
+ /**
+ * When a change in a sub-widget append, this method is execute. If no
+ * action has to be done when a modification append, this method has to be
+ * void.
+ */
+ void notifyChanged();
+
+ /**
+ * Create the content of the widget (call {@link #addSubWidgets()}) and
+ * sub-widgets.
+ */
+ void createWidgetContent();
+
+ /**
+ * Return the string containing the error for this widget.
+ *
+ * @return null if there is no error. The string containing the error if
+ * there is an error.
+ */
+ String getError();
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/widget/getorcreate/IAbstractGetOrCreateElementWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/widget/getorcreate/IAbstractGetOrCreateElementWidget.java
new file mode 100644
index 00000000000..b1d77eb2156
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/widget/getorcreate/IAbstractGetOrCreateElementWidget.java
@@ -0,0 +1,43 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.getorcreate;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWidget;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.IAbstractWidget;
+
+
+/**
+ * Interface.
+ *
+ *
+ * @see AbstractGetOrCreateElementWidget
+ * @since 0.3
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IAbstractGetOrCreateElementWidget extends IAbstractWidget {
+
+ /**
+ * @return the text field.
+ */
+ String getText();
+
+ /**
+ * Set the text field.
+ *
+ * @param text
+ * the new text.
+ */
+ void setText(String text);
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/widget/getorcreate/IAbstractGetOrCreateElementWithButtonWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/widget/getorcreate/IAbstractGetOrCreateElementWithButtonWidget.java
new file mode 100644
index 00000000000..85db1cd7f3e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/widget/getorcreate/IAbstractGetOrCreateElementWithButtonWidget.java
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.getorcreate;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.component.getorcreate.AbstractGetOrCreateElementWithButtonWidget;
+
+/**
+ * @see AbstractGetOrCreateElementWithButtonWidget
+ * @since 0.3
+ * @noextend This interface is not intended to be extended by clients.
+ * @noimplement This interface is not intended to be implemented by clients.
+ */
+public interface IAbstractGetOrCreateElementWithButtonWidget<D>
+ extends
+ IAbstractGetOrCreateElementWidget {
+
+ /**
+ * @param buttonEnabled
+ * the buttonEnabled to set
+ */
+ void setButtonEnabled(final boolean buttonEnabled);
+
+ /**
+ * Press the button.
+ *
+ * @return the potential object return when the button is pressed. Can be
+ * null.
+ */
+ D pressButton();
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/wizard/IExtendedWizard.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/wizard/IExtendedWizard.java
new file mode 100644
index 00000000000..2ff79027229
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/exported/wizard/IExtendedWizard.java
@@ -0,0 +1,56 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.exported.wizard;
+
+import org.eclipse.jface.wizard.IWizard;
+import org.eclipse.jface.wizard.IWizardPage;
+
+/**
+ * Interface for the facets wizards.
+ *
+ * @since 0.3
+ */
+public interface IExtendedWizard extends IWizard {
+
+ /**
+ * @return the current page of the wizard.
+ */
+ IWizardPage getCurrentPage();
+
+ /**
+ * Simulate the action of pressing the next button.
+ *
+ * @return the next page.
+ */
+ IWizardPage next();
+
+ /**
+ * Simulate the action of pressing the previous button.
+ *
+ * @return the previous page.
+ */
+ IWizardPage previous();
+
+ /**
+ * Simulate the action of pressing the finish button.
+ *
+ * @return true if the wizard finish correctly.
+ */
+ boolean finish();
+
+ /**
+ * Open the wizard.
+ *
+ * @return the return code when the wizard closes.
+ */
+ int open();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/messages.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/messages.properties
new file mode 100644
index 00000000000..feca399c98c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/messages.properties
@@ -0,0 +1,23 @@
+###############################################################################
+# Copyright (c) 2011 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - Bug 366367 - To be able to change the "CanBePresentedInTheTable" query
+# Alban M?nager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+# Thomas Cicognani (Soft-Maint) - Bug 406565 - Ok Dialog
+###############################################################################
+QuestionDialog_yes=Yes
+QuestionDialog_no=No
+
+item_todo= == TODO ==
+
+FilteredElementSelectionControl_type_filter_text=type filter text
+Select=Select
+Type=Type :
+New=New...
+Select_Facet= Select a Facet
+OK=Ok
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/sync/generated/SynchronizedAbstractGetOrCreateElementWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/sync/generated/SynchronizedAbstractGetOrCreateElementWidget.java
new file mode 100644
index 00000000000..22cbb2309e5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/sync/generated/SynchronizedAbstractGetOrCreateElementWidget.java
@@ -0,0 +1,92 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.sync.generated;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+
+public class SynchronizedAbstractGetOrCreateElementWidget
+ extends
+ SynchronizedObject<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.getorcreate.IAbstractGetOrCreateElementWidget>
+ implements
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.getorcreate.IAbstractGetOrCreateElementWidget {
+
+ public SynchronizedAbstractGetOrCreateElementWidget(
+ final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.getorcreate.IAbstractGetOrCreateElementWidget object,
+ final Display display) {
+ super(object, display);
+ }
+
+ public final void addListener(
+ final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedAbstractGetOrCreateElementWidget.this
+ .getSynchronizedObject().addListener(parm0);
+ }
+ });
+ }
+
+ public final void createWidgetContent() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedAbstractGetOrCreateElementWidget.this
+ .getSynchronizedObject().createWidgetContent();
+ }
+ });
+ }
+
+ public final java.lang.String getError() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedAbstractGetOrCreateElementWidget.this
+ .getSynchronizedObject().getError();
+ }
+ });
+ }
+
+ public final void notifyChanged() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedAbstractGetOrCreateElementWidget.this
+ .getSynchronizedObject().notifyChanged();
+ }
+ });
+ }
+
+ public final java.lang.String getText() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedAbstractGetOrCreateElementWidget.this
+ .getSynchronizedObject().getText();
+ }
+ });
+ }
+
+ public final void setText(final java.lang.String parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedAbstractGetOrCreateElementWidget.this
+ .getSynchronizedObject().setText(parm0);
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/sync/generated/SynchronizedAbstractGetOrCreateElementWithButtonWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/sync/generated/SynchronizedAbstractGetOrCreateElementWithButtonWidget.java
new file mode 100644
index 00000000000..d23a476955b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/sync/generated/SynchronizedAbstractGetOrCreateElementWithButtonWidget.java
@@ -0,0 +1,112 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.sync.generated;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+
+public class SynchronizedAbstractGetOrCreateElementWithButtonWidget<D extends java.lang.Object>
+ extends
+ SynchronizedObject<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.getorcreate.IAbstractGetOrCreateElementWithButtonWidget<D>>
+ implements
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.getorcreate.IAbstractGetOrCreateElementWithButtonWidget<D> {
+
+ public SynchronizedAbstractGetOrCreateElementWithButtonWidget(
+ final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.widget.getorcreate.IAbstractGetOrCreateElementWithButtonWidget<D> object,
+ final Display display) {
+ super(object, display);
+ }
+
+ public final void addListener(
+ final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedAbstractGetOrCreateElementWithButtonWidget.this
+ .getSynchronizedObject().addListener(parm0);
+ }
+ });
+ }
+
+ public final void createWidgetContent() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedAbstractGetOrCreateElementWithButtonWidget.this
+ .getSynchronizedObject().createWidgetContent();
+ }
+ });
+ }
+
+ public final java.lang.String getError() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedAbstractGetOrCreateElementWithButtonWidget.this
+ .getSynchronizedObject().getError();
+ }
+ });
+ }
+
+ public final void notifyChanged() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedAbstractGetOrCreateElementWithButtonWidget.this
+ .getSynchronizedObject().notifyChanged();
+ }
+ });
+ }
+
+ public final java.lang.String getText() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedAbstractGetOrCreateElementWithButtonWidget.this
+ .getSynchronizedObject().getText();
+ }
+ });
+ }
+
+ public final void setText(final java.lang.String parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedAbstractGetOrCreateElementWithButtonWidget.this
+ .getSynchronizedObject().setText(parm0);
+ }
+ });
+ }
+
+ public final D pressButton() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<D>() {
+ @Override
+ public D safeRun() {
+ return SynchronizedAbstractGetOrCreateElementWithButtonWidget.this
+ .getSynchronizedObject().pressButton();
+ }
+ });
+ }
+
+ public final void setButtonEnabled(final boolean parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedAbstractGetOrCreateElementWithButtonWidget.this
+ .getSynchronizedObject().setButtonEnabled(parm0);
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/sync/generated/SynchronizedGetOrCreateFilteredElementCommmandWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/sync/generated/SynchronizedGetOrCreateFilteredElementCommmandWidget.java
new file mode 100644
index 00000000000..eedf55acc19
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/sync/generated/SynchronizedGetOrCreateFilteredElementCommmandWidget.java
@@ -0,0 +1,142 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.sync.generated;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+
+public class SynchronizedGetOrCreateFilteredElementCommmandWidget<T extends java.lang.Object, W extends java.lang.Object>
+ extends
+ SynchronizedObject<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<T, W>>
+ implements
+ org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<T, W> {
+
+ public SynchronizedGetOrCreateFilteredElementCommmandWidget(
+ final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.command.IGetOrCreateFilteredElementCommmandWidget<T, W> object,
+ final Display display) {
+ super(object, display);
+ }
+
+ public final void addListener(
+ final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().addListener(parm0);
+ }
+ });
+ }
+
+ public final void createWidgetContent() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().createWidgetContent();
+ }
+ });
+ }
+
+ public final java.lang.String getError() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.String>() {
+ @Override
+ public java.lang.String safeRun() {
+ return SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().getError();
+ }
+ });
+ }
+
+ public final void notifyChanged() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().notifyChanged();
+ }
+ });
+ }
+
+ public final <A> A adapt(final java.lang.Class<A> parm0) {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<A>() {
+ @Override
+ public A safeRun() {
+ return SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().adapt(parm0);
+ }
+ });
+ }
+
+ public final java.lang.Object getCommand() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<java.lang.Object>() {
+ @Override
+ public java.lang.Object safeRun() {
+ return SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().getCommand();
+ }
+ });
+ }
+
+ public final void onDialogValidation() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().onDialogValidation();
+ }
+ });
+ }
+
+ public final T getElementSelected() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<T>() {
+ @Override
+ public T safeRun() {
+ return SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().getElementSelected();
+ }
+ });
+ }
+
+ public final org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<W> pressNewButton() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<W>>() {
+ @Override
+ public org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialog<W> safeRun() {
+ return SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().pressNewButton();
+ }
+ });
+ }
+
+ public final void selectElement(final T parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().selectElement(parm0);
+ }
+ });
+ }
+
+ public final void selectElementByName(final java.lang.String parm0) {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedGetOrCreateFilteredElementCommmandWidget.this
+ .getSynchronizedObject().selectElementByName(parm0);
+ }
+ });
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/sync/generated/SynchronizedOkDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/sync/generated/SynchronizedOkDialog.java
new file mode 100644
index 00000000000..d45b8ecedec
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/sync/generated/SynchronizedOkDialog.java
@@ -0,0 +1,64 @@
+/**
+ * Copyright (c) Soft-Maint.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Thomas Cicognani (Soft-Maint) - Bug 406565 - Ok Dialog
+ */
+
+package org.eclipse.papyrus.emf.facet.util.ui.internal.sync.generated;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IOkDialog;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.AbstractVoidExceptionFreeRunnable;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.displaysync.SynchronizedObject;
+import org.eclipse.swt.widgets.Display;
+
+@SuppressWarnings("PMD.ExcessivePublicCount")
+public class SynchronizedOkDialog extends SynchronizedObject<IOkDialog>
+ implements IOkDialog {
+
+ public SynchronizedOkDialog(final IOkDialog object, final Display display) {
+ super(object, display);
+ }
+ public final void commit() {
+ voidExceptionFreeRunnable(new AbstractVoidExceptionFreeRunnable() {
+ @Override
+ public void voidSafeRun() {
+ SynchronizedOkDialog.this.getSynchronizedObject().commit();
+ }
+ });
+ }
+
+ public final boolean isError() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedOkDialog.this.getSynchronizedObject().isError());
+ }
+ }).booleanValue();
+ }
+
+ public final boolean isInformation() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedOkDialog.this.getSynchronizedObject().isInformation());
+ }
+ }).booleanValue();
+ }
+
+ public final boolean isWarning() {
+ return safeSyncExec(new AbstractExceptionFreeRunnable<Boolean>() {
+ @Override
+ public Boolean safeRun() {
+ return Boolean.valueOf(SynchronizedOkDialog.this.getSynchronizedObject().isWarning());
+ }
+ }).booleanValue();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/widget/metaclass/FilteredElementSelectionWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/widget/metaclass/FilteredElementSelectionWidget.java
new file mode 100644
index 00000000000..44ad664f344
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/internal/widget/metaclass/FilteredElementSelectionWidget.java
@@ -0,0 +1,150 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.internal.widget.metaclass;
+
+import org.eclipse.papyrus.emf.facet.util.ui.internal.Messages;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.util.widget.AbstractWidget;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.KeyEvent;
+import org.eclipse.swt.events.KeyListener;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.dialogs.FilteredList;
+
+/**
+ * A control for selecting an element from a list of elements, that can be
+ * filtered using the associated text field.
+ */
+public class FilteredElementSelectionWidget extends
+ AbstractWidget {
+
+ private static final String MATCH_PREFIX = "*"; //$NON-NLS-1$
+ private static final int FILTER_WIDTH_HINT = 350;
+
+ private Text filterText;
+ private FilteredList fFilteredList;
+ private final Object[] elements;
+ private static final boolean MULTISELECTION = false;
+
+ public FilteredElementSelectionWidget(final Composite parent,
+ final Object[] elements) {
+ super(parent);
+ this.elements = elements.clone();
+ final GridData gridData = new GridData(SWT.FILL);
+ gridData.widthHint = FILTER_WIDTH_HINT;
+ setLayoutData(gridData);
+ }
+
+ public void setElements(final Object[] elements) {
+ this.fFilteredList.setElements(elements);
+ }
+
+ private void createFilteredList(final Composite parent) {
+ int multi;
+ if (MULTISELECTION) {
+ multi = SWT.MULTI;
+ } else {
+ multi = SWT.SINGLE;
+ }
+ this.fFilteredList = new FilteredList(parent, SWT.BORDER | SWT.V_SCROLL
+ | SWT.H_SCROLL | multi, new LabelProvider(), true, false, true);
+
+ final GridData data = new GridData();
+ data.grabExcessVerticalSpace = true;
+ data.grabExcessHorizontalSpace = true;
+ data.horizontalAlignment = GridData.FILL;
+ data.verticalAlignment = GridData.FILL;
+ this.fFilteredList.setLayoutData(data);
+ this.fFilteredList.setFilter(""); //$NON-NLS-1$
+ this.fFilteredList.setElements(this.elements);
+ }
+
+ private void createFilterText(final Composite parent) {
+ this.filterText = new Text(parent, SWT.BORDER);
+ this.filterText
+ .setMessage(Messages.FilteredElementSelectionControl_type_filter_text);
+ final GridData data = new GridData();
+ data.grabExcessVerticalSpace = false;
+ data.grabExcessHorizontalSpace = true;
+ data.horizontalAlignment = GridData.FILL;
+ data.verticalAlignment = GridData.BEGINNING;
+ this.filterText.setLayoutData(data);
+ this.filterText.addModifyListener(new ModifyListener() {
+ public void modifyText(final ModifyEvent event) {
+ getfFilteredList().setFilter(
+ MATCH_PREFIX + getFilterText().getText());
+ }
+ });
+ this.filterText.addKeyListener(new KeyListener() {
+
+ public void keyPressed(final KeyEvent event) {
+ if (event.keyCode == SWT.ARROW_DOWN) {
+ getfFilteredList().setFocus();
+ }
+ }
+
+ public void keyReleased(final KeyEvent event) {
+ // nothing
+ }
+ });
+ }
+
+ public Object getFirstSelectedElement() {
+ Object result = null;
+ final Object[] selection = this.fFilteredList.getSelection();
+ if (selection.length > 0) {
+ result = selection[0];
+ }
+ return result;
+ }
+
+ public Object[] getSelectedElements() {
+ Object[] result = null;
+ final Object[] selection = this.fFilteredList.getSelection();
+ if (selection.length != 0) {
+ result = selection;
+ }
+ return result;
+ }
+
+ public FilteredList getFilteredList() {
+ return this.fFilteredList;
+ }
+
+ public Text getFilterText() {
+ return this.filterText;
+ }
+
+ protected FilteredList getfFilteredList() {
+ return this.fFilteredList;
+ }
+
+ @Override
+ protected void addSubWidgets() {
+ createFilterText(this);
+ createFilteredList(this);
+ }
+
+ @Override
+ public String getError() {
+ return null;
+ }
+
+ @Override
+ public void notifyChanged() {
+ // No action has to be done if a change appends.
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/utils/PropertyElement.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/utils/PropertyElement.java
new file mode 100644
index 00000000000..e1079f878ae
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/utils/PropertyElement.java
@@ -0,0 +1,113 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.utils;
+
+/**
+ * Generic class representing all the properties like:
+ * <ol>
+ * <li>facetName</li>
+ * <li>upperBound</li>
+ * <li>unique</li>
+ * <li>...</li>
+ * </ol>
+ *
+ * @since 0.3
+ */
+public class PropertyElement {
+
+ // TODO This class must not be exposed.
+
+ private final String name;
+ private final Class<?> type;
+ private boolean changeable;
+ private Object value;
+
+ /**
+ * Constructor
+ *
+ * @param name
+ * the name of the property.
+ * @param type
+ * the type of the property.
+ * @param changeable
+ * if the property can be changed (edited) or not.
+ */
+ public PropertyElement(final String name, final Class<?> type,
+ final boolean changeable) {
+ this(name, type, changeable, null);
+ }
+
+ /**
+ * Constructor
+ *
+ * @param name
+ * the name of the property.
+ * @param type
+ * the type of the property.
+ * @param changeable
+ * if the property can be changed (edited) or not.
+ * @param value
+ * the initial value of the property.
+ */
+ public PropertyElement(final String name, final Class<?> type,
+ final boolean changeable, final Object value) {
+ super();
+ this.name = name;
+ this.type = type;
+ this.changeable = changeable;
+ this.value = value;
+ }
+
+ /**
+ * @return the name
+ */
+ public String getName() {
+ return this.name;
+ }
+
+ /**
+ * @return the changeable
+ */
+ public boolean isChangeable() {
+ return this.changeable;
+ }
+
+ /**
+ * @return the type
+ */
+ public Class<?> getType() {
+ return this.type;
+ }
+
+ /**
+ * @return the value
+ */
+ public Object getValue() {
+ return this.value;
+ }
+
+ /**
+ * set the value.
+ */
+ public void setValue(final Object value) {
+ this.value = value;
+ }
+
+ /**
+ * @param changeable
+ * the changeable to set
+ */
+ public void setChangeable(final boolean changeable) {
+ this.changeable = changeable;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/utils/PropertyElement2.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/utils/PropertyElement2.java
new file mode 100644
index 00000000000..2cd6bbe5482
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/utils/PropertyElement2.java
@@ -0,0 +1,54 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved.
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Integration into ITM-Factory
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.utils;
+
+
+/**
+ * @since 0.3
+ */
+public class PropertyElement2<T extends Object> extends PropertyElement {
+
+ private final boolean canBeNull;
+
+ public PropertyElement2(final boolean changeable) {
+ super("", Object.class, changeable); //$NON-NLS-1$
+ this.canBeNull = false;
+ }
+
+ public PropertyElement2(final boolean changeable, final T value) {
+ super("", Object.class, changeable, value); //$NON-NLS-1$
+ this.canBeNull = false;
+ }
+
+ public PropertyElement2(final boolean changeable, final boolean canBeNull) {
+ super("", Object.class, changeable); //$NON-NLS-1$
+ this.canBeNull = canBeNull;
+ }
+
+ public T getValue2() {
+ @SuppressWarnings("unchecked")
+ // @SuppressWarnings("unchecked") This cast is safe because the value
+ // has to be a instance of T.
+ // PropertyElement a refactoring of PropertyElement is expected.
+ final T result = (T) this.getValue();
+ return result; // NOPMD by gdupe on 19/10/12 16:59
+ // NOPMD to isolate @SuppressWarnings("unchecked")
+ }
+
+ public void setValue2(final T value) {
+ this.setValue(value);
+ }
+
+ public boolean isCanBeNull() {
+ return this.canBeNull;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/utils/UIUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/utils/UIUtils.java
new file mode 100644
index 00000000000..76f67eaafd2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/utils/UIUtils.java
@@ -0,0 +1,248 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.utils;
+
+import java.util.List;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Spinner;
+import org.eclipse.swt.widgets.Text;
+
+/**
+ * This util class provides methods for the creation of basics ui components
+ * like buttons or text field.
+ *
+ * @since 0.3
+ */
+public final class UIUtils {
+
+ private static final int WIDTH_HINT = 110;
+
+ private UIUtils() {
+ // Private constructor.
+ }
+
+ /**
+ * Create the label (with the given labelName) in the given composite. The
+ * layoutData of the label is {@link #getLabelGridData()}.
+ *
+ * @param parent
+ * the composite parent.
+ * @param labelName
+ * the label name.
+ */
+ public static Label createLabel(final Composite parent,
+ final String labelName) {
+ final Label label = new Label(parent, SWT.NONE);
+ label.setText(labelName);
+ label.setLayoutData(getLabelGridData());
+ return label;
+ }
+
+ /**
+ * Create and return a new button.
+ *
+ * @param parent
+ * the button parent.
+ * @param text
+ * the text to display on the button.
+ * @param enabled
+ * set if the button can be pressed or not.
+ * @param selectionListener
+ * the listener when the button is pressed (can be null).
+ * @return the new button.
+ */
+ public static Button createButton(final Composite parent,
+ final String text, final boolean enabled,
+ final SelectionListener selectionListener) {
+ final Button button = new Button(parent, SWT.NONE);
+ button.setText(text);
+ button.setEnabled(enabled);
+ if (selectionListener != null) {
+ button.addSelectionListener(selectionListener);
+ }
+ return button;
+ }
+
+ /**
+ * Create and return a new text field.
+ *
+ * @param parent
+ * the text field parent.
+ * @param text
+ * the text to display on the text field.
+ * @param enabled
+ * set if the text field can be edit or not.
+ * @param selectListener
+ * the listener when the text field is edited (can be null).
+ * @return the new text field.
+ */
+ public static Text createTextField(final Composite parent,
+ final String text, final boolean enabled,
+ final ModifyListener modifyListener) {
+ final Text textField = new Text(parent, SWT.BORDER);
+ textField.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ textField.setEnabled(enabled);
+ if (text != null) {
+ textField.setText(text);
+ }
+ if (modifyListener != null) {
+ textField.addModifyListener(modifyListener);
+ }
+ return textField;
+ }
+
+ /**
+ * Create a combobox with a label.
+ *
+ * @param parent
+ * the parent of the combobox.
+ * @param enabled
+ * if the combobox is enabled.
+ * @param elements
+ * the elements of the combobox
+ * @param listener
+ * the listener of the combobox (can be null)
+ * @return the combobox created.
+ */
+ public static Combo createCombobox(final Composite parent,
+ final boolean enabled, final List<String> elements,
+ final String label, final SelectionListener listener) {
+ final Composite composite = new Composite(parent, SWT.NONE);
+ final GridLayout gridLayout = new GridLayout(2, false);
+ gridLayout.marginWidth = 0;
+ composite.setLayout(gridLayout);
+ final Label comboboxLabel = new Label(composite, SWT.NONE);
+ comboboxLabel.setText(label);
+ final GridData gridData = new GridData(SWT.FILL);
+ comboboxLabel.setLayoutData(gridData);
+ final Combo combobox = new Combo(composite, SWT.DROP_DOWN
+ | SWT.READ_ONLY);
+ combobox.setLayoutData(new GridData(SWT.FILL));
+ combobox.setEnabled(enabled);
+ for (final String element : elements) {
+ combobox.add(element);
+ }
+ combobox.select(0);
+ if (listener != null) {
+ combobox.addSelectionListener(listener);
+ }
+ return combobox;
+ }
+
+ /**
+ * Create and return a new text field.
+ *
+ * @param parent
+ * the text field parent.
+ * @param text
+ * the text to display on the text field.
+ * @param enabled
+ * set if the text field can be edit or not.
+ * @param selectListener
+ * the listener when the text field is edited (can be null).
+ * @return the new text field.
+ */
+ public static Text createTextArea(final Composite parent,
+ final String text, final boolean enabled,
+ final ModifyListener modifyListener) {
+ final Text textArea = new Text(parent, SWT.MULTI | SWT.BORDER
+ | SWT.WRAP | SWT.V_SCROLL);
+ textArea.setLayoutData(new GridData(GridData.FILL_BOTH));
+ textArea.setEnabled(enabled);
+ if (text != null) {
+ textArea.setText(text);
+ }
+ if (modifyListener != null) {
+ textArea.addModifyListener(modifyListener);
+ }
+ return textArea;
+ }
+
+ /**
+ * @return the labelGridData
+ */
+ public static GridData getLabelGridData() {
+ final GridData labelGridData = new GridData(SWT.FILL);
+ labelGridData.widthHint = WIDTH_HINT;
+ return labelGridData;
+ }
+
+ /**
+ * Create and return a new checkbox.
+ *
+ * @param parent
+ * the checkbox parent.
+ * @param enabled
+ * set if the checkbox can be checked or not.
+ * @param selected
+ * set if the checkbox is initially selected or not.
+ * @param selectionListener
+ * the listener when the checkbox is selected (can be null).
+ * @return the new checkbox.
+ */
+ public static Button createCheckbox(final Composite composite,
+ final boolean enabled, final boolean selected,
+ final SelectionListener selectionListener) {
+ final Button checkbox = new Button(composite, SWT.CHECK);
+ checkbox.setEnabled(enabled);
+ checkbox.setSelection(selected);
+ checkbox.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ if (selectionListener != null) {
+ checkbox.addSelectionListener(selectionListener);
+ }
+ return checkbox;
+ }
+
+ /**
+ * Create and return a new spinner.
+ *
+ * @param parent
+ * the parent of the spinner.
+ * @param maxValue
+ * the max value the spinner can reach.
+ * @param minValue
+ * the min value the spinner can reach.
+ * @param increment
+ * the increment of the spinner.
+ * @param changeable
+ * if the spinner is changeable or not.
+ * @param modifyListener
+ * the listener when the spinner is changed (can be null).
+ * @return the new spinner.
+ *
+ * @see Spinner
+ */
+ public static Spinner createSpinner(final Composite parent,
+ final int maxValue, final int minValue, final int increment,
+ final boolean changeable, final ModifyListener modifyListener) {
+ final Spinner spinner = new Spinner(parent, SWT.BORDER);
+ spinner.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ spinner.setMaximum(maxValue);
+ spinner.setMinimum(minValue);
+ spinner.setIncrement(increment);
+ spinner.setEnabled(changeable);
+ if (modifyListener != null) {
+ spinner.addModifyListener(modifyListener);
+ }
+ return spinner;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/utils/WidgetProperties.java b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/utils/WidgetProperties.java
new file mode 100644
index 00000000000..6bf4c58c7a8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.util.ui/src/org/eclipse/papyrus/emf/facet/util/ui/utils/WidgetProperties.java
@@ -0,0 +1,67 @@
+/**
+ * Copyright (c) 2012 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Alban Ménager (Soft-Maint) - Bug 387470 - [EFacet][Custom] Editors
+ * Grégoire Dupé (Mia-Software) - Bug 387470 - [EFacet][Custom] Editors
+ */
+package org.eclipse.papyrus.emf.facet.util.ui.utils;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.emf.ecore.ETypedElement;
+
+/**
+ * This class contain all the possible properties for the facets creations.
+ *
+ * @since 0.3
+ */
+public class WidgetProperties<T extends Object> {
+
+ // TODO This class must not be exposed.
+
+ private final Map<T, PropertyElement> properties;
+
+ public WidgetProperties() {
+ this.properties = new HashMap<T, PropertyElement>();
+ }
+
+ /**
+ * Add a new property in the map.
+ *
+ * @param element
+ * the key, the {@link ETypedElement} of the property.
+ * @param property
+ * the property.
+ */
+ public void addProperty(final T element,
+ final PropertyElement property) {
+ getProperties().put(element, property);
+ }
+
+ /**
+ * Get the list of properties.
+ *
+ * @return a map of the properties.
+ */
+ private Map<T, PropertyElement> getProperties() {
+ return this.properties;
+ }
+
+ /**
+ * Return the {@link PropertyElement} for the given element.
+ *
+ * @param element
+ * the element.
+ * @return the property.
+ */
+ public PropertyElement getProperty(final T element) {
+ return getProperties().get(element);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/.checkstyle
new file mode 100644
index 00000000000..a1f51764f57
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/.checkstyle
@@ -0,0 +1,7 @@
+ <fileset-config file-format-version="1.2.0" simple-config="true">
+ <local-check-config name="EmfFacet" location="../org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description=""/>
+ <fileset name="all" enabled="true" check-config-name="EmfFacet" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+ </fileset-config> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/.project
new file mode 100644
index 00000000000..a395a572cc2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore</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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..5e36ab83168
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,74 @@
+#Thu Oct 27 17:54:45 CEST 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.autoboxing=warning
+org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
+org.eclipse.jdt.core.compiler.problem.deadCode=warning
+org.eclipse.jdt.core.compiler.problem.deprecation=warning
+org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
+org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
+org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
+org.eclipse.jdt.core.compiler.problem.emptyStatement=warning
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.fallthroughCase=warning
+org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
+org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
+org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
+org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
+org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
+org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
+org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
+org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
+org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=warning
+org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=warning
+org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
+org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
+org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=warning
+org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
+org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
+org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=warning
+org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
+org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
+org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=warning
+org.eclipse.jdt.core.compiler.problem.nullReference=warning
+org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
+org.eclipse.jdt.core.compiler.problem.parameterAssignment=warning
+org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
+org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
+org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
+org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
+org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
+org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
+org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
+org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
+org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
+org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
+org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
+org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
+org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
+org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryElse=warning
+org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
+org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=warning
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
+org.eclipse.jdt.core.compiler.problem.unusedImport=warning
+org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
+org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
+org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameter=warning
+org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
+org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
+org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
+org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
+org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..8cb31b9aee0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/META-INF/MANIFEST.MF
@@ -0,0 +1,16 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.Activator
+Bundle-Vendor: %Bundle-Vendor
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.emf.ecore;bundle-version="2.6.0",
+ org.eclipse.papyrus.emf.facet.widgets.celleditors;bundle-version="0.1.0",
+ org.eclipse.papyrus.emf.facet.widgets;bundle-version="0.1.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.1.0"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..d1fac3652c2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,14 @@
+###############################################################################
+# Copyright (c) 2010 CEA LIST.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Guyomar (Mia-Software) - initial API and implementation
+###############################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Cell Editors (Incubation) \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/about.html
new file mode 100644
index 00000000000..5307f42da98
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/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 26, 2010</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/build.properties
new file mode 100644
index 00000000000..e46e10e69da
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/build.properties
@@ -0,0 +1,19 @@
+###############################################################################
+# Copyright (c) 2010 CEA LIST
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - initial API and implementation
+###############################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ OSGI-INF/,\
+ about.html,\
+ org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.modelcelleditors
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.modelcelleditors b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.modelcelleditors
new file mode 100644
index 00000000000..77e86c73303
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.modelcelleditors
@@ -0,0 +1,60 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<modelCellEditor:ModelCellEditorDeclarations xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:modelCellEditor="http://www.eclipse.org/papyrus/EMF_Facet/ModelCellEditor/0.1.0/modelCellEditor">
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="float_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.EFloatCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EFloat"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="floatObject_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.EFloatCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EFloatObject"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="multiString_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.EStringMultiCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="char_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.ECharCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EChar"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="charObject_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.ECharCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//ECharacterObject"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="boolean_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.EBooleanCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="booleanObject_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.EBooleanCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="double_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.EDoubleCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="doubleObject_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.EDoubleCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EDoubleObject"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="int_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.EIntCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="intObject_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.EIntCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="long_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.ELongCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//ELong"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="longObject_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.ELongCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//ELongObject"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="bigInteger_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.EBigIntegerCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBigInteger"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="bigDecimal_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.EBigDecimalCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBigDecimal"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="byte_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.EByteCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EByte"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="byteObject_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.EByteCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EByteObject"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="short_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.EShortCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EShort"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:BasicCellEditor" cellId="shortObject_cell" basicCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.EShortCellEditor">
+ <cellType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EShortObject"/>
+ </modelCellEditors>
+</modelCellEditor:ModelCellEditorDeclarations>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/plugin.xml
new file mode 100644
index 00000000000..fb006a768ee
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/plugin.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?> <!--
+Copyright (c) 2010 CEA LIST
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Bros (Mia-Software) - initial API and implementation
+-->
+
+<plugin>
+ <extension point="org.eclipse.papyrus.emf.facet.widgets.celleditors.celleditors">
+ <cellEditorsModel path="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.modelcelleditors"/>
+ </extension>
+ <extension point="org.eclipse.papyrus.emf.facet.widgets.celleditors.compositeEditorFactories">
+ <compositeEditorFactory class="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.BigDecimalCompositeFactory"/>
+ <compositeEditorFactory class="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.BigIntegerCompositeFactory"/>
+ <compositeEditorFactory class="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.BooleanCompositeFactory"/>
+ <compositeEditorFactory class="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.ByteCompositeFactory"/>
+ <compositeEditorFactory class="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.CharCompositeFactory"/>
+ <compositeEditorFactory class="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.DoubleCompositeFactory"/>
+ <compositeEditorFactory class="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.FloatCompositeFactory"/>
+ <compositeEditorFactory class="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.IntCompositeFactory"/>
+ <compositeEditorFactory class="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.LongCompositeFactory"/>
+ <compositeEditorFactory class="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.ShortCompositeFactory"/>
+ <compositeEditorFactory class="org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.StringMultiCompositeFactory"/>
+ </extension>
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/Activator.java
new file mode 100644
index 00000000000..0b9bf264aa9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/Activator.java
@@ -0,0 +1,68 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore;
+
+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.facet.widgets.celleditors"; //$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
+ * )
+ */
+ @Override
+ public void start(final BundleContext context) throws Exception {
+ super.start(context);
+ Activator.plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext
+ * )
+ */
+ @Override
+ public void stop(final BundleContext context) throws Exception {
+ Activator.plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EBigDecimalCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EBigDecimalCellEditor.java
new file mode 100644
index 00000000000..01f6bfa6b4e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EBigDecimalCellEditor.java
@@ -0,0 +1,54 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore;
+
+import java.math.BigDecimal;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IListener;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.BigDecimalComposite;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+/** A cell editor for BigDecimal */
+public class EBigDecimalCellEditor implements IModelCellEditor {
+
+ private BigDecimalComposite composite = null;
+
+ public Control activateCell(final Composite parent, final Object originalValue,
+ final IModelCellEditHandler editHandler, final EStructuralFeature feature,
+ final EObject source) {
+ this.composite = new BigDecimalComposite(parent);
+ if (originalValue != null) {
+ if (originalValue instanceof BigDecimal) {
+ this.composite.setValue((BigDecimal) originalValue);
+ } else {
+ Logger.logError("An instance of BigDecimal was expected", Activator.getDefault()); //$NON-NLS-1$
+ }
+ }
+ this.composite.addCommitListener(new IListener() {
+ public void handleEvent() {
+ editHandler.commit();
+ }
+ });
+ return this.composite;
+ }
+
+ public Object getValue() {
+ return this.composite.getValue();
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EBigIntegerCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EBigIntegerCellEditor.java
new file mode 100644
index 00000000000..325fc05aa0f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EBigIntegerCellEditor.java
@@ -0,0 +1,55 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore;
+
+import java.math.BigInteger;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IListener;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.BigIntegerComposite;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+/** A cell editor for BigInteger */
+public class EBigIntegerCellEditor implements IModelCellEditor {
+
+ private BigIntegerComposite composite = null;
+
+ public Control activateCell(final Composite parent, final Object originalValue,
+ final IModelCellEditHandler editHandler, final EStructuralFeature feature,
+ final EObject source) {
+ this.composite = new BigIntegerComposite(parent);
+ if (originalValue != null) {
+ if (originalValue instanceof BigInteger) {
+ this.composite.setValue((BigInteger) originalValue);
+ } else {
+ Logger.logError("An instance of BigInteger was expected", //$NON-NLS-1$
+ Activator.getDefault());
+ }
+ }
+ this.composite.addCommitListener(new IListener() {
+ public void handleEvent() {
+ editHandler.commit();
+ }
+ });
+ return this.composite;
+ }
+
+ public Object getValue() {
+ return this.composite.getValue();
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EBooleanCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EBooleanCellEditor.java
new file mode 100644
index 00000000000..16ad8524ab2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EBooleanCellEditor.java
@@ -0,0 +1,54 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IListener;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.BooleanComposite;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+/** A cell editor for Boolean */
+public class EBooleanCellEditor implements IModelCellEditor {
+
+ private BooleanComposite composite = null;
+
+ public Control activateCell(final Composite parent, final Object originalValue,
+ final IModelCellEditHandler editHandler, final EStructuralFeature feature,
+ final EObject source) {
+ this.composite = new BooleanComposite(parent);
+ if (originalValue != null) {
+ if (originalValue instanceof Boolean) {
+ this.composite.setValue((Boolean) originalValue);
+ } else {
+ Logger.logError("An instance of Boolean was expected", //$NON-NLS-1$
+ Activator.getDefault());
+ }
+ }
+ this.composite.addCommitListener(new IListener() {
+ public void handleEvent() {
+ editHandler.commit();
+ }
+ });
+ return this.composite;
+ }
+
+ public Object getValue() {
+ return this.composite.getValue();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EByteCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EByteCellEditor.java
new file mode 100644
index 00000000000..d1e68e07c4c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EByteCellEditor.java
@@ -0,0 +1,53 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IListener;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.ByteComposite;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+/** A cell editor for Byte */
+public class EByteCellEditor implements IModelCellEditor {
+
+ private ByteComposite composite = null;
+
+ public Control activateCell(final Composite parent, final Object originalValue,
+ final IModelCellEditHandler editHandler, final EStructuralFeature feature,
+ final EObject source) {
+ this.composite = new ByteComposite(parent);
+ if (originalValue != null) {
+ if (originalValue instanceof Byte) {
+ this.composite.setValue((Byte) originalValue);
+ } else {
+ Logger.logError("An instance of Byte was expected", //$NON-NLS-1$
+ Activator.getDefault());
+ }
+ }
+ this.composite.addCommitListener(new IListener() {
+ public void handleEvent() {
+ editHandler.commit();
+ }
+ });
+ return this.composite;
+ }
+
+ public Object getValue() {
+ return this.composite.getValue();
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/ECharCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/ECharCellEditor.java
new file mode 100644
index 00000000000..fb8116498f6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/ECharCellEditor.java
@@ -0,0 +1,54 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IListener;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.CharComposite;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+/** A cell editor for Character */
+public class ECharCellEditor implements IModelCellEditor {
+
+ private CharComposite composite = null;
+
+ public Control activateCell(final Composite parent, final Object originalValue,
+ final IModelCellEditHandler editHandler, final EStructuralFeature feature,
+ final EObject source) {
+ this.composite = new CharComposite(parent);
+ if (originalValue != null) {
+ if (originalValue instanceof Character) {
+ this.composite.setValue((Character) originalValue);
+ } else {
+ Logger.logError("An instance of Character was expected", //$NON-NLS-1$
+ Activator.getDefault());
+ }
+ }
+ this.composite.addCommitListener(new IListener() {
+ public void handleEvent() {
+ editHandler.commit();
+ }
+ });
+ return this.composite;
+ }
+
+ public Object getValue() {
+ return this.composite.getValue();
+ }
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EDoubleCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EDoubleCellEditor.java
new file mode 100644
index 00000000000..884158056f5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EDoubleCellEditor.java
@@ -0,0 +1,54 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IListener;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.DoubleComposite;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+/** A cell editor for Double */
+public class EDoubleCellEditor implements IModelCellEditor {
+
+ private DoubleComposite composite = null;
+
+ public Control activateCell(final Composite parent, final Object originalValue,
+ final IModelCellEditHandler editHandler, final EStructuralFeature feature,
+ final EObject source) {
+ this.composite = new DoubleComposite(parent);
+ if (originalValue != null) {
+ if (originalValue instanceof Double) {
+ this.composite.setValue((Double) originalValue);
+ } else {
+ Logger.logError("An instance of Double was expected", //$NON-NLS-1$
+ Activator.getDefault());
+ }
+ }
+ this.composite.addCommitListener(new IListener() {
+ public void handleEvent() {
+ editHandler.commit();
+ }
+ });
+ return this.composite;
+ }
+
+ public Object getValue() {
+ return this.composite.getValue();
+ }
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EFloatCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EFloatCellEditor.java
new file mode 100644
index 00000000000..8427980292b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EFloatCellEditor.java
@@ -0,0 +1,54 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IListener;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.FloatComposite;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+/** A cell editor for Float */
+public class EFloatCellEditor implements IModelCellEditor {
+
+ private FloatComposite composite = null;
+
+ public Control activateCell(final Composite parent, final Object originalValue,
+ final IModelCellEditHandler editHandler, final EStructuralFeature feature,
+ final EObject source) {
+ this.composite = new FloatComposite(parent);
+ if (originalValue != null) {
+ if (originalValue instanceof Float) {
+ this.composite.setValue((Float) originalValue);
+ } else {
+ Logger.logError("An instance of Float was expected", //$NON-NLS-1$
+ Activator.getDefault());
+ }
+ }
+ this.composite.addCommitListener(new IListener() {
+ public void handleEvent() {
+ editHandler.commit();
+ }
+ });
+ return this.composite;
+ }
+
+ public Object getValue() {
+ return this.composite.getValue();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EIntCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EIntCellEditor.java
new file mode 100644
index 00000000000..e7ecedcce89
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EIntCellEditor.java
@@ -0,0 +1,52 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IListener;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.IntComposite;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+/** A cell editor for Integer */
+public class EIntCellEditor implements IModelCellEditor {
+
+ private IntComposite composite = null;
+
+ public Control activateCell(final Composite parent, final Object originalValue,
+ final IModelCellEditHandler editHandler, final EStructuralFeature feature,
+ final EObject source) {
+ this.composite = new IntComposite(parent);
+ if (originalValue != null) {
+ if (originalValue instanceof Integer) {
+ this.composite.setValue((Integer) originalValue);
+ } else {
+ Logger.logError("An instance of Integer was expected", Activator.getDefault()); //$NON-NLS-1$
+ }
+ }
+ this.composite.addCommitListener(new IListener() {
+ public void handleEvent() {
+ editHandler.commit();
+ }
+ });
+ return this.composite;
+ }
+
+ public Object getValue() {
+ return this.composite.getValue();
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/ELongCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/ELongCellEditor.java
new file mode 100644
index 00000000000..5c10800d668
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/ELongCellEditor.java
@@ -0,0 +1,54 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IListener;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.LongComposite;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+/** A cell editor for Long */
+public class ELongCellEditor implements IModelCellEditor {
+
+ private LongComposite composite = null;
+
+ public Control activateCell(final Composite parent, final Object originalValue,
+ final IModelCellEditHandler editHandler, final EStructuralFeature feature,
+ final EObject source) {
+ this.composite = new LongComposite(parent);
+ if (originalValue != null) {
+ if (originalValue instanceof Long) {
+ this.composite.setValue((Long) originalValue);
+ } else {
+ Logger.logError("An instance of Long was expected", //$NON-NLS-1$
+ Activator.getDefault());
+ }
+ }
+ this.composite.addCommitListener(new IListener() {
+ public void handleEvent() {
+ editHandler.commit();
+ }
+ });
+ return this.composite;
+ }
+
+ public Object getValue() {
+ return this.composite.getValue();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EShortCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EShortCellEditor.java
new file mode 100644
index 00000000000..92a35ea73cb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EShortCellEditor.java
@@ -0,0 +1,52 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IListener;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.ShortComposite;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+/** A cell editor for Short */
+public class EShortCellEditor implements IModelCellEditor {
+
+ private ShortComposite composite = null;
+
+ public Control activateCell(final Composite parent, final Object originalValue,
+ final IModelCellEditHandler editHandler, final EStructuralFeature feature,
+ final EObject source) {
+ this.composite = new ShortComposite(parent);
+ if (originalValue != null) {
+ if (originalValue instanceof Short) {
+ this.composite.setValue((Short) originalValue);
+ } else {
+ Logger.logError("An instance of Short was expected", Activator.getDefault()); //$NON-NLS-1$
+ }
+ }
+ this.composite.addCommitListener(new IListener() {
+ public void handleEvent() {
+ editHandler.commit();
+ }
+ });
+ return this.composite;
+ }
+
+ public Object getValue() {
+ return this.composite.getValue();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EStringMultiCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EStringMultiCellEditor.java
new file mode 100644
index 00000000000..d1dca2dd7da
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/EStringMultiCellEditor.java
@@ -0,0 +1,45 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IListener;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite.StringMultiComposite;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+/** A cell editor for multiple line Strings */
+public class EStringMultiCellEditor implements IModelCellEditor {
+
+ private StringMultiComposite<String> composite = null;
+
+ public Control activateCell(final Composite parent, final Object originalValue,
+ final IModelCellEditHandler editHandler, final EStructuralFeature feature,
+ final EObject source) {
+ this.composite = new StringMultiComposite<String>(parent, originalValue);
+
+ this.composite.addCommitListener(new IListener() {
+ public void handleEvent() {
+ editHandler.commit();
+ }
+ });
+ return this.composite;
+ }
+
+ public Object getValue() {
+ return this.composite.getValue();
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/Messages.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/Messages.java
new file mode 100644
index 00000000000..d3184ff4668
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/Messages.java
@@ -0,0 +1,26 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore;
+
+import org.eclipse.osgi.util.NLS;
+
+public class Messages extends NLS {
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.messages"; //$NON-NLS-1$
+ public static String MultiLineDialog_enterAValue;
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(Messages.BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BigDecimalComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BigDecimalComposite.java
new file mode 100644
index 00000000000..33092e78d5f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BigDecimalComposite.java
@@ -0,0 +1,87 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import java.math.BigDecimal;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.Activator;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+
+public class BigDecimalComposite extends StringComposite<BigDecimal> {
+
+ public BigDecimalComposite(final Composite parent) {
+ this(parent, SWT.NONE);
+ }
+
+ public BigDecimalComposite(final Composite parent, final int style) {
+ super(parent, style);
+ getTextField().addListener(SWT.Verify, new Listener() {
+ public void handleEvent(final Event event) {
+ String input = event.text;
+ for (int i = 0; i < input.length(); i++) {
+ char ch = input.charAt(i);
+ if (ch == '.') {
+ if (BigDecimalComposite.this.getTextField().getText().indexOf('.') != -1) {
+ event.doit = false;
+ return;
+ }
+ } else {
+ if (!('0' <= ch && ch <= '9')) {
+ event.doit = false;
+ return;
+ }
+ }
+ }
+
+ }
+ });
+ }
+
+ @Override
+ public IConverter<BigDecimal> initConverter() {
+ return new IConverter<BigDecimal>() {
+ public BigDecimal toObject(final String string) {
+ if (string != null && string.length() > 0) {
+ try {
+ return new BigDecimal(string);
+ } catch (Exception e) {
+ return null;
+ }
+ }
+ return null;
+ }
+
+ public String toString(final BigDecimal object) {
+ return object.toString();
+ }
+ };
+ }
+
+ @Override
+ public IStatus validate(final String string) {
+ try {
+ // The instantiation of the BigDecimal is only used to validate this string
+ @SuppressWarnings("unused")
+ BigDecimal bigDecimal = new BigDecimal(string);
+ } catch (Exception e) {
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ return new Status(IStatus.OK, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BigDecimalCompositeFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BigDecimalCompositeFactory.java
new file mode 100644
index 00000000000..06f3c32f750
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BigDecimalCompositeFactory.java
@@ -0,0 +1,31 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Giquel (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import java.math.BigDecimal;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.swt.widgets.Composite;
+
+public class BigDecimalCompositeFactory implements ICompositeEditorFactory<BigDecimal> {
+
+ public AbstractCellEditorComposite<BigDecimal> createCompositeEditor(final Composite parent, final int style) {
+ return new BigDecimalComposite(parent, style);
+ }
+
+ public Class<BigDecimal> getHandledType() {
+ return BigDecimal.class;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BigIntegerComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BigIntegerComposite.java
new file mode 100644
index 00000000000..0c99fa61c1c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BigIntegerComposite.java
@@ -0,0 +1,82 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import java.math.BigInteger;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.Activator;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+
+public class BigIntegerComposite extends StringComposite<BigInteger> {
+
+ public BigIntegerComposite(final Composite parent) {
+ this(parent, SWT.NONE);
+ }
+
+ public BigIntegerComposite(final Composite parent, final int style) {
+ super(parent, style);
+ getTextField().addListener(SWT.Verify, new Listener() {
+
+ public void handleEvent(final Event event) {
+
+ String input = event.text;
+ for (int i = 0; i < input.length(); i++) {
+ char ch = input.charAt(i);
+ if (!('0' <= ch && ch <= '9')) {
+ event.doit = false;
+ return;
+ }
+ }
+ }
+ });
+ }
+
+ @Override
+ public IConverter<BigInteger> initConverter() {
+ return new IConverter<BigInteger>() {
+
+ public BigInteger toObject(final String string) {
+ if (string != null && string.length() > 0) {
+ try {
+ return new BigInteger(string);
+ } catch (Exception e) {
+ return null;
+ }
+ }
+ return null;
+ }
+
+ public String toString(final BigInteger object) {
+ return object.toString();
+ }
+ };
+ }
+
+ @Override
+ @SuppressWarnings("unused")
+ // The instantiation of the BigInteger is only used to validate this string
+ public IStatus validate(final String string) {
+ try {
+ new BigInteger(string);
+ } catch (Exception e) {
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ return new Status(IStatus.OK, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BigIntegerCompositeFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BigIntegerCompositeFactory.java
new file mode 100644
index 00000000000..a8cebfcc220
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BigIntegerCompositeFactory.java
@@ -0,0 +1,31 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Giquel (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import java.math.BigInteger;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.swt.widgets.Composite;
+
+public class BigIntegerCompositeFactory implements ICompositeEditorFactory<BigInteger> {
+
+ public AbstractCellEditorComposite<BigInteger> createCompositeEditor(final Composite parent, final int style) {
+ return new BigIntegerComposite(parent, style);
+ }
+
+ public Class<BigInteger> getHandledType() {
+ return BigInteger.class;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BooleanComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BooleanComposite.java
new file mode 100644
index 00000000000..30f9eb6c223
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BooleanComposite.java
@@ -0,0 +1,148 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.DisposeEvent;
+import org.eclipse.swt.events.DisposeListener;
+import org.eclipse.swt.events.KeyAdapter;
+import org.eclipse.swt.events.KeyEvent;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+
+public class BooleanComposite extends AbstractCellEditorComposite<Boolean> {
+
+ private Combo combo = null;
+ private boolean enableSelectionListener = true;
+ private Control parentControl = null;
+
+ public BooleanComposite(final Composite parent) {
+ this(parent, SWT.NONE);
+ }
+
+ public BooleanComposite(final Composite parent, final int style) {
+ super(parent, style);
+ this.parentControl = parent;
+ GridLayout gd = new GridLayout(1, false);
+ gd.marginHeight = 0;
+ gd.marginWidth = 0;
+ gd.horizontalSpacing = 0;
+ setLayout(gd);
+
+ this.combo = new Combo(this, SWT.READ_ONLY);
+ this.combo.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ this.combo.setItems(new String[] { "true", "false" }); //$NON-NLS-1$ //$NON-NLS-2$
+ this.combo.addKeyListener(new KeyAdapter() {
+ @Override
+ public void keyPressed(final KeyEvent event) {
+
+ if ((event.keyCode == SWT.CR && event.stateMask == 0)) {
+ // Enter key pressed
+ commit();
+ } else if (event.keyCode == SWT.ESC && event.stateMask == 0
+ || (event.keyCode == SWT.KEYPAD_CR && event.stateMask == 0)) {
+ // Escape key pressed
+ close();
+ }
+ BooleanComposite.this.setEnableSelectionListener(false);
+ }
+ });
+
+ this.combo.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ if (BooleanComposite.this.getEnableSelectionListener()) {
+ fireChanged();
+ commit();
+ super.widgetSelected(e);
+ }
+ BooleanComposite.this.setEnableSelectionListener(true);
+ }
+ });
+
+ // commit the cell editor when the mouse is clicked
+ // anywhere outside the text field
+ final Listener clickListener = new Listener() {
+ public void handleEvent(final Event event) {
+ if (event.widget instanceof Control) {
+ Control control = (Control) event.widget;
+ if (control.getShell() == BooleanComposite.this.getParentControl().getShell()) {
+ if (event.widget != BooleanComposite.this.getCombo()) {
+ commit();
+ }
+ }
+ }
+ }
+ };
+ Display.getDefault().addFilter(SWT.MouseDown, clickListener);
+
+ // this listener is only here to remove
+ // the other listener from the Display
+ getCombo().addDisposeListener(new DisposeListener() {
+ public void widgetDisposed(final DisposeEvent e) {
+ Display.getDefault().removeFilter(SWT.MouseDown, clickListener);
+ }
+ });
+
+ this.combo.forceFocus();
+ }
+
+ protected void commit() {
+ fireCommit();
+ }
+
+ public Boolean getValue() {
+ if (this.combo.getSelectionIndex() == 0) {
+ return Boolean.TRUE;
+ }
+ return Boolean.FALSE;
+
+ }
+
+ public void setValue(final Boolean value) {
+ if (value != null) {
+ if (value.booleanValue()) {
+ this.combo.select(0);
+ } else {
+ this.combo.select(1);
+ }
+ }
+ }
+
+ protected Combo getCombo() {
+ return this.combo;
+ }
+
+ protected boolean getEnableSelectionListener() {
+ return this.enableSelectionListener;
+ }
+
+ protected void setEnableSelectionListener(final boolean value) {
+ this.enableSelectionListener = value;
+ }
+
+ protected Control getParentControl() {
+ return this.parentControl;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BooleanCompositeFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BooleanCompositeFactory.java
new file mode 100644
index 00000000000..3615d274cdf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/BooleanCompositeFactory.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Giquel (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.swt.widgets.Composite;
+
+public class BooleanCompositeFactory implements ICompositeEditorFactory<Boolean> {
+
+ public AbstractCellEditorComposite<Boolean> createCompositeEditor(final Composite parent, final int style) {
+ return new BooleanComposite(parent, style);
+ }
+
+ public Class<Boolean> getHandledType() {
+ return Boolean.class;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/ByteComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/ByteComposite.java
new file mode 100644
index 00000000000..1f94fc201a7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/ByteComposite.java
@@ -0,0 +1,113 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IValidator;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.Activator;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+
+public class ByteComposite extends StringComposite<Byte> {
+
+ public ByteComposite(final Composite parent) {
+ this(parent, SWT.NONE);
+ }
+
+ public ByteComposite(final Composite parent, final int style) {
+ super(parent, style);
+
+ getTextField().addListener(SWT.Verify, new Listener() {
+
+ public void handleEvent(final Event event) {
+
+ String input = event.text;
+ for (int i = 0; i < input.length(); i++) {
+ char ch = input.charAt(i);
+ if (ch != '-') {
+ if (!('0' <= ch && ch <= '9')) {
+ event.doit = false;
+ return;
+ }
+ } else {
+ if (ByteComposite.this.getTextField().getText().indexOf('-') != -1) {
+ event.doit = false;
+ return;
+ }
+ // If the '-' caracter is not type at the beginning of
+ // the String
+ if (event.start != 0) {
+ event.doit = false;
+ return;
+ }
+ }
+ }
+ }
+
+ });
+ }
+
+ @Override
+ public IValidator getValidator() {
+ return new IValidator() {
+ public IStatus validate(final Object object) {
+ if (getValue() != null) {
+ if (Byte.MIN_VALUE <= getValue().byteValue()
+ && getValue().byteValue() <= Byte.MAX_VALUE) {
+ return Status.OK_STATUS;
+ }
+ }
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ };
+ }
+
+ @Override
+ public IConverter<Byte> initConverter() {
+ return new IConverter<Byte>() {
+
+ public Byte toObject(final String string) {
+ if (string != null && string.length() > 0) {
+ try {
+ return new Byte(string);
+ } catch (Exception e) {
+ e.printStackTrace();
+ return null;
+ }
+
+ }
+ return null;
+ }
+
+ public String toString(final Byte object) {
+ return object.toString();
+ }
+ };
+ }
+
+ @Override
+ public IStatus validate(final String string) {
+ try {
+ if (string.length() > 0) {
+ Byte.parseByte(string);
+ }
+ } catch (Exception e) {
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ return new Status(IStatus.OK, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/ByteCompositeFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/ByteCompositeFactory.java
new file mode 100644
index 00000000000..8dd311b2c4e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/ByteCompositeFactory.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Giquel (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.swt.widgets.Composite;
+
+public class ByteCompositeFactory implements ICompositeEditorFactory<Byte> {
+
+ public AbstractCellEditorComposite<Byte> createCompositeEditor(final Composite parent, final int style) {
+ return new ByteComposite(parent, style);
+ }
+
+ public Class<Byte> getHandledType() {
+ return Byte.class;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/CharComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/CharComposite.java
new file mode 100644
index 00000000000..231531b903f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/CharComposite.java
@@ -0,0 +1,76 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 343655 - CharComposite : magic numbers
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.Activator;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+
+public class CharComposite extends StringComposite<Character> {
+
+ public CharComposite(final Composite parent) {
+ this(parent, SWT.NONE);
+ }
+
+ public CharComposite(final Composite parent, final int style) {
+ super(parent, style);
+ getTextField().addListener(SWT.Verify, new Listener() {
+
+ public void handleEvent(final Event event) {
+ if (event.keyCode != SWT.BS && event.keyCode != SWT.DEL) {
+ if (CharComposite.this.getTextField().getSelectionCount() < 1) {
+ if (CharComposite.this.getTextField().getText().length() >= 1) {
+ event.doit = false;
+ return;
+ }
+ }
+ }
+ }
+ });
+ }
+
+ @Override
+ public IConverter<Character> initConverter() {
+ return new IConverter<Character>() {
+
+ public Character toObject(final String string) {
+ if (string != null && string.length() > 0) {
+ try {
+ return new Character(string.charAt(0));
+ } catch (Exception e) {
+ return null;
+ }
+ }
+ return null;
+ }
+
+ public String toString(final Character object) {
+ return object.toString();
+ }
+ };
+ }
+
+ @Override
+ public IStatus validate(final String string) {
+ if (string.length() == 1) {
+ return new Status(IStatus.OK, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/CharCompositeFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/CharCompositeFactory.java
new file mode 100644
index 00000000000..3b1e28a0bf6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/CharCompositeFactory.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Giquel (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.swt.widgets.Composite;
+
+public class CharCompositeFactory implements ICompositeEditorFactory<Character> {
+
+ public AbstractCellEditorComposite<Character> createCompositeEditor(final Composite parent, final int style) {
+ return new CharComposite(parent, style);
+ }
+
+ public Class<Character> getHandledType() {
+ return Character.class;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/DoubleComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/DoubleComposite.java
new file mode 100644
index 00000000000..4c3bb42c8be
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/DoubleComposite.java
@@ -0,0 +1,107 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IValidator;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.Activator;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+
+public class DoubleComposite extends StringComposite<Double> {
+
+ public DoubleComposite(final Composite parent) {
+ this(parent, SWT.NONE);
+ }
+
+ public DoubleComposite(final Composite parent, final int style) {
+ super(parent, style);
+
+ getTextField().addListener(SWT.Verify, new Listener() {
+
+ public void handleEvent(final Event event) {
+
+ String input = event.text;
+ for (int i = 0; i < input.length(); i++) {
+ char ch = input.charAt(i);
+ if (ch != '-') {
+ if (ch == '.') {
+ if (DoubleComposite.this.getTextField().getText().indexOf('.') != -1) {
+ event.doit = false;
+ return;
+ }
+ } else {
+ if (!('0' <= ch && ch <= '9')) {
+ event.doit = false;
+ return;
+ }
+ }
+ }
+ }
+ }
+
+ });
+ }
+
+ @Override
+ public IValidator getValidator() {
+ return new IValidator() {
+ public IStatus validate(final Object object) {
+ if (getValue() != null) {
+ if (Double.MIN_VALUE <= getValue().doubleValue()
+ && getValue().doubleValue() <= Double.MAX_VALUE) {
+ return Status.OK_STATUS;
+ }
+ }
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ };
+ }
+
+ @Override
+ public IConverter<Double> initConverter() {
+ return new IConverter<Double>() {
+
+ public Double toObject(final String string) {
+ if (string != null && string.length() > 0) {
+ try {
+ return new Double(string);
+ } catch (Exception e) {
+ return null;
+ }
+ }
+ return null;
+ }
+
+ public String toString(final Double object) {
+ return object.toString();
+ }
+ };
+ }
+
+ @Override
+ public IStatus validate(final String string) {
+ try {
+ if (string.length() > 0) {
+ Double.parseDouble(string);
+ }
+ } catch (Exception e) {
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ return new Status(IStatus.OK, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/DoubleCompositeFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/DoubleCompositeFactory.java
new file mode 100644
index 00000000000..a722f78d3c3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/DoubleCompositeFactory.java
@@ -0,0 +1,27 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Giquel (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.swt.widgets.Composite;
+
+public class DoubleCompositeFactory implements ICompositeEditorFactory<Double> {
+ public AbstractCellEditorComposite<Double> createCompositeEditor(final Composite parent, final int style) {
+ return new DoubleComposite(parent, style);
+ }
+
+ public Class<Double> getHandledType() {
+ return Double.class;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/FloatComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/FloatComposite.java
new file mode 100644
index 00000000000..8532c7a9f6b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/FloatComposite.java
@@ -0,0 +1,117 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IValidator;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.Activator;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+
+public class FloatComposite extends StringComposite<Float> {
+
+ public FloatComposite(final Composite parent) {
+ this(parent, SWT.NONE);
+ }
+
+ public FloatComposite(final Composite parent, final int style) {
+ super(parent, style);
+
+ getTextField().addListener(SWT.Verify, new Listener() {
+
+ public void handleEvent(final Event event) {
+
+ String input = event.text;
+ for (int i = 0; i < input.length(); i++) {
+ char ch = input.charAt(i);
+ if (ch != '-') {
+ if (ch == '.') {
+ if (FloatComposite.this.getTextField().getText().indexOf('.') != -1) {
+ event.doit = false;
+ return;
+ }
+ } else {
+ if (!('0' <= ch && ch <= '9')) {
+ event.doit = false;
+ return;
+ }
+ }
+ } else {
+ if (FloatComposite.this.getTextField().getText().indexOf('-') != -1) {
+ event.doit = false;
+ return;
+ }
+ // If the '-' caracter is not type at the beginning of
+ // the String
+ if (event.start != 0) {
+ event.doit = false;
+ return;
+ }
+ }
+ }
+ }
+
+ });
+ }
+
+ @Override
+ public IValidator getValidator() {
+ return new IValidator() {
+ public IStatus validate(final Object object) {
+ if (getValue() != null) {
+ if (Float.MIN_VALUE <= getValue().floatValue()
+ && getValue().floatValue() <= Float.MAX_VALUE) {
+ return Status.OK_STATUS;
+ }
+ }
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ };
+ }
+
+ @Override
+ public IConverter<Float> initConverter() {
+ return new IConverter<Float>() {
+
+ public Float toObject(final String string) {
+ if (string != null && string.length() > 0) {
+ try {
+ return new Float(string);
+ } catch (Exception e) {
+ return null;
+ }
+ }
+ return null;
+ }
+
+ public String toString(final Float object) {
+ return object.toString();
+ }
+ };
+ }
+
+ @Override
+ public IStatus validate(final String string) {
+ try {
+ if (string.length() > 0) {
+ Float.parseFloat(string);
+ }
+ } catch (Exception e) {
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ return new Status(IStatus.OK, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/FloatCompositeFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/FloatCompositeFactory.java
new file mode 100644
index 00000000000..6fe67ba6029
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/FloatCompositeFactory.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Giquel (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.swt.widgets.Composite;
+
+public class FloatCompositeFactory implements ICompositeEditorFactory<Float> {
+
+ public AbstractCellEditorComposite<Float> createCompositeEditor(final Composite parent, final int style) {
+ return new FloatComposite(parent, style);
+ }
+
+ public Class<Float> getHandledType() {
+ return Float.class;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/IntComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/IntComposite.java
new file mode 100644
index 00000000000..b8e6ac9044b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/IntComposite.java
@@ -0,0 +1,110 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IValidator;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.Activator;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+
+public class IntComposite extends StringComposite<Integer> {
+
+ public IntComposite(final Composite parent) {
+ this(parent, SWT.NONE);
+ }
+
+ public IntComposite(final Composite parent, final int style) {
+ super(parent, style);
+ getTextField().addListener(SWT.Verify, new Listener() {
+
+ public void handleEvent(final Event event) {
+
+ String input = event.text;
+ for (int i = 0; i < input.length(); i++) {
+ char ch = input.charAt(i);
+ if (ch != '-') {
+ if (!('0' <= ch && ch <= '9')) {
+ event.doit = false;
+ return;
+ }
+ } else {
+ if (IntComposite.this.getTextField().getText().indexOf('-') != -1) {
+ event.doit = false;
+ return;
+ }
+ // If the '-' caracter is not type at the beginning of
+ // the String
+ if (event.start != 0) {
+ event.doit = false;
+ return;
+ }
+ }
+ }
+ }
+
+ });
+ }
+
+ @Override
+ public IValidator getValidator() {
+ return new IValidator() {
+ public IStatus validate(final Object object) {
+ if (getValue() != null) {
+ if (Integer.MIN_VALUE <= getValue().intValue()
+ && getValue().intValue() <= Integer.MAX_VALUE) {
+ return Status.OK_STATUS;
+ }
+ }
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ };
+ }
+
+ @Override
+ public IConverter<Integer> initConverter() {
+ return new IConverter<Integer>() {
+
+ public Integer toObject(final String string) {
+ if (string != null && string.length() > 0) {
+ try {
+ return new Integer(string);
+ } catch (Exception e) {
+ return null;
+ }
+
+ }
+ return null;
+ }
+
+ public String toString(final Integer object) {
+ return object.toString();
+ }
+ };
+ }
+
+ @Override
+ public IStatus validate(final String string) {
+ try {
+ if (string.length() > 0) {
+ Integer.parseInt(string);
+ }
+ } catch (Exception e) {
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ return new Status(IStatus.OK, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/IntCompositeFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/IntCompositeFactory.java
new file mode 100644
index 00000000000..0e9bd208e25
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/IntCompositeFactory.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Giquel (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.swt.widgets.Composite;
+
+public class IntCompositeFactory implements ICompositeEditorFactory<Integer> {
+
+ public AbstractCellEditorComposite<Integer> createCompositeEditor(final Composite parent, final int style) {
+ return new IntComposite(parent, style);
+ }
+
+ public Class<Integer> getHandledType() {
+ return Integer.class;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/LongComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/LongComposite.java
new file mode 100644
index 00000000000..39a4a693ec7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/LongComposite.java
@@ -0,0 +1,110 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IValidator;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.Activator;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+
+public class LongComposite extends StringComposite<Long> {
+
+ public LongComposite(final Composite parent) {
+ this(parent, SWT.NONE);
+ }
+
+ public LongComposite(final Composite parent, final int style) {
+ super(parent, style);
+ getTextField().addListener(SWT.Verify, new Listener() {
+
+ public void handleEvent(final Event event) {
+
+ String input = event.text;
+ for (int i = 0; i < input.length(); i++) {
+ char ch = input.charAt(i);
+ if (ch != '-') {
+ if (!('0' <= ch && ch <= '9')) {
+ event.doit = false;
+ return;
+ }
+ } else {
+ if (LongComposite.this.getTextField().getText().indexOf('-') != -1) {
+ event.doit = false;
+ return;
+ }
+ // If the '-' caracter is not type at the beginning of
+ // the String
+ if (event.start != 0) {
+ event.doit = false;
+ return;
+ }
+ }
+ }
+ }
+
+ });
+ }
+
+ @Override
+ public IValidator getValidator() {
+ return new IValidator() {
+ public IStatus validate(final Object object) {
+ if (getValue() != null) {
+ if (Long.MIN_VALUE <= getValue().longValue()
+ && getValue().longValue() <= Long.MAX_VALUE) {
+ return Status.OK_STATUS;
+ }
+ }
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ };
+ }
+
+ @Override
+ public IConverter<Long> initConverter() {
+ return new IConverter<Long>() {
+
+ public Long toObject(final String string) {
+ if (string != null && string.length() > 0) {
+ try {
+ return new Long(string);
+ } catch (Exception e) {
+ return null;
+ }
+ }
+ return null;
+ }
+
+ public String toString(final Long object) {
+ return object.toString();
+ }
+ };
+ }
+
+ @Override
+ public IStatus validate(final String string) {
+ try {
+ if (string.length() > 0) {
+ Long.parseLong(string);
+ }
+ } catch (Exception e) {
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ return new Status(IStatus.OK, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/LongCompositeFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/LongCompositeFactory.java
new file mode 100644
index 00000000000..9c756ad238e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/LongCompositeFactory.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Giquel (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.swt.widgets.Composite;
+
+public class LongCompositeFactory implements ICompositeEditorFactory<Long> {
+
+ public AbstractCellEditorComposite<Long> createCompositeEditor(final Composite parent,
+ final int style) {
+ return new LongComposite(parent, style);
+ }
+
+ public Class<Long> getHandledType() {
+ return Long.class;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/ShortComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/ShortComposite.java
new file mode 100644
index 00000000000..82232249f6d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/ShortComposite.java
@@ -0,0 +1,110 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IValidator;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.Activator;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+
+public class ShortComposite extends StringComposite<Short> {
+
+ public ShortComposite(final Composite parent, final int style) {
+ super(parent, style);
+ getTextField().addListener(SWT.Verify, new Listener() {
+
+ public void handleEvent(final Event event) {
+
+ String input = event.text;
+ for (int i = 0; i < input.length(); i++) {
+ char ch = input.charAt(i);
+ if (ch != '-') {
+ if (!('0' <= ch && ch <= '9')) {
+ event.doit = false;
+ return;
+ }
+ } else {
+ if (ShortComposite.this.getTextField().getText().indexOf('-') != -1) {
+ event.doit = false;
+ return;
+ }
+ // If the '-' caracter is not type at the beginning of
+ // the String
+ if (event.start != 0) {
+ event.doit = false;
+ return;
+ }
+ }
+ }
+ }
+
+ });
+ }
+
+ public ShortComposite(final Composite parent) {
+ this(parent, SWT.NONE);
+ }
+
+ @Override
+ public IValidator getValidator() {
+ return new IValidator() {
+ public IStatus validate(final Object object) {
+ if (getValue() != null) {
+ if (Short.MIN_VALUE <= getValue().shortValue()
+ && getValue().shortValue() <= Short.MAX_VALUE) {
+ return Status.OK_STATUS;
+ }
+ }
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ };
+ }
+
+ @Override
+ public IConverter<Short> initConverter() {
+ return new IConverter<Short>() {
+
+ public Short toObject(final String string) {
+ if (string != null && string.length() > 0) {
+ try {
+ return new Short(string);
+ } catch (Exception e) {
+ return null;
+ }
+ }
+ return null;
+ }
+
+ public String toString(final Short object) {
+ return object.toString();
+ }
+ };
+ }
+
+ @Override
+ public IStatus validate(final String string) {
+ try {
+ if (string.length() > 0) {
+ Short.parseShort(string);
+ }
+ } catch (Exception e) {
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+ return new Status(IStatus.OK, Activator.PLUGIN_ID, ""); //$NON-NLS-1$
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/ShortCompositeFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/ShortCompositeFactory.java
new file mode 100644
index 00000000000..3844c336669
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/ShortCompositeFactory.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Giquel (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.swt.widgets.Composite;
+
+public class ShortCompositeFactory implements ICompositeEditorFactory<Short> {
+
+ public AbstractCellEditorComposite<Short> createCompositeEditor(final Composite parent, final int style) {
+ return new ShortComposite(parent, style);
+ }
+
+ public Class<Short> getHandledType() {
+ return Short.class;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/StringComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/StringComposite.java
new file mode 100644
index 00000000000..91b1ca0854f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/StringComposite.java
@@ -0,0 +1,180 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ * Nicolas Guyomar (Mia-Software) - Bug 349574 - EMF Facet Ecore String composite textField cannot be disabled
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.DisposeEvent;
+import org.eclipse.swt.events.DisposeListener;
+import org.eclipse.swt.events.KeyAdapter;
+import org.eclipse.swt.events.KeyEvent;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Text;
+
+public abstract class StringComposite<T> extends AbstractCellEditorComposite<T> {
+
+ /** the control that is used to edit the contents of the cell */
+ private Text textField = null;
+
+ private final Composite parentControl;
+
+ /** the original value of the cell **/
+ private IConverter<T> converter;
+
+ protected static final Color RED = new Color(Display.getCurrent(), 255, 192, 192);
+ protected static final Color WHITE = Display.getCurrent().getSystemColor(
+ SWT.COLOR_LIST_BACKGROUND);
+
+ public StringComposite(final Composite parent, final int style) {
+ super(parent);
+ setLayout(new FillLayout());
+ this.parentControl = parent;
+ this.textField = new Text(this, style);
+
+ this.textField.addKeyListener(new KeyAdapter() {
+ @Override
+ public void keyPressed(final KeyEvent event) {
+ // Enter key pressed
+ if ((event.keyCode == SWT.CR && event.stateMask == 0)
+ || (event.keyCode == SWT.KEYPAD_CR && event.stateMask == 0)) {
+ if (StringComposite.this.getTextField().getEditable()) {
+ StringComposite.this.commit();
+ }
+ } else if (event.keyCode == SWT.ESC && event.stateMask == 0) {
+ // Escape key pressed
+ close();
+ }
+ }
+
+ @Override
+ public void keyReleased(final KeyEvent e) {
+ if (!StringComposite.this.validate(StringComposite.this.getTextField().getText())
+ .isOK()) {
+ StringComposite.this.getTextField().setBackground(StringComposite.RED);
+ } else {
+
+ StringComposite.this.getTextField().setBackground(StringComposite.WHITE);
+ }
+ super.keyReleased(e);
+ }
+
+ });
+ final Listener clickListener = new Listener() {
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.swt.widgets.Listener#handleEvent(org.eclipse.swt. widgets.Event)
+ */
+ public void handleEvent(final Event event) {
+ if (event.widget instanceof Control) {
+ Control control = (Control) event.widget;
+ if (control.getShell() == StringComposite.this.getParentControl().getShell()) {
+ if (event.widget != StringComposite.this.getTextField()) {
+ StringComposite.this.commit();
+ }
+ }
+ }
+ }
+ };
+ Display.getDefault().addFilter(SWT.MouseDown, clickListener);
+ // this listener is only here to remove
+ // the other listener from the Display
+ addDisposeListener(new DisposeListener() {
+ public void widgetDisposed(final DisposeEvent e) {
+ Display.getDefault().removeFilter(SWT.MouseDown, clickListener);
+ }
+ });
+
+ this.textField.addModifyListener(new ModifyListener() {
+ public void modifyText(final ModifyEvent e) {
+ fireChanged();
+ }
+ });
+
+ this.textField.forceFocus();
+ }
+
+ public StringComposite(final Composite parent) {
+ this(parent, SWT.NONE);
+ }
+
+ protected void commit() {
+ if (getValidator().validate(getValue()).isOK()) {
+ fireCommit();
+ }
+ }
+
+ @Override
+ public void setEnabled(final boolean enabled) {
+ this.textField.setEnabled(enabled);
+ super.setEnabled(enabled);
+ }
+
+ public boolean getEditable() {
+ return this.textField.getEditable();
+ }
+
+ public void setValue(final T value) {
+ if (value == null) {
+ this.textField.setText(""); //$NON-NLS-1$
+ } else {
+ String strValue = getConverter().toString(value);
+ this.textField.setText(strValue);
+ this.textField.setSelection(0, strValue.length());
+ }
+ }
+
+ public String getText() {
+ return this.textField.getText();
+ }
+
+ protected Text getTextField() {
+ return this.textField;
+ }
+
+ protected Composite getParentControl() {
+ return this.parentControl;
+ }
+
+ public T getValue() {
+ return this.getConverter().toObject(this.getText());
+ }
+
+ private IConverter<T> getConverter() {
+ if (this.converter == null) {
+ this.converter = this.initConverter();
+ }
+ return this.converter;
+ }
+
+ public abstract IConverter<T> initConverter();
+
+ public interface IConverter<T> {
+ public T toObject(String string);
+
+ public String toString(T object);
+ }
+
+ public abstract IStatus validate(String string);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/StringMultiComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/StringMultiComposite.java
new file mode 100644
index 00000000000..9b4a20e5ec5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/StringMultiComposite.java
@@ -0,0 +1,203 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.Activator;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.ui.MultiLineDialog;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.DisposeEvent;
+import org.eclipse.swt.events.DisposeListener;
+import org.eclipse.swt.events.KeyAdapter;
+import org.eclipse.swt.events.KeyEvent;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Text;
+
+/** A cell editor for Strings */
+public class StringMultiComposite<T> extends AbstractCellEditorComposite<String> {
+
+ /** the control that is used to edit the contents of the cell */
+ private final Button button;
+ private Text text = null;
+
+ private final Composite parentControl;
+
+ /** the original value of the cell */
+ private String originalFieldValue;
+
+ public StringMultiComposite(final Composite parent, final Object originalValue, final int style) {
+ super(parent);
+ this.parentControl = parent;
+
+ GridLayout gd = new GridLayout(2, false);
+ gd.marginHeight = 0;
+ gd.marginWidth = 0;
+ gd.horizontalSpacing = 0;
+ setLayout(gd);
+
+ this.text = new Text(this, style);
+ this.text.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
+ this.button = new Button(this, SWT.PUSH);
+ this.button.setText("..."); //$NON-NLS-1$
+ GridData data = new GridData(SWT.FILL, SWT.FILL, false, true);
+ this.button.setLayoutData(data);
+
+ if (originalValue != null) {
+ if (originalValue instanceof String) {
+ this.setValue((String) originalValue);
+ this.text.setSelection(0, ((String) originalValue).length());
+ } else {
+ Logger.logError("An instance of String was expected", Activator.getDefault()); //$NON-NLS-1$
+ }
+ }
+
+ this.button.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ MultiLineDialog dialog = new MultiLineDialog(StringMultiComposite.this
+ .getParentControl().getShell(), StringMultiComposite.this.getValue()) {
+
+ @Override
+ protected void okPressed() {
+ StringMultiComposite.this.originalFieldValue = getTextArea().getText();
+ StringMultiComposite.this.getText().setText(getTextArea().getText());
+ StringMultiComposite.this.commit();
+ super.okPressed();
+ }
+ };
+ dialog.open();
+ }
+ });
+
+ // commit the cell editor when the mouse is clicked
+ // anywhere outside the text field
+ final Listener clickListener = new Listener() {
+ public void handleEvent(final Event event) {
+ if (event.widget instanceof Control) {
+ Control control = (Control) event.widget;
+ if (control.getShell() == StringMultiComposite.this.getParentControl()
+ .getShell()) {
+ if (event.widget != StringMultiComposite.this.getButton()) {
+ if (event.widget != StringMultiComposite.this.getText()) {
+ if (StringMultiComposite.this.getText().getEditable()) {
+ StringMultiComposite.this.commit();
+ } else {
+ StringMultiComposite.this.close();
+ }
+ }
+ }
+ }
+ }
+ }
+ };
+ Display.getDefault().addFilter(SWT.MouseDown, clickListener);
+
+ // this listener is only here to remove
+ // the other listener from the Display
+ this.text.addDisposeListener(new DisposeListener() {
+ public void widgetDisposed(final DisposeEvent e) {
+ Display.getDefault().removeFilter(SWT.MouseDown, clickListener);
+ }
+ });
+
+ this.text.addKeyListener(new KeyAdapter() {
+ @Override
+ public void keyPressed(final KeyEvent event) {
+ // Enter key pressed
+ if ((event.keyCode == SWT.CR && event.stateMask == 0)
+ || (event.keyCode == SWT.KEYPAD_CR && event.stateMask == 0)) {
+ if (StringMultiComposite.this.getText().getEditable()) {
+ StringMultiComposite.this.commit();
+ }
+ } else if (event.keyCode == SWT.ESC && event.stateMask == 0) {
+ // Escape key pressed
+ close();
+ }
+ }
+ });
+
+ this.text.addModifyListener(new ModifyListener() {
+ public void modifyText(final ModifyEvent e) {
+ fireChanged();
+ }
+ });
+
+ this.text.forceFocus();
+ }
+
+ public StringMultiComposite(final Composite parent, final int style) {
+ this(parent, null, style);
+ }
+
+ public StringMultiComposite(final Composite parent, final Object originalValue) {
+ this(parent, originalValue, SWT.NONE);
+ }
+
+ protected void commit() {
+ fireCommit();
+ }
+
+ public void setValue(final String value) {
+ this.originalFieldValue = value;
+ if (value == null) {
+ this.text.setText(""); //$NON-NLS-1$
+ } else {
+ // If the text contains a newline then edition is not possible, the user
+ // has to use the Dialog Editor
+ if (value.indexOf('\n') != -1) {
+ String truncatedValue = value.substring(0, value.indexOf('\n') - 1).concat("..."); //$NON-NLS-1$
+ this.text.setText(truncatedValue);
+ this.text.setEditable(false);
+ } else {
+ this.text.setText(value);
+ this.text.setSelection(0, value.length());
+ }
+ }
+ }
+
+ public String getValue() {
+ if (this.text.getEditable()) {
+ return this.text.getText();
+ }
+ return getOriginalFieldValue();
+ }
+
+ public Button getButton() {
+ return this.button;
+ }
+
+ public Composite getParentControl() {
+ return this.parentControl;
+ }
+
+ public String getOriginalFieldValue() {
+ return this.originalFieldValue;
+ }
+
+ protected Text getText() {
+ return this.text;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/StringMultiCompositeFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/StringMultiCompositeFactory.java
new file mode 100644
index 00000000000..e4bfac1773d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/composite/StringMultiCompositeFactory.java
@@ -0,0 +1,29 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Giquel (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.swt.widgets.Composite;
+
+public class StringMultiCompositeFactory implements ICompositeEditorFactory<String> {
+
+ public AbstractCellEditorComposite<String> createCompositeEditor(final Composite parent, final int style) {
+ return new StringMultiComposite<String>(parent, style);
+ }
+
+ public Class<String> getHandledType() {
+ return String.class;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/messages.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/messages.properties
new file mode 100644
index 00000000000..8e1f7fbae5c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/messages.properties
@@ -0,0 +1,11 @@
+###############################################################################
+# Copyright (c) 2010 CEA LIST
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - initial API and implementation
+###############################################################################
+MultiLineDialog_enterAValue=Enter a value
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/ui/MultiLineDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/ui/MultiLineDialog.java
new file mode 100644
index 00000000000..7d63d67aded
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ecore/ui/MultiLineDialog.java
@@ -0,0 +1,108 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.ui;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.Activator;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.Messages;
+import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.jface.dialogs.IDialogConstants;
+import org.eclipse.jface.dialogs.IDialogSettings;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.KeyAdapter;
+import org.eclipse.swt.events.KeyEvent;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Text;
+
+public class MultiLineDialog extends Dialog {
+
+ private static final int DIALOG_WIDTH = 300;
+ private static final int DIALOG_HEIGHT = 200;
+ private String originalValue;
+ private Text textArea;
+
+ public MultiLineDialog(final Shell parent, final Object originalValue) {
+ super(parent);
+ if (originalValue instanceof String) {
+ this.originalValue = (String) originalValue;
+ }
+
+ }
+
+ @Override
+ protected Control createDialogArea(final Composite parent) {
+ // create a composite with standard margins and spacing
+ Composite composite = new Composite(parent, SWT.NONE);
+ GridLayout layout = new GridLayout();
+ layout.marginHeight = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_MARGIN);
+ layout.marginWidth = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_MARGIN);
+ layout.verticalSpacing = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_SPACING);
+ layout.horizontalSpacing = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_SPACING);
+ composite.setLayout(layout);
+ composite.setLayoutData(new GridData(GridData.FILL_BOTH));
+
+ this.textArea = new Text(composite, SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL | SWT.BORDER);
+ if (this.originalValue != null) {
+ this.textArea.setText(this.originalValue);
+ }
+ this.textArea.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ this.textArea.addKeyListener(new KeyAdapter() {
+ @Override
+ public void keyPressed(final KeyEvent e) {
+ if (e.keyCode == SWT.CR && e.stateMask == SWT.CTRL) {
+ okPressed();
+ }
+ super.keyPressed(e);
+ }
+ });
+
+ applyDialogFont(composite);
+ return composite;
+ }
+
+ @Override
+ protected void okPressed() {
+ super.okPressed();
+ }
+
+ @Override
+ protected boolean isResizable() {
+ return true;
+ }
+
+ @Override
+ protected void configureShell(final Shell newShell) {
+ super.configureShell(newShell);
+ newShell.setText(Messages.MultiLineDialog_enterAValue);
+ }
+
+ protected Text getTextArea() {
+ return this.textArea;
+ }
+
+ @Override
+ protected IDialogSettings getDialogBoundsSettings() {
+ final String sectionName = this.getClass().getName() + ".settings"; //$NON-NLS-1$
+ IDialogSettings settings = Activator.getDefault().getDialogSettings();
+ IDialogSettings section = settings.getSection(sectionName);
+ if (section == null) {
+ section = settings.addNewSection(sectionName);
+ // cf Dialog#DIALOG_WIDTH
+ section.put("DIALOG_WIDTH", MultiLineDialog.DIALOG_WIDTH); //$NON-NLS-1$
+ section.put("DIALOG_HEIGHT", MultiLineDialog.DIALOG_HEIGHT); //$NON-NLS-1$
+ }
+ return section;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/.checkstyle
new file mode 100644
index 00000000000..b8662f35ba3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/.checkstyle
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+ <local-check-config name="MoDisco" location="/org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description="">
+ <additional-data name="protect-config-file" value="false"/>
+ </local-check-config>
+ <fileset name="all" enabled="true" check-config-name="MoDisco" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ <file-match-pattern match-pattern="Messages.java" include-pattern="false"/>
+ </fileset>
+ <filter name="FilesFromPackage" enabled="true">
+ <filter-data value="src/org/eclipse/emf/facet/widgets/celleditors/modelCellEditor"/>
+ </filter>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/.classpath
new file mode 100644
index 00000000000..45f024e850e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/.project
new file mode 100644
index 00000000000..a97ed65a9e3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.widgets.celleditors</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.jdt.core.javanature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..815cb35c35b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,11 @@
+#Thu Oct 27 17:54:45 CEST 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.5
+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.source=1.5
+
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/API.README.txt b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/API.README.txt
new file mode 100644
index 00000000000..70003f15323
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/API.README.txt
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 339723 - Add x-friend on EMF Facet internal package
+ * Nicolas Guyomar (Mia-Software) - Bug 340976 - Missing x-friend in celleditors plug-in
+ *******************************************************************************/
+
+org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.util
+ x-friends:="org.eclipse.papyrus.emf.facet.widgets.celleditors.edit" for EMF Facet internal use
+
+org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core
+ x-friends:="org.eclipse.papyrus.emf.facet.widgets.nattable" for EMF Facet internal use
+
+org.eclipse.papyrus.emf.facet.widgets.celleditors.internal
+ x-friends:="org.eclipse.papyrus.emf.facet.widgets.nattable" for EMF Facet internal use \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..b1659dea3fa
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/META-INF/MANIFEST.MF
@@ -0,0 +1,37 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.widgets.celleditors;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.emf.ecore,
+ org.eclipse.swt;bundle-version="3.6.0",
+ org.eclipse.papyrus.emf.facet.widgets;bundle-version="0.1.0",
+ org.eclipse.jface;bundle-version="3.6.0",
+ org.eclipse.ui.workbench;bundle-version="3.6.0",
+ org.eclipse.emf.edit;bundle-version="2.6.0",
+ org.eclipse.ui.ide;bundle-version="3.6.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.1.0",
+ org.eclipse.core.resources;bundle-version="3.6.0",
+ org.eclipse.papyrus.emf.facet.util.emf.core;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.util.emf.ui;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.util.swt;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.efacet.metamodel;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.efacet.metamodel
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.widgets.celleditors,
+ org.eclipse.papyrus.emf.facet.widgets.celleditors.core.composite.registries,
+ org.eclipse.papyrus.emf.facet.widgets.celleditors.internal;x-friends:="org.eclipse.papyrus.emf.facet.widgets.nattable",
+ org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.composite.registries;x-internal:=true,
+ org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core;x-friends:="org.eclipse.papyrus.emf.facet.widgets.nattable",
+ org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite;x-internal:=true,
+ org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite.factories;x-internal:=true,
+ org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.ui;x-internal:=true,
+ org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor,
+ org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl;x-internal:=true,
+ org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.util;x-friends:="org.eclipse.papyrus.emf.facet.widgets.celleditors.edit"
+Bundle-Activator: org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.Activator
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/about.html
new file mode 100644
index 00000000000..5307f42da98
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/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 26, 2010</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/build.properties
new file mode 100644
index 00000000000..25ae2eece28
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/build.properties
@@ -0,0 +1,22 @@
+###############################################################################
+# Copyright (c) 2010 CEA LIST
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - initial API and implementation
+###############################################################################
+bin.includes = .,\
+ META-INF/,\
+ plugin.xml,\
+ plugin.properties,\
+ schema/,\
+ model/,\
+ about.html,\
+ org.eclipse.papyrus.emf.facet.widgets.celleditors.core.modelcelleditors
+jars.compile.order = .
+source.. = src/
+output.. = bin/
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/model/celleditors.ecore b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/model/celleditors.ecore
new file mode 100644
index 00000000000..3df2dec1ac4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/model/celleditors.ecore
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="modelCellEditor"
+ nsURI="http://www.eclipse.org/papyrus/EMF_Facet/ModelCellEditor/0.1.0/modelCellEditor"
+ nsPrefix="modelCellEditor">
+ <eClassifiers xsi:type="ecore:EClass" name="ModelCellEditorDeclarations">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="modelCellEditors" upperBound="-1"
+ eType="#//AbstractModelCellEditor" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="AbstractModelCellEditor" abstract="true">
+ <eOperations name="getModelCellEditorImpl" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="cellType" lowerBound="1"
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EClassifier"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="cellId" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="BasicCellEditor" eSuperTypes="#//AbstractModelCellEditor">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="basicCellEditorImpl" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="UnaryReferenceCellEditor" eSuperTypes="#//AbstractModelCellEditor">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="unaryReferenceCellEditorImpl"
+ lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="NaryFeatureCellEditor" eSuperTypes="#//AbstractModelCellEditor">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="naryFeatureCellEditorImpl"
+ lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/model/celleditors.genmodel b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/model/celleditors.genmodel
new file mode 100644
index 00000000000..f7e217a43e7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/model/celleditors.genmodel
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0"
+ xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+ xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="Copyright (c) 2010 CEA LIST.&#xD;&#xA;&#xD;&#xA;All rights reserved. This program and the accompanying materials&#xD;&#xA;are made available under the terms of the Eclipse Public License v1.0&#xD;&#xA;which accompanies this distribution, and is available at&#xD;&#xA;http://www.eclipse.org/legal/epl-v10.html&#xD;&#xA;&#xD;&#xA;Contributors:&#xD;&#xA; Nicolas Bros (Mia-Software) - initial API and implementation"
+ modelDirectory="/org.eclipse.papyrus.emf.facet.widgets.celleditors/src" editDirectory="/org.eclipse.papyrus.emf.facet.widgets.celleditors.edit/src"
+ editorDirectory="/org.eclipse.papyrus.emf.facet.widgets.celleditors.editor/src" modelPluginID="org.eclipse.papyrus.emf.facet.widgets.celleditors"
+ modelName="Celleditors" modelPluginClass="org.eclipse.papyrus.emf.facet.widgets.celleditors.CelleditorsPlugin"
+ editPluginClass="org.eclipse.papyrus.emf.facet.widgets.celleditors.edit.CelleditorsEditPlugin"
+ editorPluginClass="org.eclipse.papyrus.emf.facet.widgets.celleditors.editor.CelleditorsEditorPlugin"
+ testSuiteClass="org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.tests.CelleditorsAllTests"
+ importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0" copyrightFields="false"
+ editPluginID="org.eclipse.papyrus.emf.facet.widgets.celleditors.edit" classNamePattern="">
+ <foreignModel>celleditors.ecore</foreignModel>
+ <genPackages prefix="ModelCellEditor" basePackage="org.eclipse.papyrus.emf.facet.widgets.celleditors"
+ disposableProviderFactory="true" contentTypeIdentifier="" fileExtensions="modelcelleditors"
+ ecorePackage="celleditors.ecore#/">
+ <genClasses ecoreClass="celleditors.ecore#//ModelCellEditorDeclarations">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference celleditors.ecore#//ModelCellEditorDeclarations/modelCellEditors"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="celleditors.ecore#//AbstractModelCellEditor">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference celleditors.ecore#//AbstractModelCellEditor/cellType"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute celleditors.ecore#//AbstractModelCellEditor/cellId"/>
+ <genOperations ecoreOperation="celleditors.ecore#//AbstractModelCellEditor/getModelCellEditorImpl"/>
+ </genClasses>
+ <genClasses ecoreClass="celleditors.ecore#//BasicCellEditor">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute celleditors.ecore#//BasicCellEditor/basicCellEditorImpl"/>
+ </genClasses>
+ <genClasses ecoreClass="celleditors.ecore#//UnaryReferenceCellEditor">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute celleditors.ecore#//UnaryReferenceCellEditor/unaryReferenceCellEditorImpl"/>
+ </genClasses>
+ <genClasses ecoreClass="celleditors.ecore#//NaryFeatureCellEditor">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute celleditors.ecore#//NaryFeatureCellEditor/naryFeatureCellEditorImpl"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/org.eclipse.papyrus.emf.facet.widgets.celleditors.core.modelcelleditors b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/org.eclipse.papyrus.emf.facet.widgets.celleditors.core.modelcelleditors
new file mode 100644
index 00000000000..2d5bcde729f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/org.eclipse.papyrus.emf.facet.widgets.celleditors.core.modelcelleditors
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<modelCellEditor:ModelCellEditorDeclarations xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:modelCellEditor="http://www.eclipse.org/papyrus/EMF_Facet/ModelCellEditor/0.1.0/modelCellEditor">
+ <modelCellEditors xsi:type="modelCellEditor:UnaryReferenceCellEditor" cellId="unaryref_cell" unaryReferenceCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.UnaryReferenceCellEditor">
+ <cellType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:NaryFeatureCellEditor" cellId="naryref_cell" naryFeatureCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.NaryReferenceCellEditor">
+ <cellType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </modelCellEditors>
+ <modelCellEditors xsi:type="modelCellEditor:NaryFeatureCellEditor" cellId="naryattr_cell" naryFeatureCellEditorImpl="org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.NaryAttributeCellEditor">
+ <cellType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EDataType"/>
+ </modelCellEditors>
+</modelCellEditor:ModelCellEditorDeclarations>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/plugin.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/plugin.properties
new file mode 100644
index 00000000000..ab97f0ce6c1
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/plugin.properties
@@ -0,0 +1,19 @@
+###############################################################################
+# Copyright (c) 2010 CEA LIST
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - initial API and implementation
+# Nicolas Guyomar (Mia-Software) - Bug 339899 - everything must be externalized before UI freeze
+###############################################################################
+
+pluginName = Celleditors Model (Incubation)
+providerName = Eclipse Modeling Project
+
+celleditors.content-type.name = EMFFacet Model Cell Editors
+celleditors.extension-point.name = Model Cell Editors
+compositeEditors.extension-point.name = Composite Cell Editor Factories
+command.factories.extension-point.name = Command Factories \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/plugin.xml b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/plugin.xml
new file mode 100644
index 00000000000..74a63179f7c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/plugin.xml
@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+Copyright (c) 2010 CEA LIST
+
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+
+Contributors:
+ Nicolas Bros (Mia-Software) - initial API and implementation
+ Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ Nicolas Guyomar (Mia-Software) - Bug 339899 - everything must be externalized before UI freeze
+-->
+
+<plugin>
+ <extension-point id="celleditors" name="%celleditors.extension-point.name" schema="schema/celleditors.exsd"/>
+ <extension-point id="commandFactories" name="%command.factories.extension-point.name" schema="schema/commandFactories.exsd"/>
+ <extension-point id="compositeEditorFactories" name="%compositeEditors.extension-point.name" schema="schema/compositeEditorFactories.exsd"/>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <package
+ uri="http://www.eclipse.org/papyrus/EMF_Facet/ModelCellEditor/0.1.0/modelCellEditor"
+ class="org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage"
+ genModel="model/celleditors.genmodel"/>
+ </extension>
+
+ <!-- so that model editors know they can open it -->
+ <extension
+ point="org.eclipse.core.contenttype.contentTypes">
+ <content-type
+ base-type="org.eclipse.emf.ecore.xmi"
+ file-extensions="modelCellEditors"
+ id="org.eclipse.papyrus.emf.facet.modelCellEditors.contenttype"
+ name="%celleditors.content-type.name"
+ priority="normal">
+ </content-type>
+ </extension>
+
+ <extension point="org.eclipse.papyrus.emf.facet.widgets.celleditors.celleditors">
+ <cellEditorsModel path="org.eclipse.papyrus.emf.facet.widgets.celleditors.core.modelcelleditors"/>
+ </extension>
+
+ <extension point="org.eclipse.papyrus.emf.facet.widgets.celleditors.compositeEditorFactories">
+ <compositeEditorFactory class="org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite.factories.CoreIResourceCompositeFactory"/>
+ <compositeEditorFactory class="org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite.factories.CoreIFileCompositeFactory"/>
+ <compositeEditorFactory class="org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite.factories.CoreIProjectCompositeFactory"/>
+ </extension>
+
+</plugin>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/schema/celleditors.exsd b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/schema/celleditors.exsd
new file mode 100644
index 00000000000..dcb1351c10b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/schema/celleditors.exsd
@@ -0,0 +1,120 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.papyrus.emf.facet.widgets.celleditors" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appInfo>
+ <meta.schema plugin="org.eclipse.papyrus.emf.facet.widgets.celleditors" id="celleditors" name="Model Cell Editors"/>
+ </appInfo>
+ <documentation>
+ Use this extension point to register new cell editors.
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appInfo>
+ <meta.element />
+ </appInfo>
+ </annotation>
+ <complexType>
+ <sequence minOccurs="1" maxOccurs="unbounded">
+ <element ref="cellEditorsModel"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appInfo>
+ <meta.attribute translatable="true"/>
+ </appInfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="cellEditorsModel">
+ <complexType>
+ <attribute name="path" type="string" use="required">
+ <annotation>
+ <documentation>
+ The path of a model describing model cell editors.
+This model must be an instance of metamodel &quot;http://www.eclipse.org/papyrus/EMF_Facet/ModelCellEditor/0.1.0/modelCellEditor&quot;.
+ </documentation>
+ <appInfo>
+ <meta.attribute kind="resource"/>
+ </appInfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="since"/>
+ </appInfo>
+ <documentation>
+ 0.1.0
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="examples"/>
+ </appInfo>
+ <documentation>
+ &lt;pre&gt;
+&lt;extension point=&quot;org.eclipse.papyrus.emf.facet.widgets.celleditors.celleditors&quot;&gt;
+ &lt;cellEditorsModel path=&quot;org.eclipse.papyrus.emf.facet.widgets.celleditors.core.modelcelleditors&quot;/&gt;
+&lt;/extension&gt;
+&lt;/pre&gt;
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="apiinfo"/>
+ </appInfo>
+ <documentation>
+ The extension is defined in two parts : the extension in the plugin.xml that refers to a model, and the model that defines the cell editors themselves.
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="implementation"/>
+ </appInfo>
+ <documentation>
+ Default cell editors can be found in plug-in org.eclipse.papyrus.emf.facet.widgets.celleditors.
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="copyright"/>
+ </appInfo>
+ <documentation>
+ Copyright (c) 2010 CEA LIST.
+
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+ </documentation>
+ </annotation>
+
+</schema>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/schema/commandFactories.exsd b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/schema/commandFactories.exsd
new file mode 100644
index 00000000000..8261444f19f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/schema/commandFactories.exsd
@@ -0,0 +1,111 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.papyrus.emf.facet.widgets.celleditors" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appInfo>
+ <meta.schema plugin="org.eclipse.papyrus.emf.facet.widgets.celleditors" id="commandFactories" name="Command Factories"/>
+ </appInfo>
+ <documentation>
+ Use this extension point to specify a Command factory that must be used when creating emf.edit Commands for a specific editing domain.
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appInfo>
+ <meta.element />
+ </appInfo>
+ </annotation>
+ <complexType>
+ <sequence minOccurs="1" maxOccurs="unbounded">
+ <element ref="commandFactory"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appInfo>
+ <meta.attribute translatable="true"/>
+ </appInfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="commandFactory">
+ <complexType>
+ <attribute name="class" type="string" use="required">
+ <annotation>
+ <documentation>
+ The implementation class of a Command factory.
+ </documentation>
+ <appInfo>
+ <meta.attribute kind="java" basedOn=":org.eclipse.papyrus.emf.facet.widgets.celleditors.ICommandFactory"/>
+ </appInfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="since"/>
+ </appInfo>
+ <documentation>
+ 0.1.0
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="examples"/>
+ </appInfo>
+ <documentation>
+ &lt;pre&gt;
+ &lt;extension point=&quot;org.eclipse.papyrus.emf.facet.widgets.celleditors.commandFactories&quot;&gt;
+ &lt;commandFactory class=&quot;com.example.MyCommandFactory&quot;/&gt;
+ &lt;/extension&gt;
+&lt;/pre&gt;
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appInfo>
+ <meta.section type="apiinfo"/>
+ </appInfo>
+ <documentation>
+ Command factories must implement ICommandFactory, to provide a specialized Command for each editing operation.
+ </documentation>
+ </annotation>
+
+
+ <annotation>
+ <appInfo>
+ <meta.section type="copyright"/>
+ </appInfo>
+ <documentation>
+ Copyright (c) 2010 CEA LIST.
+
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+ </documentation>
+ </annotation>
+
+</schema>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/schema/compositeEditorFactories.exsd b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/schema/compositeEditorFactories.exsd
new file mode 100644
index 00000000000..58666a5b882
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/schema/compositeEditorFactories.exsd
@@ -0,0 +1,133 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.papyrus.emf.facet.widget.celleditors" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appinfo>
+ <meta.schema plugin="org.eclipse.papyrus.emf.facet.widget.celleditors" id="compositeEditorFactories" name="Composite cell editor factories"/>
+ </appinfo>
+ <documentation>
+ Use this extension point to provide new composite cell editors factories, that are used to find the right cell editor composite to use for a given type. Each factory handles a single type.
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appinfo>
+ <meta.element />
+ </appinfo>
+ </annotation>
+ <complexType>
+ <sequence minOccurs="1" maxOccurs="unbounded">
+ <element ref="compositeEditorFactory"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute translatable="true"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="compositeEditorFactory">
+ <annotation>
+ <documentation>
+ Defines a factory to create composite cell editors for a specific type.
+ </documentation>
+ </annotation>
+ <complexType>
+ <attribute name="class" type="string" use="required">
+ <annotation>
+ <documentation>
+ A factory implementation to create composite cell editors for a specific type handled by the factory. The factory must implement CompositeEditorFactory.
+ </documentation>
+ <appinfo>
+ <meta.attribute kind="java" basedOn=":org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="since"/>
+ </appinfo>
+ <documentation>
+ 0.9.0
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="examples"/>
+ </appinfo>
+ <documentation>
+ &lt;pre&gt;
+ &lt;extension point=&quot;org.eclipse.papyrus.emf.facet.widgets.celleditors.compositeEditorFactories&quot;&gt;
+ &lt;compositeEditorFactory class=&quot;org.eclipse.papyrus.emf.facet.widgets.celleditors.core.composite.factories.CoreIResourceCompositeFactory&quot;/&gt;
+ &lt;compositeEditorFactory class=&quot;org.eclipse.papyrus.emf.facet.widgets.celleditors.core.composite.factories.CoreIFileCompositeFactory&quot;/&gt;
+ &lt;/extension&gt;
+&lt;/pre&gt;
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="apiinfo"/>
+ </appinfo>
+ <documentation>
+ &lt;p&gt;
+Composite cell editor factories must implement &lt;tt&gt; org.eclipse.papyrus.emf.facet.widgets.celleditors.core.composite.CompositeEditorFactory&amp;lt;T&amp;gt;&lt;/tt&gt;
+&lt;/p&gt;
+
+
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="implementation"/>
+ </appinfo>
+ <documentation>
+ &lt;p&gt;
+Look at cell editor implementations in the following packages:&lt;ul&gt;
+&lt;li&gt;org.eclipse.papyrus.emf.facet.widgets.celleditors.core.composite.factories
+&lt;li&gt;org.eclipse.papyrus.emf.facet.widgets.celleditors.ecore.composite
+&lt;/ul&gt;
+&lt;/p&gt;
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="copyright"/>
+ </appinfo>
+ <documentation>
+ Copyright (c) 2011 Mia-Software.
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+ </documentation>
+ </annotation>
+
+</schema>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/AbstractCellEditorComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/AbstractCellEditorComposite.java
new file mode 100644
index 00000000000..6a2002ef671
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/AbstractCellEditorComposite.java
@@ -0,0 +1,132 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Gregoire Dupe (Mia-Software) - Bug 339998 - public methods of AbstractCellEditorComposite have to be protected
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+
+public abstract class AbstractCellEditorComposite<T> extends Composite implements IWidget<T>,
+ IWidget2<T> {
+
+ private final List<IListener> commitListeners;
+ private final List<IListener> changeListeners;
+ @Deprecated
+ private final List<Listener> compatibilityCommitListeners;
+ private final IValidator defaultValidator = new IValidator() {
+ public IStatus validate(final Object object) {
+ return Status.OK_STATUS;
+ }
+ };
+
+ public AbstractCellEditorComposite(final Composite parent) {
+ this(parent, SWT.NONE);
+ }
+
+ @SuppressWarnings("deprecation") /* backwards-compatibility */
+ public AbstractCellEditorComposite(final Composite parent, final int style) {
+ super(parent, style);
+ this.compatibilityCommitListeners = new ArrayList<Listener>();
+ this.commitListeners = new ArrayList<IListener>();
+ this.changeListeners = new ArrayList<IListener>();
+ }
+
+ /** @deprecated use {@link AbstractCellEditorComposite#addCommitListener(IListener)} */
+ @Deprecated
+ public void addCommitListener(final Listener listener) {
+ synchronized (this.compatibilityCommitListeners) {
+ if (!this.compatibilityCommitListeners.contains(listener)) {
+ this.compatibilityCommitListeners.add(listener);
+ }
+ }
+ }
+
+ /** @deprecated use {@link AbstractCellEditorComposite#removeCommitListener(IListener)} */
+ @Deprecated
+ public void removeCommitListener(final Listener listener) {
+ synchronized (this.compatibilityCommitListeners) {
+ this.compatibilityCommitListeners.remove(listener);
+ }
+ }
+
+ public void addCommitListener(final IListener listener) {
+ synchronized (this.commitListeners) {
+ if (!this.commitListeners.contains(listener)) {
+ this.commitListeners.add(listener);
+ }
+ }
+ }
+
+ public void removeCommitListener(final IListener listener) {
+ synchronized (this.commitListeners) {
+ this.commitListeners.remove(listener);
+ }
+ }
+
+ @SuppressWarnings("deprecation") /* backwards-compatibility */
+ protected final void fireCommit() {
+ synchronized (this.compatibilityCommitListeners) {
+ for (Listener commitListener : new ArrayList<Listener>(
+ this.compatibilityCommitListeners)) {
+ commitListener.handleEvent(new Event());
+ }
+ }
+ synchronized (this.commitListeners) {
+ for (IListener commitListener : new ArrayList<IListener>(this.commitListeners)) {
+ commitListener.handleEvent();
+ }
+ }
+ }
+
+ public void addChangeListener(final IListener listener) {
+ synchronized (this.changeListeners) {
+ if (!this.changeListeners.contains(listener)) {
+ this.changeListeners.add(listener);
+ }
+ }
+ }
+
+ public void removeChangeListener(final IListener listener) {
+ synchronized (this.changeListeners) {
+ this.changeListeners.remove(listener);
+ }
+ }
+
+ protected final void fireChanged() {
+ synchronized (this.changeListeners) {
+ for (IListener changeListener : new ArrayList<IListener>(this.changeListeners)) {
+ changeListener.handleEvent();
+ }
+ }
+ }
+
+ public IValidator getValidator() {
+ // always valid by default
+ return this.defaultValidator;
+ }
+
+ protected final void close() {
+ if (!isDisposed()) {
+ getParent().forceFocus();
+ dispose();
+ }
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/CellEditorsUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/CellEditorsUtils.java
new file mode 100644
index 00000000000..5a56b7a103b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/CellEditorsUtils.java
@@ -0,0 +1,65 @@
+/*******************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Vincent Lorenzo (CEA-LIST) - Bug 351931 - Use local cell editor in table
+ * Gregoire Dupe (Mia-Software) - Bug 351931 - Use local cell editor in table
+ */
+ package org.eclipse.papyrus.emf.facet.widgets.celleditors;
+
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorDeclarations;
+
+/**
+ * @since 0.1.1
+ * @author gdupe
+ *
+ */
+public final class CellEditorsUtils {
+
+ private static final String FILE_EXTENSION = "modelcelleditors"; //$NON-NLS-1$
+
+ private CellEditorsUtils() {
+ // This is an utility class which must not be instantiated
+ }
+
+ /**
+ * This method allows to find the bundle name for an editor
+ *
+ * @param editor
+ * an editor
+ * @return the bundle name for this editor
+ */
+ public static String getBundleNameFor(final AbstractModelCellEditor editor, final ResourceSet resourceSet) {
+ for (Resource ressource : resourceSet.getResources()) {
+ if (CellEditorsUtils.FILE_EXTENSION.equals(ressource.getURI().fileExtension())) {
+ Iterator<EObject> allContents = ressource.getContents().iterator();
+ while (allContents.hasNext()) {
+ EObject currentContent = allContents.next();
+ if (currentContent instanceof ModelCellEditorDeclarations) {
+ if (((ModelCellEditorDeclarations) currentContent).getModelCellEditors()
+ .contains(editor)) {
+ URI uri = ressource.getURI();
+ if (uri.isPlatformPlugin()) {
+ List<String> list = uri.segmentsList();
+ return list.get(1);
+ }
+ }
+ }
+ }
+ }
+ }
+
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ICellEditorsRegistry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ICellEditorsRegistry.java
new file mode 100644
index 00000000000..4be901bde5f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ICellEditorsRegistry.java
@@ -0,0 +1,80 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 339554 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ * Nicolas Bros (Mia-Software) - Bug 339855 - ModelCellEditor class should not be exposed
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.CellEditorsRegistry;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor;
+
+/** Registry for the "celleditors" extension point */
+public interface ICellEditorsRegistry {
+
+ static ICellEditorsRegistry INSTANCE = new CellEditorsRegistry();
+
+ List<IModelCellEditorContainer<? extends AbstractModelCellEditor>> getAllCellEditors();
+
+ /**
+ * Returns a cell editor to edit a single value of the given type, or <code>null</code> if none
+ * was found. Custom cell editors override the default ones (from
+ * "org.eclipse.papyrus.emf.facet.widgets.celleditors").
+ *
+ * @param type
+ * the type for which to get a cell editor
+ * @return the cell editor or <code>null</code> if none was found for the given type
+ */
+ IModelCellEditor getCellEditorFor(EClassifier type);
+
+ /**
+ * Returns a cell editor to edit a list of values of the given type, or <code>null</code> if
+ * none was found. Custom cell editors override the default ones (from
+ * "org.eclipse.papyrus.emf.facet.widgets.celleditors").
+ *
+ * @param type
+ * the type for which to get a cell editor
+ * @return the cell editor or <code>null</code> if none was found for the given type
+ */
+ INaryFeatureCellEditor getNaryCellEditorFor(EClassifier type);
+
+ /**
+ * Returns a cell editor to edit a single value of the given type, or <code>null</code> if none
+ * was found. Custom cell editors override the default ones (from
+ * "org.eclipse.papyrus.emf.facet.widgets.celleditors").
+ *
+ * @param type
+ * the type for which to get a cell editor
+ * @param preferredCellEditors
+ * the cell editors that should be chosen in case of conflicts (several cell editors
+ * defined for the same type)
+ * @return the cell editor or <code>null</code> if none was found for the given type
+ */
+ IModelCellEditor getCellEditorFor(EClassifier type,
+ List<AbstractModelCellEditor> preferredCellEditors);
+
+ /**
+ * Returns a cell editor to edit a list of values of the given type, or <code>null</code> if
+ * none was found. Custom cell editors override the default ones (from
+ * "org.eclipse.papyrus.emf.facet.widgets.celleditors").
+ *
+ * @param type
+ * the type for which to get a cell editor
+ * @param preferredCellEditors
+ * the cell editors that should be chosen in case of conflicts (several cell editors
+ * defined for the same type)
+ * @return the cell editor or <code>null</code> if none was found for the given type
+ */
+ INaryFeatureCellEditor getNaryCellEditorFor(EClassifier type,
+ List<AbstractModelCellEditor> preferredCellEditors);
+
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ICommandFactoriesRegistry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ICommandFactoriesRegistry.java
new file mode 100644
index 00000000000..feac6ea3e94
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ICommandFactoriesRegistry.java
@@ -0,0 +1,40 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 339554 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors;
+
+import java.util.List;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.CommandFactoriesRegistry;
+
+/**
+ * Registry for the "commandFactories" extension point. It is used to create EMF {@link Command}s
+ * compatible with a given {@link EditingDomain}.
+ * <p>
+ * For example, a <code>TransactionalEditingDomain</code> doesn't work with the usual EMF commands,
+ * and the model must be manipulated with {@link Command}s that use transactions.
+ */
+public interface ICommandFactoriesRegistry {
+
+ /** the singleton {@link ICommandFactoriesRegistry} */
+ static ICommandFactoriesRegistry INSTANCE = new CommandFactoriesRegistry();
+
+ /** @return the list of registered command factories */
+ List<ICommandFactory> getCommandFactories();
+
+ /**
+ * @return a command factory compatible with the given {@link EditingDomain}, or
+ * <code>null</code> if none is found
+ */
+ ICommandFactory getCommandFactoryFor(final EditingDomain editingDomain);
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ICommandFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ICommandFactory.java
new file mode 100644
index 00000000000..74c7719e783
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ICommandFactory.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.edit.domain.EditingDomain;
+
+/**
+ * Creates {@link Command}s for a specific {@link EditingDomain}.
+ * <p>
+ * See also {@link ICommandFactoriesRegistry}
+ */
+public interface ICommandFactory extends
+ org.eclipse.papyrus.emf.facet.util.emf.core.internal.exported.ICommandFactory {
+
+ // The content of this interface ha been moved to
+ // org.eclipse.papyrus.emf.facet.util.emf.core.internal.exported.ICommandFactory to
+ // solve a cyclic
+ // dependency issue (with the plug-in org.eclipse.papyrus.emf.facet.custom.ui)
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ICompositeEditorFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ICompositeEditorFactory.java
new file mode 100644
index 00000000000..ac1b4d49d71
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/ICompositeEditorFactory.java
@@ -0,0 +1,48 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Giquel (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * The factory interface for creating some control
+ * {@link AbstractCellEditorComposite} dedicated to the edition of one java
+ * type. The developer should register some factories using the dedicated
+ * extension point "compositeEditors"
+ *
+ * @param <T>
+ * the java type managed by this composite editor factory.
+ */
+public interface ICompositeEditorFactory<T> {
+
+ /**
+ * @return the type handled by the composite editors created by this factory. This method is
+ * required because of type erasure with Java generics.
+ */
+ Class<T> getHandledType();
+
+ /**
+ * Create a cell editor composite for a value of type &lt;T&gt;, as a subclass of
+ * {@link AbstractCellEditorComposite}, which is a SWT {@link Composite} suited for use as an
+ * in-place editor for values of type &lt;T&gt;.
+ *
+ * @param parent
+ * the SWT parent of the new composite
+ * @param style
+ * SWT style bits ({@link SWT#BORDER}, etc.)
+ * @return the new cell editor composite
+ */
+ AbstractCellEditorComposite<T> createCompositeEditor(Composite parent, int style);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IListener.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IListener.java
new file mode 100644
index 00000000000..72466a1ead4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IListener.java
@@ -0,0 +1,16 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors;
+
+public interface IListener {
+ /** Sent when an event that the receiver has registered for occurs. */
+ void handleEvent();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IModelCellEditHandler.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IModelCellEditHandler.java
new file mode 100644
index 00000000000..93df9d60bf6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IModelCellEditHandler.java
@@ -0,0 +1,21 @@
+/*******************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors;
+
+public interface IModelCellEditHandler {
+ /**
+ * Commit the value currently in the cell editor. This will get the value
+ * through {@link IModelCellEditor#getValue()} and set it on the model
+ * element under the cell.
+ */
+ void commit();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IModelCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IModelCellEditor.java
new file mode 100644
index 00000000000..42d9e8cc174
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IModelCellEditor.java
@@ -0,0 +1,51 @@
+/*******************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+public interface IModelCellEditor {
+
+ /**
+ * Initialize a cell for edition. This method must create a control inside
+ * the given parent to let the user edit the value.
+ *
+ * @param parent
+ * the SWT control that must contain the cell editor
+ * @param originalValue
+ * the original value of the cell being edited (that should be
+ * displayed in the control initially)
+ * @param editHandler
+ * call {@link IModelCellEditHandler#commit()} when the user
+ * "commits" the value (for example by hitting enter in a text
+ * cell editor)
+ * @param feature
+ * the model feature for which the value is edited
+ * @param source
+ * the object containing the attribute or reference
+ *
+ * @return the SWT {@link Control} to be used for capturing the new cell
+ * value
+ */
+ Control activateCell(Composite parent, Object originalValue, IModelCellEditHandler editHandler,
+ EStructuralFeature feature, EObject source);
+
+ /**
+ * @return the value currently in the control. This is the value that will
+ * be set on the model element when
+ * {@link IModelCellEditHandler#commit()} is called.
+ */
+ Object getValue();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IModelCellEditorContainer.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IModelCellEditorContainer.java
new file mode 100644
index 00000000000..57fc25cddd9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IModelCellEditorContainer.java
@@ -0,0 +1,25 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 339554 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor;
+
+public interface IModelCellEditorContainer<T extends AbstractModelCellEditor> {
+
+ public String getBundleName();
+
+ public void setBundleName(String bundleName);
+
+ public AbstractModelCellEditor getModelCellEditor();
+
+ public void setModelCellEditor(AbstractModelCellEditor modelCellEditor);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IModelCellEditorValidator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IModelCellEditorValidator.java
new file mode 100644
index 00000000000..e0cb65ab152
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IModelCellEditorValidator.java
@@ -0,0 +1,18 @@
+/*******************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors;
+
+/** Allows validating a cell editor's value before it is committed */
+public interface IModelCellEditorValidator {
+ /** @return whether the given value is valid for this cell editor */
+ boolean isValid(Object newValue);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/INaryEAttributeCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/INaryEAttributeCellEditor.java
new file mode 100644
index 00000000000..23393c67eef
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/INaryEAttributeCellEditor.java
@@ -0,0 +1,47 @@
+/*******************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 342451 - To be able to edit derived facet attributes and derived facet references in a table
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+public interface INaryEAttributeCellEditor<T extends Object> {
+
+ /**
+ * Initialize a cell for edition of a n-ary feature. This method must create
+ * a control inside the given parent to let the user edit the value.
+ *
+ * @param parent
+ * the SWT control that must contain the cell editor
+ * @param values
+ * the actual values of the reference
+ * @param feature
+ * the feature
+ * @param eObject
+ * the {@link EObject} being currently edited.
+ * @param editHandler
+ * @return the SWT {@link Control} to be used for capturing the new cell
+ * value
+ */
+ Control activateCell(Composite parent, List<T> values, IModelCellEditHandler editHandler, EObject eObject, EStructuralFeature feature);
+
+ /**
+ * @return the value currently in the control. This is the value that will
+ * be set on the model element when
+ * {@link IModelCellEditHandler#commit()} is called.
+ */
+ List<T> getValue();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/INaryEReferenceCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/INaryEReferenceCellEditor.java
new file mode 100644
index 00000000000..1eee3f07901
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/INaryEReferenceCellEditor.java
@@ -0,0 +1,62 @@
+/*******************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 342451 - To be able to edit derived facet attributes and derived facet references in a table
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+public interface INaryEReferenceCellEditor<T extends EObject> {
+
+ /**
+ * Initialize a cell for edition of a n-ary feature. This method must create
+ * a control inside the given parent to let the user edit the value.
+ *
+ * @param parent
+ * the SWT control that must contain the cell editor
+ * @param values
+ * the actual values of the reference
+ * @param availableValues
+ * the available value for the reference
+ * @param feature
+ * the feature
+ * @param eObject
+ * the {@link EObject} being currently edited.
+ * @param editHandler
+ * @return the SWT {@link Control} to be used for capturing the new cell
+ * value
+ */
+ Control activateCell(Composite parent, List<T> values, List<T> availableValues, IModelCellEditHandler editHandler, EObject eObject, EStructuralFeature feature);
+
+ /*
+ * Both lists are given here because in some case, we cannot calculate the the available
+ * element, for instance when editing FacetReference, we need to have the FacetContext deal with
+ * it.
+ *
+ * The EStructuralFeature is given here so that in the dialog we can know whether it is a
+ * containment one, which has an impact on the edition. It is also needed to instantiate new
+ * element, because we need to know its eType.
+ *
+ * The EObject is only here for dialog customization for instance. Do not modify it in the
+ * dialog, the dialog has to return the new values.
+ */
+
+ /**
+ * @return the value currently in the control. This is the value that will
+ * be set on the model element when
+ * {@link IModelCellEditHandler#commit()} is called.
+ */
+ List<T> getValue();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/INaryFeatureCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/INaryFeatureCellEditor.java
new file mode 100644
index 00000000000..4d99e1e1949
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/INaryFeatureCellEditor.java
@@ -0,0 +1,41 @@
+/*******************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+public interface INaryFeatureCellEditor {
+
+ /**
+ * Initialize a cell for edition of a n-ary feature. This method must create
+ * a control inside the given parent to let the user edit the value.
+ *
+ * @param parent
+ * the SWT control that must contain the cell editor
+ * @param feature
+ * the model feature for which the value is edited
+ * @param source
+ * the object containing the attribute or reference
+ * @param editingDomain
+ * the source {@link EObject} must be edited only through this
+ * {@link EditingDomain}
+ *
+ * @return the SWT {@link Control} to be used for capturing the new cell
+ * value
+ */
+ Control activateCell(Composite parent, EStructuralFeature feature, EObject source,
+ EditingDomain editingDomain);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IValidator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IValidator.java
new file mode 100644
index 00000000000..d3328931f19
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IValidator.java
@@ -0,0 +1,25 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors;
+
+import org.eclipse.core.runtime.IStatus;
+
+/** Used to validate the value of a cell editor. */
+public interface IValidator {
+ /**
+ * Validates the given value for the cell editor.
+ *
+ * @return an {@link IStatus} with a status of {@link IStatus#OK} if the given value is valid,
+ * or with a status of {@link IStatus#ERROR} otherwise.
+ */
+ IStatus validate(Object value);
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IWidget.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IWidget.java
new file mode 100644
index 00000000000..00c93a5bbfa
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IWidget.java
@@ -0,0 +1,34 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software)
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors;
+
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Listener;
+
+/** Implemented by {@link Composite}s that are encapsulated in {@link IModelCellEditor cell editors} */
+public interface IWidget<T extends Object> {
+ /** @return the validator used to determine whether an entered value is accepted */
+ IValidator getValidator();
+
+ /** Add a listener for changes to the value */
+ void addCommitListener(Listener listener);
+
+ /** Remove an existing listener */
+ void removeCommitListener(Listener listener);
+
+ /** Set the given value in the widget */
+ void setValue(final T value);
+
+ /** Get the value from the widget */
+ T getValue();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IWidget2.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IWidget2.java
new file mode 100644
index 00000000000..b1456160f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/IWidget2.java
@@ -0,0 +1,43 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software)
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors;
+
+import org.eclipse.swt.widgets.Composite;
+
+/** Implemented by {@link Composite}s that are encapsulated in {@link IModelCellEditor cell editors} */
+public interface IWidget2<T extends Object> {
+ /** @return the validator used to determine whether an entered value is accepted */
+ IValidator getValidator();
+
+ /**
+ * Add a listener that is notified when the value in the widget is "committed". That is, when
+ * the user hits Enter or clicks outside the widget.
+ */
+ void addCommitListener(IListener listener);
+
+ /** Remove an existing commit listener */
+ void removeCommitListener(IListener listener);
+
+ /** Add a listener for changes to the value */
+ void addChangeListener(IListener listener);
+
+ /** Remove an existing change listener */
+ void removeChangeListener(IListener listener);
+
+ /** Set the given value in the widget */
+ void setValue(final T value);
+
+ /** Get the value from the widget */
+ T getValue();
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/core/composite/registries/ICompositeEditorFactoriesRegistry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/core/composite/registries/ICompositeEditorFactoriesRegistry.java
new file mode 100644
index 00000000000..770750a5f2e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/core/composite/registries/ICompositeEditorFactoriesRegistry.java
@@ -0,0 +1,38 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 339554 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.core.composite.registries;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.composite.registries.CompositeEditorFactoriesRegistry;
+
+/**
+ * Registry for the "compositeEditorFactories" extension point
+ *
+ * @deprecated replaced by
+ * org.eclipse.papyrus.emf.facet.widgets.celleditors.core.composite
+ * .registry.ICompositeEditorFactoriesRegistry
+ */
+@Deprecated
+public interface ICompositeEditorFactoriesRegistry {
+
+ /** the singleton {@link ICompositeEditorFactoriesRegistry} */
+ ICompositeEditorFactoriesRegistry INSTANCE = new CompositeEditorFactoriesRegistry();
+
+ /** Whether there is a {@link CompositeEditorFactory} for the given type */
+ boolean hasCompositeEditorFactory(final Class<?> type);
+
+ /**
+ * @return the {@link CompositeEditorFactory} for the given type, or <code>null</code> if none is
+ * registered
+ */
+ <T> ICompositeEditorFactory<T> getCompositeEditorFactory(final Class<T> type);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/core/composite/registry/ICompositeEditorFactoriesRegistry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/core/composite/registry/ICompositeEditorFactoriesRegistry.java
new file mode 100644
index 00000000000..30152a9e7c8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/core/composite/registry/ICompositeEditorFactoriesRegistry.java
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 339554 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.core.composite.registry;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.composite.registries.CompositeEditorFactoriesRegistry;
+
+/**
+ * Registry for the "compositeEditorFactories" extension point
+ */
+public interface ICompositeEditorFactoriesRegistry {
+
+ /** the singleton {@link ICompositeEditorFactoriesRegistry} */
+ ICompositeEditorFactoriesRegistry INSTANCE = new CompositeEditorFactoriesRegistry();
+
+ /** Whether there is a {@link CompositeEditorFactory} for the given type */
+ boolean hasCompositeEditorFactory(final Class<?> type);
+
+ /**
+ * @return the {@link CompositeEditorFactory} for the given type, or <code>null</code> if none is
+ * registered
+ */
+ <T> ICompositeEditorFactory<T> getCompositeEditorFactory(final Class<T> type);
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/Activator.java
new file mode 100644
index 00000000000..f6bcc089d80
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/Activator.java
@@ -0,0 +1,69 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 339664 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal;
+
+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.facet.widgets.celleditors"; //$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
+ * )
+ */
+ @Override
+ public void start(final BundleContext context) throws Exception {
+ super.start(context);
+ Activator.plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext
+ * )
+ */
+ @Override
+ public void stop(final BundleContext context) throws Exception {
+ Activator.plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/CellEditorsRegistry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/CellEditorsRegistry.java
new file mode 100644
index 00000000000..30f45c80c81
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/CellEditorsRegistry.java
@@ -0,0 +1,342 @@
+/*******************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ * Nicolas Guyomar (Mia-Software) - Bug 339554 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ * Nicolas Bros (Mia-Software) - Bug 339855 - ModelCellEditor class should not be exposed
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.core.internal.exported.AbstractRegistry;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICellEditorsRegistry;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditorContainer;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.INaryFeatureCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.BasicCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorDeclarations;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.NaryFeatureCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.UnaryReferenceCellEditor;
+
+/** Registry for the "loadingDepth" extension point */
+public class CellEditorsRegistry extends AbstractRegistry implements ICellEditorsRegistry {
+
+ private static final String EXTENSION_POINT_NAMESPACE = "org.eclipse.papyrus.emf.facet.widgets.celleditors"; //$NON-NLS-1$
+ private static final String EXTENSION_POINT_NAME = "celleditors"; //$NON-NLS-1$
+
+ private static final String CELL_EDITORS_MODEL_ELEMENT = "cellEditorsModel"; //$NON-NLS-1$
+ private static final String PATH_ATTRIBUTE = "path"; //$NON-NLS-1$
+
+ /** A list of basic cell editors */
+ private final List<ModelCellEditorContainer<BasicCellEditor>> basicCellEditors = new ArrayList<ModelCellEditorContainer<BasicCellEditor>>();
+ /** A list of unary reference cell editors */
+ private final List<ModelCellEditorContainer<UnaryReferenceCellEditor>> unaryReferenceCellEditors = new ArrayList<ModelCellEditorContainer<UnaryReferenceCellEditor>>();
+ /** A list of n-ary reference cell editors */
+ private final List<ModelCellEditorContainer<NaryFeatureCellEditor>> naryFeatureCellEditors = new ArrayList<ModelCellEditorContainer<NaryFeatureCellEditor>>();
+
+ public CellEditorsRegistry() {
+ initialize();
+ }
+
+ public List<IModelCellEditorContainer<? extends AbstractModelCellEditor>> getAllCellEditors() {
+ List<IModelCellEditorContainer<? extends AbstractModelCellEditor>> allCellEditors = new ArrayList<IModelCellEditorContainer<? extends AbstractModelCellEditor>>();
+ for (ModelCellEditorContainer<BasicCellEditor> basicCellEditor : this.basicCellEditors) {
+ allCellEditors.add(basicCellEditor);
+ }
+ for (ModelCellEditorContainer<UnaryReferenceCellEditor> unaryReferenceCellEditor : this.unaryReferenceCellEditors) {
+ allCellEditors.add(unaryReferenceCellEditor);
+ }
+ for (ModelCellEditorContainer<NaryFeatureCellEditor> naryReferenceCellEditor : this.naryFeatureCellEditors) {
+ allCellEditors.add(naryReferenceCellEditor);
+ }
+ return allCellEditors;
+ }
+
+ /**
+ * Returns a cell editor wrapper for the given type, or <code>null</code> if none was found.
+ * Custom cell editors override the default ones (from
+ * "org.eclipse.papyrus.emf.facet.widgets.celleditors").
+ *
+ * @param type
+ * the type for which to get a cell editor wrapper
+ * @param many
+ * whether to get a cell editor to edit a single value or a list of values
+ * @return the cell editor wrapper or <code>null</code> if none was found for the given type
+ */
+ public ModelCellEditor getCellEditorWrapperFor(final EClassifier type, final boolean many) {
+ return getCellEditorWrapperFor(type, many, null);
+ }
+
+ /**
+ * Returns a cell editor to edit a single value of the given type, or <code>null</code> if none
+ * was found. Custom cell editors override the default ones (from
+ * "org.eclipse.papyrus.emf.facet.widgets.celleditors").
+ *
+ * @param type
+ * the type for which to get a cell editor
+ * @return the cell editor or <code>null</code> if none was found for the given type
+ */
+ public IModelCellEditor getCellEditorFor(final EClassifier type) {
+ ModelCellEditor cellEditorWrapper = getCellEditorWrapperFor(type, false);
+ if (cellEditorWrapper != null) {
+ return (IModelCellEditor) cellEditorWrapper.getCellEditorImplementation();
+ }
+ return null;
+ }
+
+ /**
+ * Returns a cell editor wrapper to edit a list of values of the given type, or
+ * <code>null</code> if none was found. Custom cell editors override the default ones (from
+ * "org.eclipse.papyrus.emf.facet.widgets.celleditors").
+ *
+ * @param type
+ * the type for which to get a cell editor
+ * @return the cell editor wrapper or <code>null</code> if none was found for the given type
+ */
+ public INaryFeatureCellEditor getNaryCellEditorFor(final EClassifier type) {
+ ModelCellEditor cellEditorWrapper = getCellEditorWrapperFor(type, true);
+ if (cellEditorWrapper != null) {
+ return (INaryFeatureCellEditor) cellEditorWrapper.getCellEditorImplementation();
+ }
+ return null;
+ }
+
+ public IModelCellEditor getCellEditorFor(final EClassifier type,
+ final List<AbstractModelCellEditor> preferredCellEditors) {
+ ModelCellEditor cellEditorWrapper = getCellEditorWrapperFor(type, false,
+ preferredCellEditors);
+ if (cellEditorWrapper != null) {
+ return (IModelCellEditor) cellEditorWrapper.getCellEditorImplementation();
+ }
+ return null;
+ }
+
+ public INaryFeatureCellEditor getNaryCellEditorFor(final EClassifier type,
+ final List<AbstractModelCellEditor> preferredCellEditors) {
+ ModelCellEditor cellEditorWrapper = getCellEditorWrapperFor(type, true,
+ preferredCellEditors);
+ if (cellEditorWrapper != null) {
+ return (INaryFeatureCellEditor) cellEditorWrapper.getCellEditorImplementation();
+ }
+ return null;
+ }
+
+ /**
+ * Returns a cell editor for the given type, or <code>null</code> if none was found. Custom cell
+ * editors override the default ones (from "org.eclipse.papyrus.emf.facet.widgets.celleditors").
+ *
+ * @param type
+ * the type for which to get a cell editor
+ * @param many
+ * whether to get a cell editor to edit a single value or a list of values
+ * @param preferredCellEditors
+ * the cell editors that should be chosen in case of conflicts (several cell editors
+ * defined for the same type)
+ * @return the cell editor or <code>null</code> if none was found for the given type
+ */
+ public ModelCellEditor getCellEditorWrapperFor(final EClassifier type, final boolean many,
+ final List<AbstractModelCellEditor> preferredCellEditors) {
+
+ List<IModelCellEditorContainer<? extends AbstractModelCellEditor>> allCellEditorContainers = getAllCellEditors();
+
+ List<ModelCellEditor> cellEditors = new ArrayList<ModelCellEditor>();
+
+ for (IModelCellEditorContainer<? extends AbstractModelCellEditor> modelCellEditorContainer : allCellEditorContainers) {
+ AbstractModelCellEditor modelCellEditor = modelCellEditorContainer.getModelCellEditor();
+ if (isCellEditorForType(modelCellEditor, type, many)) {
+ cellEditors.add(new ModelCellEditor(modelCellEditorContainer.getBundleName(),
+ modelCellEditorContainer.getModelCellEditor()));
+ }
+ }
+
+ ModelCellEditor selectedCellEditor = null;
+
+ if (preferredCellEditors != null) {
+ for (AbstractModelCellEditor preferredCellEditor : preferredCellEditors) {
+ if (isCellEditorForType(preferredCellEditor, type, many)) {
+ if (selectedCellEditor != null) {
+ throw new IllegalArgumentException(
+ "Several preferred cell editors are defined for type: " //$NON-NLS-1$
+ + EcoreUtil.getURI(type));
+ }
+ selectedCellEditor = new ModelCellEditor("", preferredCellEditor); //$NON-NLS-1$
+ }
+ }
+ }
+
+ if (selectedCellEditor == null) {
+ if (cellEditors.size() == 1) {
+ selectedCellEditor = cellEditors.get(0);
+ } else if (cellEditors.size() > 1) {
+ boolean skippedDefault = false;
+ for (ModelCellEditor cellEditor : cellEditors) {
+ // lower priority for
+ // org.eclipse.papyrus.emf.facet.widgets.celleditors.*
+ if (cellEditor.getBundleName().startsWith(
+ "org.eclipse.papyrus.emf.facet.widgets.celleditors")) { //$NON-NLS-1$
+ if (skippedDefault) {
+ Logger.logError(
+ "Several default cell editors are defined in EMF Facet for type: " //$NON-NLS-1$
+ + EcoreUtil.getURI(type), Activator.getDefault());
+ selectedCellEditor = cellEditor;
+ break;
+ }
+ skippedDefault = true;
+ continue;
+ }
+ if (selectedCellEditor != null) {
+ Logger.logWarning("Several cell editors are defined for type: " //$NON-NLS-1$
+ + EcoreUtil.getURI(type), Activator.getDefault());
+ break;
+ }
+ selectedCellEditor = cellEditor;
+ }
+ }
+ }
+
+ return selectedCellEditor;
+ }
+
+ public static boolean isCellEditorForType(final AbstractModelCellEditor modelCellEditor,
+ final EClassifier type, final boolean many) {
+ if (many != (modelCellEditor instanceof NaryFeatureCellEditor)) {
+ return false;
+ }
+ return isSuperType(modelCellEditor.getCellType(), type);
+ }
+
+ private static boolean isSuperType(final EClassifier superType, final EClassifier subType) {
+ if (superType == subType) {
+ return true;
+ }
+
+ if (superType instanceof EClass && subType instanceof EClass) {
+ // special case because isSuperTypeOf doesn't handle it
+ if (superType == EcorePackage.eINSTANCE.getEObject()) {
+ return true;
+ }
+
+ EClass superTypeEClass = (EClass) superType;
+ EClass subTypeEClass = (EClass) subType;
+ return superTypeEClass.isSuperTypeOf(subTypeEClass);
+ }
+
+ if (superType == EcorePackage.eINSTANCE.getEDataType() && subType instanceof EDataType) {
+ // cf Bug 331539 - cell editor registered for type "EDataType"
+ return true;
+ }
+
+ return false;
+ }
+
+ public List<ModelCellEditorContainer<BasicCellEditor>> getBasicCellEditors() {
+ return this.basicCellEditors;
+ }
+
+ public List<ModelCellEditorContainer<UnaryReferenceCellEditor>> getUnaryReferenceCellEditors() {
+ return this.unaryReferenceCellEditors;
+ }
+
+ public List<ModelCellEditorContainer<NaryFeatureCellEditor>> getNaryFeatureCellEditors() {
+ return this.naryFeatureCellEditors;
+ }
+
+ @Override
+ protected String getExtensionPointName() {
+ return CellEditorsRegistry.EXTENSION_POINT_NAME;
+ }
+
+ @Override
+ protected String getExtensionPointNamespace() {
+ return CellEditorsRegistry.EXTENSION_POINT_NAMESPACE;
+ }
+
+ @Override
+ protected void handleRootElement(final IConfigurationElement configurationElement) {
+ final String name = configurationElement.getName();
+ if (name.equalsIgnoreCase(CellEditorsRegistry.CELL_EDITORS_MODEL_ELEMENT)) {
+ readModelElement(configurationElement);
+ } else {
+ logUnknownElement(configurationElement);
+ }
+ }
+
+ /** Read a 'cellEditorsModel' element */
+ private void readModelElement(final IConfigurationElement configurationElement) {
+ final String path = configurationElement.getAttribute(CellEditorsRegistry.PATH_ATTRIBUTE);
+ String bundleName = configurationElement.getContributor().getName();
+ URI uri = URI.createURI("platform:/plugin/" //$NON-NLS-1$
+ + configurationElement.getContributor().getName() + "/" + path); //$NON-NLS-1$
+ ResourceSet resourceSet = new ResourceSetImpl();
+ Resource resource = resourceSet.getResource(uri, true);
+ if (resource != null) {
+ EList<EObject> contents = resource.getContents();
+ if (contents.size() == 1) {
+ EObject eObject = contents.get(0);
+ if (eObject instanceof ModelCellEditorDeclarations) {
+ ModelCellEditorDeclarations modelCellEditors = (ModelCellEditorDeclarations) eObject;
+ EList<AbstractModelCellEditor> allCellEditors = modelCellEditors
+ .getModelCellEditors();
+ for (AbstractModelCellEditor modelCellEditor : allCellEditors) {
+ if (modelCellEditor instanceof BasicCellEditor) {
+ BasicCellEditor basicCellEditor = (BasicCellEditor) modelCellEditor;
+ ModelCellEditorContainer<BasicCellEditor> modelCellEditorContainer = new ModelCellEditorContainer<BasicCellEditor>();
+ modelCellEditorContainer.setBundleName(bundleName);
+ modelCellEditorContainer.setModelCellEditor(basicCellEditor);
+ this.basicCellEditors.add(modelCellEditorContainer);
+ } else if (modelCellEditor instanceof UnaryReferenceCellEditor) {
+ UnaryReferenceCellEditor unaryReferenceCellEditor = (UnaryReferenceCellEditor) modelCellEditor;
+ ModelCellEditorContainer<UnaryReferenceCellEditor> modelCellEditorContainer = new ModelCellEditorContainer<UnaryReferenceCellEditor>();
+ modelCellEditorContainer.setBundleName(bundleName);
+ modelCellEditorContainer.setModelCellEditor(unaryReferenceCellEditor);
+ this.unaryReferenceCellEditors.add(modelCellEditorContainer);
+ } else if (modelCellEditor instanceof NaryFeatureCellEditor) {
+ NaryFeatureCellEditor naryFeatureCellEditor = (NaryFeatureCellEditor) modelCellEditor;
+ ModelCellEditorContainer<NaryFeatureCellEditor> modelCellEditorContainer = new ModelCellEditorContainer<NaryFeatureCellEditor>();
+ modelCellEditorContainer.setBundleName(bundleName);
+ modelCellEditorContainer.setModelCellEditor(naryFeatureCellEditor);
+ this.naryFeatureCellEditors.add(modelCellEditorContainer);
+ } else {
+ Logger.logError("Not handled: " //$NON-NLS-1$
+ + modelCellEditor.getClass().getSimpleName(),
+ Activator.getDefault());
+ }
+ }
+ } else {
+ Logger.logError("Root element must be of type " //$NON-NLS-1$
+ + ModelCellEditorDeclarations.class.getSimpleName() + ": " + uri, //$NON-NLS-1$
+ Activator.getDefault());
+ }
+ } else {
+ Logger.logError("Resource should have one and only one root: " + uri, //$NON-NLS-1$
+ Activator.getDefault());
+ }
+ } else {
+ Logger.logError("Error reading resource: " + uri, Activator.getDefault()); //$NON-NLS-1$
+ }
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/CommandFactoriesRegistry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/CommandFactoriesRegistry.java
new file mode 100644
index 00000000000..4e37fcd74ea
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/CommandFactoriesRegistry.java
@@ -0,0 +1,100 @@
+/*******************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 339554 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.core.internal.exported.AbstractRegistry;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICommandFactoriesRegistry;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICommandFactory;
+
+/** Registry for the "loadingDepth" extension point */
+public class CommandFactoriesRegistry extends AbstractRegistry implements ICommandFactoriesRegistry {
+
+ private static final String EXTENSION_POINT_NAMESPACE = "org.eclipse.papyrus.emf.facet.widgets.celleditors"; //$NON-NLS-1$
+ private static final String EXTENSION_POINT_NAME = "commandFactories"; //$NON-NLS-1$
+
+ private static final String COMMAND_FACTORY_ELEMENT = "commandFactory"; //$NON-NLS-1$
+ private static final String CLASS_ATTRIBUTE = "class"; //$NON-NLS-1$
+
+
+ private final List<ICommandFactory> commandFactories = new ArrayList<ICommandFactory>();
+ private final ICommandFactory defaultCommandFactory = new DefaultCommandFactory();
+
+ public CommandFactoriesRegistry() {
+ initialize();
+ }
+
+ public List<ICommandFactory> getCommandFactories() {
+ return this.commandFactories;
+ }
+
+ public ICommandFactory getCommandFactoryFor(final EditingDomain editingDomain) {
+ for (ICommandFactory commandFactory : this.commandFactories) {
+ if (commandFactory.handles(editingDomain)) {
+ return commandFactory;
+ }
+ }
+ return this.defaultCommandFactory;
+ }
+
+ @Override
+ protected String getExtensionPointName() {
+ return CommandFactoriesRegistry.EXTENSION_POINT_NAME;
+ }
+
+ @Override
+ protected String getExtensionPointNamespace() {
+ return CommandFactoriesRegistry.EXTENSION_POINT_NAMESPACE;
+ }
+
+ @Override
+ protected void handleRootElement(final IConfigurationElement configurationElement) {
+ final String name = configurationElement.getName();
+ if (name.equalsIgnoreCase(CommandFactoriesRegistry.COMMAND_FACTORY_ELEMENT)) {
+ readModelElement(configurationElement);
+ } else {
+ logUnknownElement(configurationElement);
+ }
+ }
+
+ /** Read a 'cellEditorsModel' element */
+ private void readModelElement(final IConfigurationElement configurationElement) {
+ Object object;
+ try {
+ object = configurationElement
+ .createExecutableExtension(CommandFactoriesRegistry.CLASS_ATTRIBUTE);
+ } catch (CoreException e) {
+ Logger.logError(e, Activator.getDefault());
+ return;
+ }
+ if (object == null) {
+ logMissingAttribute(configurationElement, CommandFactoriesRegistry.CLASS_ATTRIBUTE);
+ return;
+ }
+
+ if (object instanceof ICommandFactory) {
+ ICommandFactory commandFactory = (ICommandFactory) object;
+ this.commandFactories.add(commandFactory);
+ } else {
+ logError(configurationElement,
+ "class must implement " + ICommandFactory.class.getSimpleName()); //$NON-NLS-1$
+ }
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/DefaultCommandFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/DefaultCommandFactory.java
new file mode 100644
index 00000000000..fde44da5bed
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/DefaultCommandFactory.java
@@ -0,0 +1,62 @@
+/*******************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 339554 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.edit.command.AddCommand;
+import org.eclipse.emf.edit.command.DeleteCommand;
+import org.eclipse.emf.edit.command.MoveCommand;
+import org.eclipse.emf.edit.command.RemoveCommand;
+import org.eclipse.emf.edit.command.SetCommand;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICommandFactory;
+
+/**
+ * This is the command factory that is used when no other command factory is
+ * specified through the "commandFactories" extension point.
+ */
+public class DefaultCommandFactory implements ICommandFactory {
+
+ public boolean handles(final EditingDomain editingDomain) {
+ return true;
+ }
+
+ public Command createSetCommand(final EditingDomain domain, final Object owner,
+ final Object feature, final Object value) {
+ return SetCommand.create(domain, owner, feature, value);
+ }
+
+ public Command createSetCommand(final EditingDomain domain, final Object owner,
+ final Object feature, final Object value, final int index) {
+ return SetCommand.create(domain, owner, feature, value, index);
+ }
+
+ public Command createMoveCommand(final EditingDomain domain, final Object owner,
+ final Object feature, final Object value, final int index) {
+ return MoveCommand.create(domain, owner, feature, value, index);
+ }
+
+ public Command createAddCommand(final EditingDomain domain, final Object owner,
+ final Object feature, final Object value) {
+ return AddCommand.create(domain, owner, feature, value);
+ }
+
+ public Command createRemoveCommand(final EditingDomain domain, final Object owner,
+ final Object feature, final Object value) {
+ return RemoveCommand.create(domain, owner, feature, value);
+ }
+
+ public Command createDeleteCommand(final EditingDomain domain, final Object object) {
+ return DeleteCommand.create(domain, object);
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/Messages.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/Messages.java
new file mode 100644
index 00000000000..13f592b06cb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/Messages.java
@@ -0,0 +1,53 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 339664 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal;
+
+import org.eclipse.osgi.util.NLS;
+
+public final class Messages extends NLS {
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.messages"; //$NON-NLS-1$
+ public static String CoreIFileComposite_mustSelectFile;
+ public static String CoreIFileComposite_selectFile;
+ public static String NaryAttributeEditingDialog_add;
+ public static String NaryAttributeEditingDialog_delete;
+ public static String NaryAttributeEditingDialog_enterNewValuePlaceholder;
+ public static String NaryReferenceEditingDialog_add;
+ public static String NaryReferenceEditingDialog_addAll;
+ public static String NaryReferenceEditingDialog_addAllTooltip;
+ public static String NaryReferenceEditingDialog_addTooltip;
+ public static String NaryReferenceEditingDialog_availableValues;
+ public static String NaryReferenceEditingDialog_deleteElements;
+ public static String NaryReferenceEditingDialog_deleteElementsLong;
+ public static String NaryReferenceEditingDialog_down;
+ public static String NaryReferenceEditingDialog_moveWarning;
+ public static String NaryReferenceEditingDialog_moveElement;
+ public static String NaryReferenceEditingDialog_newInstance;
+ public static String NaryReferenceEditingDialog_remove;
+ public static String NaryReferenceEditingDialog_removeAll;
+ public static String NaryReferenceEditingDialog_removeAllTooltip;
+ public static String NaryReferenceEditingDialog_removeTooltip;
+ public static String NaryReferenceEditingDialog_shellTitle;
+ public static String NaryReferenceEditingDialog_typeFilterText;
+ public static String NaryReferenceEditingDialog_up;
+ public static String NaryReferenceEditingDialog_values;
+ public static String UnaryReferenceCellEditorComposite_0;
+ public static String UnaryReferenceCellEditorComposite_1;
+ public static String UnaryReferenceCellEditorComposite_2;
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(Messages.BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ModelCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ModelCellEditor.java
new file mode 100644
index 00000000000..10858b0c742
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ModelCellEditor.java
@@ -0,0 +1,81 @@
+/*******************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 339855 - ModelCellEditor class should not be exposed
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal;
+
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor;
+
+public class ModelCellEditor {
+ private final String bundleName;
+ private final AbstractModelCellEditor modelCellEditor;
+
+ public ModelCellEditor(final String bundleName, final AbstractModelCellEditor modelCellEditor) {
+ this.bundleName = bundleName;
+ this.modelCellEditor = modelCellEditor;
+ }
+
+ public String getBundleName() {
+ return this.bundleName;
+ }
+
+ public String getCellID() {
+ return this.modelCellEditor.getCellId();
+ }
+
+ public AbstractModelCellEditor getModelCellEditor() {
+ return this.modelCellEditor;
+ }
+
+ public Object getCellEditorImplementation() {
+ String className = this.modelCellEditor.getModelCellEditorImpl();
+
+ Class<?> classInstance = null;
+ try {
+ classInstance = Platform.getBundle(this.bundleName).loadClass(className);
+ } catch (Exception e) {
+ Logger.logError("Could not find class: " + className, //$NON-NLS-1$
+ Activator.getDefault());
+ return null;
+ }
+
+ Object instance = null;
+ try {
+ instance = classInstance.newInstance();
+ } catch (Exception e) {
+ Logger.logError("Could not instantiate class: " + className, //$NON-NLS-1$
+ Activator.getDefault());
+ return null;
+ }
+ return instance;
+ }
+
+ @Override
+ public boolean equals(final Object obj) {
+ if (obj instanceof ModelCellEditor) {
+ ModelCellEditor other = (ModelCellEditor) obj;
+ return other.getCellID().equals(getCellID());
+ }
+ return false;
+ }
+
+ @Override
+ public int hashCode() {
+ return getCellID().hashCode();
+ }
+
+ @Override
+ public String toString() {
+ return getBundleName() + "#" + getCellID(); //$NON-NLS-1$
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ModelCellEditorContainer.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ModelCellEditorContainer.java
new file mode 100644
index 00000000000..89e1c3b5699
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ModelCellEditorContainer.java
@@ -0,0 +1,39 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 339554 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal;
+
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditorContainer;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor;
+
+public class ModelCellEditorContainer<T extends AbstractModelCellEditor> implements
+ IModelCellEditorContainer<AbstractModelCellEditor> {
+
+ private AbstractModelCellEditor modelCellEditor;
+ private String bundleName;
+
+ public String getBundleName() {
+ return this.bundleName;
+ }
+
+ public AbstractModelCellEditor getModelCellEditor() {
+ return this.modelCellEditor;
+ }
+
+ public void setBundleName(final String bundleName) {
+ this.bundleName = bundleName;
+ }
+
+ public void setModelCellEditor(final AbstractModelCellEditor modelCellEditor) {
+ this.modelCellEditor = modelCellEditor;
+
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/composite/registries/CompositeEditorFactoriesRegistry.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/composite/registries/CompositeEditorFactoriesRegistry.java
new file mode 100644
index 00000000000..56adb56ac04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/composite/registries/CompositeEditorFactoriesRegistry.java
@@ -0,0 +1,123 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Fabien Giquel (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ * Nicolas Guyomar (Mia-Software) - Bug 338826 - CompositeEditorFactoriesRegistry.getCompositeEditorFactory() should be parameterized
+ * Nicolas Guyomar (Mia-Software) - Bug 339554 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ * Nicolas Bros (Mia-Software) - Bug 341369 - CompositeEditorFactoriesRegistry : inverted type comparison
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.composite.registries;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.util.core.internal.exported.AbstractRegistry;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.Activator;
+
+/**
+ * Registry for composite editors extension point
+ */
+public class CompositeEditorFactoriesRegistry extends AbstractRegistry
+ implements
+ org.eclipse.papyrus.emf.facet.widgets.celleditors.core.composite.registries.ICompositeEditorFactoriesRegistry,
+ org.eclipse.papyrus.emf.facet.widgets.celleditors.core.composite.registry.ICompositeEditorFactoriesRegistry {
+
+ private static final String CLASS_ATTRIBUTE = "class"; //$NON-NLS-1$
+
+ private static final String EXTENSION_POINT_NAMESPACE = "org.eclipse.papyrus.emf.facet.widgets.celleditors"; //$NON-NLS-1$
+ private static final String EXTENSION_POINT_NAME = "compositeEditorFactories"; //$NON-NLS-1$
+ private final List<ICompositeEditorFactory<?>> compositeFactories;
+
+ public CompositeEditorFactoriesRegistry() {
+ this.compositeFactories = new ArrayList<ICompositeEditorFactory<?>>();
+ initialize();
+ }
+
+ public boolean hasCompositeEditorFactory(final Class<?> type) {
+ return getCompositeEditorFactory(type) != null;
+ }
+
+ public <T> ICompositeEditorFactory<T> getCompositeEditorFactory(final Class<T> type) {
+ if (this.compositeFactories == null) {
+ initialize();
+ }
+
+ final Class<?> objectType;
+ if (type == byte.class) {
+ objectType = Byte.class;
+ } else if (type == short.class) {
+ objectType = Short.class;
+ } else if (type == int.class) {
+ objectType = Integer.class;
+ } else if (type == long.class) {
+ objectType = Long.class;
+ } else if (type == float.class) {
+ objectType = Float.class;
+ } else if (type == double.class) {
+ objectType = Double.class;
+ } else if (type == boolean.class) {
+ objectType = Boolean.class;
+ } else if (type == char.class) {
+ objectType = Character.class;
+ } else {
+ objectType = type;
+ }
+
+ // choose the factory with the most "precise" type (lowest in the inheritance hierarchy)
+ Class<?> mostPreciseType = null;
+ ICompositeEditorFactory<T> mostPreciseFactory = null;
+ for (ICompositeEditorFactory<?> factory : this.compositeFactories) {
+ Class<?> handledType = factory.getHandledType();
+ if (handledType != null && handledType.isAssignableFrom(objectType)) {
+ if (mostPreciseType == null || mostPreciseType.isAssignableFrom(handledType)) {
+ mostPreciseType = handledType;
+ mostPreciseFactory = castMostPreciseFactory(factory);
+ }
+ }
+ }
+ return mostPreciseFactory;
+ }
+
+ // Only here to isolate the suppress warning
+ @SuppressWarnings("unchecked")
+ private <T> ICompositeEditorFactory<T> castMostPreciseFactory(final ICompositeEditorFactory<?> factory) {
+ ICompositeEditorFactory<T> mostPreciseFactory;
+ mostPreciseFactory = (ICompositeEditorFactory<T>) factory;
+ return mostPreciseFactory;
+ }
+
+ @Override
+ protected String getExtensionPointNamespace() {
+ return CompositeEditorFactoriesRegistry.EXTENSION_POINT_NAMESPACE;
+ }
+
+ @Override
+ protected String getExtensionPointName() {
+ return CompositeEditorFactoriesRegistry.EXTENSION_POINT_NAME;
+ }
+
+ @Override
+ protected void handleRootElement(final IConfigurationElement configurationElement) {
+ ICompositeEditorFactory<?> factory;
+ try {
+ factory = (ICompositeEditorFactory<?>) configurationElement
+ .createExecutableExtension(CompositeEditorFactoriesRegistry.CLASS_ATTRIBUTE);
+ this.compositeFactories.add(factory);
+ } catch (CoreException e) {
+ Logger.logError(
+ e,
+ "A problem occured when instantiating a composite editor factory", Activator.getDefault()); //$NON-NLS-1$
+ }
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/EEnumCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/EEnumCellEditor.java
new file mode 100644
index 00000000000..06b18c24fa6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/EEnumCellEditor.java
@@ -0,0 +1,62 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 339664 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ * Gregoire Dupe (Mia-Software) - Bug 344563 - NPE with Enum Editor
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core;
+
+import org.eclipse.emf.common.util.Enumerator;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IListener;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite.EnumeratorComposite;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+/**
+ * This is a enum value editor
+ *
+ * @author Gregoire Dupe (Mia-Software)
+ *
+ */
+public class EEnumCellEditor implements IModelCellEditor {
+
+ private EnumeratorComposite<Enumerator> composite = null;
+
+ public Control activateCell(final Composite parent, final Object originalValue,
+ final IModelCellEditHandler editHandler, final EStructuralFeature feature,
+ final EObject source) {
+ if (!(feature.getEType() instanceof EEnum)) {
+ throw new IllegalArgumentException("EEnum feature type"); //$NON-NLS-1$
+ }
+ this.composite = new EnumeratorComposite<Enumerator>(parent);
+ this.composite.setEEnum((EEnum) feature.getEType());
+
+ this.composite.setValue((Enumerator) originalValue);
+
+ this.composite.addCommitListener(new IListener() {
+ public void handleEvent() {
+ editHandler.commit();
+ }
+ });
+
+ return this.composite;
+ }
+
+ public Object getValue() {
+ return this.composite.getValue();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/NaryAttributeCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/NaryAttributeCellEditor.java
new file mode 100644
index 00000000000..a63db464899
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/NaryAttributeCellEditor.java
@@ -0,0 +1,54 @@
+/*******************************************************************************
+ * Copyright (c) 2010, 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 339664 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ * Nicolas Guyomar (Mia-Software) - Bug 342451 - To be able to edit derived facet attributes and derived facet references in a table
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.INaryEAttributeCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.ui.NaryAttributeEditingDialog;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+public class NaryAttributeCellEditor<T extends Object> implements INaryEAttributeCellEditor<T> {
+
+ private NaryAttributeEditingDialog<T> naryAttributeEditingDialog;
+
+ public Control activateCell(final Composite parent, final List<T> values,
+ final IModelCellEditHandler editHandler, final EObject eObject,
+ final EStructuralFeature feature) {
+ final Composite placeholderComposite = new Composite(parent, SWT.NONE);
+ this.naryAttributeEditingDialog = new NaryAttributeEditingDialog<T>(parent.getShell(),
+ values, editHandler, eObject, feature) {
+ @Override
+ public boolean close() {
+ placeholderComposite.dispose();
+ return super.close();
+ }
+ };
+ this.naryAttributeEditingDialog.open();
+
+ return placeholderComposite;
+ }
+
+ public List<T> getValue() {
+ if (this.naryAttributeEditingDialog != null) {
+ return this.naryAttributeEditingDialog.getValue();
+ }
+ return null;
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/NaryReferenceCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/NaryReferenceCellEditor.java
new file mode 100644
index 00000000000..5eda3164bde
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/NaryReferenceCellEditor.java
@@ -0,0 +1,55 @@
+/*******************************************************************************
+ * Copyright (c) 2010, 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 339664 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ * Nicolas Guyomar (Mia-Software) - Bug 342451 - To be able to edit derived facet attributes and derived facet references in a table
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.INaryEReferenceCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.ui.NaryReferenceEditingDialog;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+public class NaryReferenceCellEditor<T extends EObject> implements INaryEReferenceCellEditor<T> {
+
+ private NaryReferenceEditingDialog<T> naryReferenceEditingDialog;
+
+ public Control activateCell(final Composite parent, final List<T> values,
+ final List<T> availableValues, final IModelCellEditHandler editHandler,
+ final EObject eObject, final EStructuralFeature feature) {
+ final Composite placeholderComposite = new Composite(parent, SWT.NONE);
+ this.naryReferenceEditingDialog = new NaryReferenceEditingDialog<T>(parent.getShell(),
+ values, availableValues, editHandler, eObject, feature) {
+ @Override
+ public boolean close() {
+ placeholderComposite.dispose();
+ return super.close();
+ }
+ };
+ this.naryReferenceEditingDialog.open();
+
+ return placeholderComposite;
+ }
+
+ public List<T> getValue() {
+ if (this.naryReferenceEditingDialog != null) {
+ return this.naryReferenceEditingDialog.getValue();
+ }
+ return null;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/UnaryReferenceCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/UnaryReferenceCellEditor.java
new file mode 100644
index 00000000000..7154a7c32e8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/UnaryReferenceCellEditor.java
@@ -0,0 +1,53 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 339664 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.util.emf.core.ModelUtils;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IListener;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite.UnaryReferenceCellEditorComposite;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+/** A cell editor for unary references */
+public class UnaryReferenceCellEditor implements IModelCellEditor {
+
+ private UnaryReferenceCellEditorComposite cellEditorComposite;
+
+ public Control activateCell(final Composite parent, final Object originalValue,
+ final IModelCellEditHandler editHandler, final EStructuralFeature feature,
+ final EObject source) {
+
+ List<EObject> list = ModelUtils.computeAssignableElements(feature, source);
+
+ this.cellEditorComposite = new UnaryReferenceCellEditorComposite(parent, list);
+ this.cellEditorComposite.addCommitListener(new IListener() {
+ public void handleEvent() {
+ editHandler.commit();
+ }
+ });
+
+ return this.cellEditorComposite;
+ }
+
+ public Object getValue() {
+ return this.cellEditorComposite.getValue();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/AbstractIResourceComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/AbstractIResourceComposite.java
new file mode 100644
index 00000000000..a8efcfa253d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/AbstractIResourceComposite.java
@@ -0,0 +1,149 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 339664 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite;
+
+import org.eclipse.core.resources.IResource;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.DisposeEvent;
+import org.eclipse.swt.events.DisposeListener;
+import org.eclipse.swt.events.KeyAdapter;
+import org.eclipse.swt.events.KeyEvent;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Text;
+
+public abstract class AbstractIResourceComposite<T extends IResource> extends
+ AbstractCellEditorComposite<T> {
+
+ /** the control that is used to edit the contents of the cell */
+ private final Button button;
+ private Text text = null;
+
+ private final Composite parentControl;
+
+ public AbstractIResourceComposite(final Composite parent) {
+ this(parent, SWT.NONE);
+ }
+
+ public AbstractIResourceComposite(final Composite parent, final int style) {
+ super(parent);
+ this.parentControl = parent;
+
+ GridLayout gd = new GridLayout(2, false);
+ gd.marginHeight = 0;
+ gd.marginWidth = 0;
+ gd.horizontalSpacing = 0;
+ setLayout(gd);
+
+ this.text = new Text(this, style);
+ this.text.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
+ this.button = new Button(this, SWT.PUSH);
+ this.button.setText("..."); //$NON-NLS-1$
+ GridData data = new GridData(SWT.FILL, SWT.FILL, false, true);
+ this.button.setLayoutData(data);
+
+ this.button.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ browseResource();
+ }
+ });
+
+ // commit the cell editor when the mouse is clicked
+ // anywhere outside the text field
+ final Listener clickListener = new Listener() {
+ public void handleEvent(final Event event) {
+ if (event.widget instanceof Control) {
+ Control control = (Control) event.widget;
+ if (control.getShell() == getParentControl().getShell()) {
+ if (event.widget != getButton() && event.widget != getText()) {
+ fireCommit();
+ }
+ }
+ }
+ }
+ };
+ Display.getDefault().addFilter(SWT.MouseDown, clickListener);
+
+ // this listener is only here to remove
+ // the other listener from the Display
+ this.text.addDisposeListener(new DisposeListener() {
+ public void widgetDisposed(final DisposeEvent e) {
+ Display.getDefault().removeFilter(SWT.MouseDown, clickListener);
+ }
+ });
+
+ this.text.addKeyListener(new KeyAdapter() {
+ @Override
+ public void keyPressed(final KeyEvent event) {
+ // Enter key pressed
+ if ((event.keyCode == SWT.CR && event.stateMask == 0)
+ || (event.keyCode == SWT.KEYPAD_CR && event.stateMask == 0)) {
+ fireCommit();
+ } else if (event.keyCode == SWT.ESC && event.stateMask == 0) {
+ // Escape key pressed
+ close();
+ }
+ }
+ });
+
+ this.text.addModifyListener(new ModifyListener() {
+ public void modifyText(final ModifyEvent e) {
+ fireChanged();
+ }
+ });
+
+ this.text.forceFocus();
+ }
+
+ protected Button getButton() {
+ return this.button;
+ }
+
+ protected Text getText() {
+ return this.text;
+ }
+
+ protected void commit() {
+ fireCommit();
+ }
+
+ protected Composite getParentControl() {
+ return this.parentControl;
+ }
+
+ public void setValue(final IResource value) {
+ if (value != null) {
+ this.text.setText(value.getFullPath().toString());
+ } else {
+ this.text.setText(""); //$NON-NLS-1$
+ }
+ }
+
+ public abstract T getValue();
+
+ protected abstract void browseResource();
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/CoreIFileComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/CoreIFileComposite.java
new file mode 100644
index 00000000000..564a921235c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/CoreIFileComposite.java
@@ -0,0 +1,75 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ * Nicolas Bros (Mia-Software) - Bug 339664 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.Activator;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.Messages;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.dialogs.ElementTreeSelectionDialog;
+import org.eclipse.ui.dialogs.ISelectionStatusValidator;
+import org.eclipse.ui.model.WorkbenchContentProvider;
+import org.eclipse.ui.model.WorkbenchLabelProvider;
+
+public class CoreIFileComposite extends AbstractIResourceComposite<IFile> {
+
+ public CoreIFileComposite(final Composite parent) {
+ super(parent);
+ }
+
+ public CoreIFileComposite(final Composite parent, final int style) {
+ super(parent, style);
+ }
+
+ @Override
+ public IFile getValue() {
+ IResource member = ResourcesPlugin.getWorkspace().getRoot().findMember(getText().getText());
+ if (member instanceof IFile) {
+ IFile file = (IFile) member;
+ return file;
+ }
+ return null;
+ }
+
+ @Override
+ protected final void browseResource() {
+ ElementTreeSelectionDialog elementTreeSelectionDialog = new ElementTreeSelectionDialog(
+ getShell(), new WorkbenchLabelProvider(), new WorkbenchContentProvider());
+ elementTreeSelectionDialog.setInput(ResourcesPlugin.getWorkspace().getRoot());
+ elementTreeSelectionDialog.setMessage(Messages.CoreIFileComposite_selectFile);
+ elementTreeSelectionDialog.setAllowMultiple(false);
+ elementTreeSelectionDialog.setDoubleClickSelects(true);
+ elementTreeSelectionDialog.setValidator(new ISelectionStatusValidator() {
+ public IStatus validate(final Object[] selection) {
+ if (selection.length != 1 || !(selection[0] instanceof IFile)) {
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, Messages.CoreIFileComposite_mustSelectFile);
+ }
+ return Status.OK_STATUS;
+ }
+ });
+ elementTreeSelectionDialog.open();
+ Object result = elementTreeSelectionDialog.getFirstResult();
+
+ if (result != null && result instanceof IFile) {
+ IFile selectedFile = (IFile) result;
+ setValue(selectedFile);
+ fireCommit();
+ }
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/CoreIProjectComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/CoreIProjectComposite.java
new file mode 100644
index 00000000000..c414100edeb
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/CoreIProjectComposite.java
@@ -0,0 +1,77 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 342548 - [Java Discovery] Illegal parameter initializer for ELEMENTS_TO_ANALYZE
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IWorkspace;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.jface.window.Window;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.dialogs.ListDialog;
+import org.eclipse.ui.model.WorkbenchContentProvider;
+import org.eclipse.ui.model.WorkbenchLabelProvider;
+
+public class CoreIProjectComposite extends AbstractIResourceComposite<IProject> {
+
+ public CoreIProjectComposite(final Composite parent) {
+ super(parent);
+ }
+
+ public CoreIProjectComposite(final Composite parent, final int style) {
+ super(parent, style);
+ }
+
+ @Override
+ public IProject getValue() {
+ IResource member = ResourcesPlugin.getWorkspace().getRoot().findMember(getText().getText());
+ if (member instanceof IProject) {
+ return (IProject) member;
+ }
+ return null;
+ }
+
+ @Override
+ protected final void browseResource() {
+
+ WorkbenchContentProvider projectsContentProvider = new WorkbenchContentProvider() {
+ @Override
+ public Object[] getChildren(final Object element) {
+ if (!(element instanceof IWorkspace)) {
+ return new Object[0];
+ }
+ IProject[] projects = ((IWorkspace) element).getRoot().getProjects();
+ if (projects == null) {
+ return new Object[0];
+ }
+ return projects;
+ }
+ };
+
+ ListDialog dialog = new ListDialog(getShell());
+ dialog.setContentProvider(projectsContentProvider);
+ dialog.setLabelProvider(new WorkbenchLabelProvider());
+ dialog.setInput(ResourcesPlugin.getWorkspace());
+ // TODO: externalize string
+ dialog.setMessage("Please select a project"); //$NON-NLS-1$
+ // TODO: externalize string
+ dialog.setTitle("Select Project"); //$NON-NLS-1$
+ int code = dialog.open();
+ if (code == Window.OK) {
+ Object[] result = dialog.getResult();
+ if (result.length == 1) {
+ IProject selectedProject = (IProject) result[0];
+ setValue(selectedProject);
+ fireCommit();
+ }
+ }
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/CoreIResourceComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/CoreIResourceComposite.java
new file mode 100644
index 00000000000..d35451e40ae
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/CoreIResourceComposite.java
@@ -0,0 +1,55 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 339664 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite;
+
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.dialogs.ElementTreeSelectionDialog;
+import org.eclipse.ui.model.WorkbenchContentProvider;
+import org.eclipse.ui.model.WorkbenchLabelProvider;
+
+public class CoreIResourceComposite extends AbstractIResourceComposite<IResource> {
+
+ public CoreIResourceComposite(final Composite parent) {
+ super(parent);
+ }
+
+ public CoreIResourceComposite(final Composite parent, final int style) {
+ super(parent, style);
+ }
+
+ @Override
+ public IResource getValue() {
+ return ResourcesPlugin.getWorkspace().getRoot().findMember(getText().getText());
+ }
+
+ @Override
+ protected final void browseResource() {
+ ElementTreeSelectionDialog elementTreeSelectionDialog = new ElementTreeSelectionDialog(
+ getShell(), new WorkbenchLabelProvider(), new WorkbenchContentProvider());
+ elementTreeSelectionDialog.setInput(ResourcesPlugin.getWorkspace().getRoot());
+ elementTreeSelectionDialog.setMessage("Select a resource"); //$NON-NLS-1$
+ elementTreeSelectionDialog.setAllowMultiple(false);
+ elementTreeSelectionDialog.setDoubleClickSelects(true);
+ elementTreeSelectionDialog.open();
+ Object result = elementTreeSelectionDialog.getFirstResult();
+
+ if (result != null && result instanceof IResource) {
+ IResource selectedResource = (IResource) result;
+ setValue(selectedResource);
+ fireCommit();
+ }
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/EnumComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/EnumComposite.java
new file mode 100644
index 00000000000..11c8937932b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/EnumComposite.java
@@ -0,0 +1,133 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 339664 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ * Gregoire Dupe (Mia-Software) - Bug 344563 - NPE with Enum Editor
+ * Nicolas Guyomar (Mia-Software) - Bug 344563 - NPE with Enum Editor
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite;
+
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.Activator;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.DisposeEvent;
+import org.eclipse.swt.events.DisposeListener;
+import org.eclipse.swt.events.KeyAdapter;
+import org.eclipse.swt.events.KeyEvent;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+
+public abstract class EnumComposite<T> extends AbstractCellEditorComposite<T> {
+
+ /** the control that is used to edit the contents of the cell */
+ private Combo combo = null;
+
+ private final Composite parentControl;
+
+ private T lastValue;
+
+ public EnumComposite(final Composite parent) {
+ super(parent);
+ setLayout(new FillLayout());
+ this.parentControl = parent;
+ this.combo = new Combo(this, SWT.NONE);
+ final Listener clickListener = new Listener() {
+ public void handleEvent(final Event event) {
+ if (event.widget instanceof Control) {
+ Control control = (Control) event.widget;
+ if (control.getShell() == EnumComposite.this.getParentControl().getShell()) {
+ if (event.widget != EnumComposite.this.getCombo()) {
+ EnumComposite.this.commit();
+ }
+ }
+ }
+ }
+ };
+
+ this.combo.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ fireChanged();
+ }
+ });
+
+ this.combo.addKeyListener(new KeyAdapter() {
+ @Override
+ public void keyPressed(final KeyEvent event) {
+ // Enter key pressed
+ if ((event.keyCode == SWT.CR && event.stateMask == 0)
+ || (event.keyCode == SWT.KEYPAD_CR && event.stateMask == 0)) {
+ commit();
+ } else if (event.keyCode == SWT.ESC && event.stateMask == 0) {
+ // Escape key pressed
+ close();
+ }
+ }
+ });
+
+ Display.getDefault().addFilter(SWT.MouseDown, clickListener);
+ // this listener is only here to remove
+ // the other listener from the Display
+ addDisposeListener(new DisposeListener() {
+ public void widgetDisposed(final DisposeEvent e) {
+ Display.getDefault().removeFilter(SWT.MouseDown, clickListener);
+ }
+ });
+
+ this.combo.forceFocus();
+ }
+
+ protected void commit() {
+ fireCommit();
+ }
+
+ public void setValue(final T value) {
+ this.lastValue = value;
+ if (value == null) {
+ this.combo.setText(""); //$NON-NLS-1$
+ } else {
+ String strValue = getEnumString(value);
+ this.combo.setText(strValue);
+ }
+ }
+
+ public T getValue() {
+ try {
+ this.lastValue = this.getEnumValue(this.combo.getText());
+ } catch (Exception e) {
+ Logger.logError(e, Activator.getDefault());
+ }
+ return this.lastValue;
+ }
+
+ protected abstract T getEnumValue(String text);
+
+ protected abstract String getEnumString(T value);
+
+ protected abstract String[] getEnumStrings();
+
+ public Combo getCombo() {
+ return this.combo;
+ }
+
+ protected Composite getParentControl() {
+ return this.parentControl;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/EnumeratorComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/EnumeratorComposite.java
new file mode 100644
index 00000000000..d1c452edf1a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/EnumeratorComposite.java
@@ -0,0 +1,67 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Gregoire Dupe (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 339664 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 344563 - NPE with Enum Editor
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EEnumLiteral;
+import org.eclipse.swt.widgets.Composite;
+
+public class EnumeratorComposite<T extends Enumerator> extends EnumComposite<T> {
+
+ public EnumeratorComposite(final Composite parent) {
+ super(parent);
+
+ }
+
+ private EEnum eenum = null;
+
+ public void setEEnum(final EEnum eenum2) {
+ this.eenum = eenum2;
+ getCombo().setItems(getEnumStrings());
+ }
+
+ @SuppressWarnings("unchecked")
+ @Override
+ protected T getEnumValue(final String text) {
+ if (this.eenum.getEEnumLiteralByLiteral(text) == null) {
+ throw new RuntimeException("Invalid enumeration literal"); //$NON-NLS-1$
+ }
+ Object result = this.eenum.getEPackage().getEFactoryInstance()
+ .createFromString(this.eenum, this.eenum.getEEnumLiteralByLiteral(text).getName());
+ if (result instanceof Enumerator) {
+ return (T) result;
+ }
+ return null;
+ }
+
+ @Override
+ public String getEnumString(final T value) {
+ return value.getLiteral();
+ }
+
+ @Override
+ protected String[] getEnumStrings() {
+ List<String> result = new ArrayList<String>();
+ if (this.eenum != null) {
+ for (EEnumLiteral eeNumLiteral : this.eenum.getELiterals()) {
+ result.add(eeNumLiteral.getLiteral());
+ }
+ }
+ return result.toArray(new String[] {});
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/UnaryReferenceCellEditorComposite.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/UnaryReferenceCellEditorComposite.java
new file mode 100644
index 00000000000..b32f0c021e2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/UnaryReferenceCellEditorComposite.java
@@ -0,0 +1,251 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 339664 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ * Nicolas Bros (Mia-Software) - Bug 334539 - [celleditors] change listener
+ * Grégoire Dupé (Mia-Software) - Bug 424122 - [Table] Images, fonts and colors are not shared between the instances of table
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite;
+
+import java.util.Collection;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+import java.util.TreeMap;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.util.swt.fontprovider.IFontProvider;
+import org.eclipse.papyrus.emf.facet.util.swt.fontprovider.IFontProviderFactory;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.Messages;
+import org.eclipse.papyrus.emf.facet.widgets.internal.CustomizableLabelProvider;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.fieldassist.ComboContentAdapter;
+import org.eclipse.jface.fieldassist.ContentProposalAdapter;
+import org.eclipse.jface.fieldassist.SimpleContentProposalProvider;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.DisposeEvent;
+import org.eclipse.swt.events.DisposeListener;
+import org.eclipse.swt.events.KeyAdapter;
+import org.eclipse.swt.events.KeyEvent;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.graphics.Font;
+import org.eclipse.swt.graphics.FontData;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.ui.dialogs.ElementListSelectionDialog;
+
+/** A cell editor for unary references */
+public class UnaryReferenceCellEditorComposite extends AbstractCellEditorComposite<EObject> {
+
+ private static final int GRID_DATA_HEIGHT = 50;
+ private final Button button;
+ private final Combo combo;
+ private final Control parentControl;
+ private final Map<String, EObject> fElements = new TreeMap<String, EObject>();
+
+ /**
+ * @param parent
+ * the parent composite
+ * @param eObjects
+ * the possible choices
+ */
+ public UnaryReferenceCellEditorComposite(final Composite parent, final List<EObject> eObjects) {
+ super(parent);
+ this.parentControl = parent;
+
+ CustomizableLabelProvider customizableLabelProvider = new CustomizableLabelProvider();
+ for (EObject eObject : eObjects) {
+ String label = customizableLabelProvider.getText(eObject);
+ // find a unique label
+ if (this.fElements.get(label) != null) {
+ int suffix = 2;
+ while (this.fElements.get(label + " (" + suffix + ")") != null) { //$NON-NLS-1$ //$NON-NLS-2$
+ suffix++;
+ }
+ this.fElements.put(label + " (" + suffix + ")", eObject); //$NON-NLS-1$//$NON-NLS-2$
+ } else {
+ this.fElements.put(label, eObject);
+ }
+ }
+
+ GridLayout compositeLayout = new GridLayout(2, false);
+ compositeLayout.marginHeight = 0;
+ compositeLayout.marginWidth = 0;
+ compositeLayout.horizontalSpacing = 0;
+ setLayout(compositeLayout);
+
+ this.combo = new Combo(this, SWT.DROP_DOWN);
+ // reduce the font so that the Combo fits in the cell
+ FontData[] fontData = Display.getDefault().getSystemFont().getFontData();
+ fontData[0].setHeight(fontData[0].getHeight() - 2);
+ final IFontProvider fontProvider = IFontProviderFactory.DEFAULT
+ .getOrCreateIFontProvider(Display.getDefault());
+ final Font font = fontProvider.getFont(fontData[0]);
+ this.combo.setFont(font);
+ for (String label : this.fElements.keySet()) {
+ this.combo.add(label);
+ }
+ GridData comboGridData = new GridData(SWT.FILL, SWT.FILL, true, true);
+ this.combo.setLayoutData(comboGridData);
+ addCompletionHandler(this.combo, this.fElements.keySet());
+
+ this.combo.addKeyListener(new KeyAdapter() {
+ @Override
+ public void keyPressed(final KeyEvent event) {
+ // Enter key pressed
+ if ((event.keyCode == SWT.CR && event.stateMask == 0)
+ || (event.keyCode == SWT.KEYPAD_CR && event.stateMask == 0)) {
+ if (isValid()) {
+ commit();
+ } else {
+ MessageDialog.openWarning(parent.getShell(),
+ Messages.UnaryReferenceCellEditorComposite_0,
+ Messages.UnaryReferenceCellEditorComposite_1);
+ }
+ } else if (event.keyCode == SWT.ESC && event.stateMask == 0) {
+ // Escape key pressed
+ close();
+ }
+ }
+ });
+
+ this.button = new Button(this, SWT.PUSH);
+ this.button.setText("..."); //$NON-NLS-1$
+ GridData buttonGridData = new GridData(SWT.FILL, SWT.FILL, false, true);
+ buttonGridData.heightHint = UnaryReferenceCellEditorComposite.GRID_DATA_HEIGHT;
+ this.button.setLayoutData(buttonGridData);
+ this.button.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent e) {
+ ElementListSelectionDialog dialog = new ElementListSelectionDialog(
+ UnaryReferenceCellEditorComposite.this.getParentControl().getShell(),
+ new CustomizableLabelProvider()) {
+ @Override
+ protected void okPressed() {
+ Object[] selectedElements = getSelectedElements();
+ String selectedElementLabel = null;
+ if (selectedElements.length > 0) {
+ Set<Entry<String, EObject>> entrySet = UnaryReferenceCellEditorComposite.this
+ .getfElements().entrySet();
+ for (Entry<String, EObject> entry : entrySet) {
+ if (entry.getValue() == selectedElements[0]) {
+ selectedElementLabel = entry.getKey();
+ break;
+ }
+ }
+ }
+ UnaryReferenceCellEditorComposite.this.getCombo().setText(
+ selectedElementLabel);
+ commit();
+ super.okPressed();
+ }
+ };
+ dialog.setTitle(Messages.UnaryReferenceCellEditorComposite_2);
+ dialog.setElements(eObjects.toArray());
+ dialog.open();
+ }
+ });
+
+ // commit the cell editor when the mouse is clicked
+ // anywhere outside the text field
+ final Listener clickListener = new Listener() {
+ public void handleEvent(final Event event) {
+ if (event.widget instanceof Control) {
+ Control control = (Control) event.widget;
+ if (control.getShell() == UnaryReferenceCellEditorComposite.this
+ .getParentControl().getShell()
+ && event.widget != UnaryReferenceCellEditorComposite.this.getButton()
+ && event.widget != UnaryReferenceCellEditorComposite.this.getCombo()) {
+ if (isValid()) {
+ commit();
+ }
+ }
+ }
+
+ }
+ };
+ Display.getDefault().addFilter(SWT.MouseDown, clickListener);
+
+ // this listener is only here to remove
+ // the other listener from the Display
+ addDisposeListener(new DisposeListener() {
+ public void widgetDisposed(final DisposeEvent e) {
+ Display.getDefault().removeFilter(SWT.MouseDown, clickListener);
+ }
+ });
+
+ this.combo.addModifyListener(new ModifyListener() {
+ public void modifyText(final ModifyEvent e) {
+ fireChanged();
+ }
+ });
+
+ this.combo.forceFocus();
+ }
+
+ protected boolean isValid() {
+ return this.fElements.get(this.combo.getText()) != null;
+ }
+
+ private static void addCompletionHandler(final Combo comboBox, final Collection<String> completions) {
+ String[] completionsArray = completions.toArray(new String[completions.size()]);
+ SimpleContentProposalProvider contentProposalProvider = new SimpleContentProposalProvider(
+ completionsArray);
+ contentProposalProvider.setFiltering(true);
+ ContentProposalAdapter adapter = new ContentProposalAdapter(comboBox,
+ new ComboContentAdapter(), contentProposalProvider, null, null);
+ // adapter.setFilterStyle(ContentProposalAdapter.FILTER_CHARACTER);
+ adapter.setProposalAcceptanceStyle(ContentProposalAdapter.PROPOSAL_REPLACE);
+
+ }
+
+ public EObject getValue() {
+ EObject eObject = this.fElements.get(this.combo.getText());
+ return eObject;
+ }
+
+ protected void commit() {
+ fireCommit();
+ }
+
+ public void setValue(final EObject value) {
+ //
+ }
+
+ protected Button getButton() {
+ return this.button;
+ }
+
+ protected Combo getCombo() {
+ return this.combo;
+ }
+
+ protected Control getParentControl() {
+ return this.parentControl;
+ }
+
+ protected Map<String, EObject> getfElements() {
+ return this.fElements;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/factories/CoreIFileCompositeFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/factories/CoreIFileCompositeFactory.java
new file mode 100644
index 00000000000..e09dc1691be
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/factories/CoreIFileCompositeFactory.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite.factories;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite.CoreIFileComposite;
+import org.eclipse.swt.widgets.Composite;
+
+public class CoreIFileCompositeFactory implements ICompositeEditorFactory<IFile> {
+
+ public Class<IFile> getHandledType() {
+ return IFile.class;
+ }
+
+ public AbstractCellEditorComposite<IFile> createCompositeEditor(final Composite parent, final int style) {
+ return new CoreIFileComposite(parent, style);
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/factories/CoreIProjectCompositeFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/factories/CoreIProjectCompositeFactory.java
new file mode 100644
index 00000000000..d029ef74c23
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/factories/CoreIProjectCompositeFactory.java
@@ -0,0 +1,28 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - Bug 342548 - [Java Discovery] Illegal parameter initializer for ELEMENTS_TO_ANALYZE
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite.factories;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite.CoreIProjectComposite;
+import org.eclipse.swt.widgets.Composite;
+
+public class CoreIProjectCompositeFactory implements ICompositeEditorFactory<IProject> {
+
+ public Class<IProject> getHandledType() {
+ return IProject.class;
+ }
+
+ public AbstractCellEditorComposite<IProject> createCompositeEditor(final Composite parent, final int style) {
+ return new CoreIProjectComposite(parent, style);
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/factories/CoreIResourceCompositeFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/factories/CoreIResourceCompositeFactory.java
new file mode 100644
index 00000000000..aabcbeab521
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/core/composite/factories/CoreIResourceCompositeFactory.java
@@ -0,0 +1,30 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 334546 - [celleditors] no border on Text field
+ * Nicolas Bros (Mia-Software) - Bug 338437 - compositeEditors extension point cannot be used to register user types
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite.factories;
+
+import org.eclipse.core.resources.IResource;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.AbstractCellEditorComposite;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICompositeEditorFactory;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.core.composite.CoreIResourceComposite;
+import org.eclipse.swt.widgets.Composite;
+
+public class CoreIResourceCompositeFactory implements ICompositeEditorFactory<IResource> {
+ public Class<IResource> getHandledType() {
+ return IResource.class;
+ }
+
+ public AbstractCellEditorComposite<IResource> createCompositeEditor(final Composite parent,
+ final int style) {
+ return new CoreIResourceComposite(parent, style);
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/messages.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/messages.properties
new file mode 100644
index 00000000000..a2e8a13b34e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/messages.properties
@@ -0,0 +1,38 @@
+###############################################################################
+# Copyright (c) 2010 CEA LIST.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - initial API and implementation
+###############################################################################
+CoreIFileComposite_mustSelectFile=You must select a file
+CoreIFileComposite_selectFile=Select a file
+NaryAttributeEditingDialog_add=&Add
+NaryReferenceEditingDialog_addAll=>>
+NaryReferenceEditingDialog_addAllTooltip=Add all
+NaryReferenceEditingDialog_addTooltip=Add
+NaryReferenceEditingDialog_availableValues=Available values
+NaryReferenceEditingDialog_deleteElements=Delete elements?
+NaryReferenceEditingDialog_deleteElementsLong=Since the feature is composite, this will delete the selected element(s) from the model.
+NaryReferenceEditingDialog_down=&Down
+NaryReferenceEditingDialog_moveWarning=The feature is composite. The selected value(s) will be moved from their previous parent.
+NaryReferenceEditingDialog_moveElement=Move element?
+NaryReferenceEditingDialog_remove=&<
+NaryReferenceEditingDialog_removeAll=<<
+NaryReferenceEditingDialog_removeAllTooltip=Remove all
+NaryReferenceEditingDialog_removeTooltip=Remove
+NaryReferenceEditingDialog_shellTitle=Edit {0} of {1}
+NaryReferenceEditingDialog_typeFilterText=type filter text
+NaryReferenceEditingDialog_up=&Up
+NaryReferenceEditingDialog_values=Values
+NaryReferenceEditingDialog_add=&>
+NaryReferenceEditingDialog_newInstance=New...
+UnaryReferenceCellEditorComposite_0=Invalid selection
+UnaryReferenceCellEditorComposite_1=Please select an EObject
+UnaryReferenceCellEditorComposite_2=Select an EObject
+NaryAttributeEditingDialog_delete=D&elete
+NaryAttributeEditingDialog_enterNewValuePlaceholder=<enter new value>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/AbstractNaryEditingDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/AbstractNaryEditingDialog.java
new file mode 100644
index 00000000000..3412e6605a8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/AbstractNaryEditingDialog.java
@@ -0,0 +1,139 @@
+/*******************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 342451 - To be able to edit derived facet attributes and derived facet references in a table
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.ui;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.jface.dialogs.Dialog;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredContentProvider;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.swt.widgets.Shell;
+
+public abstract class AbstractNaryEditingDialog<T extends Object> extends Dialog {
+
+ public static final int AVAILABLE_VALUES_TREE_WIDTH = 200;
+ public static final int AVAILABLE_VALUES_TREE_HEIGHT = 250;
+
+ private final List<T> values;
+ private final IModelCellEditHandler editHandler;
+ private final EObject eObject;
+ private final EStructuralFeature feature;
+
+ protected AbstractNaryEditingDialog(final Shell shell, final List<T> values,
+ final IModelCellEditHandler editHandler, final EObject eObject,
+ final EStructuralFeature feature) {
+ super(shell);
+ this.values = new ArrayList<T>(values);
+ this.feature = feature;
+ this.editHandler = editHandler;
+ this.eObject = eObject;
+ }
+
+ public class AssignedValuesContentProvider implements IStructuredContentProvider {
+ public Object[] getElements(final Object inputElement) {
+ if (inputElement instanceof FeatureValuesInput) {
+ FeatureValuesInput valuesInput = (FeatureValuesInput) inputElement;
+ EObject source = valuesInput.getSource();
+ List<?> list = (List<?>) source.eGet(valuesInput.getFeature());
+ if (list == null) {
+ return new Object[0];
+ }
+ return list.toArray();
+ } else if (inputElement instanceof List<?>) {
+ return ((List<?>) inputElement).toArray();
+ }
+ throw new IllegalArgumentException(FeatureValuesInput.class.getSimpleName()
+ + " expected"); //$NON-NLS-1$
+ }
+
+ public void dispose() {
+ //
+ }
+
+ public void inputChanged(final Viewer viewer, final Object oldInput, final Object newInput) {
+ //
+ }
+ }
+
+ public List<T> getValue() {
+ return this.values;
+ }
+
+ @SuppressWarnings("unchecked") // type erasure on generic
+ public void upButtonClicked() {
+ final IStructuredSelection selection = (IStructuredSelection) getSelection();
+
+ int minIndex = 0;
+ for (Object element : selection.toList()) {
+ final int index = this.values.indexOf(element);
+ T object = this.values.set(Math.max(index - 1, minIndex++), (T) element);
+ this.values.set(index, object);
+ }
+ refresh();
+ }
+
+ @SuppressWarnings("unchecked") // type erasure on generic
+ public void downButtonClicked() {
+ final IStructuredSelection selection = (StructuredSelection) getSelection();
+
+ List<?> selectionList = selection.toList();
+ boolean canMove = !selectionList.contains(this.values.get(this.values.size() - 1));
+ for (int i = this.values.size() - 2; i >= 0; i--) {
+ final Object selectedObject = this.values.get(i);
+ if (selectionList.contains(selectedObject)) {
+ if (canMove) {
+ T object = this.values.set(i + 1, (T) selectedObject);
+ this.values.set(i, object);
+ }
+ } else {
+ canMove = true;
+ }
+
+ }
+
+ refresh();
+ }
+
+ public abstract ISelection getSelection();
+
+ public abstract void refresh();
+
+ @Override
+ protected void okPressed() {
+ super.okPressed();
+ this.editHandler.commit();
+ }
+
+ protected List<T> getValues() {
+ return this.values;
+ }
+
+ protected IModelCellEditHandler getEditHandler() {
+ return this.editHandler;
+ }
+
+ protected EObject geteObject() {
+ return this.eObject;
+ }
+
+ protected EStructuralFeature getFeature() {
+ return this.feature;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/AssignableValuesContentProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/AssignableValuesContentProvider.java
new file mode 100644
index 00000000000..75b0b85ea57
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/AssignableValuesContentProvider.java
@@ -0,0 +1,82 @@
+/*******************************************************************************
+ * Copyright (c) 2010, 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 342451 - To be able to edit derived facet attributes and derived facet references in a table
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.ui;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.Viewer;
+
+public class AssignableValuesContentProvider implements ITreeContentProvider {
+ public Object[] getElements(final Object inputElement) {
+ if (inputElement instanceof FeatureValuesInput) {
+ FeatureValuesInput assignableValuesInput = (FeatureValuesInput) inputElement;
+ EStructuralFeature feature = assignableValuesInput.getFeature();
+ EClassifier eType = feature.getEType();
+ EObject source = assignableValuesInput.getSource();
+ List<?> featureValues = (List<?>) source.eGet(feature);
+
+ // build a list of EObjects assignable to the EReference
+ List<EObject> list = new ArrayList<EObject>();
+ Resource eResource = source.eResource();
+ if (eResource == null) {
+ return new Object[0];
+ }
+ ResourceSet resourceSet = eResource.getResourceSet();
+ TreeIterator<Notifier> allContents = resourceSet.getAllContents();
+ while (allContents.hasNext()) {
+ Notifier notifier = allContents.next();
+ if (notifier instanceof EObject) {
+ EObject eObject = (EObject) notifier;
+ if (eType.isInstance(eObject)
+ && (!feature.isUnique() || !(featureValues != null && featureValues
+ .contains(eObject)))) {
+ list.add(eObject);
+ }
+ }
+ }
+ return list.toArray();
+ } else if (inputElement instanceof List<?>) {
+ return ((List<?>) inputElement).toArray();
+ }
+ throw new IllegalArgumentException(FeatureValuesInput.class.getSimpleName() + " expected"); //$NON-NLS-1$
+ }
+
+ public void dispose() {
+ //
+ }
+
+ public void inputChanged(final Viewer viewer, final Object oldInput, final Object newInput) {
+ //
+ }
+
+ public Object[] getChildren(final Object parentElement) {
+ return null;
+ }
+
+ public Object getParent(final Object element) {
+ return null;
+ }
+
+ public boolean hasChildren(final Object element) {
+ return false;
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/EditingUtils.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/EditingUtils.java
new file mode 100644
index 00000000000..72239f8b9be
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/EditingUtils.java
@@ -0,0 +1,84 @@
+/*******************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.ui;
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.common.command.CompoundCommand;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICommandFactory;
+
+public final class EditingUtils {
+ private EditingUtils() {
+ //
+ }
+
+ public static void moveElementsUp(final EObject eObject, final EStructuralFeature feature,
+ final Collection<Object> elements, final ICommandFactory commandFactory,
+ final EditingDomain editingDomain) {
+ CompoundCommand compoundCommand = new CompoundCommand();
+
+ List<?> list = (List<?>) eObject.eGet(feature);
+
+ int minIndex = 0;
+ for (Object element : elements) {
+ final int index = list.indexOf(element);
+
+ Command moveCommand = commandFactory.createMoveCommand(editingDomain, eObject, feature,
+ element, Math.max(index - 1, minIndex++));
+ compoundCommand.append(moveCommand);
+ }
+ editingDomain.getCommandStack().execute(compoundCommand);
+ // int[] selectionIndices;
+ // Arrays.sort(selectionIndices);
+ // CompoundCommand compoundCommand = new CompoundCommand();
+ // int minIndex = 0;
+ // for(int index : selectionIndices) {
+ // Command moveCommand = MoveCommand.create(editingDomain,
+ // eObject,feature, index, Math.max(index - 1,
+ // minIndex++));
+ // compoundCommand.append(moveCommand);
+ // }
+ // editingDomain.getCommandStack().execute(compoundCommand);
+ }
+
+ public static void moveElementsDown(final EObject eObject, final EStructuralFeature feature,
+ final Collection<Object> elements, final ICommandFactory commandFactory,
+ final EditingDomain editingDomain) {
+ Object value = eObject.eGet(feature);
+ List<?> list = (List<?>) value;
+
+ CompoundCommand compoundCommand = new CompoundCommand();
+
+ // prevent the last two elements from swapping
+ boolean canMove = !elements.contains(list.get(list.size() - 1));
+ for (int i = list.size() - 2; i >= 0; i--) {
+ final Object selectedObject = list.get(i);
+ if (elements.contains(selectedObject)) {
+ if (canMove) {
+ Command moveCommand = commandFactory.createMoveCommand(editingDomain, eObject,
+ feature, selectedObject, i + 1);
+ compoundCommand.append(moveCommand);
+ }
+ } else {
+ canMove = true;
+ }
+
+ }
+ editingDomain.getCommandStack().execute(compoundCommand);
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/FeatureValuesInput.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/FeatureValuesInput.java
new file mode 100644
index 00000000000..385482c0b62
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/FeatureValuesInput.java
@@ -0,0 +1,33 @@
+/*******************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.ui;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+public class FeatureValuesInput {
+ private final EStructuralFeature feature;
+ private final EObject source;
+
+ public FeatureValuesInput(final EStructuralFeature feature, final EObject source) {
+ this.feature = feature;
+ this.source = source;
+ }
+
+ public EStructuralFeature getFeature() {
+ return this.feature;
+ }
+
+ public EObject getSource() {
+ return this.source;
+ }
+} \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/ModelCellsEditingSupport.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/ModelCellsEditingSupport.java
new file mode 100644
index 00000000000..fbf97b88be5
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/ModelCellsEditingSupport.java
@@ -0,0 +1,130 @@
+/*******************************************************************************
+ * Copyright (c) 2010, 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 339554 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ * Nicolas Bros (Mia-Software) - Bug 339855 - ModelCellEditor class should not be exposed
+ * Nicolas Guyomar (Mia-Software) - Bug 342451 - To be able to edit derived facet attributes and derived facet references in a table
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.ui;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.ICellEditorsRegistry;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditor;
+import org.eclipse.jface.viewers.CellEditor;
+import org.eclipse.jface.viewers.ColumnViewer;
+import org.eclipse.jface.viewers.EditingSupport;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+
+public class ModelCellsEditingSupport<T> extends EditingSupport {
+
+ private final EStructuralFeature feature;
+ private final IModelCellEditor cellEditor;
+ private final EObject eObject;
+ private final ColumnViewer columnViewer;
+ private final Object newValuePlaceholder;
+ private List<T> values;
+
+ public ModelCellsEditingSupport(final ColumnViewer columnViewer,
+ final EStructuralFeature feature, final EObject eObject,
+ final Object newValuePlaceholder, final List<T> values) {
+ super(columnViewer);
+ this.columnViewer = columnViewer;
+ this.feature = feature;
+ this.eObject = eObject;
+ this.values = values;
+ this.newValuePlaceholder = newValuePlaceholder;
+ this.cellEditor = ICellEditorsRegistry.INSTANCE.getCellEditorFor(this.feature.getEType());
+ if (this.cellEditor == null) {
+ throw new IllegalStateException(
+ "no cell editor found for " + this.feature.getEType().getName()); //$NON-NLS-1$
+ }
+ }
+
+ @Override
+ protected CellEditor getCellEditor(final Object element) {
+ return new CellEditor((Composite) this.columnViewer.getControl()) {
+
+ private Control control;
+
+ @Override
+ protected void doSetValue(final Object value) {
+ //
+ }
+
+ @Override
+ protected void doSetFocus() {
+ this.control.setFocus();
+ }
+
+ @Override
+ protected Object doGetValue() {
+ return null;
+ }
+
+ @Override
+ protected Control createControl(final Composite parent) {
+ IModelCellEditHandler editHandler = new IModelCellEditHandler() {
+ public void commit() {
+ @SuppressWarnings("unchecked")
+ //unchecked: The cellEditor.getValue() type cannot be checked.
+ T value = (T) ModelCellsEditingSupport.this.cellEditor.getValue();
+ int index = ModelCellsEditingSupport.this.values.indexOf(element);
+ if (index != -1
+ || element == ModelCellsEditingSupport.this.newValuePlaceholder) {
+ ModelCellsEditingSupport.this.values.set(index, value);
+ }
+ close();
+ ModelCellsEditingSupport.this.columnViewer.refresh();
+ }
+
+ };
+
+ Object originalValue = null;
+ if (element != ModelCellsEditingSupport.this.newValuePlaceholder) {
+ originalValue = element;
+ }
+
+ this.control = ModelCellsEditingSupport.this.cellEditor.activateCell(parent,
+ originalValue, editHandler, ModelCellsEditingSupport.this.feature,
+ ModelCellsEditingSupport.this.eObject);
+ return this.control;
+ }
+
+ public void close() {
+ deactivate();
+ Control parentControl = ModelCellsEditingSupport.this.columnViewer.getControl();
+ if (parentControl != null && !parentControl.isDisposed()) {
+ parentControl.forceFocus();
+ }
+ dispose();
+ }
+ };
+ }
+
+ @Override
+ protected boolean canEdit(final Object element) {
+ return true;
+ }
+
+ @Override
+ protected Object getValue(final Object element) {
+ return element;
+ }
+
+ @Override
+ protected void setValue(final Object element, final Object value) {
+ // TODO Auto-generated method stub
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/NaryAttributeEditingDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/NaryAttributeEditingDialog.java
new file mode 100644
index 00000000000..ed8b5ed6afd
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/NaryAttributeEditingDialog.java
@@ -0,0 +1,373 @@
+/*******************************************************************************
+ * Copyright (c) 2010, 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 339554 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ * Nicolas Guyomar (Mia-Software) - Bug 342451 - To be able to edit derived facet attributes and derived facet references in a table
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.ui;
+
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.Messages;
+import org.eclipse.papyrus.emf.facet.widgets.internal.CustomizableLabelProvider;
+import org.eclipse.jface.dialogs.IDialogConstants;
+import org.eclipse.jface.viewers.ColumnLabelProvider;
+import org.eclipse.jface.viewers.IOpenListener;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.jface.viewers.OpenEvent;
+import org.eclipse.jface.viewers.TableViewer;
+import org.eclipse.jface.viewers.TableViewerColumn;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.ControlEvent;
+import org.eclipse.swt.events.ControlListener;
+import org.eclipse.swt.events.KeyAdapter;
+import org.eclipse.swt.events.KeyEvent;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Table;
+import org.eclipse.swt.widgets.TableColumn;
+
+/** A dialog to edit a multiplicity-many {@link EAttribute} */
+public class NaryAttributeEditingDialog<T extends Object> extends AbstractNaryEditingDialog<T> {
+
+ private static final int NUM_COLUMNS = 2;
+ private TableViewer featureValuesTableViewer;
+
+ private final Object newValuePlaceholder = new Object();
+
+ private Button addButton;
+ private Button removeButton;
+ private Button upButton;
+ private Button downButton;
+
+ private final ColumnLabelProvider labelProvider = new ColumnLabelProvider() {
+ private final LabelProvider delegateLabelProvider = new CustomizableLabelProvider();
+
+ @Override
+ public Image getImage(final Object element) {
+ return this.delegateLabelProvider.getImage(element);
+ }
+
+ @Override
+ public String getText(final Object element) {
+ if (element == NaryAttributeEditingDialog.this.newValuePlaceholder) {
+ return Messages.NaryAttributeEditingDialog_enterNewValuePlaceholder;
+ }
+ return this.delegateLabelProvider.getText(element);
+ }
+
+ @Override
+ public Color getForeground(final Object element) {
+ if (element == NaryAttributeEditingDialog.this.newValuePlaceholder) {
+ return Display.getDefault().getSystemColor(SWT.COLOR_DARK_GRAY);
+ }
+ return null;
+ }
+ };
+
+ /**
+ * @param parent
+ * the parent {@link Shell}
+ * @param values
+ * the current values
+ * @param editHandler
+ * the edit handler to perform the commit.
+ * @param feature
+ * the feature to edit
+ * @param eObject
+ * the eObject being currently edited. Should not be modified in this dialog.
+ */
+ public NaryAttributeEditingDialog(final Shell shell, final List<T> values,
+ final IModelCellEditHandler editHandler, final EObject eObject, final EStructuralFeature feature) {
+ super(shell, values, editHandler, eObject, feature);
+ }
+
+
+ @Override
+ protected void configureShell(final Shell shell) {
+ super.configureShell(shell);
+ shell.setText(NLS.bind(Messages.NaryReferenceEditingDialog_shellTitle,
+ getFeature().getName(), geteObject().eClass().getName()));
+ // prevent Escape or Enter from closing the dialog
+ // when a cell editor is active
+ shell.addListener(SWT.Traverse, new Listener() {
+ public void handleEvent(final Event e) {
+ if ((e.detail == SWT.TRAVERSE_ESCAPE || e.detail == SWT.TRAVERSE_RETURN)
+ && NaryAttributeEditingDialog.this.featureValuesTableViewer
+ .isCellEditorActive()) {
+ e.doit = false;
+ NaryAttributeEditingDialog.this.featureValuesTableViewer.cancelEditing();
+ }
+ }
+ });
+ }
+
+ @Override
+ protected Control createDialogArea(final Composite parent) {
+ final Composite contents = (Composite) super.createDialogArea(parent);
+
+ final GridLayout contentsGridLayout = (GridLayout) contents.getLayout();
+ contentsGridLayout.numColumns = NaryAttributeEditingDialog.NUM_COLUMNS;
+
+ final GridData contentsGridData = (GridData) contents.getLayoutData();
+ contentsGridData.horizontalAlignment = SWT.FILL;
+ contentsGridData.verticalAlignment = SWT.FILL;
+
+ createValuesPane(contents);
+ createButtonsPane(contents);
+
+ this.featureValuesTableViewer.addOpenListener(new IOpenListener() {
+ public void open(final OpenEvent event) {
+ editSelectedElement();
+ }
+ });
+
+ this.upButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ upButtonClicked();
+ }
+ });
+
+ this.downButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ downButtonClicked();
+ }
+ });
+
+ this.addButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ addButtonClicked();
+ }
+ });
+
+ this.removeButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ removeButtonClicked();
+ }
+ });
+
+ return contents;
+ }
+
+ @SuppressWarnings("unchecked") // type erasure on generic
+ private void addButtonClicked() {
+ getValues().add(0, (T) NaryAttributeEditingDialog.this.newValuePlaceholder);
+ refresh();
+ this.featureValuesTableViewer.editElement(this.newValuePlaceholder, 0);
+ }
+
+ @SuppressWarnings("unchecked") // type erasure on generic
+ private void removeButtonClicked() {
+ final IStructuredSelection selection = (IStructuredSelection) this.featureValuesTableViewer
+ .getSelection();
+
+ for (final Iterator<T> it = selection.iterator(); it.hasNext();) {
+ final Object element = it.next();
+
+ if (getValues().contains(element)) {
+ getValues().remove(element);
+ }
+ }
+ refresh();
+ }
+
+ private void spacer(final Composite parent) {
+ @SuppressWarnings("unused")
+ Label label = new Label(parent, SWT.NONE);
+ }
+
+ private void createButtonsPane(final Composite contents) {
+ final Composite buttonsComposite = new Composite(contents, SWT.NONE);
+ final GridData buttonsCompositeGridData = new GridData();
+ buttonsCompositeGridData.verticalAlignment = SWT.FILL;
+ buttonsCompositeGridData.horizontalAlignment = SWT.FILL;
+ buttonsComposite.setLayoutData(buttonsCompositeGridData);
+ buttonsComposite.setLayout(new GridLayout());
+
+ // spacer
+ spacer(buttonsComposite);
+
+ this.addButton = new Button(buttonsComposite, SWT.PUSH);
+ this.addButton.setText(Messages.NaryAttributeEditingDialog_add);
+ final GridData addButtonGridData = new GridData();
+ addButtonGridData.verticalAlignment = SWT.FILL;
+ addButtonGridData.horizontalAlignment = SWT.FILL;
+ this.addButton.setLayoutData(addButtonGridData);
+
+ this.removeButton = new Button(buttonsComposite, SWT.PUSH);
+ this.removeButton.setText(Messages.NaryAttributeEditingDialog_delete);
+ final GridData removeButtonGridData = new GridData();
+ removeButtonGridData.verticalAlignment = SWT.FILL;
+ removeButtonGridData.horizontalAlignment = SWT.FILL;
+ this.removeButton.setLayoutData(removeButtonGridData);
+
+ spacer(buttonsComposite);
+
+ this.upButton = new Button(buttonsComposite, SWT.PUSH);
+ this.upButton.setText(Messages.NaryReferenceEditingDialog_up);
+ final GridData upButtonGridData = new GridData();
+ upButtonGridData.verticalAlignment = SWT.FILL;
+ upButtonGridData.horizontalAlignment = SWT.FILL;
+ this.upButton.setLayoutData(upButtonGridData);
+
+ this.downButton = new Button(buttonsComposite, SWT.PUSH);
+ this.downButton.setText(Messages.NaryReferenceEditingDialog_down);
+ final GridData downButtonGridData = new GridData();
+ downButtonGridData.verticalAlignment = SWT.FILL;
+ downButtonGridData.horizontalAlignment = SWT.FILL;
+ this.downButton.setLayoutData(downButtonGridData);
+ }
+
+ private void createValuesPane(final Composite contents) {
+ final Composite featureComposite = new Composite(contents, SWT.NONE);
+ final GridData featureCompositeData = new GridData(SWT.FILL, SWT.FILL, true, true);
+ featureCompositeData.horizontalAlignment = SWT.END;
+ featureComposite.setLayoutData(featureCompositeData);
+
+ final GridLayout featureCompositeLayout = new GridLayout();
+ featureCompositeData.horizontalAlignment = SWT.FILL;
+ featureCompositeLayout.marginHeight = 0;
+ featureCompositeLayout.marginWidth = 0;
+ featureCompositeLayout.numColumns = 1;
+ featureComposite.setLayout(featureCompositeLayout);
+
+ final Label featureLabel = new Label(featureComposite, SWT.NONE);
+ featureLabel.setText(Messages.NaryReferenceEditingDialog_values);
+ final GridData valuesLabelGridData = new GridData();
+ valuesLabelGridData.horizontalSpan = 2;
+ valuesLabelGridData.horizontalAlignment = SWT.FILL;
+ valuesLabelGridData.verticalAlignment = SWT.FILL;
+ featureLabel.setLayoutData(valuesLabelGridData);
+
+ final Table table = new Table(featureComposite, SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION);
+ final GridData tableGridData = new GridData();
+ tableGridData.widthHint = AbstractNaryEditingDialog.AVAILABLE_VALUES_TREE_WIDTH;
+ tableGridData.heightHint = AbstractNaryEditingDialog.AVAILABLE_VALUES_TREE_HEIGHT;
+ tableGridData.verticalAlignment = SWT.FILL;
+ tableGridData.horizontalAlignment = SWT.FILL;
+ tableGridData.grabExcessHorizontalSpace = true;
+ tableGridData.grabExcessVerticalSpace = true;
+ table.setLayoutData(tableGridData);
+ final TableColumn tableColumn = new TableColumn(table, SWT.CENTER);
+
+ // full-width column
+ table.addControlListener(new ControlListener() {
+ public void controlResized(final ControlEvent e) {
+ tableColumn.setWidth(table.getClientArea().width);
+ }
+
+ public void controlMoved(final ControlEvent e) {
+ //
+ }
+ });
+
+ this.featureValuesTableViewer = new TableViewer(table);
+ this.featureValuesTableViewer.setContentProvider(new AssignedValuesContentProvider());
+ // this.fFeatureValuesTableViewer.setLabelProvider(this.labelProvider);
+ this.featureValuesTableViewer
+ .setInput(getValues());
+
+ final TableViewerColumn tableViewerColumn = new TableViewerColumn(
+ this.featureValuesTableViewer, tableColumn);
+ tableViewerColumn.setLabelProvider(this.labelProvider);
+
+ tableViewerColumn.setEditingSupport(new ModelCellsEditingSupport<T>(
+ this.featureValuesTableViewer, getFeature(), geteObject(),
+ this.newValuePlaceholder, getValues()));
+
+ // keyboard accessibility
+ table.addKeyListener(new KeyAdapter() {
+ @Override
+ public void keyPressed(final KeyEvent e) {
+ if (e.keyCode == SWT.F2) {
+ editSelectedElement();
+ }
+ if (e.keyCode == SWT.DEL) {
+ if (NaryAttributeEditingDialog.this.removeButton.isEnabled()) {
+ NaryAttributeEditingDialog.this.removeButton.notifyListeners(
+ SWT.Selection, null);
+ }
+ }
+ if (e.keyCode == SWT.ARROW_UP
+ && ((e.stateMask & SWT.COMMAND) != 0 || (e.stateMask & SWT.CONTROL) != 0)) {
+ if (NaryAttributeEditingDialog.this.upButton.isEnabled()) {
+ NaryAttributeEditingDialog.this.upButton.notifyListeners(SWT.Selection,
+ null);
+ }
+ }
+ if (e.keyCode == SWT.ARROW_DOWN
+ && ((e.stateMask & SWT.COMMAND) != 0 || (e.stateMask & SWT.CONTROL) != 0)) {
+ if (NaryAttributeEditingDialog.this.downButton.isEnabled()) {
+ NaryAttributeEditingDialog.this.downButton.notifyListeners(SWT.Selection,
+ null);
+ }
+ }
+ }
+ });
+
+ }
+
+ private void editSelectedElement() {
+ ISelection selection = NaryAttributeEditingDialog.this.featureValuesTableViewer
+ .getSelection();
+ if (selection instanceof IStructuredSelection) {
+ IStructuredSelection structuredSelection = (IStructuredSelection) selection;
+ if (structuredSelection.getFirstElement() != null) {
+ NaryAttributeEditingDialog.this.featureValuesTableViewer.editElement(
+ structuredSelection.getFirstElement(), 0);
+ }
+ }
+ }
+
+ @Override
+ public void refresh() {
+ this.featureValuesTableViewer.refresh();
+ }
+
+ @Override
+ protected boolean isResizable() {
+ return true;
+ }
+
+ @Override
+ protected void createButtonsForButtonBar(final Composite parent) {
+ createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
+ }
+
+
+ @Override
+ public ISelection getSelection() {
+ return this.featureValuesTableViewer.getSelection();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/NaryReferenceEditingDialog.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/NaryReferenceEditingDialog.java
new file mode 100644
index 00000000000..d15c1bfd720
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/internal/ui/NaryReferenceEditingDialog.java
@@ -0,0 +1,489 @@
+/*******************************************************************************
+ * Copyright (c) 2010, 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Guyomar (Mia-Software) - Bug 339554 - org.eclipse.papyrus.emf.facet.widgets.celleditors API cleaning
+ * Nicolas Guyomar (Mia-Software) - Bug 342451 - To be able to edit derived facet attributes and derived facet references in a table
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.ui;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.util.emf.ui.internal.dialogs.CreateInstanceDialog;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.IModelCellEditHandler;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.internal.Messages;
+import org.eclipse.papyrus.emf.facet.widgets.internal.CustomizableLabelProvider;
+import org.eclipse.jface.dialogs.IDialogConstants;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.viewers.IOpenListener;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.ListViewer;
+import org.eclipse.jface.viewers.OpenEvent;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.swt.widgets.Tree;
+import org.eclipse.ui.dialogs.PatternFilter;
+
+/** A dialog to edit a multiplicity-many {@link EReference} */
+public class NaryReferenceEditingDialog<T extends EObject> extends AbstractNaryEditingDialog<T> {
+
+
+ private Button addButton;
+ private Button removeButton;
+ private Button addAllButton;
+ private Button removeAllButton;
+ private Button upButton;
+ private Button downButton;
+
+ private static final int NUM_COLUMNS = 4;
+ // this is a *tree* viewer because PatternFilter only supports Trees
+ private TreeViewer availableValuesTreeViewer;
+ private ListViewer featureValuesListViewer;
+ private Button createInstanceButton;
+
+ private AssignableValuesContentProvider assignableValuesContentProvider;
+ private final List<T> availableValues;
+
+
+ /**
+ *
+ * @param parent
+ * the parent {@link Shell}
+ * @param values
+ * the list of current values.
+ * @param feature
+ * the feature to edit
+ * @param eObject
+ * the eObject being currently edited. Should not be modified in this dialog.
+ * @param editHandler
+ * The editHandler which has to be called when the edition is completed
+ */
+ public NaryReferenceEditingDialog(final Shell shell, final List<T> values,
+ final List<T> availableValues, final IModelCellEditHandler editHandler,
+ final EObject eObject, final EStructuralFeature feature) {
+ super(shell, values, editHandler, eObject, feature);
+ this.availableValues = new ArrayList<T>(availableValues);
+ }
+
+ @Override
+ protected void configureShell(final Shell shell) {
+ super.configureShell(shell);
+ shell.setText(NLS.bind(Messages.NaryReferenceEditingDialog_shellTitle,
+ getFeature().getName(), geteObject().eClass().getName()));
+ }
+
+ @Override
+ protected Control createDialogArea(final Composite parent) {
+ final Composite contents = (Composite) super.createDialogArea(parent);
+
+ final GridLayout contentsGridLayout = (GridLayout) contents.getLayout();
+ contentsGridLayout.numColumns = NaryReferenceEditingDialog.NUM_COLUMNS;
+
+ final GridData contentsGridData = (GridData) contents.getLayoutData();
+ contentsGridData.horizontalAlignment = SWT.FILL;
+ contentsGridData.verticalAlignment = SWT.FILL;
+
+ createLeftPane(contents);
+ createMiddleButtonsPane(contents);
+ createRightPane(contents);
+ createRightButtonsPane(contents);
+
+ this.availableValuesTreeViewer.addOpenListener(new IOpenListener() {
+ public void open(final OpenEvent event) {
+ if (NaryReferenceEditingDialog.this.addButton.isEnabled()) {
+ NaryReferenceEditingDialog.this.addButton.notifyListeners(SWT.Selection, null);
+ }
+ }
+ });
+
+ this.featureValuesListViewer.addOpenListener(new IOpenListener() {
+ public void open(final OpenEvent event) {
+ if (NaryReferenceEditingDialog.this.removeButton.isEnabled()) {
+ NaryReferenceEditingDialog.this.removeButton.notifyListeners(SWT.Selection,
+ null);
+ }
+ }
+ });
+
+ this.upButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ upButtonClicked();
+ }
+ });
+
+ this.downButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ downButtonClicked();
+ }
+ });
+
+ this.addButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ addButtonClicked();
+ }
+ });
+
+ this.addAllButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ addAllButtonClicked();
+ }
+ });
+
+ this.removeButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ removeButtonClicked();
+ }
+ });
+
+ this.removeAllButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ removeAllButtonClicked();
+ }
+ });
+
+ if (this.createInstanceButton != null) {
+ this.createInstanceButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(final SelectionEvent event) {
+ createInstanceButtonClicked();
+ }
+ });
+ }
+
+ return contents;
+ }
+
+ private void addButtonClicked() {
+ final IStructuredSelection selection = (IStructuredSelection) this.availableValuesTreeViewer
+ .getSelection();
+ if (selection.isEmpty() || !confirmMove()) {
+ return;
+ }
+ Iterator<T> it = getTCastedStructuredSelectionIterator(selection);
+ while (it.hasNext()) {
+ T element = it.next();
+ if (!(getValues() != null && getValues().contains(element))) {
+ getValues().add(element);
+ this.availableValues.remove(element);
+ }
+ }
+ refresh();
+ this.featureValuesListViewer.setSelection(selection);
+ }
+
+ @SuppressWarnings({ "unchecked", "static-method" })
+ //unchecked: the selection in not type parameterized, then we cannot get a cleaned cast iterator
+ //static-method: this method cannot be static to be able to use the T type.
+ private Iterator<T> getTCastedStructuredSelectionIterator(final IStructuredSelection selection) {
+ return selection.iterator();
+ }
+
+ private void addAllButtonClicked() {
+ if (this.availableValues.isEmpty() || !confirmMove()) {
+ return;
+ }
+ getValues().addAll(this.availableValues);
+ this.availableValues.removeAll(getValues());
+ refresh();
+ }
+
+ private void removeButtonClicked() {
+ final IStructuredSelection selection = (IStructuredSelection) this.featureValuesListViewer
+ .getSelection();
+ if (selection.isEmpty() || !confirmRemove()) {
+ return;
+ }
+
+ Iterator<T> it = this.getTCastedStructuredSelectionIterator(selection);
+ while (it.hasNext()) {
+ T element = it.next();
+ if (getValues().contains(element)) {
+ this.availableValues.add(element);
+ getValues().remove(element);
+ }
+ }
+ refresh();
+ }
+
+ private void removeAllButtonClicked() {
+ if (getValues().isEmpty() || !confirmRemove()) {
+ return;
+ }
+ this.availableValues.addAll(getValues());
+ getValues().removeAll(getValues());
+ refresh();
+ }
+
+ private boolean confirmRemove() {
+ if (getFeature() instanceof EReference) {
+ EReference eReference = (EReference) getFeature();
+ if (eReference.isContainment()) {
+ return MessageDialog.openConfirm(getShell(),
+ Messages.NaryReferenceEditingDialog_deleteElements,
+ Messages.NaryReferenceEditingDialog_deleteElementsLong);
+ }
+ }
+ return true;
+ }
+
+ private boolean confirmMove() {
+ if (getFeature() instanceof EReference || getFeature() instanceof FacetReference) {
+ EReference reference = (EReference) getFeature();
+ if (reference.isContainment()) {
+ String fullMessage = Messages.NaryReferenceEditingDialog_moveWarning;
+ return MessageDialog.openConfirm(getShell(),
+ Messages.NaryReferenceEditingDialog_moveElement, fullMessage);
+ }
+ }
+ return true;
+ }
+
+ @SuppressWarnings("unchecked") // type erasure on generic
+ private void createInstanceButtonClicked() {
+ EClassifier eType = getFeature().getEType();
+ if (eType instanceof EClass) {
+ EClass eClass = (EClass) eType;
+ EObject newInstance = CreateInstanceDialog.open(getShell(), eClass,
+ new CustomizableLabelProvider());
+ if (newInstance != null) {
+ getValues().add((T) newInstance);
+ refresh();
+ }
+ }
+ }
+
+ private void createLeftPane(final Composite contents) {
+ final Composite choiceComposite = new Composite(contents, SWT.NONE);
+ final GridData data = new GridData(SWT.FILL, SWT.FILL, true, true);
+ data.horizontalAlignment = SWT.END;
+ choiceComposite.setLayoutData(data);
+
+ final GridLayout layout = new GridLayout();
+ data.horizontalAlignment = SWT.FILL;
+ layout.marginHeight = 0;
+ layout.marginWidth = 0;
+ layout.numColumns = 1;
+ choiceComposite.setLayout(layout);
+
+ final Label choiceLabel = new Label(choiceComposite, SWT.NONE);
+ choiceLabel.setText(Messages.NaryReferenceEditingDialog_availableValues);
+
+ final GridData choiceLabelGridData = new GridData();
+ choiceLabelGridData.verticalAlignment = SWT.FILL;
+ choiceLabelGridData.horizontalAlignment = SWT.FILL;
+ choiceLabel.setLayoutData(choiceLabelGridData);
+
+ final Text patternText = createFilterText(choiceComposite);
+
+ final Tree availableValuesTree = new Tree(choiceComposite, SWT.MULTI | SWT.BORDER);
+ final GridData availableValuesGridData = new GridData();
+ availableValuesGridData.widthHint = AbstractNaryEditingDialog.AVAILABLE_VALUES_TREE_WIDTH;
+ availableValuesGridData.heightHint = AbstractNaryEditingDialog.AVAILABLE_VALUES_TREE_HEIGHT;
+ availableValuesGridData.horizontalAlignment = SWT.FILL;
+ availableValuesGridData.verticalAlignment = SWT.FILL;
+ availableValuesGridData.grabExcessHorizontalSpace = true;
+ availableValuesGridData.grabExcessVerticalSpace = true;
+ availableValuesTree.setLayoutData(availableValuesGridData);
+
+ this.availableValuesTreeViewer = new TreeViewer(availableValuesTree);
+ this.assignableValuesContentProvider = new AssignableValuesContentProvider();
+ this.availableValuesTreeViewer.setContentProvider(this.assignableValuesContentProvider);
+ this.availableValuesTreeViewer.setLabelProvider(new CustomizableLabelProvider());
+ final PatternFilter filter = new PatternFilter();
+ this.availableValuesTreeViewer.addFilter(filter);
+
+ this.availableValuesTreeViewer.setInput(this.availableValues);
+
+ patternText.addModifyListener(new ModifyListener() {
+ public void modifyText(final ModifyEvent e) {
+ filter.setPattern(patternText.getText());
+ NaryReferenceEditingDialog.this.availableValuesTreeViewer.refresh();
+ }
+ });
+ }
+
+ private void createMiddleButtonsPane(final Composite contents) {
+ final Composite buttonsComposite = new Composite(contents, SWT.NONE);
+ final GridData buttonsCompositeGridData = new GridData();
+ buttonsCompositeGridData.verticalAlignment = SWT.CENTER;
+ buttonsCompositeGridData.horizontalAlignment = SWT.FILL;
+ buttonsComposite.setLayoutData(buttonsCompositeGridData);
+ buttonsComposite.setLayout(new GridLayout());
+
+ // new Label(buttonsComposite, SWT.NONE);
+
+ this.addButton = new Button(buttonsComposite, SWT.PUSH);
+ this.addButton.setText(Messages.NaryReferenceEditingDialog_add);
+ this.addButton.setToolTipText(Messages.NaryReferenceEditingDialog_addTooltip);
+ final GridData addButtonGridData = new GridData();
+ addButtonGridData.verticalAlignment = SWT.FILL;
+ addButtonGridData.horizontalAlignment = SWT.FILL;
+ this.addButton.setLayoutData(addButtonGridData);
+
+ this.removeButton = new Button(buttonsComposite, SWT.PUSH);
+ this.removeButton.setText(Messages.NaryReferenceEditingDialog_remove);
+ this.removeButton.setToolTipText(Messages.NaryReferenceEditingDialog_removeTooltip);
+ final GridData removeButtonGridData = new GridData();
+ removeButtonGridData.verticalAlignment = SWT.FILL;
+ removeButtonGridData.horizontalAlignment = SWT.FILL;
+ this.removeButton.setLayoutData(removeButtonGridData);
+
+ spacer(buttonsComposite);
+
+ this.addAllButton = new Button(buttonsComposite, SWT.PUSH);
+ this.addAllButton.setText(Messages.NaryReferenceEditingDialog_addAll);
+ this.addAllButton.setToolTipText(Messages.NaryReferenceEditingDialog_addAllTooltip);
+
+ this.removeAllButton = new Button(buttonsComposite, SWT.PUSH);
+ this.removeAllButton.setText(Messages.NaryReferenceEditingDialog_removeAll);
+ this.removeAllButton.setToolTipText(Messages.NaryReferenceEditingDialog_removeAllTooltip);
+ }
+
+ private void spacer(final Composite parent) {
+ @SuppressWarnings("unused")
+ Label label = new Label(parent, SWT.NONE);
+ }
+
+ private void createRightButtonsPane(final Composite contents) {
+ final Composite buttonsComposite = new Composite(contents, SWT.NONE);
+ final GridData buttonsCompositeGridData = new GridData();
+ buttonsCompositeGridData.verticalAlignment = SWT.FILL;
+ buttonsCompositeGridData.horizontalAlignment = SWT.FILL;
+ buttonsComposite.setLayoutData(buttonsCompositeGridData);
+ buttonsComposite.setLayout(new GridLayout());
+
+ // spacer
+ spacer(buttonsComposite);
+
+ if (getFeature() instanceof EReference) {
+ EReference eReference = (EReference) getFeature();
+ if (eReference.isContainment()) {
+ this.createInstanceButton = new Button(buttonsComposite, SWT.PUSH);
+ this.createInstanceButton.setText(Messages.NaryReferenceEditingDialog_newInstance);
+ final GridData createButtonGridData = new GridData();
+ createButtonGridData.verticalAlignment = SWT.FILL;
+ createButtonGridData.horizontalAlignment = SWT.FILL;
+ this.createInstanceButton.setLayoutData(createButtonGridData);
+ spacer(buttonsComposite);
+ }
+
+ }
+
+ this.upButton = new Button(buttonsComposite, SWT.PUSH);
+ this.upButton.setText(Messages.NaryReferenceEditingDialog_up);
+ final GridData upButtonGridData = new GridData();
+ upButtonGridData.verticalAlignment = SWT.FILL;
+ upButtonGridData.horizontalAlignment = SWT.FILL;
+ this.upButton.setLayoutData(upButtonGridData);
+
+ this.downButton = new Button(buttonsComposite, SWT.PUSH);
+ this.downButton.setText(Messages.NaryReferenceEditingDialog_down);
+ final GridData downButtonGridData = new GridData();
+ downButtonGridData.verticalAlignment = SWT.FILL;
+ downButtonGridData.horizontalAlignment = SWT.FILL;
+ this.downButton.setLayoutData(downButtonGridData);
+ }
+
+ private void createRightPane(final Composite contents) {
+ final Composite featureComposite = new Composite(contents, SWT.NONE);
+ final GridData featureCompositeData = new GridData(SWT.FILL, SWT.FILL, true, true);
+ featureCompositeData.horizontalAlignment = SWT.END;
+ featureComposite.setLayoutData(featureCompositeData);
+
+ final GridLayout featureCompositeLayout = new GridLayout();
+ featureCompositeData.horizontalAlignment = SWT.FILL;
+ featureCompositeLayout.marginHeight = 0;
+ featureCompositeLayout.marginWidth = 0;
+ featureCompositeLayout.numColumns = 1;
+ featureComposite.setLayout(featureCompositeLayout);
+
+ final Label featureLabel = new Label(featureComposite, SWT.NONE);
+ featureLabel.setText(Messages.NaryReferenceEditingDialog_values);
+ final GridData valuesLabelGridData = new GridData();
+ valuesLabelGridData.horizontalSpan = 2;
+ valuesLabelGridData.horizontalAlignment = SWT.FILL;
+ valuesLabelGridData.verticalAlignment = SWT.FILL;
+ featureLabel.setLayoutData(valuesLabelGridData);
+
+ final org.eclipse.swt.widgets.List availableValuesList = new org.eclipse.swt.widgets.List(
+ featureComposite, SWT.MULTI | SWT.BORDER | SWT.V_SCROLL);
+ final GridData availableValuesGridData = new GridData();
+ availableValuesGridData.widthHint = AbstractNaryEditingDialog.AVAILABLE_VALUES_TREE_WIDTH;
+ availableValuesGridData.heightHint = AbstractNaryEditingDialog.AVAILABLE_VALUES_TREE_HEIGHT;
+ availableValuesGridData.verticalAlignment = SWT.FILL;
+ availableValuesGridData.horizontalAlignment = SWT.FILL;
+ availableValuesGridData.grabExcessHorizontalSpace = true;
+ availableValuesGridData.grabExcessVerticalSpace = true;
+ availableValuesList.setLayoutData(availableValuesGridData);
+
+ this.featureValuesListViewer = new ListViewer(availableValuesList);
+ this.featureValuesListViewer.setContentProvider(new AssignedValuesContentProvider());
+ this.featureValuesListViewer.setLabelProvider(new CustomizableLabelProvider());
+ this.featureValuesListViewer
+ .setInput(getValues());
+ }
+
+ private Text createFilterText(final Composite contents) {
+ Text patternText = new Text(contents, SWT.BORDER | SWT.SEARCH);
+ patternText.setMessage(Messages.NaryReferenceEditingDialog_typeFilterText);
+ patternText.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
+ return patternText;
+ }
+
+ @Override
+ public void refresh() {
+ this.availableValuesTreeViewer.refresh();
+ this.featureValuesListViewer.refresh();
+ }
+
+ @Override
+ protected boolean isResizable() {
+ return true;
+ }
+
+ @Override
+ protected void createButtonsForButtonBar(final Composite parent) {
+ createButton(parent, IDialogConstants.CANCEL_ID, IDialogConstants.CANCEL_LABEL, false);
+ createButton(parent, IDialogConstants.OK_ID, IDialogConstants.OK_LABEL, true);
+ }
+
+ @Override
+ public ISelection getSelection() {
+ return this.featureValuesListViewer.getSelection();
+ }
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/AbstractModelCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/AbstractModelCellEditor.java
new file mode 100644
index 00000000000..37ec9850abe
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/AbstractModelCellEditor.java
@@ -0,0 +1,106 @@
+/**
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor;
+
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '
+ * <em><b>Abstract Model Cell Editor</b></em>'. <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor#getCellType
+ * <em>Cell Type</em>}</li>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor#getCellId
+ * <em>Cell Id</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage#getAbstractModelCellEditor()
+ * @model abstract="true"
+ * @generated
+ */
+public interface AbstractModelCellEditor extends EObject {
+ /**
+ * Returns the value of the '<em><b>Cell Type</b></em>' reference. <!--
+ * begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Cell Type</em>' reference isn't clear, there
+ * really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Cell Type</em>' reference.
+ * @see #setCellType(EClassifier)
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage#getAbstractModelCellEditor_CellType()
+ * @model required="true"
+ * @generated
+ */
+ EClassifier getCellType();
+
+ /**
+ * Sets the value of the '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor#getCellType
+ * <em>Cell Type</em>}' reference. <!-- begin-user-doc --> <!-- end-user-doc
+ * -->
+ *
+ * @param value
+ * the new value of the '<em>Cell Type</em>' reference.
+ * @see #getCellType()
+ * @generated
+ */
+ void setCellType(EClassifier value);
+
+ /**
+ * Returns the value of the '<em><b>Cell Id</b></em>' attribute. <!--
+ * begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Cell Id</em>' attribute isn't clear, there
+ * really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Cell Id</em>' attribute.
+ * @see #setCellId(String)
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage#getAbstractModelCellEditor_CellId()
+ * @model required="true"
+ * @generated
+ */
+ String getCellId();
+
+ /**
+ * Sets the value of the '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor#getCellId
+ * <em>Cell Id</em>}' attribute. <!-- begin-user-doc --> <!-- end-user-doc
+ * -->
+ *
+ * @param value
+ * the new value of the '<em>Cell Id</em>' attribute.
+ * @see #getCellId()
+ * @generated
+ */
+ void setCellId(String value);
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @model kind="operation" required="true"
+ * @generated
+ */
+ String getModelCellEditorImpl();
+
+} // AbstractModelCellEditor
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/BasicCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/BasicCellEditor.java
new file mode 100644
index 00000000000..3a0d4e1c605
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/BasicCellEditor.java
@@ -0,0 +1,63 @@
+/**
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '
+ * <em><b>Basic Cell Editor</b></em>'. <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.BasicCellEditor#getBasicCellEditorImpl
+ * <em>Basic Cell Editor Impl</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage#getBasicCellEditor()
+ * @model
+ * @generated
+ */
+public interface BasicCellEditor extends AbstractModelCellEditor {
+ /**
+ * Returns the value of the '<em><b>Basic Cell Editor Impl</b></em>'
+ * attribute. <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Basic Cell Editor Impl</em>' attribute isn't
+ * clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Basic Cell Editor Impl</em>' attribute.
+ * @see #setBasicCellEditorImpl(String)
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage#getBasicCellEditor_BasicCellEditorImpl()
+ * @model required="true"
+ * @generated
+ */
+ String getBasicCellEditorImpl();
+
+ /**
+ * Sets the value of the '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.BasicCellEditor#getBasicCellEditorImpl
+ * <em>Basic Cell Editor Impl</em>}' attribute. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Basic Cell Editor Impl</em>'
+ * attribute.
+ * @see #getBasicCellEditorImpl()
+ * @generated
+ */
+ void setBasicCellEditorImpl(String value);
+
+} // BasicCellEditor
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/ModelCellEditorDeclarations.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/ModelCellEditorDeclarations.java
new file mode 100644
index 00000000000..478da1468aa
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/ModelCellEditorDeclarations.java
@@ -0,0 +1,54 @@
+/**
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '
+ * <em><b>Declarations</b></em>'. <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorDeclarations#getModelCellEditors
+ * <em>Model Cell Editors</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage#getModelCellEditorDeclarations()
+ * @model
+ * @generated
+ */
+public interface ModelCellEditorDeclarations extends EObject {
+ /**
+ * Returns the value of the '<em><b>Model Cell Editors</b></em>' containment
+ * reference list. The list contents are of type
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor}
+ * . <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Model Cell Editors</em>' containment reference
+ * list isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Model Cell Editors</em>' containment
+ * reference list.
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage#getModelCellEditorDeclarations_ModelCellEditors()
+ * @model containment="true"
+ * @generated
+ */
+ EList<AbstractModelCellEditor> getModelCellEditors();
+
+} // ModelCellEditorDeclarations
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/ModelCellEditorFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/ModelCellEditorFactory.java
new file mode 100644
index 00000000000..ee41d2a61e2
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/ModelCellEditorFactory.java
@@ -0,0 +1,78 @@
+/**
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc --> The <b>Factory</b> for the model. It provides a
+ * create method for each non-abstract class of the model. <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage
+ * @generated
+ */
+public interface ModelCellEditorFactory extends EFactory {
+ /**
+ * The singleton instance of the factory. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @generated
+ */
+ ModelCellEditorFactory eINSTANCE = org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.ModelCellEditorFactoryImpl
+ .init();
+
+ /**
+ * Returns a new object of class '<em>Declarations</em>'. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Declarations</em>'.
+ * @generated
+ */
+ ModelCellEditorDeclarations createModelCellEditorDeclarations();
+
+ /**
+ * Returns a new object of class '<em>Basic Cell Editor</em>'. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Basic Cell Editor</em>'.
+ * @generated
+ */
+ BasicCellEditor createBasicCellEditor();
+
+ /**
+ * Returns a new object of class '<em>Unary Reference Cell Editor</em>'.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Unary Reference Cell Editor</em>'.
+ * @generated
+ */
+ UnaryReferenceCellEditor createUnaryReferenceCellEditor();
+
+ /**
+ * Returns a new object of class '<em>Nary Feature Cell Editor</em>'. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Nary Feature Cell Editor</em>'.
+ * @generated
+ */
+ NaryFeatureCellEditor createNaryFeatureCellEditor();
+
+ /**
+ * Returns the package supported by this factory. <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the package supported by this factory.
+ * @generated
+ */
+ ModelCellEditorPackage getModelCellEditorPackage();
+
+} // ModelCellEditorFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/ModelCellEditorPackage.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/ModelCellEditorPackage.java
new file mode 100644
index 00000000000..dffb04d3eb0
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/ModelCellEditorPackage.java
@@ -0,0 +1,567 @@
+/**
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc --> The <b>Package</b> for the model. It contains
+ * accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface ModelCellEditorPackage extends EPackage {
+ /**
+ * The package name. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNAME = "modelCellEditor"; //$NON-NLS-1$
+
+ /**
+ * The package namespace URI. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/EMF_Facet/ModelCellEditor/0.1.0/modelCellEditor"; //$NON-NLS-1$
+
+ /**
+ * The package namespace name. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNS_PREFIX = "modelCellEditor"; //$NON-NLS-1$
+
+ /**
+ * The singleton instance of the package. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @generated
+ */
+ ModelCellEditorPackage eINSTANCE = org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.ModelCellEditorPackageImpl
+ .init();
+
+ /**
+ * The meta object id for the '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.ModelCellEditorDeclarationsImpl
+ * <em>Declarations</em>}' class. <!-- begin-user-doc --> <!-- end-user-doc
+ * -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.ModelCellEditorDeclarationsImpl
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.ModelCellEditorPackageImpl#getModelCellEditorDeclarations()
+ * @generated
+ */
+ int MODEL_CELL_EDITOR_DECLARATIONS = 0;
+
+ /**
+ * The feature id for the '<em><b>Model Cell Editors</b></em>' containment
+ * reference list. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int MODEL_CELL_EDITOR_DECLARATIONS__MODEL_CELL_EDITORS = 0;
+
+ /**
+ * The number of structural features of the '<em>Declarations</em>' class.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int MODEL_CELL_EDITOR_DECLARATIONS_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.AbstractModelCellEditorImpl
+ * <em>Abstract Model Cell Editor</em>}' class. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.AbstractModelCellEditorImpl
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.ModelCellEditorPackageImpl#getAbstractModelCellEditor()
+ * @generated
+ */
+ int ABSTRACT_MODEL_CELL_EDITOR = 1;
+
+ /**
+ * The feature id for the '<em><b>Cell Type</b></em>' reference. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_MODEL_CELL_EDITOR__CELL_TYPE = 0;
+
+ /**
+ * The feature id for the '<em><b>Cell Id</b></em>' attribute. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_MODEL_CELL_EDITOR__CELL_ID = 1;
+
+ /**
+ * The number of structural features of the '
+ * <em>Abstract Model Cell Editor</em>' class. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_MODEL_CELL_EDITOR_FEATURE_COUNT = 2;
+
+ /**
+ * The meta object id for the '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.BasicCellEditorImpl
+ * <em>Basic Cell Editor</em>}' class. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.BasicCellEditorImpl
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.ModelCellEditorPackageImpl#getBasicCellEditor()
+ * @generated
+ */
+ int BASIC_CELL_EDITOR = 2;
+
+ /**
+ * The feature id for the '<em><b>Cell Type</b></em>' reference. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int BASIC_CELL_EDITOR__CELL_TYPE = ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Cell Id</b></em>' attribute. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int BASIC_CELL_EDITOR__CELL_ID = ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_ID;
+
+ /**
+ * The feature id for the '<em><b>Basic Cell Editor Impl</b></em>'
+ * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int BASIC_CELL_EDITOR__BASIC_CELL_EDITOR_IMPL = ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Basic Cell Editor</em>'
+ * class. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int BASIC_CELL_EDITOR_FEATURE_COUNT = ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.UnaryReferenceCellEditorImpl
+ * <em>Unary Reference Cell Editor</em>}' class. <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.UnaryReferenceCellEditorImpl
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.ModelCellEditorPackageImpl#getUnaryReferenceCellEditor()
+ * @generated
+ */
+ int UNARY_REFERENCE_CELL_EDITOR = 3;
+
+ /**
+ * The feature id for the '<em><b>Cell Type</b></em>' reference. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UNARY_REFERENCE_CELL_EDITOR__CELL_TYPE = ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Cell Id</b></em>' attribute. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UNARY_REFERENCE_CELL_EDITOR__CELL_ID = ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_ID;
+
+ /**
+ * The feature id for the '<em><b>Unary Reference Cell Editor Impl</b></em>'
+ * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UNARY_REFERENCE_CELL_EDITOR__UNARY_REFERENCE_CELL_EDITOR_IMPL = ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '
+ * <em>Unary Reference Cell Editor</em>' class. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UNARY_REFERENCE_CELL_EDITOR_FEATURE_COUNT = ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.NaryFeatureCellEditorImpl
+ * <em>Nary Feature Cell Editor</em>}' class. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.NaryFeatureCellEditorImpl
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.ModelCellEditorPackageImpl#getNaryFeatureCellEditor()
+ * @generated
+ */
+ int NARY_FEATURE_CELL_EDITOR = 4;
+
+ /**
+ * The feature id for the '<em><b>Cell Type</b></em>' reference. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int NARY_FEATURE_CELL_EDITOR__CELL_TYPE = ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Cell Id</b></em>' attribute. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int NARY_FEATURE_CELL_EDITOR__CELL_ID = ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_ID;
+
+ /**
+ * The feature id for the '<em><b>Nary Feature Cell Editor Impl</b></em>'
+ * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int NARY_FEATURE_CELL_EDITOR__NARY_FEATURE_CELL_EDITOR_IMPL = ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '
+ * <em>Nary Feature Cell Editor</em>' class. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int NARY_FEATURE_CELL_EDITOR_FEATURE_COUNT = ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR_FEATURE_COUNT + 1;
+
+ /**
+ * Returns the meta object for class '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorDeclarations
+ * <em>Declarations</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Declarations</em>'.
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorDeclarations
+ * @generated
+ */
+ EClass getModelCellEditorDeclarations();
+
+ /**
+ * Returns the meta object for the containment reference list '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorDeclarations#getModelCellEditors
+ * <em>Model Cell Editors</em>}'. <!-- begin-user-doc --> <!-- end-user-doc
+ * -->
+ *
+ * @return the meta object for the containment reference list '
+ * <em>Model Cell Editors</em>'.
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorDeclarations#getModelCellEditors()
+ * @see #getModelCellEditorDeclarations()
+ * @generated
+ */
+ EReference getModelCellEditorDeclarations_ModelCellEditors();
+
+ /**
+ * Returns the meta object for class '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor
+ * <em>Abstract Model Cell Editor</em>}'. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @return the meta object for class '<em>Abstract Model Cell Editor</em>'.
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor
+ * @generated
+ */
+ EClass getAbstractModelCellEditor();
+
+ /**
+ * Returns the meta object for the reference '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor#getCellType
+ * <em>Cell Type</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @return the meta object for the reference '<em>Cell Type</em>'.
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor#getCellType()
+ * @see #getAbstractModelCellEditor()
+ * @generated
+ */
+ EReference getAbstractModelCellEditor_CellType();
+
+ /**
+ * Returns the meta object for the attribute '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor#getCellId
+ * <em>Cell Id</em>}'. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Cell Id</em>'.
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor#getCellId()
+ * @see #getAbstractModelCellEditor()
+ * @generated
+ */
+ EAttribute getAbstractModelCellEditor_CellId();
+
+ /**
+ * Returns the meta object for class '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.BasicCellEditor
+ * <em>Basic Cell Editor</em>}'. <!-- begin-user-doc --> <!-- end-user-doc
+ * -->
+ *
+ * @return the meta object for class '<em>Basic Cell Editor</em>'.
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.BasicCellEditor
+ * @generated
+ */
+ EClass getBasicCellEditor();
+
+ /**
+ * Returns the meta object for the attribute '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.BasicCellEditor#getBasicCellEditorImpl
+ * <em>Basic Cell Editor Impl</em>}'. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @return the meta object for the attribute '
+ * <em>Basic Cell Editor Impl</em>'.
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.BasicCellEditor#getBasicCellEditorImpl()
+ * @see #getBasicCellEditor()
+ * @generated
+ */
+ EAttribute getBasicCellEditor_BasicCellEditorImpl();
+
+ /**
+ * Returns the meta object for class '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.UnaryReferenceCellEditor
+ * <em>Unary Reference Cell Editor</em>}'. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @return the meta object for class '<em>Unary Reference Cell Editor</em>'.
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.UnaryReferenceCellEditor
+ * @generated
+ */
+ EClass getUnaryReferenceCellEditor();
+
+ /**
+ * Returns the meta object for the attribute '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.UnaryReferenceCellEditor#getUnaryReferenceCellEditorImpl
+ * <em>Unary Reference Cell Editor Impl</em>}'. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @return the meta object for the attribute '
+ * <em>Unary Reference Cell Editor Impl</em>'.
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.UnaryReferenceCellEditor#getUnaryReferenceCellEditorImpl()
+ * @see #getUnaryReferenceCellEditor()
+ * @generated
+ */
+ EAttribute getUnaryReferenceCellEditor_UnaryReferenceCellEditorImpl();
+
+ /**
+ * Returns the meta object for class '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.NaryFeatureCellEditor
+ * <em>Nary Feature Cell Editor</em>}'. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @return the meta object for class '<em>Nary Feature Cell Editor</em>'.
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.NaryFeatureCellEditor
+ * @generated
+ */
+ EClass getNaryFeatureCellEditor();
+
+ /**
+ * Returns the meta object for the attribute '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.NaryFeatureCellEditor#getNaryFeatureCellEditorImpl
+ * <em>Nary Feature Cell Editor Impl</em>}'. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @return the meta object for the attribute '
+ * <em>Nary Feature Cell Editor Impl</em>'.
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.NaryFeatureCellEditor#getNaryFeatureCellEditorImpl()
+ * @see #getNaryFeatureCellEditor()
+ * @generated
+ */
+ EAttribute getNaryFeatureCellEditor_NaryFeatureCellEditorImpl();
+
+ /**
+ * Returns the factory that creates the instances of the model. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ ModelCellEditorFactory getModelCellEditorFactory();
+
+ /**
+ * <!-- begin-user-doc --> Defines literals for the meta objects that
+ * represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.ModelCellEditorDeclarationsImpl
+ * <em>Declarations</em>}' class. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.ModelCellEditorDeclarationsImpl
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.ModelCellEditorPackageImpl#getModelCellEditorDeclarations()
+ * @generated
+ */
+ EClass MODEL_CELL_EDITOR_DECLARATIONS = ModelCellEditorPackage.eINSTANCE
+ .getModelCellEditorDeclarations();
+
+ /**
+ * The meta object literal for the '<em><b>Model Cell Editors</b></em>'
+ * containment reference list feature. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @generated
+ */
+ EReference MODEL_CELL_EDITOR_DECLARATIONS__MODEL_CELL_EDITORS = ModelCellEditorPackage.eINSTANCE
+ .getModelCellEditorDeclarations_ModelCellEditors();
+
+ /**
+ * The meta object literal for the '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.AbstractModelCellEditorImpl
+ * <em>Abstract Model Cell Editor</em>}' class. <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.AbstractModelCellEditorImpl
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.ModelCellEditorPackageImpl#getAbstractModelCellEditor()
+ * @generated
+ */
+ EClass ABSTRACT_MODEL_CELL_EDITOR = ModelCellEditorPackage.eINSTANCE
+ .getAbstractModelCellEditor();
+
+ /**
+ * The meta object literal for the '<em><b>Cell Type</b></em>' reference
+ * feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference ABSTRACT_MODEL_CELL_EDITOR__CELL_TYPE = ModelCellEditorPackage.eINSTANCE
+ .getAbstractModelCellEditor_CellType();
+
+ /**
+ * The meta object literal for the '<em><b>Cell Id</b></em>' attribute
+ * feature. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute ABSTRACT_MODEL_CELL_EDITOR__CELL_ID = ModelCellEditorPackage.eINSTANCE
+ .getAbstractModelCellEditor_CellId();
+
+ /**
+ * The meta object literal for the '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.BasicCellEditorImpl
+ * <em>Basic Cell Editor</em>}' class. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.BasicCellEditorImpl
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.ModelCellEditorPackageImpl#getBasicCellEditor()
+ * @generated
+ */
+ EClass BASIC_CELL_EDITOR = ModelCellEditorPackage.eINSTANCE.getBasicCellEditor();
+
+ /**
+ * The meta object literal for the '
+ * <em><b>Basic Cell Editor Impl</b></em>' attribute feature. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute BASIC_CELL_EDITOR__BASIC_CELL_EDITOR_IMPL = ModelCellEditorPackage.eINSTANCE
+ .getBasicCellEditor_BasicCellEditorImpl();
+
+ /**
+ * The meta object literal for the '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.UnaryReferenceCellEditorImpl
+ * <em>Unary Reference Cell Editor</em>}' class. <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.UnaryReferenceCellEditorImpl
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.ModelCellEditorPackageImpl#getUnaryReferenceCellEditor()
+ * @generated
+ */
+ EClass UNARY_REFERENCE_CELL_EDITOR = ModelCellEditorPackage.eINSTANCE
+ .getUnaryReferenceCellEditor();
+
+ /**
+ * The meta object literal for the '
+ * <em><b>Unary Reference Cell Editor Impl</b></em>' attribute feature.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute UNARY_REFERENCE_CELL_EDITOR__UNARY_REFERENCE_CELL_EDITOR_IMPL = ModelCellEditorPackage.eINSTANCE
+ .getUnaryReferenceCellEditor_UnaryReferenceCellEditorImpl();
+
+ /**
+ * The meta object literal for the '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.NaryFeatureCellEditorImpl
+ * <em>Nary Feature Cell Editor</em>}' class. <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.NaryFeatureCellEditorImpl
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.ModelCellEditorPackageImpl#getNaryFeatureCellEditor()
+ * @generated
+ */
+ EClass NARY_FEATURE_CELL_EDITOR = ModelCellEditorPackage.eINSTANCE
+ .getNaryFeatureCellEditor();
+
+ /**
+ * The meta object literal for the '
+ * <em><b>Nary Feature Cell Editor Impl</b></em>' attribute feature.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute NARY_FEATURE_CELL_EDITOR__NARY_FEATURE_CELL_EDITOR_IMPL = ModelCellEditorPackage.eINSTANCE
+ .getNaryFeatureCellEditor_NaryFeatureCellEditorImpl();
+
+ }
+
+} // ModelCellEditorPackage
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/NaryFeatureCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/NaryFeatureCellEditor.java
new file mode 100644
index 00000000000..6b8f40bc92e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/NaryFeatureCellEditor.java
@@ -0,0 +1,64 @@
+/**
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '
+ * <em><b>Nary Feature Cell Editor</b></em>'. <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.NaryFeatureCellEditor#getNaryFeatureCellEditorImpl
+ * <em>Nary Feature Cell Editor Impl</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage#getNaryFeatureCellEditor()
+ * @model
+ * @generated
+ */
+public interface NaryFeatureCellEditor extends AbstractModelCellEditor {
+ /**
+ * Returns the value of the '<em><b>Nary Feature Cell Editor Impl</b></em>'
+ * attribute. <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Nary Feature Cell Editor Impl</em>' attribute
+ * isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Nary Feature Cell Editor Impl</em>'
+ * attribute.
+ * @see #setNaryFeatureCellEditorImpl(String)
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage#getNaryFeatureCellEditor_NaryFeatureCellEditorImpl()
+ * @model required="true"
+ * @generated
+ */
+ String getNaryFeatureCellEditorImpl();
+
+ /**
+ * Sets the value of the '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.NaryFeatureCellEditor#getNaryFeatureCellEditorImpl
+ * <em>Nary Feature Cell Editor Impl</em>}' attribute. <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Nary Feature Cell Editor Impl</em>'
+ * attribute.
+ * @see #getNaryFeatureCellEditorImpl()
+ * @generated
+ */
+ void setNaryFeatureCellEditorImpl(String value);
+
+} // NaryFeatureCellEditor
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/UnaryReferenceCellEditor.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/UnaryReferenceCellEditor.java
new file mode 100644
index 00000000000..a1340a7fe75
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/UnaryReferenceCellEditor.java
@@ -0,0 +1,66 @@
+/**
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor;
+
+/**
+ * <!-- begin-user-doc --> A representation of the model object '
+ * <em><b>Unary Reference Cell Editor</b></em>'. <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.UnaryReferenceCellEditor#getUnaryReferenceCellEditorImpl
+ * <em>Unary Reference Cell Editor Impl</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage#getUnaryReferenceCellEditor()
+ * @model
+ * @generated
+ */
+public interface UnaryReferenceCellEditor extends AbstractModelCellEditor {
+ /**
+ * Returns the value of the '
+ * <em><b>Unary Reference Cell Editor Impl</b></em>' attribute. <!--
+ * begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Unary Reference Cell Editor Impl</em>'
+ * attribute isn't clear, there really should be more of a description
+ * here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Unary Reference Cell Editor Impl</em>'
+ * attribute.
+ * @see #setUnaryReferenceCellEditorImpl(String)
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage#getUnaryReferenceCellEditor_UnaryReferenceCellEditorImpl()
+ * @model required="true"
+ * @generated
+ */
+ String getUnaryReferenceCellEditorImpl();
+
+ /**
+ * Sets the value of the '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.UnaryReferenceCellEditor#getUnaryReferenceCellEditorImpl
+ * <em>Unary Reference Cell Editor Impl</em>}' attribute. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '
+ * <em>Unary Reference Cell Editor Impl</em>' attribute.
+ * @see #getUnaryReferenceCellEditorImpl()
+ * @generated
+ */
+ void setUnaryReferenceCellEditorImpl(String value);
+
+} // UnaryReferenceCellEditor
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/AbstractModelCellEditorImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/AbstractModelCellEditorImpl.java
new file mode 100644
index 00000000000..2999134d95d
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/AbstractModelCellEditorImpl.java
@@ -0,0 +1,260 @@
+/**
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '
+ * <em><b>Abstract Model Cell Editor</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.AbstractModelCellEditorImpl#getCellType
+ * <em>Cell Type</em>}</li>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.AbstractModelCellEditorImpl#getCellId
+ * <em>Cell Id</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class AbstractModelCellEditorImpl extends EObjectImpl implements
+ AbstractModelCellEditor {
+ /**
+ * The cached value of the '{@link #getCellType() <em>Cell Type</em>}'
+ * reference. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @see #getCellType()
+ * @generated
+ * @ordered
+ */
+ protected EClassifier cellType;
+
+ /**
+ * The default value of the '{@link #getCellId() <em>Cell Id</em>}'
+ * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @see #getCellId()
+ * @generated
+ * @ordered
+ */
+ protected static final String CELL_ID_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getCellId() <em>Cell Id</em>}'
+ * attribute. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @see #getCellId()
+ * @generated
+ * @ordered
+ */
+ protected String cellId = AbstractModelCellEditorImpl.CELL_ID_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected AbstractModelCellEditorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ModelCellEditorPackage.Literals.ABSTRACT_MODEL_CELL_EDITOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClassifier getCellType() {
+ if (this.cellType != null && this.cellType.eIsProxy()) {
+ InternalEObject oldCellType = (InternalEObject) this.cellType;
+ this.cellType = (EClassifier) eResolveProxy(oldCellType);
+ if (this.cellType != oldCellType) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE,
+ ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_TYPE,
+ oldCellType, this.cellType));
+ }
+ }
+ }
+ return this.cellType;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClassifier basicGetCellType() {
+ return this.cellType;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setCellType(final EClassifier newCellType) {
+ EClassifier oldCellType = this.cellType;
+ this.cellType = newCellType;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET,
+ ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_TYPE, oldCellType,
+ this.cellType));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getCellId() {
+ return this.cellId;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setCellId(final String newCellId) {
+ String oldCellId = this.cellId;
+ this.cellId = newCellId;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET,
+ ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_ID, oldCellId,
+ this.cellId));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getModelCellEditorImpl() {
+ // 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(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_TYPE:
+ if (resolve) {
+ return getCellType();
+ }
+ return basicGetCellType();
+ case ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_ID:
+ return getCellId();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_TYPE:
+ setCellType((EClassifier) newValue);
+ return;
+ case ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_ID:
+ setCellId((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_TYPE:
+ setCellType((EClassifier) null);
+ return;
+ case ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_ID:
+ setCellId(AbstractModelCellEditorImpl.CELL_ID_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_TYPE:
+ return this.cellType != null;
+ case ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_ID:
+ return AbstractModelCellEditorImpl.CELL_ID_EDEFAULT == null ? this.cellId != null
+ : !AbstractModelCellEditorImpl.CELL_ID_EDEFAULT.equals(this.cellId);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (cellId: "); //$NON-NLS-1$
+ result.append(this.cellId);
+ result.append(')');
+ return result.toString();
+ }
+
+} // AbstractModelCellEditorImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/BasicCellEditorImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/BasicCellEditorImpl.java
new file mode 100644
index 00000000000..51494f306f4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/BasicCellEditorImpl.java
@@ -0,0 +1,184 @@
+/**
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.BasicCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '
+ * <em><b>Basic Cell Editor</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.BasicCellEditorImpl#getBasicCellEditorImpl
+ * <em>Basic Cell Editor Impl</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class BasicCellEditorImpl extends AbstractModelCellEditorImpl implements BasicCellEditor {
+ /**
+ * The default value of the '{@link #getBasicCellEditorImpl()
+ * <em>Basic Cell Editor Impl</em>}' attribute. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @see #getBasicCellEditorImpl()
+ * @generated
+ * @ordered
+ */
+ protected static final String BASIC_CELL_EDITOR_IMPL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getBasicCellEditorImpl()
+ * <em>Basic Cell Editor Impl</em>}' attribute. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @see #getBasicCellEditorImpl()
+ * @generated
+ * @ordered
+ */
+ protected String basicCellEditorImpl = BasicCellEditorImpl.BASIC_CELL_EDITOR_IMPL_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected BasicCellEditorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ModelCellEditorPackage.Literals.BASIC_CELL_EDITOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getBasicCellEditorImpl() {
+ return this.basicCellEditorImpl;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setBasicCellEditorImpl(final String newBasicCellEditorImpl) {
+ String oldBasicCellEditorImpl = this.basicCellEditorImpl;
+ this.basicCellEditorImpl = newBasicCellEditorImpl;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET,
+ ModelCellEditorPackage.BASIC_CELL_EDITOR__BASIC_CELL_EDITOR_IMPL,
+ oldBasicCellEditorImpl, this.basicCellEditorImpl));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case ModelCellEditorPackage.BASIC_CELL_EDITOR__BASIC_CELL_EDITOR_IMPL:
+ return getBasicCellEditorImpl();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case ModelCellEditorPackage.BASIC_CELL_EDITOR__BASIC_CELL_EDITOR_IMPL:
+ setBasicCellEditorImpl((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case ModelCellEditorPackage.BASIC_CELL_EDITOR__BASIC_CELL_EDITOR_IMPL:
+ setBasicCellEditorImpl(BasicCellEditorImpl.BASIC_CELL_EDITOR_IMPL_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case ModelCellEditorPackage.BASIC_CELL_EDITOR__BASIC_CELL_EDITOR_IMPL:
+ return BasicCellEditorImpl.BASIC_CELL_EDITOR_IMPL_EDEFAULT == null ? this.basicCellEditorImpl != null
+ : !BasicCellEditorImpl.BASIC_CELL_EDITOR_IMPL_EDEFAULT
+ .equals(this.basicCellEditorImpl);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (basicCellEditorImpl: "); //$NON-NLS-1$
+ result.append(this.basicCellEditorImpl);
+ result.append(')');
+ return result.toString();
+ }
+
+ /** @generated NOT */
+ @Override
+ public String getModelCellEditorImpl() {
+ return getBasicCellEditorImpl();
+ }
+
+} // BasicCellEditorImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/ModelCellEditorDeclarationsImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/ModelCellEditorDeclarationsImpl.java
new file mode 100644
index 00000000000..5da536380c9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/ModelCellEditorDeclarationsImpl.java
@@ -0,0 +1,162 @@
+/**
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorDeclarations;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '
+ * <em><b>Declarations</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.ModelCellEditorDeclarationsImpl#getModelCellEditors
+ * <em>Model Cell Editors</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ModelCellEditorDeclarationsImpl extends EObjectImpl implements
+ ModelCellEditorDeclarations {
+ /**
+ * The cached value of the '{@link #getModelCellEditors()
+ * <em>Model Cell Editors</em>}' containment reference list. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @see #getModelCellEditors()
+ * @generated
+ * @ordered
+ */
+ protected EList<AbstractModelCellEditor> modelCellEditors;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected ModelCellEditorDeclarationsImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ModelCellEditorPackage.Literals.MODEL_CELL_EDITOR_DECLARATIONS;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EList<AbstractModelCellEditor> getModelCellEditors() {
+ if (this.modelCellEditors == null) {
+ this.modelCellEditors = new EObjectContainmentEList<AbstractModelCellEditor>(
+ AbstractModelCellEditor.class, this,
+ ModelCellEditorPackage.MODEL_CELL_EDITOR_DECLARATIONS__MODEL_CELL_EDITORS);
+ }
+ return this.modelCellEditors;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(final InternalEObject otherEnd, final int featureID,
+ final NotificationChain msgs) {
+ switch (featureID) {
+ case ModelCellEditorPackage.MODEL_CELL_EDITOR_DECLARATIONS__MODEL_CELL_EDITORS:
+ return ((InternalEList<?>) getModelCellEditors()).basicRemove(otherEnd, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case ModelCellEditorPackage.MODEL_CELL_EDITOR_DECLARATIONS__MODEL_CELL_EDITORS:
+ return getModelCellEditors();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case ModelCellEditorPackage.MODEL_CELL_EDITOR_DECLARATIONS__MODEL_CELL_EDITORS:
+ getModelCellEditors().clear();
+ getModelCellEditors().addAll((Collection<? extends AbstractModelCellEditor>) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case ModelCellEditorPackage.MODEL_CELL_EDITOR_DECLARATIONS__MODEL_CELL_EDITORS:
+ getModelCellEditors().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case ModelCellEditorPackage.MODEL_CELL_EDITOR_DECLARATIONS__MODEL_CELL_EDITORS:
+ return this.modelCellEditors != null && !this.modelCellEditors.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} // ModelCellEditorDeclarationsImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/ModelCellEditorFactoryImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/ModelCellEditorFactoryImpl.java
new file mode 100644
index 00000000000..fe88f3bcde9
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/ModelCellEditorFactoryImpl.java
@@ -0,0 +1,144 @@
+/**
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.BasicCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorDeclarations;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorFactory;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.NaryFeatureCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.UnaryReferenceCellEditor;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model <b>Factory</b>. <!--
+ * end-user-doc -->
+ *
+ * @generated
+ */
+public class ModelCellEditorFactoryImpl extends EFactoryImpl implements ModelCellEditorFactory {
+ /**
+ * Creates the default factory implementation. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @generated
+ */
+ public static ModelCellEditorFactory init() {
+ try {
+ ModelCellEditorFactory theModelCellEditorFactory = (ModelCellEditorFactory) EPackage.Registry.INSTANCE
+ .getEFactory("http://www.eclipse.org/papyrus/EMF_Facet/ModelCellEditor/0.1.0/modelCellEditor"); //$NON-NLS-1$
+ if (theModelCellEditorFactory != null) {
+ return theModelCellEditorFactory;
+ }
+ } catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new ModelCellEditorFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @generated
+ */
+ public ModelCellEditorFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EObject create(final EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case ModelCellEditorPackage.MODEL_CELL_EDITOR_DECLARATIONS:
+ return createModelCellEditorDeclarations();
+ case ModelCellEditorPackage.BASIC_CELL_EDITOR:
+ return createBasicCellEditor();
+ case ModelCellEditorPackage.UNARY_REFERENCE_CELL_EDITOR:
+ return createUnaryReferenceCellEditor();
+ case ModelCellEditorPackage.NARY_FEATURE_CELL_EDITOR:
+ return createNaryFeatureCellEditor();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() //$NON-NLS-1$
+ + "' is not a valid classifier"); //$NON-NLS-1$
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ModelCellEditorDeclarations createModelCellEditorDeclarations() {
+ ModelCellEditorDeclarationsImpl modelCellEditorDeclarations = new ModelCellEditorDeclarationsImpl();
+ return modelCellEditorDeclarations;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public BasicCellEditor createBasicCellEditor() {
+ BasicCellEditorImpl basicCellEditor = new BasicCellEditorImpl();
+ return basicCellEditor;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public UnaryReferenceCellEditor createUnaryReferenceCellEditor() {
+ UnaryReferenceCellEditorImpl unaryReferenceCellEditor = new UnaryReferenceCellEditorImpl();
+ return unaryReferenceCellEditor;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public NaryFeatureCellEditor createNaryFeatureCellEditor() {
+ NaryFeatureCellEditorImpl naryFeatureCellEditor = new NaryFeatureCellEditorImpl();
+ return naryFeatureCellEditor;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ModelCellEditorPackage getModelCellEditorPackage() {
+ return (ModelCellEditorPackage) getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static ModelCellEditorPackage getPackage() {
+ return ModelCellEditorPackage.eINSTANCE;
+ }
+
+} // ModelCellEditorFactoryImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/ModelCellEditorPackageImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/ModelCellEditorPackageImpl.java
new file mode 100644
index 00000000000..66796bb0919
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/ModelCellEditorPackageImpl.java
@@ -0,0 +1,397 @@
+/**
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.BasicCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorDeclarations;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorFactory;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.NaryFeatureCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.UnaryReferenceCellEditor;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model <b>Package</b>. <!--
+ * end-user-doc -->
+ *
+ * @generated
+ */
+public class ModelCellEditorPackageImpl extends EPackageImpl implements ModelCellEditorPackage {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass modelCellEditorDeclarationsEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass abstractModelCellEditorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass basicCellEditorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass unaryReferenceCellEditorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass naryFeatureCellEditorEClass = 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.
+ * <p>
+ * Note: the correct way to create the package is via the static factory
+ * method {@link #init init()}, which also performs initialization of the
+ * package, or returns the registered package, if one already exists. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private ModelCellEditorPackageImpl() {
+ super(ModelCellEditorPackage.eNS_URI, ModelCellEditorFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * 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 ModelCellEditorPackage#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 --> <!--
+ * end-user-doc -->
+ *
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static ModelCellEditorPackage init() {
+ if (ModelCellEditorPackageImpl.isInited) {
+ return (ModelCellEditorPackage) EPackage.Registry.INSTANCE
+ .getEPackage(ModelCellEditorPackage.eNS_URI);
+ }
+
+ // Obtain or create and register package
+ ModelCellEditorPackageImpl theModelCellEditorPackage = (ModelCellEditorPackageImpl) (EPackage.Registry.INSTANCE
+ .get(ModelCellEditorPackage.eNS_URI) instanceof ModelCellEditorPackageImpl ? EPackage.Registry.INSTANCE
+ .get(ModelCellEditorPackage.eNS_URI) : new ModelCellEditorPackageImpl());
+
+ ModelCellEditorPackageImpl.isInited = true;
+
+ // Create package meta-data objects
+ theModelCellEditorPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theModelCellEditorPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theModelCellEditorPackage.freeze();
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(ModelCellEditorPackage.eNS_URI, theModelCellEditorPackage);
+ return theModelCellEditorPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getModelCellEditorDeclarations() {
+ return this.modelCellEditorDeclarationsEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getModelCellEditorDeclarations_ModelCellEditors() {
+ return (EReference) this.modelCellEditorDeclarationsEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getAbstractModelCellEditor() {
+ return this.abstractModelCellEditorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getAbstractModelCellEditor_CellType() {
+ return (EReference) this.abstractModelCellEditorEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getAbstractModelCellEditor_CellId() {
+ return (EAttribute) this.abstractModelCellEditorEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getBasicCellEditor() {
+ return this.basicCellEditorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getBasicCellEditor_BasicCellEditorImpl() {
+ return (EAttribute) this.basicCellEditorEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getUnaryReferenceCellEditor() {
+ return this.unaryReferenceCellEditorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getUnaryReferenceCellEditor_UnaryReferenceCellEditorImpl() {
+ return (EAttribute) this.unaryReferenceCellEditorEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getNaryFeatureCellEditor() {
+ return this.naryFeatureCellEditorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getNaryFeatureCellEditor_NaryFeatureCellEditorImpl() {
+ return (EAttribute) this.naryFeatureCellEditorEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ModelCellEditorFactory getModelCellEditorFactory() {
+ return (ModelCellEditorFactory) getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is guarded to
+ * have no affect on any invocation but its first. <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void createPackageContents() {
+ if (this.isCreated) {
+ return;
+ }
+ this.isCreated = true;
+
+ // Create classes and their features
+ this.modelCellEditorDeclarationsEClass = createEClass(ModelCellEditorPackage.MODEL_CELL_EDITOR_DECLARATIONS);
+ createEReference(this.modelCellEditorDeclarationsEClass,
+ ModelCellEditorPackage.MODEL_CELL_EDITOR_DECLARATIONS__MODEL_CELL_EDITORS);
+
+ this.abstractModelCellEditorEClass = createEClass(ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR);
+ createEReference(this.abstractModelCellEditorEClass,
+ ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_TYPE);
+ createEAttribute(this.abstractModelCellEditorEClass,
+ ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR__CELL_ID);
+
+ this.basicCellEditorEClass = createEClass(ModelCellEditorPackage.BASIC_CELL_EDITOR);
+ createEAttribute(this.basicCellEditorEClass,
+ ModelCellEditorPackage.BASIC_CELL_EDITOR__BASIC_CELL_EDITOR_IMPL);
+
+ this.unaryReferenceCellEditorEClass = createEClass(ModelCellEditorPackage.UNARY_REFERENCE_CELL_EDITOR);
+ createEAttribute(
+ this.unaryReferenceCellEditorEClass,
+ ModelCellEditorPackage.UNARY_REFERENCE_CELL_EDITOR__UNARY_REFERENCE_CELL_EDITOR_IMPL);
+
+ this.naryFeatureCellEditorEClass = createEClass(ModelCellEditorPackage.NARY_FEATURE_CELL_EDITOR);
+ createEAttribute(this.naryFeatureCellEditorEClass,
+ ModelCellEditorPackage.NARY_FEATURE_CELL_EDITOR__NARY_FEATURE_CELL_EDITOR_IMPL);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (this.isInitialized) {
+ return;
+ }
+ this.isInitialized = true;
+
+ // Initialize package
+ setName(ModelCellEditorPackage.eNAME);
+ setNsPrefix(ModelCellEditorPackage.eNS_PREFIX);
+ setNsURI(ModelCellEditorPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ this.basicCellEditorEClass.getESuperTypes().add(getAbstractModelCellEditor());
+ this.unaryReferenceCellEditorEClass.getESuperTypes().add(getAbstractModelCellEditor());
+ this.naryFeatureCellEditorEClass.getESuperTypes().add(getAbstractModelCellEditor());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(
+ this.modelCellEditorDeclarationsEClass,
+ ModelCellEditorDeclarations.class,
+ "ModelCellEditorDeclarations", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, //$NON-NLS-1$
+ EPackageImpl.IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getModelCellEditorDeclarations_ModelCellEditors(),
+ getAbstractModelCellEditor(), null, "modelCellEditors", null, 0, -1, //$NON-NLS-1$
+ ModelCellEditorDeclarations.class, !EPackageImpl.IS_TRANSIENT,
+ !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, EPackageImpl.IS_COMPOSITE,
+ !EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE,
+ EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED);
+
+ initEClass(
+ this.abstractModelCellEditorEClass,
+ AbstractModelCellEditor.class,
+ "AbstractModelCellEditor", EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(
+ getAbstractModelCellEditor_CellType(),
+ this.ecorePackage.getEClassifier(),
+ null,
+ "cellType", null, 1, 1, AbstractModelCellEditor.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE, //$NON-NLS-1$
+ EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_COMPOSITE,
+ EPackageImpl.IS_RESOLVE_PROXIES, !EPackageImpl.IS_UNSETTABLE,
+ EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED);
+ initEAttribute(
+ getAbstractModelCellEditor_CellId(),
+ this.ecorePackage.getEString(),
+ "cellId", //$NON-NLS-1$
+ null, 1, 1, AbstractModelCellEditor.class, !EPackageImpl.IS_TRANSIENT,
+ !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_UNSETTABLE,
+ !EPackageImpl.IS_ID, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED,
+ EPackageImpl.IS_ORDERED);
+
+ addEOperation(this.abstractModelCellEditorEClass, this.ecorePackage.getEString(),
+ "getModelCellEditorImpl", 1, 1, EPackageImpl.IS_UNIQUE, EPackageImpl.IS_ORDERED); //$NON-NLS-1$
+
+ initEClass(this.basicCellEditorEClass, BasicCellEditor.class,
+ "BasicCellEditor", !EPackageImpl.IS_ABSTRACT, //$NON-NLS-1$
+ !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(
+ getBasicCellEditor_BasicCellEditorImpl(),
+ this.ecorePackage.getEString(),
+ "basicCellEditorImpl", null, 1, 1, BasicCellEditor.class, !EPackageImpl.IS_TRANSIENT, //$NON-NLS-1$
+ !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_UNSETTABLE,
+ !EPackageImpl.IS_ID, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED,
+ EPackageImpl.IS_ORDERED);
+
+ initEClass(this.unaryReferenceCellEditorEClass, UnaryReferenceCellEditor.class,
+ "UnaryReferenceCellEditor", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, //$NON-NLS-1$
+ EPackageImpl.IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getUnaryReferenceCellEditor_UnaryReferenceCellEditorImpl(),
+ this.ecorePackage.getEString(), "unaryReferenceCellEditorImpl", null, 1, 1, //$NON-NLS-1$
+ UnaryReferenceCellEditor.class, !EPackageImpl.IS_TRANSIENT,
+ !EPackageImpl.IS_VOLATILE, EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_UNSETTABLE,
+ !EPackageImpl.IS_ID, EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED,
+ EPackageImpl.IS_ORDERED);
+
+ initEClass(
+ this.naryFeatureCellEditorEClass,
+ NaryFeatureCellEditor.class,
+ "NaryFeatureCellEditor", !EPackageImpl.IS_ABSTRACT, !EPackageImpl.IS_INTERFACE, EPackageImpl.IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEAttribute(getNaryFeatureCellEditor_NaryFeatureCellEditorImpl(),
+ this.ecorePackage.getEString(), "naryFeatureCellEditorImpl", null, 1, 1, //$NON-NLS-1$
+ NaryFeatureCellEditor.class, !EPackageImpl.IS_TRANSIENT, !EPackageImpl.IS_VOLATILE,
+ EPackageImpl.IS_CHANGEABLE, !EPackageImpl.IS_UNSETTABLE, !EPackageImpl.IS_ID,
+ EPackageImpl.IS_UNIQUE, !EPackageImpl.IS_DERIVED, EPackageImpl.IS_ORDERED);
+
+ // Create resource
+ createResource(ModelCellEditorPackage.eNS_URI);
+ }
+
+} // ModelCellEditorPackageImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/NaryFeatureCellEditorImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/NaryFeatureCellEditorImpl.java
new file mode 100644
index 00000000000..70950778dea
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/NaryFeatureCellEditorImpl.java
@@ -0,0 +1,184 @@
+/**
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.NaryFeatureCellEditor;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '
+ * <em><b>Nary Feature Cell Editor</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.NaryFeatureCellEditorImpl#getNaryFeatureCellEditorImpl
+ * <em>Nary Feature Cell Editor Impl</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class NaryFeatureCellEditorImpl extends AbstractModelCellEditorImpl implements
+ NaryFeatureCellEditor {
+ /**
+ * The default value of the '{@link #getNaryFeatureCellEditorImpl()
+ * <em>Nary Feature Cell Editor Impl</em>}' attribute. <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ *
+ * @see #getNaryFeatureCellEditorImpl()
+ * @generated
+ * @ordered
+ */
+ protected static final String NARY_FEATURE_CELL_EDITOR_IMPL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getNaryFeatureCellEditorImpl()
+ * <em>Nary Feature Cell Editor Impl</em>}' attribute. <!-- begin-user-doc
+ * --> <!-- end-user-doc -->
+ *
+ * @see #getNaryFeatureCellEditorImpl()
+ * @generated
+ * @ordered
+ */
+ protected String naryFeatureCellEditorImpl = NaryFeatureCellEditorImpl.NARY_FEATURE_CELL_EDITOR_IMPL_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected NaryFeatureCellEditorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ModelCellEditorPackage.Literals.NARY_FEATURE_CELL_EDITOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getNaryFeatureCellEditorImpl() {
+ return this.naryFeatureCellEditorImpl;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setNaryFeatureCellEditorImpl(final String newNaryFeatureCellEditorImpl) {
+ String oldNaryFeatureCellEditorImpl = this.naryFeatureCellEditorImpl;
+ this.naryFeatureCellEditorImpl = newNaryFeatureCellEditorImpl;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET,
+ ModelCellEditorPackage.NARY_FEATURE_CELL_EDITOR__NARY_FEATURE_CELL_EDITOR_IMPL,
+ oldNaryFeatureCellEditorImpl, this.naryFeatureCellEditorImpl));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case ModelCellEditorPackage.NARY_FEATURE_CELL_EDITOR__NARY_FEATURE_CELL_EDITOR_IMPL:
+ return getNaryFeatureCellEditorImpl();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case ModelCellEditorPackage.NARY_FEATURE_CELL_EDITOR__NARY_FEATURE_CELL_EDITOR_IMPL:
+ setNaryFeatureCellEditorImpl((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case ModelCellEditorPackage.NARY_FEATURE_CELL_EDITOR__NARY_FEATURE_CELL_EDITOR_IMPL:
+ setNaryFeatureCellEditorImpl(NaryFeatureCellEditorImpl.NARY_FEATURE_CELL_EDITOR_IMPL_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case ModelCellEditorPackage.NARY_FEATURE_CELL_EDITOR__NARY_FEATURE_CELL_EDITOR_IMPL:
+ return NaryFeatureCellEditorImpl.NARY_FEATURE_CELL_EDITOR_IMPL_EDEFAULT == null ? this.naryFeatureCellEditorImpl != null
+ : !NaryFeatureCellEditorImpl.NARY_FEATURE_CELL_EDITOR_IMPL_EDEFAULT
+ .equals(this.naryFeatureCellEditorImpl);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (naryFeatureCellEditorImpl: "); //$NON-NLS-1$
+ result.append(this.naryFeatureCellEditorImpl);
+ result.append(')');
+ return result.toString();
+ }
+
+ @Override
+ public String getModelCellEditorImpl() {
+ return getNaryFeatureCellEditorImpl();
+ }
+
+} // NaryFeatureCellEditorImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/UnaryReferenceCellEditorImpl.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/UnaryReferenceCellEditorImpl.java
new file mode 100644
index 00000000000..9e757731a31
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/impl/UnaryReferenceCellEditorImpl.java
@@ -0,0 +1,187 @@
+/**
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.UnaryReferenceCellEditor;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '
+ * <em><b>Unary Reference Cell Editor</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.impl.UnaryReferenceCellEditorImpl#getUnaryReferenceCellEditorImpl
+ * <em>Unary Reference Cell Editor Impl</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class UnaryReferenceCellEditorImpl extends AbstractModelCellEditorImpl implements
+ UnaryReferenceCellEditor {
+ /**
+ * The default value of the '{@link #getUnaryReferenceCellEditorImpl()
+ * <em>Unary Reference Cell Editor Impl</em>}' attribute. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @see #getUnaryReferenceCellEditorImpl()
+ * @generated
+ * @ordered
+ */
+ protected static final String UNARY_REFERENCE_CELL_EDITOR_IMPL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getUnaryReferenceCellEditorImpl()
+ * <em>Unary Reference Cell Editor Impl</em>}' attribute. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @see #getUnaryReferenceCellEditorImpl()
+ * @generated
+ * @ordered
+ */
+ protected String unaryReferenceCellEditorImpl = UnaryReferenceCellEditorImpl.UNARY_REFERENCE_CELL_EDITOR_IMPL_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected UnaryReferenceCellEditorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ModelCellEditorPackage.Literals.UNARY_REFERENCE_CELL_EDITOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getUnaryReferenceCellEditorImpl() {
+ return this.unaryReferenceCellEditorImpl;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setUnaryReferenceCellEditorImpl(final String newUnaryReferenceCellEditorImpl) {
+ String oldUnaryReferenceCellEditorImpl = this.unaryReferenceCellEditorImpl;
+ this.unaryReferenceCellEditorImpl = newUnaryReferenceCellEditorImpl;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(
+ this,
+ Notification.SET,
+ ModelCellEditorPackage.UNARY_REFERENCE_CELL_EDITOR__UNARY_REFERENCE_CELL_EDITOR_IMPL,
+ oldUnaryReferenceCellEditorImpl, this.unaryReferenceCellEditorImpl));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(final int featureID, final boolean resolve, final boolean coreType) {
+ switch (featureID) {
+ case ModelCellEditorPackage.UNARY_REFERENCE_CELL_EDITOR__UNARY_REFERENCE_CELL_EDITOR_IMPL:
+ return getUnaryReferenceCellEditorImpl();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(final int featureID, final Object newValue) {
+ switch (featureID) {
+ case ModelCellEditorPackage.UNARY_REFERENCE_CELL_EDITOR__UNARY_REFERENCE_CELL_EDITOR_IMPL:
+ setUnaryReferenceCellEditorImpl((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(final int featureID) {
+ switch (featureID) {
+ case ModelCellEditorPackage.UNARY_REFERENCE_CELL_EDITOR__UNARY_REFERENCE_CELL_EDITOR_IMPL:
+ setUnaryReferenceCellEditorImpl(UnaryReferenceCellEditorImpl.UNARY_REFERENCE_CELL_EDITOR_IMPL_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(final int featureID) {
+ switch (featureID) {
+ case ModelCellEditorPackage.UNARY_REFERENCE_CELL_EDITOR__UNARY_REFERENCE_CELL_EDITOR_IMPL:
+ return UnaryReferenceCellEditorImpl.UNARY_REFERENCE_CELL_EDITOR_IMPL_EDEFAULT == null ? this.unaryReferenceCellEditorImpl != null
+ : !UnaryReferenceCellEditorImpl.UNARY_REFERENCE_CELL_EDITOR_IMPL_EDEFAULT
+ .equals(this.unaryReferenceCellEditorImpl);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (unaryReferenceCellEditorImpl: "); //$NON-NLS-1$
+ result.append(this.unaryReferenceCellEditorImpl);
+ result.append(')');
+ return result.toString();
+ }
+
+ /** @generated NOT */
+ @Override
+ public String getModelCellEditorImpl() {
+ return getUnaryReferenceCellEditorImpl();
+ }
+
+} // UnaryReferenceCellEditorImpl
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/util/ModelCellEditorAdapterFactory.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/util/ModelCellEditorAdapterFactory.java
new file mode 100644
index 00000000000..646929f3292
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/util/ModelCellEditorAdapterFactory.java
@@ -0,0 +1,216 @@
+/**
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.BasicCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorDeclarations;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.NaryFeatureCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.UnaryReferenceCellEditor;
+
+/**
+ * <!-- begin-user-doc --> The <b>Adapter Factory</b> for the model. It provides
+ * an adapter <code>createXXX</code> method for each class of the model. <!--
+ * end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage
+ * @generated
+ */
+public class ModelCellEditorAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package. <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected static ModelCellEditorPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @generated
+ */
+ public ModelCellEditorAdapterFactory() {
+ if (ModelCellEditorAdapterFactory.modelPackage == null) {
+ ModelCellEditorAdapterFactory.modelPackage = ModelCellEditorPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc --> This implementation returns <code>true</code> if
+ * the object is either the model's package or is an instance object of the
+ * model. <!-- end-user-doc -->
+ *
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(final Object object) {
+ if (object == ModelCellEditorAdapterFactory.modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject) object).eClass().getEPackage() == ModelCellEditorAdapterFactory.modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods. <!--
+ * begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected ModelCellEditorSwitch<Adapter> modelSwitch = new ModelCellEditorSwitch<Adapter>() {
+ @Override
+ public Adapter caseModelCellEditorDeclarations(final ModelCellEditorDeclarations object) {
+ return createModelCellEditorDeclarationsAdapter();
+ }
+
+ @Override
+ public Adapter caseAbstractModelCellEditor(final AbstractModelCellEditor object) {
+ return createAbstractModelCellEditorAdapter();
+ }
+
+ @Override
+ public Adapter caseBasicCellEditor(final BasicCellEditor object) {
+ return createBasicCellEditorAdapter();
+ }
+
+ @Override
+ public Adapter caseUnaryReferenceCellEditor(final UnaryReferenceCellEditor object) {
+ return createUnaryReferenceCellEditorAdapter();
+ }
+
+ @Override
+ public Adapter caseNaryFeatureCellEditor(final NaryFeatureCellEditor object) {
+ return createNaryFeatureCellEditorAdapter();
+ }
+
+ @Override
+ public Adapter defaultCase(final EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>. <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param target
+ * the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(final Notifier target) {
+ return this.modelSwitch.doSwitch((EObject) target);
+ }
+
+ /**
+ * Creates a new adapter for an object of class '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorDeclarations
+ * <em>Declarations</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.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorDeclarations
+ * @generated
+ */
+ public Adapter createModelCellEditorDeclarationsAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor
+ * <em>Abstract Model Cell Editor</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.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor
+ * @generated
+ */
+ public Adapter createAbstractModelCellEditorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.BasicCellEditor
+ * <em>Basic Cell Editor</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.emf.facet.widgets.celleditors.modelCellEditor.BasicCellEditor
+ * @generated
+ */
+ public Adapter createBasicCellEditorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.UnaryReferenceCellEditor
+ * <em>Unary Reference Cell Editor</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.emf.facet.widgets.celleditors.modelCellEditor.UnaryReferenceCellEditor
+ * @generated
+ */
+ public Adapter createUnaryReferenceCellEditorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '
+ * {@link org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.NaryFeatureCellEditor
+ * <em>Nary Feature Cell Editor</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.emf.facet.widgets.celleditors.modelCellEditor.NaryFeatureCellEditor
+ * @generated
+ */
+ public Adapter createNaryFeatureCellEditorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case. <!-- begin-user-doc --> This
+ * default implementation returns null. <!-- end-user-doc -->
+ *
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} // ModelCellEditorAdapterFactory
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/util/ModelCellEditorSwitch.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/util/ModelCellEditorSwitch.java
new file mode 100644
index 00000000000..1464f299e50
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets.celleditors/src/org/eclipse/papyrus/emf/facet/widgets/celleditors/modelCellEditor/util/ModelCellEditorSwitch.java
@@ -0,0 +1,254 @@
+/**
+ * Copyright (c) 2010 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ */
+package org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.AbstractModelCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.BasicCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorDeclarations;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.NaryFeatureCellEditor;
+import org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.UnaryReferenceCellEditor;
+
+/**
+ * <!-- begin-user-doc --> The <b>Switch</b> for the model's inheritance
+ * hierarchy. It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object and proceeding up the
+ * inheritance hierarchy until a non-null result is returned, which is the
+ * result of the switch. <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.emf.facet.widgets.celleditors.modelCellEditor.ModelCellEditorPackage
+ * @generated
+ */
+public class ModelCellEditorSwitch<T> {
+ /**
+ * The cached model package <!-- begin-user-doc --> <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected static ModelCellEditorPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @generated
+ */
+ public ModelCellEditorSwitch() {
+ if (ModelCellEditorSwitch.modelPackage == null) {
+ ModelCellEditorSwitch.modelPackage = ModelCellEditorPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns
+ * a non null result; it yields that result. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @return the first non-null result returned by a <code>caseXXX</code>
+ * call.
+ * @generated
+ */
+ public T doSwitch(final EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns
+ * a non null result; it yields that result. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @return the first non-null result returned by a <code>caseXXX</code>
+ * call.
+ * @generated
+ */
+ protected T doSwitch(final EClass theEClass, final EObject theEObject) {
+ if (theEClass.eContainer() == ModelCellEditorSwitch.modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return eSuperTypes.isEmpty() ? defaultCase(theEObject) : doSwitch(eSuperTypes.get(0),
+ theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns
+ * a non null result; it yields that result. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ *
+ * @return the first non-null result returned by a <code>caseXXX</code>
+ * call.
+ * @generated
+ */
+ protected T doSwitch(final int classifierID, final EObject theEObject) {
+ switch (classifierID) {
+ case ModelCellEditorPackage.MODEL_CELL_EDITOR_DECLARATIONS: {
+ ModelCellEditorDeclarations modelCellEditorDeclarations = (ModelCellEditorDeclarations) theEObject;
+ T result = caseModelCellEditorDeclarations(modelCellEditorDeclarations);
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case ModelCellEditorPackage.ABSTRACT_MODEL_CELL_EDITOR: {
+ AbstractModelCellEditor abstractModelCellEditor = (AbstractModelCellEditor) theEObject;
+ T result = caseAbstractModelCellEditor(abstractModelCellEditor);
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case ModelCellEditorPackage.BASIC_CELL_EDITOR: {
+ BasicCellEditor basicCellEditor = (BasicCellEditor) theEObject;
+ T result = caseBasicCellEditor(basicCellEditor);
+ if (result == null) {
+ result = caseAbstractModelCellEditor(basicCellEditor);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case ModelCellEditorPackage.UNARY_REFERENCE_CELL_EDITOR: {
+ UnaryReferenceCellEditor unaryReferenceCellEditor = (UnaryReferenceCellEditor) theEObject;
+ T result = caseUnaryReferenceCellEditor(unaryReferenceCellEditor);
+ if (result == null) {
+ result = caseAbstractModelCellEditor(unaryReferenceCellEditor);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case ModelCellEditorPackage.NARY_FEATURE_CELL_EDITOR: {
+ NaryFeatureCellEditor naryFeatureCellEditor = (NaryFeatureCellEditor) theEObject;
+ T result = caseNaryFeatureCellEditor(naryFeatureCellEditor);
+ if (result == null) {
+ result = caseAbstractModelCellEditor(naryFeatureCellEditor);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ default:
+ return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '
+ * <em>Declarations</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>Declarations</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseModelCellEditorDeclarations(final ModelCellEditorDeclarations object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '
+ * <em>Abstract Model Cell Editor</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>Abstract Model Cell Editor</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAbstractModelCellEditor(final AbstractModelCellEditor object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '
+ * <em>Basic Cell Editor</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>Basic Cell Editor</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseBasicCellEditor(final BasicCellEditor object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '
+ * <em>Unary Reference Cell Editor</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>Unary Reference Cell Editor</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUnaryReferenceCellEditor(final UnaryReferenceCellEditor object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '
+ * <em>Nary Feature Cell Editor</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>Nary Feature Cell Editor</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNaryFeatureCellEditor(final NaryFeatureCellEditor object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '
+ * <em>EObject</em>'. <!-- begin-user-doc --> This implementation returns
+ * null; returning a non-null result will terminate the switch, but this is
+ * the last case anyway. <!-- end-user-doc -->
+ *
+ * @param object
+ * the target of the switch.
+ * @return the result of interpreting the object as an instance of '
+ * <em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(final EObject object) {
+ return null;
+ }
+
+} // ModelCellEditorSwitch
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/.checkstyle b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/.checkstyle
new file mode 100644
index 00000000000..809dad6ac7f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/.checkstyle
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
+ <local-check-config name="MoDisco" location="/org.eclipse.papyrus.emf.facet.archi.tech.rules/checkstyle/EmfFacet.checkstyle" type="project" description="">
+ <additional-data name="protect-config-file" value="false"/>
+ </local-check-config>
+ <fileset name="all" enabled="true" check-config-name="MoDisco" local="true">
+ <file-match-pattern match-pattern="." include-pattern="true"/>
+ </fileset>
+</fileset-config>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/.classpath b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/.classpath
new file mode 100644
index 00000000000..2d1a4302f04
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/.project b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/.project
new file mode 100644
index 00000000000..d7b88bebdb8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/.project
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.facet.widgets</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>
+ <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
+ <nature>org.eclipse.pde.api.tools.apiAnalysisNature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/.settings/org.eclipse.jdt.core.prefs b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000000..e1ef31a9ab4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,8 @@
+#Thu Oct 27 17:54:45 CEST 2011
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.5
+org.eclipse.jdt.core.compiler.compliance=1.5
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.source=1.5
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/API.README.txt b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/API.README.txt
new file mode 100644
index 00000000000..849395d909f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/API.README.txt
@@ -0,0 +1,14 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Mia-Software.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Guyomar (Mia-Software) - Bug 339723 - Add x-friend on EMF Facet internal package
+ *******************************************************************************/
+org.eclipse.papyrus.emf.facet.widgets.internal
+ x-friends:="org.eclipse.papyrus.emf.facet.widgets.celleditors" for EMF Facet internal utilization
+ x-friends:="org.eclipse.papyrus.emf.facet.widgets.nattable" for EMF Facet internal utilization \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/META-INF/MANIFEST.MF b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/META-INF/MANIFEST.MF
new file mode 100644
index 00000000000..d352c0a05df
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/META-INF/MANIFEST.MF
@@ -0,0 +1,18 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.facet.widgets
+Bundle-Version: 1.0.0.qualifier
+Bundle-Activator: org.eclipse.papyrus.emf.facet.widgets.internal.Activator
+Bundle-Vendor: %Bundle-Vendor
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.runtime,
+ org.eclipse.emf.ecore;bundle-version="2.6.0",
+ org.eclipse.emf.edit;bundle-version="2.6.0",
+ org.eclipse.emf.edit.ui;bundle-version="2.6.0",
+ org.eclipse.papyrus.emf.facet.util.core;bundle-version="0.1.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.2.0"
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.emf.facet.widgets.internal;x-friends:="org.eclipse.papyrus.emf.facet.widgets.nattable,org.eclipse.papyrus.emf.facet.widgets.celleditors"
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/OSGI-INF/l10n/bundle.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/OSGI-INF/l10n/bundle.properties
new file mode 100644
index 00000000000..b93fe257022
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,13 @@
+###############################################################################
+# Copyright (c) 2010 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - initial API and implementation
+###############################################################################
+#Properties file for org.eclipse.papyrus.emf.facet.widgets
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = EMF Facet Widgets (Incubation) \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/about.html b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/about.html
new file mode 100644
index 00000000000..5307f42da98
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/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 26, 2010</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content. Check the Redistributor's license that was
+provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html> \ No newline at end of file
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/build.properties b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/build.properties
new file mode 100644
index 00000000000..7c8c7a9c522
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/build.properties
@@ -0,0 +1,18 @@
+###############################################################################
+# Copyright (c) 2010 Mia-Software.
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Nicolas Bros (Mia-Software) - initial API and implementation
+###############################################################################
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ icons/,\
+ OSGI-INF/,\
+ about.html
+src.includes = about.html
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/Facet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/Facet.gif
new file mode 100644
index 00000000000..8c67c03cc10
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/Facet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/error.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/error.gif
new file mode 100644
index 00000000000..9b048d60532
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/error.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/add.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/add.gif
new file mode 100644
index 00000000000..252d7ebcb8c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/add.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/addUiCustom.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/addUiCustom.gif
new file mode 100644
index 00000000000..bc86fbc897e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/addUiCustom.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/aggreg.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/aggreg.gif
new file mode 100644
index 00000000000..2c62284e92b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/aggreg.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/aggreg_unidir.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/aggreg_unidir.gif
new file mode 100644
index 00000000000..30bf63ea561
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/aggreg_unidir.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/attribute_facet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/attribute_facet.gif
new file mode 100644
index 00000000000..bf0e5bec658
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/attribute_facet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/attributes.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/attributes.gif
new file mode 100644
index 00000000000..d4cb4254d92
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/attributes.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/collapseall.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/collapseall.gif
new file mode 100644
index 00000000000..a2d80a9044f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/collapseall.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/common_columns.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/common_columns.gif
new file mode 100644
index 00000000000..f3402d1dc7a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/common_columns.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/container.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/container.gif
new file mode 100644
index 00000000000..7c58ff7523b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/container.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/decrease_font_size.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/decrease_font_size.gif
new file mode 100644
index 00000000000..6c10954d4a4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/decrease_font_size.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/delete.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/delete.gif
new file mode 100644
index 00000000000..b6922ac11cf
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/delete.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/derivation_tree.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/derivation_tree.gif
new file mode 100644
index 00000000000..9653ecc1015
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/derivation_tree.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/derived.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/derived.gif
new file mode 100644
index 00000000000..43ab3a6f1c3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/derived.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/derived_instances.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/derived_instances.gif
new file mode 100644
index 00000000000..9224e2b9b69
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/derived_instances.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/eClass.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/eClass.gif
new file mode 100644
index 00000000000..2b72bc3e5d6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/eClass.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/element_id.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/element_id.gif
new file mode 100644
index 00000000000..38bc0903931
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/element_id.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/empty_attributes.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/empty_attributes.gif
new file mode 100644
index 00000000000..2910be45944
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/empty_attributes.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/empty_links.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/empty_links.gif
new file mode 100644
index 00000000000..4dc1ab33608
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/empty_links.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/feature.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/feature.gif
new file mode 100644
index 00000000000..46be7a1265a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/feature.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/full_name.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/full_name.gif
new file mode 100644
index 00000000000..a666ef4f680
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/full_name.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/increase_font_size.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/increase_font_size.gif
new file mode 100644
index 00000000000..bc3fee050e4
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/increase_font_size.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/inv_aggreg.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/inv_aggreg.gif
new file mode 100644
index 00000000000..6f1021d4d1c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/inv_aggreg.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/link.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/link.gif
new file mode 100644
index 00000000000..94c14024075
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/link.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/link_type.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/link_type.gif
new file mode 100644
index 00000000000..499cbd44704
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/link_type.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/link_unidir.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/link_unidir.gif
new file mode 100644
index 00000000000..c8169bcfbf8
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/link_unidir.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/link_unidir_facet.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/link_unidir_facet.gif
new file mode 100644
index 00000000000..143ae199d3e
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/link_unidir_facet.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/multiplicity.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/multiplicity.gif
new file mode 100644
index 00000000000..c9936db26ce
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/multiplicity.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/non-zero.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/non-zero.gif
new file mode 100644
index 00000000000..bdeb73e385b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/non-zero.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/operation.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/operation.gif
new file mode 100644
index 00000000000..3b7bb90a3e3
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/operation.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/opposite_links.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/opposite_links.gif
new file mode 100644
index 00000000000..63520975df7
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/opposite_links.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/ordering.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/ordering.gif
new file mode 100644
index 00000000000..4c768e3d94b
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/ordering.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/package.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/package.gif
new file mode 100644
index 00000000000..fd09a326056
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/package.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/predicate.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/predicate.gif
new file mode 100644
index 00000000000..3b98fc65ef6
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/predicate.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/range.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/range.gif
new file mode 100644
index 00000000000..2121fcb1199
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/range.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/remove_line.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/remove_line.gif
new file mode 100644
index 00000000000..23a70e32522
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/remove_line.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/restore_font_size.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/restore_font_size.gif
new file mode 100644
index 00000000000..cefb5cf9897
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/restore_font_size.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/select_columns_to_hide.png b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/select_columns_to_hide.png
new file mode 100644
index 00000000000..5a2446c88ef
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/select_columns_to_hide.png
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/sort.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/sort.gif
new file mode 100644
index 00000000000..6311cc00f80
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/sort.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/sort_links.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/sort_links.gif
new file mode 100644
index 00000000000..66f63df6a7c
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/sort_links.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/sort_links_by_type.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/sort_links_by_type.gif
new file mode 100644
index 00000000000..c1d1190f914
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/sort_links_by_type.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/sort_num.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/sort_num.gif
new file mode 100644
index 00000000000..f0d2d304060
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/sort_num.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/uri.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/uri.gif
new file mode 100644
index 00000000000..fb99bc7183a
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/uri.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/view_menu.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/view_menu.gif
new file mode 100644
index 00000000000..a7c49189228
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/view_menu.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/zero.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/zero.gif
new file mode 100644
index 00000000000..22540f70a26
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/full/ctool16/zero.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/logoMoDiscoMini.gif b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/logoMoDiscoMini.gif
new file mode 100644
index 00000000000..19c468b1c61
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/logoMoDiscoMini.gif
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/query.png b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/query.png
new file mode 100644
index 00000000000..b18d057bfff
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/query.png
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/shortcut.png b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/shortcut.png
new file mode 100644
index 00000000000..ed506ae70ee
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/icons/shortcut.png
Binary files differ
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/src/org/eclipse/papyrus/emf/facet/widgets/internal/Activator.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/src/org/eclipse/papyrus/emf/facet/widgets/internal/Activator.java
new file mode 100644
index 00000000000..d57a8f47e77
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/src/org/eclipse/papyrus/emf/facet/widgets/internal/Activator.java
@@ -0,0 +1,69 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 339653 - org.eclipse.papyrus.emf.facet.widgets API Cleaning
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.internal;
+
+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.facet.widgets"; //$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
+ * )
+ */
+ @Override
+ public void start(final BundleContext context) throws Exception {
+ super.start(context);
+ Activator.plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext
+ * )
+ */
+ @Override
+ public void stop(final BundleContext context) throws Exception {
+ Activator.plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return Activator.plugin;
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/src/org/eclipse/papyrus/emf/facet/widgets/internal/CustomizableLabelProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/src/org/eclipse/papyrus/emf/facet/widgets/internal/CustomizableLabelProvider.java
new file mode 100644
index 00000000000..77b942396af
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/src/org/eclipse/papyrus/emf/facet/widgets/internal/CustomizableLabelProvider.java
@@ -0,0 +1,235 @@
+/*******************************************************************************
+ * Copyright (c) 2010 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 339653 - org.eclipse.papyrus.emf.facet.widgets API Cleaning
+ * Gregoire Dupe (Mia-Software) - Bug 369987 - [Restructuring][Table] Switch to the new customization and facet framework
+ *******************************************************************************/
+
+package org.eclipse.papyrus.emf.facet.widgets.internal;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.ReflectiveItemProviderAdapterFactory;
+import org.eclipse.emf.edit.provider.resource.ResourceItemProviderAdapterFactory;
+import org.eclipse.emf.edit.ui.provider.ExtendedImageRegistry;
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomizedLabelProvider;
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomizedLabelProviderFactory;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.swt.graphics.Image;
+
+@Deprecated
+public class CustomizableLabelProvider extends LabelProvider {
+
+ private final ComposedAdapterFactory adapterFactoryWithRegistry;
+ private ICustomizationManager customizationEngine;
+ private ICustomizedLabelProvider labelProvider;
+
+ public CustomizableLabelProvider(final ICustomizationManager customizationEngine) {
+ this();
+ this.customizationEngine = customizationEngine;
+ this.labelProvider = ICustomizedLabelProviderFactory.DEFAULT.createCustomizedLabelProvider(customizationEngine);
+ }
+
+ public CustomizableLabelProvider() {
+ this.adapterFactoryWithRegistry = new ComposedAdapterFactory(
+ ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
+ this.adapterFactoryWithRegistry.addAdapterFactory(new ResourceItemProviderAdapterFactory());
+ this.adapterFactoryWithRegistry
+ .addAdapterFactory(new ReflectiveItemProviderAdapterFactory());
+ }
+
+ @Override
+ public String getText(final Object element) {
+ if (element instanceof EReference) {
+ EReference eReference = (EReference) element;
+ return getText(eReference);
+ }
+ if (element instanceof EAttribute) {
+ EAttribute eAttribute = (EAttribute) element;
+ return getText(eAttribute);
+ }
+ if (element instanceof EObject) {
+ EObject eObject = (EObject) element;
+ return getText(eObject);
+ }
+ return element.toString();
+ }
+
+ public String getText(final EObject eObject) {
+ if (this.customizationEngine != null) {
+ String label = this.labelProvider.getText(eObject);
+ if (label != null) {
+ return label;
+ }
+ }
+
+ final IItemLabelProvider itemLabelProvider = (IItemLabelProvider) this.adapterFactoryWithRegistry
+ .adapt(eObject, IItemLabelProvider.class);
+
+ if (itemLabelProvider != null) {
+ return itemLabelProvider.getText(eObject);
+ }
+ return null;
+ }
+
+ public static String getText(final EReference reference) {
+ boolean showMultiplicity = true;
+ boolean showOpposite = false;
+ // String customizedName = null;
+
+ String multiplicity = ""; //$NON-NLS-1$
+
+ if (showMultiplicity) {
+ multiplicity = getMultiplicity(reference);
+ }
+
+ String opposite = ""; //$NON-NLS-1$
+
+ if (showOpposite) {
+ final EReference oppositeRef = reference.getEOpposite();
+ if (oppositeRef != null) {
+ String oppositeMultiplicity = ""; //$NON-NLS-1$
+ if (showMultiplicity) {
+ oppositeMultiplicity = getMultiplicity(oppositeRef);
+ }
+
+ opposite = " <-> " + oppositeRef.getName() + oppositeMultiplicity; //$NON-NLS-1$
+ }
+ }
+
+ final String prefix;
+ if (reference.isDerived()) {
+ prefix = "/"; //$NON-NLS-1$
+ } else {
+ prefix = ""; //$NON-NLS-1$
+ }
+ final String referenceName;
+ // if (customizedName != null) {
+ // referenceName = customizedName;
+ // } else {
+ referenceName = reference.getName();
+ // }
+ return prefix + referenceName + multiplicity + opposite;
+ }
+
+ public static String getMultiplicity(final EReference reference) {
+ final String multLow;
+ if (reference.isRequired()) {
+ multLow = "1"; //$NON-NLS-1$
+ } else {
+ multLow = "0"; //$NON-NLS-1$
+ }
+ final String multHigh;
+ if (reference.isMany()) {
+ multHigh = "*"; //$NON-NLS-1$
+ } else {
+ multHigh = "1"; //$NON-NLS-1$
+ }
+ return " [" + multLow + ".." + multHigh + "]"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ }
+
+ public static String getText(final EAttribute attribute) {
+ String multiplicity = ""; //$NON-NLS-1$
+
+ if (true /* showMultiplicity */) {
+ final String multLow;
+ if (attribute.isRequired()) {
+ multLow = "1"; //$NON-NLS-1$
+ } else {
+ multLow = "0"; //$NON-NLS-1$
+ }
+ final String multHigh;
+ if (attribute.isMany()) {
+ multHigh = "*"; //$NON-NLS-1$
+ } else {
+ multHigh = "1"; //$NON-NLS-1$
+ }
+ multiplicity = " [" + multLow + ".." + multHigh + "]"; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ }
+
+ final String prefix;
+ if (attribute.isDerived()) {
+ prefix = "/"; //$NON-NLS-1$
+ } else {
+ prefix = ""; //$NON-NLS-1$
+ }
+
+ final String attributeName = attribute.getName();
+ return prefix + attributeName + multiplicity;
+ }
+
+ @Override
+ public Image getImage(final Object element) {
+ if (element instanceof EReference) {
+ EReference eReference = (EReference) element;
+ return getImage(eReference);
+ }
+ if (element instanceof EAttribute) {
+ EAttribute eAttribute = (EAttribute) element;
+ return getImage(eAttribute);
+ }
+ if (element instanceof EObject) {
+ EObject eObject = (EObject) element;
+ return getImage(eObject);
+ }
+ return null;
+ }
+
+ public Image getImage(final EObject eObject) {
+ if (this.customizationEngine != null) {
+ Image image = this.labelProvider.getImage(eObject);
+ if (image != null) {
+ return image;
+ }
+ }
+
+ final IItemLabelProvider itemLabelProvider = (IItemLabelProvider) this.adapterFactoryWithRegistry
+ .adapt(eObject, IItemLabelProvider.class);
+
+ if (itemLabelProvider != null) {
+ final Object image = itemLabelProvider.getImage(eObject);
+ return ExtendedImageRegistry.getInstance().getImage(image);
+ }
+ return null;
+ }
+
+ public static Image getImage(final EReference reference) {
+ // if (reference instanceof FacetReference || reference instanceof
+ // Shortcut) {
+ // return ImageProvider.getInstance().getFacetLinkIcon();
+ // }
+
+ final EReference opposite = reference.getEOpposite();
+
+ if (reference.isContainment()) {
+ if (opposite == null) {
+ return ImageProvider.getInstance().getUnidirectionalAggregIcon();
+ }
+ return ImageProvider.getInstance().getAggregIcon();
+ }
+
+ if (opposite != null && opposite.isContainment()) {
+ return ImageProvider.getInstance().getInvAggregIcon();
+ }
+
+ if (opposite == null) {
+ return ImageProvider.getInstance().getUnidirectionalLinkIcon();
+ }
+ return ImageProvider.getInstance().getLinkIcon();
+ }
+
+ public static Image getImage(@SuppressWarnings("unused") final EAttribute eAttribute) {
+ return ImageProvider.getInstance().getAttributeIcon();
+ }
+
+}
diff --git a/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/src/org/eclipse/papyrus/emf/facet/widgets/internal/ImageProvider.java b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/src/org/eclipse/papyrus/emf/facet/widgets/internal/ImageProvider.java
new file mode 100644
index 00000000000..6f49ecbeb5f
--- /dev/null
+++ b/plugins/facet/org.eclipse.papyrus.emf.facet.widgets/src/org/eclipse/papyrus/emf/facet/widgets/internal/ImageProvider.java
@@ -0,0 +1,652 @@
+/*******************************************************************************
+ * Copyright (c) 2008, 2010 Mia-Software.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Nicolas Bros (Mia-Software) - initial API and implementation
+ * Nicolas Bros (Mia-Software) - Bug 339653 - org.eclipse.papyrus.emf.facet.widgets API Cleaning
+ * Vincent Lorenzo (CEA-LIST) - bug 341192 - Add the method to get the image for Select Columns To Hide in the ImageManager
+ *******************************************************************************/
+package org.eclipse.papyrus.emf.facet.widgets.internal;
+
+import java.net.URL;
+
+import org.eclipse.papyrus.emf.facet.util.core.Logger;
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.swt.graphics.Image;
+
+/** A singleton image provider, which caches image descriptors */
+public final class ImageProvider {
+
+ private ImageProvider() {
+ // This class must only be instantiated by getInstance().
+ }
+
+ private static ImageProvider instance;
+
+ public static ImageProvider getInstance() {
+ if (ImageProvider.instance == null) {
+ ImageProvider.instance = new ImageProvider();
+ }
+ return ImageProvider.instance;
+ }
+
+ private Image linkIcon = null;
+ private Image linkUniDirIcon = null;
+ private Image linkFacetIcon = null;
+ private Image aggregIcon = null;
+ private Image aggregUniDirIcon = null;
+ private Image invAggregIcon = null;
+
+ private Image emptyLinksIcon = null;
+ // private Image sortInstancesIcon = null;
+ private Image sortLinksIcon = null;
+ private Image sortLinksByTypeIcon = null;
+ // private Image sortNumericallyIcon = null;
+ private Image showDerivedLinksIcon = null;
+ private Image showFullQualifiedNamesIcon = null;
+ private Image showMultiplicityIcon = null;
+ private Image showOppositeLinksIcon = null;
+
+ private Image rangeIcon = null;
+ private Image containerIcon = null;
+ // private Image emptyMetaclassesIcon = null;
+ private Image packageIcon = null;
+ // private Image derivedInstancesIcon = null;
+ // private Image derivationTreeIcon = null;
+ private Image attributeIcon = null;
+ private Image attributeFacetIcon = null;
+ private Image emptyAttributeIcon = null;
+ private Image orderingIcon = null;
+ private Image linkTypeIcon = null;
+
+ private Image facetIcon = null;
+ private Image viewMenuIcon = null;
+
+ private ImageDescriptor increaseFontSizeIcon = null;
+ private ImageDescriptor decreaseFontSizeIcon = null;
+ private ImageDescriptor restoreFontSizeIcon = null;
+
+ private Image hideEmptyColumnsIcon = null;
+ private Image commonColumnsIcon = null;
+ private Image eClassIcon = null;
+ private Image operationIcon = null;
+ private Image predicateIcon = null;
+ private Image emffacetIcon = null;
+ private Image featureIcon = null;
+ private Image errorIcon = null;
+ private Image queryIcon = null;
+ private Image uiCustomIcon = null;
+ private Image uriIcon = null;
+
+ private Image shortcutIcon = null;
+
+ private Image selectColumnsToHide = null;
+
+ private static final String LINK_ICON_PATH = "/icons/full/ctool16/link.gif"; //$NON-NLS-1$
+ private static final String LINK_UNIDIR_ICON_PATH = "/icons/full/ctool16/link_unidir.gif"; //$NON-NLS-1$
+ private static final String LINK_FACET_ICON_PATH = "/icons/full/ctool16/link_unidir_facet.gif"; //$NON-NLS-1$
+ private static final String AGGREG_ICON_PATH = "/icons/full/ctool16/aggreg.gif"; //$NON-NLS-1$
+ private static final String AGGREG_UNIDIR_ICON_PATH = "/icons/full/ctool16/aggreg_unidir.gif"; //$NON-NLS-1$
+ private static final String INV_AGGREG_ICON_PATH = "/icons/full/ctool16/inv_aggreg.gif"; //$NON-NLS-1$
+ private static final String EMPTY_LINKS_ICON_PATH = "/icons/full/ctool16/empty_links.gif"; //$NON-NLS-1$
+ private static final String SORT_INSTANCES_ICON_PATH = "/icons/full/ctool16/sort.gif"; //$NON-NLS-1$
+ private static final String SORT_LINKS_ICON_PATH = "/icons/full/ctool16/sort_links.gif"; //$NON-NLS-1$
+ private static final String SORT_LINKS_BY_TYPE_ICON_PATH = "/icons/full/ctool16/sort_links_by_type.gif"; //$NON-NLS-1$
+ private static final String SORT_NUMERICALLY_ICON_PATH = "/icons/full/ctool16/sort_num.gif"; //$NON-NLS-1$
+ private static final String SHOW_DERIVED_LINKS_ICON_PATH = "/icons/full/ctool16/derived.gif"; //$NON-NLS-1$
+ private static final String SHOW_FULL_QUALIFIED_NAMES_ICON_PATH = "/icons/full/ctool16/full_name.gif"; //$NON-NLS-1$
+ private static final String RANGE_ICON_PATH = "/icons/full/ctool16/range.gif"; //$NON-NLS-1$
+ private static final String SHOW_MULTIPLICITY_ICON_PATH = "/icons/full/ctool16/multiplicity.gif"; //$NON-NLS-1$
+ private static final String SHOW_OPPOSITE_LINKS_ICON_PATH = "/icons/full/ctool16/opposite_links.gif"; //$NON-NLS-1$
+ private static final String CONTAINER_ICON_PATH = "/icons/full/ctool16/container.gif"; //$NON-NLS-1$
+ private static final String EMPTY_METACLASSES_ICON_PATH = "/icons/full/ctool16/zero.gif"; //$NON-NLS-1$
+ private static final String PACKAGE_ICON_PATH = "/icons/full/ctool16/package.gif"; //$NON-NLS-1$
+ private static final String DERIVED_INSTANCES_ICON_PATH = "/icons/full/ctool16/derived_instances.gif"; //$NON-NLS-1$
+ private static final String DERIVATION_TREE_ICON_PATH = "/icons/full/ctool16/derivation_tree.gif"; //$NON-NLS-1$
+ private static final String ATTRIBUTE_ICON_PATH = "/icons/full/ctool16/attributes.gif"; //$NON-NLS-1$
+ private static final String ATTRIBUTE_FACET_ICON_PATH = "/icons/full/ctool16/attribute_facet.gif"; //$NON-NLS-1$
+ private static final String EMPTY_ATTRIBUTE_ICON_PATH = "/icons/full/ctool16/empty_attributes.gif"; //$NON-NLS-1$
+ private static final String INCREASE_FONT_SIZE_ICON_PATH = "/icons/full/ctool16/increase_font_size.gif"; //$NON-NLS-1$
+ private static final String DECREASE_FONT_SIZE_ICON_PATH = "/icons/full/ctool16/decrease_font_size.gif"; //$NON-NLS-1$
+ private static final String RESTORE_FONT_SIZE_ICON_PATH = "/icons/full/ctool16/restore_font_size.gif"; //$NON-NLS-1$
+ private static final String HIDE_EMPTY_COLUMNS_ICON_PATH = "/icons/full/ctool16/non-zero.gif"; //$NON-NLS-1$
+ private static final String COMMON_COLUMNS_ICON_PATH = "/icons/full/ctool16/common_columns.gif"; //$NON-NLS-1$
+ private static final String ORDERING_ICON_PATH = "/icons/full/ctool16/ordering.gif"; //$NON-NLS-1$
+ private static final String ECLASS_ICON_PATH = "/icons/full/ctool16/eClass.gif"; //$NON-NLS-1$
+ private static final String OPERATION_ICON_PATH = "/icons/full/ctool16/operation.gif"; //$NON-NLS-1$
+ private static final String PREDICATE_ICON_PATH = "/icons/full/ctool16/predicate.gif"; //$NON-NLS-1$
+ private static final String EMFFACET_ICON_PATH = "icons/logoEmfFacetMini.gif"; //$NON-NLS-1$
+ private static final String FEATURE_ICON_PATH = "icons/full/ctool16/feature.gif"; //$NON-NLS-1$
+ private static final String ERROR_ICON_PATH = "icons/error.gif"; //$NON-NLS-1$
+ private static final String FACET_ICON_PATH = "icons/Facet.gif"; //$NON-NLS-1$
+ private static final String ADD_UI_CUSTOM_ICON_PATH = "icons/full/ctool16/addUiCustom.gif"; //$NON-NLS-1$
+ private static final String VIEW_MENU_ICON_PATH = "icons/full/ctool16/view_menu.gif"; //$NON-NLS-1$
+ private static final String LINK_TYPE_ICON_PATH = "icons/full/ctool16/link_type.gif"; //$NON-NLS-1$
+ private static final String QUERY_ICON_PATH = "icons/query.png"; //$NON-NLS-1$
+ private static final String ELEMENT_IDS_ICON_PATH = "/icons/full/ctool16/element_id.gif"; //$NON-NLS-1$
+ private static final String URI_ICON_PATH = "/icons/full/ctool16/uri.gif"; //$NON-NLS-1$
+ private static final String COLLAPSE_ALL_ICON_PATH = "/icons/full/ctool16/collapseall.gif"; //$NON-NLS-1$
+ private static final String SHORTCUT_ICON_PATH = "/icons/shortcut.png"; //$NON-NLS-1$
+ private static final String REMOVE_LINE_ICON_PATH = "/icons/full/ctool16/remove_line.gif"; //$NON-NLS-1$
+ private static final String DELETE_ELEMENT_ICON_PATH = "/icons/full/ctool16/delete.gif"; //$NON-NLS-1$
+ private static final String ADD_ICON_PATH = "/icons/full/ctool16/add.gif"; //$NON-NLS-1$
+ private static final String SELECT_COLUMNS_TO_HIDE = "/icons/full/ctool16/select_columns_to_hide.png"; //$NON-NLS-1$
+
+ /**
+ * Create an image descriptor from a resource
+ *
+ * @param resourcePath
+ * the path of the resource (in the bundle)
+ * @return the image descriptor
+ */
+ private static ImageDescriptor createImageDescriptor(final String resourcePath) {
+ final URL url = Activator.getDefault().getBundle().getResource(resourcePath);
+ if (url == null) {
+ Logger.logError(NLS.bind("Resource not found: {0}", //$NON-NLS-1$
+ resourcePath), Activator.getDefault());
+ return ImageDescriptor.getMissingImageDescriptor();
+ }
+ return ImageDescriptor.createFromURL(url);
+ }
+
+ /** Return the icon representing a bidirectional link */
+ public Image getLinkIcon() {
+ if (this.linkIcon == null) {
+ this.linkIcon = createImageDescriptor(ImageProvider.LINK_ICON_PATH).createImage();
+ }
+ return this.linkIcon;
+ }
+
+ /** Return the icon representing an unidirectional link */
+ public Image getUnidirectionalLinkIcon() {
+ if (this.linkUniDirIcon == null) {
+ this.linkUniDirIcon = createImageDescriptor(ImageProvider.LINK_UNIDIR_ICON_PATH)
+ .createImage();
+ }
+ return this.linkUniDirIcon;
+ }
+
+ /** Return the icon representing a facet reference */
+ public Image getFacetLinkIcon() {
+ if (this.linkFacetIcon == null) {
+ this.linkFacetIcon = createImageDescriptor(ImageProvider.LINK_FACET_ICON_PATH)
+ .createImage();
+ }
+ return this.linkFacetIcon;
+ }
+
+ /** Return the icon representing a composition link */
+ public Image getAggregIcon() {
+ if (this.aggregIcon == null) {
+ this.aggregIcon = createImageDescriptor(ImageProvider.AGGREG_ICON_PATH).createImage();
+ }
+ return this.aggregIcon;
+ }
+
+ /** Return the icon representing an unidirectional composition link */
+ public Image getUnidirectionalAggregIcon() {
+ if (this.aggregUniDirIcon == null) {
+ this.aggregUniDirIcon = createImageDescriptor(ImageProvider.AGGREG_UNIDIR_ICON_PATH)
+ .createImage();
+ }
+ return this.aggregUniDirIcon;
+ }
+
+ /** Return the icon representing a reverse composition link */
+ public Image getInvAggregIcon() {
+ if (this.invAggregIcon == null) {
+ this.invAggregIcon = createImageDescriptor(ImageProvider.INV_AGGREG_ICON_PATH)
+ .createImage();
+ }
+ return this.invAggregIcon;
+ }
+
+ /** Return the icon representing empty links */
+ public Image getEmptyLinksIcon() {
+ if (this.emptyLinksIcon == null) {
+ this.emptyLinksIcon = createImageDescriptor(ImageProvider.EMPTY_LINKS_ICON_PATH)
+ .createImage();
+ }
+ return this.emptyLinksIcon;
+ }
+
+ /** Return the icon representing empty links */
+ public static ImageDescriptor getEmptyLinksImageDescriptor() {
+ return createImageDescriptor(ImageProvider.EMPTY_LINKS_ICON_PATH);
+ }
+
+ /** Return the icon representing sorting of instances */
+ public static ImageDescriptor getSortInstancesIcon() {
+ return createImageDescriptor(ImageProvider.SORT_INSTANCES_ICON_PATH);
+ }
+
+ /** Return the icon representing sorting of links */
+ public Image getSortLinksIcon() {
+ if (this.sortLinksIcon == null) {
+ this.sortLinksIcon = createImageDescriptor(ImageProvider.SORT_LINKS_ICON_PATH)
+ .createImage();
+ }
+ return this.sortLinksIcon;
+ }
+
+ /** Return the icon representing sorting of links */
+ public static ImageDescriptor getSortLinksImageDescriptor() {
+ return createImageDescriptor(ImageProvider.SORT_LINKS_ICON_PATH);
+ }
+
+ /** Return the icon representing sorting of links by type */
+ public Image getSortLinksByTypeIcon() {
+ if (this.sortLinksByTypeIcon == null) {
+ this.sortLinksByTypeIcon = createImageDescriptor(
+ ImageProvider.SORT_LINKS_BY_TYPE_ICON_PATH).createImage();
+ }
+ return this.sortLinksByTypeIcon;
+ }
+
+ /** Return the icon representing sorting of links by type */
+ public static ImageDescriptor getSortLinksByTypeImageDescriptor() {
+ return createImageDescriptor(ImageProvider.SORT_LINKS_BY_TYPE_ICON_PATH);
+ }
+
+ /** Return the icon representing sorting numerically */
+ public static ImageDescriptor getSortNumericallyIcon() {
+ return createImageDescriptor(ImageProvider.SORT_NUMERICALLY_ICON_PATH);
+ }
+
+ /** Return the icon representing derived links */
+ public Image getShowDerivedLinksIcon() {
+ if (this.showDerivedLinksIcon == null) {
+ this.showDerivedLinksIcon = createImageDescriptor(
+ ImageProvider.SHOW_DERIVED_LINKS_ICON_PATH).createImage();
+ }
+ return this.showDerivedLinksIcon;
+ }
+
+ /** Return the icon representing derived links */
+ public static ImageDescriptor getShowDerivedLinksImageDescriptor() {
+ return createImageDescriptor(ImageProvider.SHOW_DERIVED_LINKS_ICON_PATH);
+ }
+
+ /** Return the icon representing full qualified names */
+ public Image getShowFullQualifiedNamesIcon() {
+ if (this.showFullQualifiedNamesIcon == null) {
+ this.showFullQualifiedNamesIcon = createImageDescriptor(
+ ImageProvider.SHOW_FULL_QUALIFIED_NAMES_ICON_PATH).createImage();
+ }
+ return this.showFullQualifiedNamesIcon;
+ }
+
+ /** Return the icon representing full qualified names */
+ public static ImageDescriptor getShowFullQualifiedNamesImageDescriptor() {
+ return createImageDescriptor(ImageProvider.SHOW_FULL_QUALIFIED_NAMES_ICON_PATH);
+ }
+
+ /** Return the icon representing a range */
+ public Image getRangeIcon() {
+ if (this.rangeIcon == null) {
+ this.rangeIcon = createImageDescriptor(ImageProvider.RANGE_ICON_PATH).createImage();
+ }
+ return this.rangeIcon;
+ }
+
+ /** Return the multiplicity icon */
+ public Image getShowMultiplicityIcon() {
+ if (this.showMultiplicityIcon == null) {
+ this.showMultiplicityIcon = createImageDescriptor(
+ ImageProvider.SHOW_MULTIPLICITY_ICON_PATH).createImage();
+ }
+ return this.showMultiplicityIcon;
+ }
+
+ /** Return the multiplicity icon */
+ public static ImageDescriptor getShowMultiplicityImageDescriptor() {
+ return createImageDescriptor(ImageProvider.SHOW_MULTIPLICITY_ICON_PATH);
+ }
+
+ /** Return the "opposite links" icon */
+ public Image getShowOppositeLinksIcon() {
+ if (this.showOppositeLinksIcon == null) {
+ this.showOppositeLinksIcon = createImageDescriptor(
+ ImageProvider.SHOW_OPPOSITE_LINKS_ICON_PATH).createImage();
+ }
+ return this.showOppositeLinksIcon;
+ }
+
+ /** Return the "opposite links" icon */
+ public static ImageDescriptor getShowOppositeLinksImageDescriptor() {
+ return createImageDescriptor(ImageProvider.SHOW_OPPOSITE_LINKS_ICON_PATH);
+ }
+
+ /** Return the "container" icon */
+ public Image getContainerIcon() {
+ if (this.containerIcon == null) {
+ this.containerIcon = createImageDescriptor(ImageProvider.CONTAINER_ICON_PATH)
+ .createImage();
+ }
+ return this.containerIcon;
+ }
+
+ /** Return the "container" icon */
+ public static ImageDescriptor getContainerImageDescriptor() {
+ return createImageDescriptor(ImageProvider.CONTAINER_ICON_PATH);
+ }
+
+ /** Return the "show empty metaclasses" icon */
+ public static ImageDescriptor getShowEmptyMetaclassesIcon() {
+ return createImageDescriptor(ImageProvider.EMPTY_METACLASSES_ICON_PATH);
+ }
+
+ /** Return the "package" icon */
+ public Image getPackageIcon() {
+ if (this.packageIcon == null) {
+ this.packageIcon = createImageDescriptor(ImageProvider.PACKAGE_ICON_PATH).createImage();
+ }
+ return this.packageIcon;
+ }
+
+ /** Return the "package" icon */
+ public static ImageDescriptor getPackageImageDescriptor() {
+ return createImageDescriptor(ImageProvider.PACKAGE_ICON_PATH);
+ }
+
+ // /** Return the "derived instances" icon */
+ // public Image getDerivedInstancesIcon() {
+ // if (this.derivedInstancesIcon == null) {
+ // this.derivedInstancesIcon = createImageDescriptor(
+ // ImageProvider.DERIVED_INSTANCES_ICON_PATH).createImage();
+ // }
+ // return this.derivedInstancesIcon;
+ // }
+
+ /** Return the "derived instances" icon */
+ public static ImageDescriptor getDerivedInstancesImageDescriptor() {
+ return createImageDescriptor(ImageProvider.DERIVED_INSTANCES_ICON_PATH);
+ }
+
+ /** Return the "derivation tree" icon */
+ public static ImageDescriptor getDerivationTreeIcon() {
+ return createImageDescriptor(ImageProvider.DERIVATION_TREE_ICON_PATH);
+ }
+
+ /** Return the "attribute" icon */
+ public Image getAttributeIcon() {
+ if (this.attributeIcon == null) {
+ this.attributeIcon = createImageDescriptor(ImageProvider.ATTRIBUTE_ICON_PATH)
+ .createImage();
+ }
+ return this.attributeIcon;
+ }
+
+ /** Return the "attribute" icon */
+ public static ImageDescriptor getAttributeImageDescriptor() {
+ return createImageDescriptor(ImageProvider.ATTRIBUTE_ICON_PATH);
+ }
+
+ /** Return the "facet attribute" icon */
+ public Image getFacetAttributeIcon() {
+ if (this.attributeFacetIcon == null) {
+ this.attributeFacetIcon = createImageDescriptor(ImageProvider.ATTRIBUTE_FACET_ICON_PATH)
+ .createImage();
+ }
+ return this.attributeFacetIcon;
+ }
+
+ /** Return the "empty attributes" icon */
+ public Image getEmptyAttributeIcon() {
+ if (this.emptyAttributeIcon == null) {
+ this.emptyAttributeIcon = createImageDescriptor(ImageProvider.EMPTY_ATTRIBUTE_ICON_PATH)
+ .createImage();
+ }
+ return this.emptyAttributeIcon;
+ }
+
+ /** Return the "empty attributes" icon */
+ public static ImageDescriptor getEmptyAttributeImageDescriptor() {
+ return createImageDescriptor(ImageProvider.EMPTY_ATTRIBUTE_ICON_PATH);
+ }
+
+ /** Return the "increase font size" icon */
+ public ImageDescriptor getIncreaseFontSizeIcon() {
+ if (this.increaseFontSizeIcon == null) {
+ this.increaseFontSizeIcon = createImageDescriptor(ImageProvider.INCREASE_FONT_SIZE_ICON_PATH);
+ }
+ return this.increaseFontSizeIcon;
+ }
+
+ /** Return the "decrease font size" icon */
+ public ImageDescriptor getDecreaseFontSizeIcon() {
+ if (this.decreaseFontSizeIcon == null) {
+ this.decreaseFontSizeIcon = createImageDescriptor(ImageProvider.DECREASE_FONT_SIZE_ICON_PATH);
+ }
+ return this.decreaseFontSizeIcon;
+ }
+
+ /** Return the "restore font size" icon */
+ public ImageDescriptor getRestoreFontSizeIcon() {
+ if (this.restoreFontSizeIcon == null) {
+ this.restoreFontSizeIcon = createImageDescriptor(ImageProvider.RESTORE_FONT_SIZE_ICON_PATH);
+ }
+ return this.restoreFontSizeIcon;
+ }
+
+ /** Return the "hide empty columns" icon */
+ public Image getHideEmptyColumnsIcon() {
+ if (this.hideEmptyColumnsIcon == null) {
+ this.hideEmptyColumnsIcon = createImageDescriptor(
+ ImageProvider.HIDE_EMPTY_COLUMNS_ICON_PATH).createImage();
+ }
+ return this.hideEmptyColumnsIcon;
+ }
+
+ /** Return the "hide empty columns" icon */
+ public static ImageDescriptor getHideEmptyColumnsIconDescriptor() {
+ return createImageDescriptor(ImageProvider.HIDE_EMPTY_COLUMNS_ICON_PATH);
+ }
+
+ /** Return the "common columns" icon */
+ public Image getCommonColumnsIcon() {
+ if (this.commonColumnsIcon == null) {
+ this.commonColumnsIcon = createImageDescriptor(ImageProvider.COMMON_COLUMNS_ICON_PATH)
+ .createImage();
+ }
+ return this.commonColumnsIcon;
+ }
+
+ /** Return the "common columns" icon */
+ public static ImageDescriptor getCommonColumnsIconDescriptor() {
+ return createImageDescriptor(ImageProvider.COMMON_COLUMNS_ICON_PATH);
+ }
+
+ /** Return the "delete line" icon */
+ public static ImageDescriptor getRemoveLineIconDescriptor() {
+ return createImageDescriptor(ImageProvider.REMOVE_LINE_ICON_PATH);
+ }
+
+ /** Return the "delete element" icon */
+ public static ImageDescriptor getDeleteElementIconDescriptor() {
+ return createImageDescriptor(ImageProvider.DELETE_ELEMENT_ICON_PATH);
+ }
+
+ /** Return the "add" icon */
+ public static ImageDescriptor getAddIconDescriptor() {
+ return createImageDescriptor(ImageProvider.ADD_ICON_PATH);
+ }
+
+ /** Return the "ordering" icon */
+ public Image getOrderingIcon() {
+ if (this.orderingIcon == null) {
+ this.orderingIcon = createImageDescriptor(ImageProvider.ORDERING_ICON_PATH)
+ .createImage();
+ }
+ return this.orderingIcon;
+ }
+
+ /** Return the "ordering" icon */
+ public static ImageDescriptor getOrderingIconDescriptor() {
+ return createImageDescriptor(ImageProvider.ORDERING_ICON_PATH);
+ }
+
+ /** Return the "ordering" icon */
+ public static ImageDescriptor getOrderingImageDescriptor() {
+ return createImageDescriptor(ImageProvider.ORDERING_ICON_PATH);
+ }
+
+ /** Return the "eClass" icon */
+ public Image getEClassIcon() {
+ if (this.eClassIcon == null) {
+ this.eClassIcon = createImageDescriptor(ImageProvider.ECLASS_ICON_PATH).createImage();
+ }
+ return this.eClassIcon;
+ }
+
+ /** Return the "operation" icon */
+ public Image getOperationIcon() {
+ if (this.operationIcon == null) {
+ this.operationIcon = createImageDescriptor(ImageProvider.OPERATION_ICON_PATH)
+ .createImage();
+ }
+ return this.operationIcon;
+ }
+
+ /** Return the "predicate" icon */
+ public Image getPredicateIcon() {
+ if (this.predicateIcon == null) {
+ this.predicateIcon = createImageDescriptor(ImageProvider.PREDICATE_ICON_PATH)
+ .createImage();
+ }
+ return this.predicateIcon;
+ }
+
+ /** Return the "EmfFacet" icon */
+ public Image getEmfFacetIcon() {
+ if (this.emffacetIcon == null) {
+ this.emffacetIcon = createImageDescriptor(ImageProvider.EMFFACET_ICON_PATH)
+ .createImage();
+ }
+ return this.emffacetIcon;
+ }
+
+ /** Return an icon representing the concept of "feature" */
+ public Image getFeatureIcon() {
+ if (this.featureIcon == null) {
+ this.featureIcon = createImageDescriptor(ImageProvider.FEATURE_ICON_PATH).createImage();
+ }
+ return this.featureIcon;
+ }
+
+ /** Return an icon descriptor representing the concept of "feature" */
+ public static ImageDescriptor getFeatureIconDescriptor() {
+ return createImageDescriptor(ImageProvider.FEATURE_ICON_PATH);
+ }
+
+ /** Return an icon descriptor representing the concept of "facet" */
+ public static ImageDescriptor getFacetIconDescriptor() {
+ return createImageDescriptor(ImageProvider.FACET_ICON_PATH);
+ }
+
+ /** Return an icon descriptor representing the concept of "facet" */
+ public Image getFacetIcon() {
+ if (this.facetIcon == null) {
+ this.facetIcon = createImageDescriptor(ImageProvider.FACET_ICON_PATH).createImage();
+ }
+ return this.facetIcon;
+ }
+
+ /** Return an icon descriptor for "uiCustom" */
+ public static ImageDescriptor getAddUiCustomIconDescriptor() {
+ return createImageDescriptor(ImageProvider.ADD_UI_CUSTOM_ICON_PATH);
+ }
+
+ /** Return an icon for "uiCustom" */
+ public Image getUiCustomIcon() {
+ if (this.uiCustomIcon == null) {
+ this.uiCustomIcon = createImageDescriptor(ImageProvider.ADD_UI_CUSTOM_ICON_PATH)
+ .createImage();
+ }
+ return this.uiCustomIcon;
+ }
+
+ /** Return the "error" icon */
+ public Image getErrorIcon() {
+ if (this.errorIcon == null) {
+ this.errorIcon = createImageDescriptor(ImageProvider.ERROR_ICON_PATH).createImage();
+ }
+ return this.errorIcon;
+ }
+
+ /** Return the toolbar menu icon */
+ public Image getViewMenuIcon() {
+ if (this.viewMenuIcon == null) {
+ this.viewMenuIcon = createImageDescriptor(ImageProvider.VIEW_MENU_ICON_PATH)
+ .createImage();
+ }
+ return this.viewMenuIcon;
+ }
+
+ /** Return the query menu icon */
+ public Image getQueryIcon() {
+ if (this.queryIcon == null) {
+ this.queryIcon = createImageDescriptor(ImageProvider.QUERY_ICON_PATH).createImage();
+ }
+ return this.queryIcon;
+ }
+
+ /** Return the link type icon */
+ public Image getLinkTypeIcon() {
+ if (this.linkTypeIcon == null) {
+ this.linkTypeIcon = createImageDescriptor(ImageProvider.LINK_TYPE_ICON_PATH)
+ .createImage();
+ }
+ return this.linkTypeIcon;
+ }
+
+ /** Return the link type icon descriptor */
+ public static ImageDescriptor getLinkTypeIconDescriptor() {
+ return createImageDescriptor(ImageProvider.LINK_TYPE_ICON_PATH);
+ }
+
+ /** Return the "element ID" icon descriptor */
+ public static ImageDescriptor getShowElementIDsDescriptor() {
+ return createImageDescriptor(ImageProvider.ELEMENT_IDS_ICON_PATH);
+ }
+
+ public static ImageDescriptor getShowURIDescriptor() {
+ return createImageDescriptor(ImageProvider.URI_ICON_PATH);
+ }
+
+ public Image getURIIcon() {
+ if (this.uriIcon == null) {
+ this.uriIcon = createImageDescriptor(ImageProvider.URI_ICON_PATH).createImage();
+ }
+ return this.uriIcon;
+ }
+
+ public static ImageDescriptor getCollapseAllDescriptor() {
+ return createImageDescriptor(ImageProvider.COLLAPSE_ALL_ICON_PATH);
+ }
+
+ public Image getShortcutIcon() {
+ if (this.shortcutIcon == null) {
+ this.shortcutIcon = createImageDescriptor(ImageProvider.SHORTCUT_ICON_PATH)
+ .createImage();
+ }
+ return this.shortcutIcon;
+ }
+
+ public static ImageDescriptor getSelectColumnsToHideDescriptor() {
+ return createImageDescriptor(ImageProvider.SELECT_COLUMNS_TO_HIDE);
+ }
+
+ public Image getSelectColumnsToHide() {
+ if (this.selectColumnsToHide == null) {
+ this.selectColumnsToHide = createImageDescriptor(ImageProvider.SELECT_COLUMNS_TO_HIDE)
+ .createImage();
+ }
+ return this.selectColumnsToHide;
+ }
+}
diff --git a/plugins/infra/core/org.eclipse.papyrus.infra.core/src/org/eclipse/papyrus/infra/core/resource/EMFLogicalModel.java b/plugins/infra/core/org.eclipse.papyrus.infra.core/src/org/eclipse/papyrus/infra/core/resource/EMFLogicalModel.java
index cb18390bbad..9c96ac90e00 100644
--- a/plugins/infra/core/org.eclipse.papyrus.infra.core/src/org/eclipse/papyrus/infra/core/resource/EMFLogicalModel.java
+++ b/plugins/infra/core/org.eclipse.papyrus.infra.core/src/org/eclipse/papyrus/infra/core/resource/EMFLogicalModel.java
@@ -22,9 +22,9 @@ import org.eclipse.papyrus.infra.core.Activator;
/**
* An IModel which is an abstraction for a set of consistent EMF Resources
- *
+ *
* @author Camille Letavernier
- *
+ *
*/
public abstract class EMFLogicalModel extends AbstractBaseModel implements IEMFModel {
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/.classpath b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/.classpath
index 2d1a4302f04..e4f6d5b98a9 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/.classpath
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/.classpath
@@ -2,6 +2,6 @@
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
+ <classpathentry excluding="org/eclipse/papyrus/infra/emf/editor/providers/CustomizableContentProvider.java|org/eclipse/papyrus/infra/emf/editor/part/PapyrusEditor.java" kind="src" path="src"/>
<classpathentry kind="output" path="bin"/>
</classpath>
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/META-INF/MANIFEST.MF b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/META-INF/MANIFEST.MF
index fa9531aaa33..91de32497ed 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/META-INF/MANIFEST.MF
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/META-INF/MANIFEST.MF
@@ -6,16 +6,12 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.core.resources;bundle-version="3.7.100",
org.eclipse.ui.views.properties.tabbed;bundle-version="3.5.200",
org.eclipse.papyrus.infra.emf.newchild;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.custom;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.browser;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.browser.custom.core;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.1.0",
org.eclipse.papyrus.views.properties;bundle-version="1.0.0",
org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
org.eclipse.emf.transaction;bundle-version="1.4.0",
- org.eclipse.emf.facet.efacet.core;bundle-version="0.2.0",
- org.eclipse.emf.facet.custom.core;bundle-version="0.2.0",
- org.eclipse.emf.facet.custom.ui;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.efacet.core;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.2.0",
org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/src/org/eclipse/papyrus/infra/emf/editor/Activator.java b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/src/org/eclipse/papyrus/infra/emf/editor/Activator.java
index 12280dfe151..f748633905e 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/src/org/eclipse/papyrus/infra/emf/editor/Activator.java
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/src/org/eclipse/papyrus/infra/emf/editor/Activator.java
@@ -1,6 +1,5 @@
package org.eclipse.papyrus.infra.emf.editor;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizationManager;
import org.eclipse.papyrus.infra.core.log.LogHelper;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.osgi.framework.BundleContext;
@@ -16,7 +15,7 @@ public class Activator extends AbstractUIPlugin {
// The shared instance
private static Activator plugin;
- private CustomizationManager fCustomizationManager;
+// private CustomizationManager fCustomizationManager;
public static LogHelper log;
@@ -58,18 +57,18 @@ public class Activator extends AbstractUIPlugin {
return plugin;
}
- /**
- *
- * @return the customization manager in charge to adapt element in modisco
- */
- public CustomizationManager getCustomizationManager() {
- return org.eclipse.papyrus.infra.emf.Activator.getDefault().getCustomizationManager();
- // if(this.fCustomizationManager == null) {
- // this.fCustomizationManager = new CustomizationManager();
- // init(this.fCustomizationManager);
- // }
- // return this.fCustomizationManager;
- }
+// /**
+// *
+// * @return the customization manager in charge to adapt element in modisco
+// */
+// public CustomizationManager getCustomizationManager() {
+// return org.eclipse.papyrus.infra.emf.Activator.getDefault().getCustomizationManager();
+// // if(this.fCustomizationManager == null) {
+// // this.fCustomizationManager = new CustomizationManager();
+// // init(this.fCustomizationManager);
+// // }
+// // return this.fCustomizationManager;
+// }
// private void init(final CustomizationManager customizationManager) {
// customizationManager.setShowContainer(false);
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/src/org/eclipse/papyrus/infra/emf/editor/part/PapyrusEditor2.java b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/src/org/eclipse/papyrus/infra/emf/editor/part/PapyrusEditor2.java
index a68b236df09..1ead2651e20 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/src/org/eclipse/papyrus/infra/emf/editor/part/PapyrusEditor2.java
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.editor/src/org/eclipse/papyrus/infra/emf/editor/part/PapyrusEditor2.java
@@ -21,13 +21,6 @@ import org.eclipse.emf.edit.provider.resource.ResourceItemProviderAdapterFactory
import org.eclipse.emf.edit.ui.celleditor.AdapterFactoryTreeEditor;
import org.eclipse.emf.edit.ui.dnd.LocalTransfer;
import org.eclipse.emf.edit.ui.dnd.ViewerDragAdapter;
-import org.eclipse.emf.facet.custom.core.ICustomizationCatalogManager;
-import org.eclipse.emf.facet.custom.core.ICustomizationCatalogManagerFactory;
-import org.eclipse.emf.facet.custom.core.ICustomizationManager;
-import org.eclipse.emf.facet.custom.core.ICustomizationManagerFactory;
-import org.eclipse.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
-import org.eclipse.emf.facet.custom.ui.ICustomizedContentProviderFactory;
-import org.eclipse.emf.facet.custom.ui.IResolvingCustomizedLabelProviderFactory;
import org.eclipse.emf.transaction.TransactionalCommandStack;
import org.eclipse.emf.transaction.impl.TransactionalCommandStackImpl;
import org.eclipse.emf.transaction.impl.TransactionalEditingDomainImpl;
@@ -38,7 +31,13 @@ import org.eclipse.jface.viewers.IStructuredContentProvider;
import org.eclipse.jface.viewers.StructuredViewer;
import org.eclipse.jface.viewers.TreeViewer;
import org.eclipse.jface.viewers.ViewerFilter;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationCatalogManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.papyrus.emf.facet.custom.ui.ICustomizedContentProviderFactory;
+import org.eclipse.papyrus.infra.emf.Activator;
import org.eclipse.papyrus.infra.emf.editor.actions.MoDiscoDropAdapter;
+import org.eclipse.papyrus.infra.emf.providers.EMFLabelProvider;
import org.eclipse.papyrus.infra.widgets.editors.AbstractEditor;
import org.eclipse.papyrus.infra.widgets.editors.ICommitListener;
import org.eclipse.papyrus.infra.widgets.editors.StringEditor;
@@ -268,21 +267,23 @@ public class PapyrusEditor2 extends EcoreEditor implements ITabbedPropertySheetP
}
protected ICustomizationManager getCustomizationManager() {
- if(customizationManager == null) {
- customizationManager = ICustomizationManagerFactory.DEFAULT.getOrCreateICustomizationManager(getResourceSet());
- }
- return customizationManager;
+ return org.eclipse.papyrus.infra.emf.Activator.getDefault().getCustomizationManager();
+// if(customizationManager == null) {
+// customizationManager = ICustomizationManagerFactory.DEFAULT.getOrCreateICustomizationManager(getResourceSet());
+// }
+// return customizationManager;
}
protected void initializeCustomizationCatalogManager() {
- ICustomizationCatalogManager customCatalog = ICustomizationCatalogManagerFactory.DEFAULT.getOrCreateCustomizationCatalogManager(getResourceSet());
- List<Customization> allCustomizations = customCatalog.getRegisteredCustomizations();
- for(Customization customization : allCustomizations) {
- if(customization.isMustBeLoadedByDefault()) {
- System.out.println("Apply default customization: " + customization.getName());
- getCustomizationManager().getManagedCustomizations().add(customization);
- }
- }
+// ICustomizationCatalogManager customCatalog = ICustomizationCatalogManagerFactory.DEFAULT.getOrCreateCustomizationCatalogManager(getResourceSet());
+// ICustomizationCatalogManager customCatalog = Activator.getDefault().getCustomizationManager()
+// List<Customization> allCustomizations = customCatalog.getRegisteredCustomizations();
+// for(Customization customization : allCustomizations) {
+// if(customization.isMustBeLoadedByDefault()) {
+// System.out.println("Apply default customization: " + customization.getName());
+// getCustomizationManager().getManagedCustomizations().add(customization);
+// }
+// }
}
protected IStructuredContentProvider createContentProvider() {
@@ -294,7 +295,8 @@ public class PapyrusEditor2 extends EcoreEditor implements ITabbedPropertySheetP
}
protected ILabelProvider createLabelProvider() {
- return IResolvingCustomizedLabelProviderFactory.DEFAULT.createCustomizedLabelProvider(getCustomizationManager());
+// return IResolvingCustomizedLabelProviderFactory.DEFAULT.createCustomizedLabelProvider(getCustomizationManager());
+ return new EMFLabelProvider();
}
public void commandStackChanged(EventObject event) {
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.facet.queries/META-INF/MANIFEST.MF b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.facet.queries/META-INF/MANIFEST.MF
index 4896b65aded..427198735f2 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.facet.queries/META-INF/MANIFEST.MF
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.facet.queries/META-INF/MANIFEST.MF
@@ -1,7 +1,5 @@
Manifest-Version: 1.0
Require-Bundle: org.eclipse.core.runtime,
- org.eclipse.emf.facet.infra.query;bundle-version="0.2.0",
- org.eclipse.emf.facet.infra.query.core;bundle-version="0.2.0",
org.eclipse.emf.edit
Export-Package: org.eclipse.papyrus.infra.emf.facet.queries,
org.eclipse.papyrus.infra.emf.facet.queries.factory,
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.facet.queries/plugin.xml b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.facet.queries/plugin.xml
index 17777e8084b..d130206d366 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.facet.queries/plugin.xml
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.facet.queries/plugin.xml
@@ -1,12 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
+ <!-- TODO: EMF-FACET update query
<extension
point="org.eclipse.emf.facet.infra.query.factory">
<factory
class="org.eclipse.papyrus.infra.emf.facet.queries.factory.ParametricQueryFactory">
</factory>
</extension>
+ -->
<extension
point="org.eclipse.emf.ecore.generated_package">
<package
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/.classpath b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/.classpath
index 9c0318f0fd2..2ca72baf8d0 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/.classpath
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/.classpath
@@ -3,6 +3,6 @@
<classpathentry kind="src" path="src-gen"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
+ <classpathentry excluding="org/eclipse/papyrus/infra/emf/newchild/action/ExtendedTypeAction.java" kind="src" path="src"/>
<classpathentry kind="output" path="bin"/>
</classpath>
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/META-INF/MANIFEST.MF b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/META-INF/MANIFEST.MF
index ed7580abbed..cc5f072c16c 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/META-INF/MANIFEST.MF
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/META-INF/MANIFEST.MF
@@ -12,12 +12,10 @@ Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.emf.ecore,
- org.eclipse.emf.facet.infra.query,
org.eclipse.uml2.uml,
org.eclipse.ui;bundle-version="3.7.0",
org.eclipse.emf.edit.ui;bundle-version="2.7.0",
org.eclipse.papyrus.infra.constraints;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.queries.core.configuration;bundle-version="1.0.0",
org.eclipse.papyrus.infra.extendedtypes;bundle-version="1.0.0",
org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/Model/NewChild.ecore b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/Model/NewChild.ecore
index 493eff5c51c..1c9adaa45e3 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/Model/NewChild.ecore
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/Model/NewChild.ecore
@@ -1,8 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<ecore:EPackage xmi:version="2.0"
- xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="newchild"
- nsURI="http://www.eclipse.org/papyrus/newchild" nsPrefix="newchild">
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="newchild" nsURI="http://www.eclipse.org/papyrus/newchild" nsPrefix="newchild">
<eClassifiers xsi:type="ecore:EClass" name="NewchildConfiguration">
<eStructuralFeatures xsi:type="ecore:EReference" name="roots" upperBound="-1"
eType="#//MenuRoot" containment="true"/>
@@ -28,7 +26,7 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MenuAction" eSuperTypes="#//MenuItem">
<eStructuralFeatures xsi:type="ecore:EReference" name="elementType" lowerBound="1"
- eType="ecore:EClass platform:/plugin/org.eclipse.papyrus.infra.extendedtypes/model/ExtendedTypes.ecore#//ExtendedElementTypeConfiguration"/>
+ eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Separator" eSuperTypes="#//MenuItem"/>
<eClassifiers xsi:type="ecore:EClass" name="MenuGroup" eSuperTypes="#//MenuContainer">
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src-gen/org/eclipse/papyrus/infra/emf/newchild/MenuAction.java b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src-gen/org/eclipse/papyrus/infra/emf/newchild/MenuAction.java
index 60bc05ea88d..6766c4354a1 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src-gen/org/eclipse/papyrus/infra/emf/newchild/MenuAction.java
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src-gen/org/eclipse/papyrus/infra/emf/newchild/MenuAction.java
@@ -6,7 +6,7 @@
*/
package org.eclipse.papyrus.infra.emf.newchild;
-import org.eclipse.papyrus.infra.extendedtypes.ExtendedElementTypeConfiguration;
+import org.eclipse.emf.ecore.EObject;
/**
* <!-- begin-user-doc -->
@@ -39,7 +39,7 @@ public interface MenuAction extends MenuItem {
* @model required="true"
* @generated
*/
- ExtendedElementTypeConfiguration getElementType();
+ EObject getElementType();
/**
* Sets the value of the '{@link org.eclipse.papyrus.infra.emf.newchild.MenuAction#getElementType <em>Element Type</em>}' reference.
@@ -49,6 +49,6 @@ public interface MenuAction extends MenuItem {
* @see #getElementType()
* @generated
*/
- void setElementType(ExtendedElementTypeConfiguration value);
+ void setElementType(EObject value);
} // MenuAction
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src-gen/org/eclipse/papyrus/infra/emf/newchild/impl/MenuActionImpl.java b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src-gen/org/eclipse/papyrus/infra/emf/newchild/impl/MenuActionImpl.java
index a203aee2996..91786674b8a 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src-gen/org/eclipse/papyrus/infra/emf/newchild/impl/MenuActionImpl.java
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src-gen/org/eclipse/papyrus/infra/emf/newchild/impl/MenuActionImpl.java
@@ -8,11 +8,11 @@ package org.eclipse.papyrus.infra.emf.newchild.impl;
import org.eclipse.emf.common.notify.Notification;
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.papyrus.infra.emf.newchild.MenuAction;
import org.eclipse.papyrus.infra.emf.newchild.NewchildPackage;
-import org.eclipse.papyrus.infra.extendedtypes.ExtendedElementTypeConfiguration;
/**
@@ -37,7 +37,7 @@ public class MenuActionImpl extends MenuItemImpl implements MenuAction {
* @generated
* @ordered
*/
- protected ExtendedElementTypeConfiguration elementType;
+ protected EObject elementType;
/**
* <!-- begin-user-doc -->
@@ -63,10 +63,10 @@ public class MenuActionImpl extends MenuItemImpl implements MenuAction {
* <!-- end-user-doc -->
* @generated
*/
- public ExtendedElementTypeConfiguration getElementType() {
+ public EObject getElementType() {
if (elementType != null && elementType.eIsProxy()) {
InternalEObject oldElementType = (InternalEObject)elementType;
- elementType = (ExtendedElementTypeConfiguration)eResolveProxy(oldElementType);
+ elementType = (EObject)eResolveProxy(oldElementType);
if (elementType != oldElementType) {
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.RESOLVE, NewchildPackage.MENU_ACTION__ELEMENT_TYPE, oldElementType, elementType));
@@ -80,7 +80,7 @@ public class MenuActionImpl extends MenuItemImpl implements MenuAction {
* <!-- end-user-doc -->
* @generated
*/
- public ExtendedElementTypeConfiguration basicGetElementType() {
+ public EObject basicGetElementType() {
return elementType;
}
@@ -89,8 +89,8 @@ public class MenuActionImpl extends MenuItemImpl implements MenuAction {
* <!-- end-user-doc -->
* @generated
*/
- public void setElementType(ExtendedElementTypeConfiguration newElementType) {
- ExtendedElementTypeConfiguration oldElementType = elementType;
+ public void setElementType(EObject newElementType) {
+ EObject oldElementType = elementType;
elementType = newElementType;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, NewchildPackage.MENU_ACTION__ELEMENT_TYPE, oldElementType, elementType));
@@ -120,7 +120,7 @@ public class MenuActionImpl extends MenuItemImpl implements MenuAction {
public void eSet(int featureID, Object newValue) {
switch (featureID) {
case NewchildPackage.MENU_ACTION__ELEMENT_TYPE:
- setElementType((ExtendedElementTypeConfiguration)newValue);
+ setElementType((EObject)newValue);
return;
}
super.eSet(featureID, newValue);
@@ -135,7 +135,7 @@ public class MenuActionImpl extends MenuItemImpl implements MenuAction {
public void eUnset(int featureID) {
switch (featureID) {
case NewchildPackage.MENU_ACTION__ELEMENT_TYPE:
- setElementType((ExtendedElementTypeConfiguration)null);
+ setElementType((EObject)null);
return;
}
super.eUnset(featureID);
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src-gen/org/eclipse/papyrus/infra/emf/newchild/impl/NewchildPackageImpl.java b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src-gen/org/eclipse/papyrus/infra/emf/newchild/impl/NewchildPackageImpl.java
index 0591570a678..9ccb48e3608 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src-gen/org/eclipse/papyrus/infra/emf/newchild/impl/NewchildPackageImpl.java
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src-gen/org/eclipse/papyrus/infra/emf/newchild/impl/NewchildPackageImpl.java
@@ -529,7 +529,7 @@ public class NewchildPackageImpl extends EPackageImpl implements NewchildPackage
initEAttribute(getMenu_Icon(), theEcorePackage.getEString(), "icon", null, 0, 1, Menu.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(menuActionEClass, MenuAction.class, "MenuAction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getMenuAction_ElementType(), theExtendedtypesPackage.getExtendedElementTypeConfiguration(), null, "elementType", null, 1, 1, MenuAction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getMenuAction_ElementType(), theEcorePackage.getEObject(), null, "elementType", null, 1, 1, MenuAction.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(separatorEClass, Separator.class, "Separator", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src/org/eclipse/papyrus/infra/emf/newchild/menu/FillMenuAction.java b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src/org/eclipse/papyrus/infra/emf/newchild/menu/FillMenuAction.java
index 6356c504748..cc0e0b5b4d2 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src/org/eclipse/papyrus/infra/emf/newchild/menu/FillMenuAction.java
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src/org/eclipse/papyrus/infra/emf/newchild/menu/FillMenuAction.java
@@ -16,8 +16,6 @@ import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
import org.eclipse.emf.edit.domain.EditingDomain;
import org.eclipse.jface.action.IMenuManager;
import org.eclipse.papyrus.infra.emf.newchild.MenuAction;
-import org.eclipse.papyrus.infra.emf.newchild.action.ExtendedTypeAction;
-import org.eclipse.papyrus.infra.emf.newchild.util.MenuHelper;
import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
@@ -43,7 +41,7 @@ public class FillMenuAction implements FillElement {
}
public void fill(IMenuManager menuManager) {
- MenuHelper.add(parentGroup, menuManager, new ExtendedTypeAction(selectedEObject, menuAction.getElementType(), domain));
+// MenuHelper.add(parentGroup, menuManager, new ExtendedTypeAction(selectedEObject, menuAction.getElementType(), domain));
}
}
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src/org/eclipse/papyrus/infra/emf/newchild/runtime/NewchildManager.java b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src/org/eclipse/papyrus/infra/emf/newchild/runtime/NewchildManager.java
index 2b9e2d949cd..d2ad63f0d1b 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src/org/eclipse/papyrus/infra/emf/newchild/runtime/NewchildManager.java
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf.newchild/src/org/eclipse/papyrus/infra/emf/newchild/runtime/NewchildManager.java
@@ -77,7 +77,7 @@ public class NewchildManager {
constraintEngine = new MenuConstraintEngine();
try {
//TODO : Load that from extension point
- NewchildConfiguration configuration = (NewchildConfiguration)EMFHelper.loadEMFModel(null, URI.createPlatformPluginURI("org.eclipse.papyrus.infra.emf.newchild/Model/NewchildConfiguration.xmi", true));
+ NewchildConfiguration configuration = (NewchildConfiguration)EMFHelper.loadEMFModel(null, URI.createPlatformPluginURI("/org.eclipse.papyrus.emf.facet.editor/newChild/NewchildConfiguration.xmi", true));
constraintEngine.addConfiguration(configuration);
} catch (IOException ex) {
Activator.log.error(ex);
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/META-INF/MANIFEST.MF b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/META-INF/MANIFEST.MF
index b4c9fd570ce..d2c37127ece 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/META-INF/MANIFEST.MF
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/META-INF/MANIFEST.MF
@@ -9,17 +9,9 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.core.databinding;bundle-version="1.4.1",
org.eclipse.core.databinding.property;bundle-version="1.4.0",
org.eclipse.emf.databinding;bundle-version="1.2.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.0",
- org.eclipse.emf.facet.infra.facet;bundle-version="0.2.0",
- org.eclipse.emf.facet.infra.browser.custom;bundle-version="0.2.0",
- org.eclipse.emf.facet.infra.facet.core;bundle-version="0.2.0",
- org.eclipse.emf.facet.infra.browser.custom.core;bundle-version="0.2.0",
org.eclipse.papyrus.infra.tools;bundle-version="1.0.0",
org.eclipse.emf.transaction;bundle-version="1.4.0",
org.eclipse.emf.ecore.xmi,
- org.eclipse.emf.facet.custom.metamodel;bundle-version="0.2.0",
- org.eclipse.emf.facet.custom.ui;bundle-version="0.2.0",
- org.eclipse.emf.facet.util.emf.core,
com.ibm.icu;bundle-version="4.4.2",
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
@@ -28,7 +20,9 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.gmf.runtime.common.core;bundle-version="1.7.0",
org.eclipse.gmf.runtime.emf.commands.core;bundle-version="1.4.0",
org.eclipse.gmf.runtime.emf.type.core;bundle-version="1.7.0",
- com.google.guava;bundle-version="11.0.0"
+ com.google.guava;bundle-version="11.0.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.2.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0"
Export-Package: org.eclipse.papyrus.infra.emf,
org.eclipse.papyrus.infra.emf.adapters,
org.eclipse.papyrus.infra.emf.commands,
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/Activator.java b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/Activator.java
index bb975328e95..a466c36cd10 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/Activator.java
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/Activator.java
@@ -25,15 +25,15 @@ import org.eclipse.core.runtime.Status;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EClassifier;
import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.facet.infra.browser.custom.MetamodelView;
-import org.eclipse.emf.facet.infra.browser.custom.TypeView;
-import org.eclipse.emf.facet.infra.browser.custom.core.CustomizationsCatalog;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizationManager;
-import org.eclipse.emf.facet.infra.facet.Facet;
-import org.eclipse.emf.facet.infra.facet.FacetSet;
-import org.eclipse.emf.facet.infra.facet.core.FacetSetCatalog;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
import org.eclipse.jface.dialogs.DialogSettings;
import org.eclipse.jface.dialogs.IDialogSettings;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationCatalogManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationCatalogManagerFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManagerFactory;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
import org.eclipse.papyrus.infra.core.log.LogHelper;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.osgi.framework.BundleContext;
@@ -56,7 +56,9 @@ public class Activator extends AbstractUIPlugin {
*/
public static LogHelper log;
- private CustomizationManager fCustomizationManager;
+ private ICustomizationManager fCustomizationManager;
+ //temp resourceSet
+ private ResourceSet facetRecsourceSet= new ResourceSetImpl();
/**
* The constructor
@@ -100,9 +102,9 @@ public class Activator extends AbstractUIPlugin {
*
* @return the customization manager in charge to adapt element in modisco
*/
- public CustomizationManager getCustomizationManager() {
+ public ICustomizationManager getCustomizationManager() {
if(this.fCustomizationManager == null) {
- this.fCustomizationManager = new CustomizationManager();
+ this.fCustomizationManager = ICustomizationManagerFactory.DEFAULT.getOrCreateICustomizationManager(facetRecsourceSet);
init(this.fCustomizationManager);
}
return this.fCustomizationManager;
@@ -113,10 +115,11 @@ public class Activator extends AbstractUIPlugin {
*/
public void saveCustomizationManagerState() {
IDialogSettings dialogSettings = getBrowserCustomizationDialogSettings();
+ List<Customization> appliedCustomizations = getCustomizationManager().getManagedCustomizations();
- List<MetamodelView> appliedCustomizations = getCustomizationManager().getRegisteredCustomizations();
+ final List<Customization> registeredCustomizations = ICustomizationCatalogManagerFactory.DEFAULT.getOrCreateCustomizationCatalogManager(getCustomizationManager().getResourceSet()).getRegisteredCustomizations();
- for(MetamodelView customization : CustomizationsCatalog.getInstance().getRegistryCustomizations()) {
+ for(Customization customization : registeredCustomizations) {
boolean isApplied = appliedCustomizations.contains(customization);
String settingKey = getSettingKey(customization);
@@ -125,8 +128,10 @@ public class Activator extends AbstractUIPlugin {
}
}
- private String getSettingKey(MetamodelView customization) {
- return customization.getLocation();
+ private String getSettingKey(Customization customization) {
+ // do not exist anymore
+ return customization.eResource().getURI().toString();
+ //return "";
}
protected IDialogSettings getBrowserCustomizationDialogSettings() {
@@ -139,42 +144,37 @@ public class Activator extends AbstractUIPlugin {
return settings;
}
- private void init(final CustomizationManager customizationManager) {
+ private void init(final ICustomizationManager customizationManager) {
// the appearance can be customized here:
- customizationManager.setShowDerivedLinks(true);
- //to hide the blue arrow overlay
- customizationManager.setDecorateExternalResources(false);
-
IDialogSettings settings = getBrowserCustomizationDialogSettings();
try {
// load customizations defined as default through the customization
// extension
- List<MetamodelView> registryDefaultCustomizations = CustomizationsCatalog.getInstance().getRegistryDefaultCustomizations();
- List<MetamodelView> registryAllCustomizations = CustomizationsCatalog.getInstance().getRegistryCustomizations();
+ ICustomizationCatalogManager customCatalog = ICustomizationCatalogManagerFactory.DEFAULT.getOrCreateCustomizationCatalogManager(customizationManager.getResourceSet());
+ //no possibility to get default customization
- List<MetamodelView> appliedCustomizations = new LinkedList<MetamodelView>();
+ List<Customization> registryAllCustomizations = customCatalog.getRegisteredCustomizations();
+
- for(MetamodelView customization : registryAllCustomizations) {
+ for(Customization customization : registryAllCustomizations) {
String settingKey = getSettingKey(customization);
boolean isActive = false;
if(settings.get(settingKey) == null) { //Never customized
- isActive = registryDefaultCustomizations.contains(customization); //Loaded by default
+ isActive = customization.isMustBeLoadedByDefault(); //Loaded by default
} else {
isActive = settings.getBoolean(settingKey);
}
if(isActive) {
- customizationManager.registerCustomization(customization);
- appliedCustomizations.add(customization);
+ customizationManager.getManagedCustomizations().add(customization);
}
}
- customizationManager.loadCustomizations();
- loadFacetsForCustomizations(appliedCustomizations, customizationManager);
+
} catch (Throwable e) {
Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Error initializing customizations", e)); //$NON-NLS-1$
@@ -190,18 +190,18 @@ public class Activator extends AbstractUIPlugin {
* Restores the default Customization Manager configuration
*/
public void restoreDefaultCustomizationManager() {
- CustomizationManager manager = getCustomizationManager();
+ ICustomizationManager manager = getCustomizationManager();
DialogSettings settings = (DialogSettings)getDialogSettings();
settings.removeSection(CUSTOMIZATION_MANAGER_SECTION);
- List<MetamodelView> registryDefaultCustomizations = CustomizationsCatalog.getInstance().getRegistryDefaultCustomizations();
-
- manager.clearCustomizations();
- for(MetamodelView customization : registryDefaultCustomizations) {
- manager.registerCustomization(customization);
- }
- manager.loadCustomizations();
+ // List<MetamodelView> registryDefaultCustomizations = CustomizationsCatalog.getInstance().getRegistryDefaultCustomizations();
+ //
+ // manager.clearCustomizations();
+ // for(MetamodelView customization : registryDefaultCustomizations) {
+ // manager.registerCustomization(customization);
+ // }
+ // manager.loadCustomizations();
}
/**
@@ -212,67 +212,67 @@ public class Activator extends AbstractUIPlugin {
* @param customizationManager
* the Customization Manager
*/
- protected void loadFacetsForCustomizations(final List<MetamodelView> customizations, final CustomizationManager customizationManager) {
- final Set<Facet> referencedFacets = new HashSet<Facet>();
- final Collection<FacetSet> facetSets = FacetSetCatalog.getSingleton().getAllFacetSets();
-
- for(MetamodelView customization : customizations) {
- String metamodelURI = customization.getMetamodelURI();
- // find customized FacetSet
- FacetSet customizedFacetSet = null;
- if(metamodelURI != null) {
- for(FacetSet facetSet : facetSets) {
- if(metamodelURI.equals(facetSet.getNsURI())) {
- customizedFacetSet = facetSet;
- break;
- }
- }
- }
- if(customizedFacetSet == null) {
- continue;
- }
-
- // find customized Facets
- EList<TypeView> types = customization.getTypes();
- for(TypeView typeView : types) {
- String metaclassName = typeView.getMetaclassName();
- Facet facet = findFacetWithFullyQualifiedName(metaclassName, customizedFacetSet);
- if(facet != null) {
- referencedFacets.add(facet);
- } else {
- Activator.log.warn(String.format("Missing required facet \"%s\" in FacetSet \"%s\" for customization \"%s\"", metaclassName, customizedFacetSet.getName(), customization.getName()));
- }
- }
-
- for(Facet referencedFacet : referencedFacets) {
- customizationManager.loadFacet(referencedFacet);
- }
- }
-
- //
- // for modified facets
- // customizationManager.getInstancesForMetaclasses().buildDerivationTree();
- // customizationManager.getAppearanceConfiguration().touch();
- // customizationManager.refreshDelayed(true);
- }
-
- /**
- * fin a facet from
- *
- * @param metaclassName
- * @param customizedFacetSet
- * @return
- */
- private Facet findFacetWithFullyQualifiedName(final String metaclassName, final FacetSet customizedFacetSet) {
- EList<Facet> facets = customizedFacetSet.getFacets();
- for(Facet facet : facets) {
- String facetName = getMetaclassQualifiedName(facet);
- if(metaclassName.equals(facetName)) {
- return facet;
- }
- }
- return null;
- }
+ // protected void loadFacetsForCustomizations(final List<MetamodelView> customizations, final CustomizationManager customizationManager) {
+ // final Set<Facet> referencedFacets = new HashSet<Facet>();
+ // final Collection<FacetSet> facetSets = FacetSetCatalog.getSingleton().getAllFacetSets();
+ //
+ // for(MetamodelView customization : customizations) {
+ // String metamodelURI = customization.getMetamodelURI();
+ // // find customized FacetSet
+ // FacetSet customizedFacetSet = null;
+ // if(metamodelURI != null) {
+ // for(FacetSet facetSet : facetSets) {
+ // if(metamodelURI.equals(facetSet.getNsURI())) {
+ // customizedFacetSet = facetSet;
+ // break;
+ // }
+ // }
+ // }
+ // if(customizedFacetSet == null) {
+ // continue;
+ // }
+ //
+ // // find customized Facets
+ // EList<TypeView> types = customization.getTypes();
+ // for(TypeView typeView : types) {
+ // String metaclassName = typeView.getMetaclassName();
+ // Facet facet = findFacetWithFullyQualifiedName(metaclassName, customizedFacetSet);
+ // if(facet != null) {
+ // referencedFacets.add(facet);
+ // } else {
+ // Activator.log.warn(String.format("Missing required facet \"%s\" in FacetSet \"%s\" for customization \"%s\"", metaclassName, customizedFacetSet.getName(), customization.getName()));
+ // }
+ // }
+ //
+ // for(Facet referencedFacet : referencedFacets) {
+ // customizationManager.loadFacet(referencedFacet);
+ // }
+ // }
+ //
+ // //
+ // // for modified facets
+ // // customizationManager.getInstancesForMetaclasses().buildDerivationTree();
+ // // customizationManager.getAppearanceConfiguration().touch();
+ // // customizationManager.refreshDelayed(true);
+ // }
+
+ // /**
+ // * fin a facet from
+ // *
+ // * @param metaclassName
+ // * @param customizedFacetSet
+ // * @return
+ // */
+ // private Facet findFacetWithFullyQualifiedName(final String metaclassName, final FacetSet customizedFacetSet) {
+ // EList<Facet> facets = customizedFacetSet.getFacets();
+ // for(Facet facet : facets) {
+ // String facetName = getMetaclassQualifiedName(facet);
+ // if(metaclassName.equals(facetName)) {
+ // return facet;
+ // }
+ // }
+ // return null;
+ // }
/** @return the qualified name of the given metaclass */
public static String getMetaclassQualifiedName(final EClassifier eClass) {
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/messages/Messages.java b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/messages/Messages.java
index 77ff3cbd56b..6e02b835316 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/messages/Messages.java
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/messages/Messages.java
@@ -1,4 +1,5 @@
-/*
+
+/*************************************************************
* Copyright (c) 2012, 2014 CEA and others.
*
* All rights reserved. This program and the accompanying materials
@@ -11,6 +12,7 @@
* Christian W. Damus (CEA) - bug 323802
*
*/
+
package org.eclipse.papyrus.infra.emf.messages;
import org.eclipse.osgi.util.NLS;
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/EMFLabelProvider.java b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/EMFLabelProvider.java
index 37d1de1321d..c6e0ac7cb6f 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/EMFLabelProvider.java
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/EMFLabelProvider.java
@@ -18,10 +18,12 @@ import java.util.Set;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizableModelLabelProvider;
-import org.eclipse.emf.facet.infra.browser.uicore.internal.model.ITreeElement;
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.TreeElement;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.CustomizedLabelProvider;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.DecoratingCustomizedLabelProvider;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.ResolvingCustomizedLabelProvider;
import org.eclipse.papyrus.infra.emf.Activator;
import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.services.labelprovider.service.IDetailLabelProvider;
@@ -36,7 +38,7 @@ import org.eclipse.swt.graphics.Image;
*
* @author Camille Letavernier
*/
-public class EMFLabelProvider extends CustomizableModelLabelProvider implements IDetailLabelProvider, IQualifierLabelProvider {
+public class EMFLabelProvider extends ResolvingCustomizedLabelProvider implements IDetailLabelProvider, IQualifierLabelProvider {
protected ILabelProvider baseEMFLabelProvider;
@@ -44,7 +46,7 @@ public class EMFLabelProvider extends CustomizableModelLabelProvider implements
* Creates a new EMFObjectLabelProvider.
*/
public EMFLabelProvider() {
- super(Activator.getDefault().getCustomizationManager()); //Note: CustomizableModelLabelProvider doesn't use the CustomizationManager. It relies on the content provider's CustomizationManager
+ super(new DecoratingCustomizedLabelProvider(Activator.getDefault().getCustomizationManager())); //Note: CustomizableModelLabelProvider doesn't use the CustomizationManager. It relies on the content provider's CustomizationManager
baseEMFLabelProvider = new StandardEMFLabelProvider();
}
@@ -57,7 +59,7 @@ public class EMFLabelProvider extends CustomizableModelLabelProvider implements
return ""; //$NON-NLS-1$
}
- if(element instanceof ITreeElement) {
+ if(element instanceof TreeElement) {
return super.getText(element);
}
@@ -105,7 +107,7 @@ public class EMFLabelProvider extends CustomizableModelLabelProvider implements
*/
@Override
public Image getImage(Object element) {
- if(element instanceof ITreeElement) {
+ if(element instanceof TreeElement) {
return super.getImage(element);
}
@@ -148,7 +150,7 @@ public class EMFLabelProvider extends CustomizableModelLabelProvider implements
if(selectedEObject.size() == 1 || hasCommonImage(selectedEObject)) {
return getImage(selectedEObject.toArray()[0]);
} else {
- final EClass common = org.eclipse.emf.facet.util.emf.core.internal.EMFUtils.computeLeastCommonSupertype(getEClasses(selectedEObject));
+ final EClass common = org.eclipse.papyrus.emf.facet.util.emf.core.internal.EMFUtils.computeLeastCommonSupertype(getEClasses(selectedEObject));
if(!common.isAbstract()) {
//FIXME : the label provider service should manage this case
final Object instance = common.getEPackage().getEFactoryInstance().create(common);
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/MoDiscoContentProvider.java b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/MoDiscoContentProvider.java
index de352fc6f25..508d197435a 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/MoDiscoContentProvider.java
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/MoDiscoContentProvider.java
@@ -15,7 +15,7 @@ import java.util.Iterator;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizableModelContentProvider;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.CustomizedTreeContentProvider;
import org.eclipse.papyrus.infra.core.resource.AbstractBaseModel;
import org.eclipse.papyrus.infra.core.resource.IModel;
import org.eclipse.papyrus.infra.core.resource.ModelSet;
@@ -30,7 +30,7 @@ import org.eclipse.papyrus.infra.emf.Activator;
* @deprecated Use SemanticUMLContentProvider instead
*/
@Deprecated
-public class MoDiscoContentProvider extends CustomizableModelContentProvider {
+public class MoDiscoContentProvider extends CustomizedTreeContentProvider {
/** The ModelSet containing all the models. This is the initial input. */
protected ModelSet modelSet;
@@ -69,7 +69,7 @@ public class MoDiscoContentProvider extends CustomizableModelContentProvider {
* @return
*/
@Override
- public EObject[] getRootElements(Object inputElement) {
+ protected EObject[] getRootElements(Object inputElement) {
try {
if(!(inputElement instanceof ServicesRegistry)) {
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/strategy/ContainmentBrowseStrategy.java b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/strategy/ContainmentBrowseStrategy.java
index 889ca013750..d64446720d5 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/strategy/ContainmentBrowseStrategy.java
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/strategy/ContainmentBrowseStrategy.java
@@ -19,7 +19,6 @@ import java.util.List;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EReference;
-import org.eclipse.emf.facet.infra.facet.FacetReference;
import org.eclipse.gmf.runtime.notation.Diagram;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.ITreeContentProvider;
@@ -66,9 +65,9 @@ public class ContainmentBrowseStrategy extends ProviderBasedBrowseStrategy {
//Only browse Containment references and Facet references
if(semanticElement instanceof EReference) {
- if(semanticElement instanceof FacetReference) {
- return true;
- }
+ //if(semanticElement instanceof FacetReference) {
+ // return true;
+ //}
return ((EReference)semanticElement).isContainment() && !((EReference)semanticElement).isDerived();
}
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/strategy/SemanticEMFContentProvider.java b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/strategy/SemanticEMFContentProvider.java
index 948eba885eb..c875500d8fd 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/strategy/SemanticEMFContentProvider.java
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/providers/strategy/SemanticEMFContentProvider.java
@@ -23,8 +23,9 @@ import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.emf.ecore.resource.ResourceSet;
import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizableModelContentProvider;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.internal.CustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.CustomizedTreeContentProvider;
import org.eclipse.papyrus.infra.emf.Activator;
import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.widgets.providers.IAdaptableContentProvider;
@@ -32,7 +33,7 @@ import org.eclipse.papyrus.infra.widgets.providers.IHierarchicContentProvider;
import org.eclipse.papyrus.infra.widgets.providers.IStaticContentProvider;
-public class SemanticEMFContentProvider extends CustomizableModelContentProvider implements IAdaptableContentProvider, IHierarchicContentProvider, IStaticContentProvider {
+public class SemanticEMFContentProvider extends CustomizedTreeContentProvider implements IAdaptableContentProvider, IHierarchicContentProvider, IStaticContentProvider {
protected EObject[] roots;
@@ -50,7 +51,7 @@ public class SemanticEMFContentProvider extends CustomizableModelContentProvider
super(Activator.getDefault().getCustomizationManager());
}
- public SemanticEMFContentProvider(EObject editedEObject, EStructuralFeature feature, EObject[] roots, CustomizationManager customizationManager) {
+ public SemanticEMFContentProvider(EObject editedEObject, EStructuralFeature feature, EObject[] roots, ICustomizationManager customizationManager) {
super(customizationManager);
this.roots = roots;
@@ -78,7 +79,7 @@ public class SemanticEMFContentProvider extends CustomizableModelContentProvider
this(null, null, roots);
}
- public SemanticEMFContentProvider(EObject[] roots, CustomizationManager customizationManager) {
+ public SemanticEMFContentProvider(EObject[] roots, ICustomizationManager customizationManager) {
this(null, null, roots, customizationManager);
}
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/utils/EMFFileUtil.java b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/utils/EMFFileUtil.java
index 93727584221..b66b1cadeb2 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/utils/EMFFileUtil.java
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/utils/EMFFileUtil.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.emf.utils;
import java.io.File;
diff --git a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/utils/EMFHelper.java b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/utils/EMFHelper.java
index e522cff9c02..9ef1a8cc69b 100644
--- a/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/utils/EMFHelper.java
+++ b/plugins/infra/emf/org.eclipse.papyrus.infra.emf/src/org/eclipse/papyrus/infra/emf/utils/EMFHelper.java
@@ -47,7 +47,7 @@ import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.ecore.xmi.XMIResource;
import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
import org.eclipse.emf.edit.domain.EditingDomain;
-import org.eclipse.emf.facet.custom.ui.CustomizedContentProviderUtils;
+import org.eclipse.papyrus.emf.facet.custom.ui.CustomizedContentProviderUtils;
import org.eclipse.papyrus.infra.core.resource.IReadOnlyHandler;
import org.eclipse.papyrus.infra.core.resource.IReadOnlyHandler2;
import org.eclipse.papyrus.infra.core.resource.ReadOnlyAxis;
diff --git a/plugins/infra/gmfdiag/css/org.eclipse.papyrus.infra.gmfdiag.css.configuration/META-INF/MANIFEST.MF b/plugins/infra/gmfdiag/css/org.eclipse.papyrus.infra.gmfdiag.css.configuration/META-INF/MANIFEST.MF
index 3d1bbaf1ca2..44438439ce9 100644
--- a/plugins/infra/gmfdiag/css/org.eclipse.papyrus.infra.gmfdiag.css.configuration/META-INF/MANIFEST.MF
+++ b/plugins/infra/gmfdiag/css/org.eclipse.papyrus.infra.gmfdiag.css.configuration/META-INF/MANIFEST.MF
@@ -14,9 +14,10 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.papyrus.infra.gmfdiag.css.model;bundle-version="1.0.0",
org.eclipse.papyrus.infra.gmfdiag.css;bundle-version="1.0.0",
org.eclipse.papyrus.infra.emf.appearance;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.0",
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
- org.eclipse.e4.ui.css.core;bundle-version="0.10.2"
+ org.eclipse.e4.ui.css.core;bundle-version="0.10.2",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0"
Export-Package: org.eclipse.papyrus.infra.gmfdiag.css.configuration.ha
ndler
Bundle-Vendor: Eclipse Modeling Project
diff --git a/plugins/infra/gmfdiag/css/org.eclipse.papyrus.infra.gmfdiag.css.properties/META-INF/MANIFEST.MF b/plugins/infra/gmfdiag/css/org.eclipse.papyrus.infra.gmfdiag.css.properties/META-INF/MANIFEST.MF
index cbe029e2689..3c7307be1fd 100644
--- a/plugins/infra/gmfdiag/css/org.eclipse.papyrus.infra.gmfdiag.css.properties/META-INF/MANIFEST.MF
+++ b/plugins/infra/gmfdiag/css/org.eclipse.papyrus.infra.gmfdiag.css.properties/META-INF/MANIFEST.MF
@@ -18,8 +18,9 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.papyrus.infra.gmfdiag.properties;bundle-version="1.0.0",
org.eclipse.papyrus.infra.gmfdiag.css.model;bundle-version="1.0.0",
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.0",
- org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0"
+ org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0"
Export-Package: org.eclipse.papyrus.infra.gmfdiag.css.properties.creation,
org.eclipse.papyrus.infra.gmfdiag.css.properties.databinding,
org.eclipse.papyrus.infra.gmfdiag.css.properties.provider
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/META-INF/MANIFEST.MF b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/META-INF/MANIFEST.MF
index 0b335ff402e..2df85a9ff59 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/META-INF/MANIFEST.MF
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/META-INF/MANIFEST.MF
@@ -4,7 +4,6 @@ Export-Package: org.eclipse.papyrus.infra.gmfdiag.common,
org.eclipse.papyrus.infra.gmfdiag.common.commands,
org.eclipse.papyrus.infra.gmfdiag.common.commands.requests,
org.eclipse.papyrus.infra.gmfdiag.common.databinding.custom,
- org.eclipse.papyrus.infra.gmfdiag.common.decoration,
org.eclipse.papyrus.infra.gmfdiag.common.editpart,
org.eclipse.papyrus.infra.gmfdiag.common.editpolicies,
org.eclipse.papyrus.infra.gmfdiag.common.figure.edge,
@@ -36,7 +35,6 @@ Require-Bundle: org.eclipse.emf.edit.ui;bundle-version="2.5.0",
org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.1",
org.eclipse.papyrus.infra.services.edit;bundle-version="1.0.0",
com.google.guava;bundle-version="11.0.0",
org.eclipse.papyrus.infra.tools;bundle-version="1.0.0",
@@ -53,8 +51,11 @@ Require-Bundle: org.eclipse.emf.edit.ui;bundle-version="2.5.0",
org.apache.batik.xml;bundle-version="[1.6.0,1.7.0)",
org.eclipse.gmf.tooling.runtime,
com.ibm.icu,
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0",
org.eclipse.papyrus.infra.services.decoration;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.services.markerlistener;bundle-version="1.0.0"
+ org.eclipse.papyrus.infra.services.markerlistener;bundle-version="1.0.0",
+ org.eclipse.papyrus.uml.tools
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
Bundle-ClassPath: .
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/commands/CreateViewCommand.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/commands/CreateViewCommand.java
index c6a468f8cf9..38622685327 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/commands/CreateViewCommand.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/commands/CreateViewCommand.java
@@ -20,6 +20,7 @@ import org.eclipse.gmf.runtime.diagram.ui.commands.CreateCommand;
import org.eclipse.gmf.runtime.diagram.ui.requests.CreateViewRequest.ViewDescriptor;
import org.eclipse.gmf.runtime.emf.type.core.IElementType;
import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
/**
* A replacement for CreateCommand that avoids that takes into account the incorrect
@@ -46,7 +47,7 @@ public class CreateViewCommand extends CreateCommand {
}
// Try to adapt the descriptor ElementAdapter in EObject
- EObject element = (EObject)viewDescriptor.getElementAdapter().getAdapter(EObject.class);
+ EObject element = EMFHelper.getEObject((EObject)viewDescriptor.getElementAdapter());
IElementType elementType = (IElementType)viewDescriptor.getElementAdapter().getAdapter(IElementType.class);
SemanticElementAdapter semanticAdapter = new SemanticElementAdapter(element, elementType);
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/editpart/IPapyrusEditPart.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/editpart/IPapyrusEditPart.java
index cf3aa85306f..22304031a38 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/editpart/IPapyrusEditPart.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/editpart/IPapyrusEditPart.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.gmfdiag.common.editpart;
import org.eclipse.draw2d.IFigure;
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/figure/node/ScalableCompartmentFigure.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/figure/node/ScalableCompartmentFigure.java
index 2da87f5bd15..c0b5f252473 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/figure/node/ScalableCompartmentFigure.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/figure/node/ScalableCompartmentFigure.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.gmfdiag.common.figure.node;
import org.eclipse.gmf.runtime.diagram.ui.figures.ResizableCompartmentFigure;
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/helper/NotationHelper.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/helper/NotationHelper.java
index 6f1d4dbb9c0..7d783690bec 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/helper/NotationHelper.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/helper/NotationHelper.java
@@ -14,6 +14,7 @@ package org.eclipse.papyrus.infra.gmfdiag.common.helper;
import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
/**
* A Helper class related to the GMF Notation metamodel.
@@ -39,7 +40,7 @@ public class NotationHelper {
if(adapter != null) {
return (View)adapter;
}
- adapter = adaptable.getAdapter(EObject.class);
+ adapter = EMFHelper.getEObject(adaptable);
if(adapter instanceof View) {
return (View)adapter;
}
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/messages/Messages.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/messages/Messages.java
index 80509fc4975..f12616652e3 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/messages/Messages.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/messages/Messages.java
@@ -1,4 +1,4 @@
-/*
+/****************************************
* Copyright (c) 2013, 2014 CEA and others.
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/providers/RestrictedAbstractEditPartProvider.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/providers/RestrictedAbstractEditPartProvider.java
index 96a55ef542e..56687cad171 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/providers/RestrictedAbstractEditPartProvider.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/providers/RestrictedAbstractEditPartProvider.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.gmfdiag.common.providers;
/*****************************************************************************
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/service/shape/ProviderNotificationManager.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/service/shape/ProviderNotificationManager.java
index 6f9060a6556..e1fcd6942d1 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/service/shape/ProviderNotificationManager.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/service/shape/ProviderNotificationManager.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.gmfdiag.common.service.shape;
import org.eclipse.emf.ecore.EObject;
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/snap/copy/ConnectionEndpointTracker.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/snap/copy/ConnectionEndpointTracker.java
index ff2c99b22d0..92e86ed183d 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/snap/copy/ConnectionEndpointTracker.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.common/src/org/eclipse/papyrus/infra/gmfdiag/common/snap/copy/ConnectionEndpointTracker.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.gmfdiag.common.snap.copy;
import java.util.ArrayList;
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/META-INF/MANIFEST.MF b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/META-INF/MANIFEST.MF
index ef692dd6a9f..298de66c314 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/META-INF/MANIFEST.MF
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/META-INF/MANIFEST.MF
@@ -7,8 +7,6 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.emf.ecore;visibility:=reexport,
org.eclipse.ui,
org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.query;bundle-version="0.1.1",
- org.eclipse.emf.facet.infra.query.core;bundle-version="0.1.1",
org.eclipse.uml2.uml;bundle-version="4.0.0"
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/plugin.xml b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/plugin.xml
index 50ca457e82b..c9e52fff7e0 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/plugin.xml
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/plugin.xml
@@ -8,7 +8,7 @@
<extension point="org.eclipse.emf.ecore.generated_package">
<package class="org.eclipse.papyrus.infra.gmfdiag.css.stylesheets.StylesheetsPackage" genModel="Model/StyleSheets.genmodel" uri="http://www.eclipse.org/papyrus/infra/gmfdiag/css"/>
</extension>
-
+ <!-- TODO: EMF-FACET update queries
<extension point="org.eclipse.emf.facet.infra.facet.registration">
<facetset file="Model/StyleSheets.facetSet"/>
</extension>
@@ -20,4 +20,5 @@
file="Model/StyleSheets.uiCustom"
loadByDefault="false"/>
</extension>
+ -->
</plugin>
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/src/org/eclipse/papyrus/infra/gmfdiag/css/model/queries/GetStyleSheets.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/src/org/eclipse/papyrus/infra/gmfdiag/css/model/queries/GetStyleSheets.java
index 0c5aa54bab6..84725cf69f9 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/src/org/eclipse/papyrus/infra/gmfdiag/css/model/queries/GetStyleSheets.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/src/org/eclipse/papyrus/infra/gmfdiag/css/model/queries/GetStyleSheets.java
@@ -1,19 +1,7 @@
package org.eclipse.papyrus.infra.gmfdiag.css.model.queries;
-import java.util.Collection;
-import java.util.LinkedList;
-import java.util.List;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
-import org.eclipse.papyrus.infra.gmfdiag.css.stylesheets.StyleSheet;
-import org.eclipse.uml2.uml.Element;
-
-public class GetStyleSheets implements
+//TODO: EMF-FACET update query
+public class GetStyleSheets {/**implements
IJavaModelQuery<Element, Collection<StyleSheet>> {
public Collection<StyleSheet> evaluate(Element context,
@@ -40,6 +28,6 @@ public class GetStyleSheets implements
}
}
return result;
- }
+ }**/
}
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/src/org/eclipse/papyrus/infra/gmfdiag/css/model/queries/IsStyleSheetContainer.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/src/org/eclipse/papyrus/infra/gmfdiag/css/model/queries/IsStyleSheetContainer.java
index b7f3c6e5258..ce9222de163 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/src/org/eclipse/papyrus/infra/gmfdiag/css/model/queries/IsStyleSheetContainer.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.css.model/src/org/eclipse/papyrus/infra/gmfdiag/css/model/queries/IsStyleSheetContainer.java
@@ -1,11 +1,7 @@
package org.eclipse.papyrus.infra.gmfdiag.css.model.queries;
+//TODO: EMF-FACET update query
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
-import org.eclipse.uml2.uml.Element;
-
-public class IsStyleSheetContainer implements IJavaModelQuery<Element, Boolean> {
+public class IsStyleSheetContainer {/**implements IJavaModelQuery<Element, Boolean> {
public Boolean evaluate(Element context, ParameterValueList args)
throws ModelQueryExecutionException {
@@ -15,6 +11,6 @@ public class IsStyleSheetContainer implements IJavaModelQuery<Element, Boolean>
//Only the first root element is a StyleSheet container
return context.eResource().getContents().get(0) == context;
- }
+ }*/
}
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/.project b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/.project
index a0c4da3f4cb..59c30c16c77 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/.project
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/.project
@@ -22,7 +22,7 @@
</buildCommand>
</buildSpec>
<natures>
- <nature>org.eclipse.emf.facet.common.ProjectNature</nature>
+ <nature>org.eclipse.papyrus.emf.facet.common.ProjectNature</nature>
<nature>org.eclipse.pde.PluginNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/META-INF/MANIFEST.MF b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/META-INF/MANIFEST.MF
index f10847acb64..a0090e3f2c6 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/META-INF/MANIFEST.MF
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/META-INF/MANIFEST.MF
@@ -3,7 +3,6 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime,
com.google.guava;bundle-version="11.0.0",
org.eclipse.papyrus.views.modelexplorer;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.query.core,
org.eclipse.gmf.runtime.notation,
org.eclipse.emf.transaction,
org.eclipse.gmf.runtime.common.core,
@@ -12,16 +11,24 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.gmf.runtime.emf.type.core,
org.eclipse.papyrus.infra.core.sasheditor;bundle-version="1.0.0",
org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.core;bundle-version="1.0.0"
+ org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.query.java.core,
+ org.eclipse.emf.ecore,
+ org.eclipse.papyrus.emf.facet.efacet.core,
+ org.eclipse.papyrus.emf.facet.efacet,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel,
+ org.eclipse.papyrus.emf.facet.custom.metamodel,
+ org.eclipse.papyrus.infra.emf
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
Bundle-Version: 1.0.0.qualifier
-Bundle-Name: %pluginName
Bundle-Localization: plugin
-Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
Bundle-Activator: org.eclipse.papyrus.infra.gmfdiag.modelexplorer.Acti
vator
+Bundle-ManifestVersion: 2
Bundle-SymbolicName: org.eclipse.papyrus.infra.gmfdiag.modelexplorer;s
ingleton:=true
Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Import-Package: org.eclipse.papyrus.emf.facet.custom.ui
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/plugin.xml b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/plugin.xml
index d3eb801f9d1..90d477a5bca 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/plugin.xml
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/plugin.xml
@@ -2,27 +2,34 @@
<?eclipse version="3.4"?>
<plugin>
- <extension point="org.eclipse.emf.facet.infra.query.registration">
+
+<extension point="org.eclipse.papyrus.emf.facet.util.emf.core.modeldeclaration">
+ <modeldeclaration file="resources/PapyrusDiagram.custom"/>
+</extension>
+
+ <!-- TODO: EMF-FACET
+ <extension point="org.eclipse.papyrus.emf.facet.infra.query.registration">
<modelqueryset file="resources/PapyrusNotationFacet.querySet">
</modelqueryset>
</extension>
- <extension point="org.eclipse.emf.facet.infra.browser.custom.core.registration">
+ <extension point="org.eclipse.papyrus.emf.facet.infra.browser.custom.core.registration">
<browserCustomization
file="resources/PapyrusNotation.uiCustom"
loadByDefault="true"/>
</extension>
- <extension point="org.eclipse.emf.facet.infra.browser.custom.core.registration">
+ <extension point="org.eclipse.papyrus.emf.facet.infra.browser.custom.core.registration">
<browserCustomization
file="resources/PapyrusNotationFacet.uiCustom"
loadByDefault="true"/>
</extension>
<extension
- point="org.eclipse.emf.facet.infra.facet.registration">
+ point="org.eclipse.papyrus.emf.facet.infra.facet.registration">
<facetset
file="resources/PapyrusNotationFacet.facetSet">
</facetset>
</extension>
+ -->
<extension
point="org.eclipse.ui.handlers">
<handler
@@ -78,5 +85,6 @@
properties="isDiagram"
type="org.eclipse.jface.viewers.IStructuredSelection">
</propertyTester>
- </extension>
+ </extension>
+
</plugin>
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusDiagram.custom b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusDiagram.custom
new file mode 100644
index 00000000000..eb9cdcade4b
--- /dev/null
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusDiagram.custom
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<custom:Customization xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:custom="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:efacet="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet" xmlns:javaQuery="http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation/javaquery" xmlns:query="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/query" name="PapyrusDiagram" documentation="Display contained diagram and their icons" mustBeLoadedByDefault="true">
+ <eClassifiers xsi:type="custom:EClassCustomization" name="Diagram" documentation="Representation of diagram in model explorer">
+ <extendedMetaclass href="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram"/>
+ <facetOperations name="GetDiagramIcon" documentation="Return the path to the icon of the corresponding diagram">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters name="eObject">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eParameters>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.infra.gmfdiag.modelexplorer.queries.GetDiagramIcon"/>
+ <override xsi:type="efacet:FacetOperation" href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/image"/>
+ </facetOperations>
+ <facetOperations name="NotVisibleStructuralFeature">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ <eParameters name="eStructuralFeature">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature"/>
+ </eParameters>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.infra.gmfdiag.modelexplorer.queries.NotVisibleStructuralFeatureQuery"/>
+ <override xsi:type="efacet:FacetOperation" href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/isVisible"/>
+ </facetOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="custom:EClassCustomization" name="EObject" documentation="representation around EObject displayed in model explorer">
+ <extendedMetaclass href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <facetElements xsi:type="efacet:FacetReference" name="diagrams" upperBound="-1" defaultValueLiteral="" derived="true">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram"/>
+ <query xsi:type="query:OperationCallQuery" operation="//EObject/DiagramsRefContent"/>
+ </facetElements>
+ <facetOperations name="DiagramsRefVisibility" documentation="Return true if the element contains diagrams">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ <eParameters name="eStructuralFeature">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature"/>
+ </eParameters>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.infra.gmfdiag.modelexplorer.queries.IsDiagramContainer"/>
+ <override xsi:type="efacet:FacetOperation" href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/isVisible"/>
+ </facetOperations>
+ <facetOperations name="DiagramsRefContent" upperBound="-1" documentation="Get the collection of all contained diagrams">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram"/>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.infra.gmfdiag.modelexplorer.queries.GetContainedDiagrams"/>
+ </facetOperations>
+ <facetOperations name="DiagramsRefCollapse">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ <eParameters name="eStructuralFeature">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature"/>
+ </eParameters>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.infra.gmfdiag.modelexplorer.queries.DiagramsRefCollapseQuery"/>
+ <override xsi:type="efacet:FacetOperation" href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/collapseLink"/>
+ </facetOperations>
+ </eClassifiers>
+</custom:Customization>
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotation.uiCustom b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotation.uiCustom
deleted file mode 100644
index 95854b45505..00000000000
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotation.uiCustom
+++ /dev/null
@@ -1,58 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<uicustom:MetamodelView
- xmi:version="2.0"
- xmlns:xmi="http://www.omg.org/XMI"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:uicustom="http://www.eclipse.org/EmfFacet/infra/browser/custom/0.8"
- metamodelURI="http://www.eclipse.org/gmf/runtime/1.0.2/notation">
- <types metaclassName="notation.Diagram">
- <references
- referenceName="diagram">
- <customizedFeatures>
- <defaultValue
- xsi:type="uicustom:StaticFeatureValue"
- value="false"/>
- </customizedFeatures>
- </references>
- <references
- referenceName="styles">
- <customizedFeatures>
- <defaultValue
- xsi:type="uicustom:StaticFeatureValue"
- value="false"/>
- </customizedFeatures>
- </references>
- <references
- referenceName="element">
- <customizedFeatures>
- <defaultValue
- xsi:type="uicustom:StaticFeatureValue"
- value="false"/>
- </customizedFeatures>
- </references>
- <references
- referenceName="children">
- <customizedFeatures>
- <defaultValue
- xsi:type="uicustom:StaticFeatureValue"
- value="false"/>
- </customizedFeatures>
- </references>
- <references
- referenceName="edges">
- <customizedFeatures>
- <defaultValue
- xsi:type="uicustom:StaticFeatureValue"
- value="false"/>
- </customizedFeatures>
- </references>
- <references
- referenceName="eAnnotations">
- <customizedFeatures>
- <defaultValue
- xsi:type="uicustom:StaticFeatureValue"
- value="false"/>
- </customizedFeatures>
- </references>
- </types>
-</uicustom:MetamodelView>
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotationFacet.facetSet b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotationFacet.facetSet
deleted file mode 100644
index 8f07e727e5f..00000000000
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotationFacet.facetSet
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<facet:FacetSet xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:facet="http://www.eclipse.org/EmfFacet/infra/facet/0.8.incubation" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" name="PapyrusNotationFacet" nsURI="http://org.eclipse.org/papyrus/notation/modelExplorer/Facet" nsPrefix="PapyrusNotationFacet">
- <eClassifiers xsi:type="facet:Facet" name="DiagramContainer" abstract="true">
- <eSuperTypes href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
- <eStructuralFeatures xsi:type="facet:FacetReference" name="diagrams" upperBound="-1" volatile="true" unsettable="true">
- <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram"/>
- <valueQuery xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusNotationFacet#GetContainedDiagrams"/>
- </eStructuralFeatures>
- <conditionQuery xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusNotationFacet#IsDiagramContainer"/>
- </eClassifiers>
- <extendedPackage href="http://www.eclipse.org/emf/2002/Ecore#/"/>
-</facet:FacetSet>
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotationFacet.querySet b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotationFacet.querySet
deleted file mode 100644
index 847d46eeef0..00000000000
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotationFacet.querySet
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<query:ModelQuerySet xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" name="PapyrusNotationFacet" description="A set of queries to manage the diagrams in the ModelExplorer">
- <associatedMetamodels href="http://www.eclipse.org/emf/2002/Ecore#/"/>
- <associatedMetamodels href="http://www.eclipse.org/gmf/runtime/1.0.2/notation#/"/>
- <queries xsi:type="query:JavaModelQuery" name="IsDiagramContainer" description="Return true if the element contains diagrams" implementationClassName="org.eclipse.papyrus.infra.gmfdiag.modelexplorer.queries.IsDiagramContainer">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
- <scope href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
- </queries>
- <queries xsi:type="query:JavaModelQuery" name="GetContainedDiagrams" description="Get the collection of all contained diagrams" upperBound="-1" implementationClassName="org.eclipse.papyrus.infra.gmfdiag.modelexplorer.queries.GetContainedDiagrams">
- <returnType xsi:type="ecore:EClass" href="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram"/>
- <scope href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
- </queries>
- <queries xsi:type="query:JavaModelQuery" name="GetDiagramIcon" description="Return the path to the icon of the corresponding diagram" implementationClassName="org.eclipse.papyrus.infra.gmfdiag.modelexplorer.queries.GetDiagramIcon">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
- <scope href="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram"/>
- </queries>
-</query:ModelQuerySet>
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotationFacet.uiCustom b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotationFacet.uiCustom
deleted file mode 100644
index dd2dc5e6f92..00000000000
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/resources/PapyrusNotationFacet.uiCustom
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<uicustom:MetamodelView xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" xmlns:uicustom="http://www.eclipse.org/EmfFacet/infra/browser/custom/0.8" metamodelURI="http://org.eclipse.org/papyrus/notation/modelExplorer/Facet">
- <types metaclassName="PapyrusNotationFacet.DiagramContainer">
- <references referenceName="diagrams">
- <customizedFeatures>
- <valueCases>
- <value xsi:type="uicustom:StaticFeatureValue" value="false"/>
- <condition xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusNotationFacet#IsDiagramContainer"/>
- </valueCases>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
-</uicustom:MetamodelView>
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/handlers/AbstractDiagramCommandHandler.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/handlers/AbstractDiagramCommandHandler.java
index caaaa7064e7..990710d0f18 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/handlers/AbstractDiagramCommandHandler.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/handlers/AbstractDiagramCommandHandler.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.gmfdiag.modelexplorer.handlers;
import java.util.ArrayList;
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/messages/Messages.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/messages/Messages.java
index 60dd97996b0..ed2f87db4b4 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/messages/Messages.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/messages/Messages.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.gmfdiag.modelexplorer.messages;
import org.eclipse.osgi.util.NLS;
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/providers/DiagramPropertyTester.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/providers/DiagramPropertyTester.java
index adf3874d627..1dd2411f27a 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/providers/DiagramPropertyTester.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/providers/DiagramPropertyTester.java
@@ -19,7 +19,7 @@ import org.eclipse.core.expressions.PropertyTester;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.gmf.runtime.notation.Diagram;
import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.papyrus.views.modelexplorer.NavigatorUtils;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
/**
* This class provides test called by the plugin.xml in order to know if handlers should be active or not.
@@ -96,7 +96,7 @@ public class DiagramPropertyTester extends PropertyTester {
* Used for example for facet elements
*/
final Object next = iter.next();
- EObject diag = NavigatorUtils.getElement(next, EObject.class);
+ EObject diag = EMFHelper.getEObject(next);
if(!(diag instanceof Diagram)) {
return false;
}
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/DiagramsRefCollapseQuery.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/DiagramsRefCollapseQuery.java
new file mode 100644
index 00000000000..54eff54577b
--- /dev/null
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/DiagramsRefCollapseQuery.java
@@ -0,0 +1,36 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.modelexplorer.queries;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+
+public class DiagramsRefCollapseQuery implements IJavaQuery2<EObject, Boolean> {
+ public Boolean evaluate(final EObject context,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ ParameterValue parameterValue= (ParameterValue)parameterValues.getParameterValueByName("eStructuralFeature");
+ EStructuralFeature eStructuralFeature=(EStructuralFeature)parameterValue.getValue();
+ if((eStructuralFeature instanceof FacetReference)&&("diagrams".equals((eStructuralFeature).getName()))){
+ return true;
+ }
+ return false;
+ }
+}
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/EmptyReferenceAndAttributeNotVisibleQuery.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/EmptyReferenceAndAttributeNotVisibleQuery.java
new file mode 100644
index 00000000000..34b6cd87a8e
--- /dev/null
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/EmptyReferenceAndAttributeNotVisibleQuery.java
@@ -0,0 +1,55 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.modelexplorer.queries;
+
+import java.util.Collection;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+
+public class EmptyReferenceAndAttributeNotVisibleQuery implements IJavaQuery2<EObject, Boolean> {
+ public Boolean evaluate(final EObject context,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+// ParameterValue parameterValue= (ParameterValue)parameterValues.getParameterValueByName("eStructuralFeature");
+// EStructuralFeature eStructuralFeature=(EStructuralFeature)parameterValue.getValue();
+// if(!(eStructuralFeature instanceof FacetReference)){
+// if( eStructuralFeature instanceof EAttribute){
+// return false;
+// }
+// System.err.println(context.eGet(eStructuralFeature));
+// if( eStructuralFeature instanceof EReference){
+// if( context.eGet(eStructuralFeature)==null){
+// return false;
+// }
+//
+// if( context.eGet(eStructuralFeature) instanceof Collection){
+// if(((Collection)context.eGet(eStructuralFeature)).size()==0){
+// return false;
+// }
+// }
+// }
+// }
+// return true;
+ return false;
+ }
+}
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/GetContainedDiagrams.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/GetContainedDiagrams.java
index 1e544507e49..c5c535df52d 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/GetContainedDiagrams.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/GetContainedDiagrams.java
@@ -19,19 +19,21 @@ import java.util.List;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
import org.eclipse.papyrus.views.modelexplorer.NavigatorUtils;
import org.eclipse.papyrus.views.modelexplorer.queries.AbstractEditorContainerQuery;
/** Get the collection of all contained diagrams */
-public class GetContainedDiagrams extends AbstractEditorContainerQuery implements IJavaModelQuery<EObject, Collection<org.eclipse.gmf.runtime.notation.Diagram>> {
+public class GetContainedDiagrams extends AbstractEditorContainerQuery implements IJavaQuery2<EObject, Collection<org.eclipse.gmf.runtime.notation.Diagram>> {
- public Collection<Diagram> evaluate(final EObject context, final ParameterValueList parameterValues) throws ModelQueryExecutionException {
+
+ public Collection<Diagram> evaluate(EObject source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException {
List<Diagram> result = new ArrayList<Diagram>();
- Iterator<EObject> roots = NavigatorUtils.getNotationRoots(context);
+ Iterator<EObject> roots = NavigatorUtils.getNotationRoots(source);
if(roots == null) {
return result;
}
@@ -39,7 +41,7 @@ public class GetContainedDiagrams extends AbstractEditorContainerQuery implement
while(roots.hasNext()) {
EObject root = roots.next();
if(root instanceof Diagram) {
- if(EcoreUtil.equals(((Diagram)root).getElement(), context)) {
+ if(EcoreUtil.equals(((Diagram)root).getElement(), source)) {
result.add((Diagram)root);
}
}
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/GetDiagramIcon.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/GetDiagramIcon.java
index a9608b11f8f..23b836b4cf5 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/GetDiagramIcon.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/GetDiagramIcon.java
@@ -8,20 +8,25 @@
*
* Contributors:
* Atos - Initial API and implementation
+ * Patrick Tessier (CEA LIST) Modification
*
*/
package org.eclipse.papyrus.infra.gmfdiag.modelexplorer.queries;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage;
+import org.eclipse.papyrus.emf.facet.custom.ui.ImageUtils;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
import org.eclipse.papyrus.views.modelexplorer.queries.AbstractGetEditorIconQuery;
/** Return the path to the icon of the corresponding diagram */
-public class GetDiagramIcon extends AbstractGetEditorIconQuery implements IJavaModelQuery<Diagram, String> {
+public class GetDiagramIcon extends AbstractGetEditorIconQuery implements IJavaQuery2<Diagram, IImage> {
- public String evaluate(final Diagram context, final ParameterValueList parameterValues) throws ModelQueryExecutionException {
- return "/" + getEditorRegistry(context).getEditorURLIcon(context); //$NON-NLS-1$
+
+ public IImage evaluate(Diagram source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException {
+ return ImageUtils.wrap(org.eclipse.emf.common.util.URI.createPlatformPluginURI(getEditorRegistry(source).getEditorURLIcon(source), true).toString()); //$NON-NLS-1$
}
}
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/IsDiagramContainer.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/IsDiagramContainer.java
index b5eb764bf79..23e6be9f436 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/IsDiagramContainer.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/IsDiagramContainer.java
@@ -15,33 +15,44 @@ package org.eclipse.papyrus.infra.gmfdiag.modelexplorer.queries;
import java.util.Iterator;
import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
import org.eclipse.papyrus.views.modelexplorer.NavigatorUtils;
import org.eclipse.papyrus.views.modelexplorer.queries.AbstractEditorContainerQuery;
-public class IsDiagramContainer extends AbstractEditorContainerQuery implements IJavaModelQuery<EObject, Boolean> {
+public class IsDiagramContainer extends AbstractEditorContainerQuery implements IJavaQuery2<EObject, Boolean> {
/**
* Return true if the element is a Diagram Container
*/
- public Boolean evaluate(final EObject context, ParameterValueList parameterValues) throws ModelQueryExecutionException {
- Iterator<EObject> roots = NavigatorUtils.getNotationRoots(context);
- if(roots == null) {
- return false;
- }
- while(roots.hasNext()) {
- EObject root = roots.next();
- if(root instanceof Diagram) {
- if(EcoreUtil.equals(((Diagram)root).getElement(), context)) {
- return true;
+ public Boolean evaluate(EObject source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException {
+ ParameterValue parameterValue= (ParameterValue)parameterValues.getParameterValueByName("eStructuralFeature");
+ EStructuralFeature eStructuralFeature=(EStructuralFeature)parameterValue.getValue();
+ if((eStructuralFeature instanceof FacetReference)&&("diagrams".equals((eStructuralFeature).getName()))){
+
+ Iterator<EObject> roots = NavigatorUtils.getNotationRoots(source);
+ if(roots == null) {
+ return false;
+ }
+
+ while(roots.hasNext()) {
+ EObject root = roots.next();
+ if(root instanceof Diagram) {
+ if(EcoreUtil.equals(((Diagram)root).getElement(), source)) {
+ return true;
+ }
}
}
+ return false;
}
- return false;
+ return true;
}
-}
+} \ No newline at end of file
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/NotVisibleStructuralFeatureQuery.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/NotVisibleStructuralFeatureQuery.java
new file mode 100644
index 00000000000..3ff11357e85
--- /dev/null
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.modelexplorer/src/org/eclipse/papyrus/infra/gmfdiag/modelexplorer/queries/NotVisibleStructuralFeatureQuery.java
@@ -0,0 +1,38 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
+package org.eclipse.papyrus.infra.gmfdiag.modelexplorer.queries;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+
+public class NotVisibleStructuralFeatureQuery implements IJavaQuery2<Diagram, Boolean> {
+ public Boolean evaluate(final Diagram context,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ ParameterValue parameterValue= (ParameterValue)parameterValues.getParameterValueByName("eStructuralFeature");
+ EStructuralFeature eStructuralFeature=(EStructuralFeature)parameterValue.getValue();
+ //if eStructural feature ==null this is root model explorer.
+ //border effect of this kind of queries
+ if (eStructuralFeature==null){
+ return true;
+ }
+
+ return false;
+ }
+}
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.navigation/META-INF/MANIFEST.MF b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.navigation/META-INF/MANIFEST.MF
index cdd065a20bd..5984fdcf341 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.navigation/META-INF/MANIFEST.MF
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.navigation/META-INF/MANIFEST.MF
@@ -10,7 +10,6 @@ Require-Bundle: org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
org.eclipse.core.expressions;bundle-version="3.4.300",
org.eclipse.papyrus.views.modelexplorer;bundle-version="1.0.0",
org.eclipse.ui.navigator;bundle-version="3.5.100",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.1.0",
org.eclipse.core.runtime;bundle-version="3.7.0",
org.eclipse.gmf.runtime.diagram.ui;bundle-version="1.5.0",
org.eclipse.papyrus.infra.core.sasheditor;bundle-version="1.0.0",
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.navigation/src/org/eclipse/papyrus/infra/gmfdiag/navigation/Messages.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.navigation/src/org/eclipse/papyrus/infra/gmfdiag/navigation/Messages.java
index f3856b82a50..a9af823ee6f 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.navigation/src/org/eclipse/papyrus/infra/gmfdiag/navigation/Messages.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.navigation/src/org/eclipse/papyrus/infra/gmfdiag/navigation/Messages.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.gmfdiag.navigation;
import org.eclipse.osgi.util.NLS;
diff --git a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.navigation/src/org/eclipse/papyrus/infra/gmfdiag/navigation/utils/Messages.java b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.navigation/src/org/eclipse/papyrus/infra/gmfdiag/navigation/utils/Messages.java
index e23e6d04c5e..fa534ae8843 100644
--- a/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.navigation/src/org/eclipse/papyrus/infra/gmfdiag/navigation/utils/Messages.java
+++ b/plugins/infra/gmfdiag/org.eclipse.papyrus.infra.gmfdiag.navigation/src/org/eclipse/papyrus/infra/gmfdiag/navigation/utils/Messages.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.gmfdiag.navigation.utils;
import org.eclipse.osgi.util.NLS;
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.common/src/org/eclipse/papyrus/infra/nattable/common/handlers/AbstractCreateNattableEditorHandler.java b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.common/src/org/eclipse/papyrus/infra/nattable/common/handlers/AbstractCreateNattableEditorHandler.java
index 816843304ef..75b61a09193 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.common/src/org/eclipse/papyrus/infra/nattable/common/handlers/AbstractCreateNattableEditorHandler.java
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.common/src/org/eclipse/papyrus/infra/nattable/common/handlers/AbstractCreateNattableEditorHandler.java
@@ -43,6 +43,7 @@ import org.eclipse.papyrus.infra.core.services.ServicesRegistry;
import org.eclipse.papyrus.infra.core.utils.EditorNameInitializer;
import org.eclipse.papyrus.infra.core.utils.EditorUtils;
import org.eclipse.papyrus.infra.core.utils.ServiceUtils;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForHandlers;
import org.eclipse.papyrus.infra.nattable.Activator;
import org.eclipse.papyrus.infra.nattable.common.modelresource.PapyrusNattableModel;
@@ -250,13 +251,11 @@ public abstract class AbstractCreateNattableEditorHandler extends AbstractHandle
final Iterator<?> it = structuredSelection.iterator();
while(it.hasNext()) {
final Object object = it.next();
- if(object instanceof IAdaptable) {
- final EObject currentEObject = (EObject)((IAdaptable)object).getAdapter(EObject.class);
+ final EObject currentEObject = EMFHelper.getEObject(object);
if(currentEObject != null) {
selectedElements.add(currentEObject);
}
- }
}
}
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/META-INF/MANIFEST.MF b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/META-INF/MANIFEST.MF
index ffe59c92ab5..e5016117c69 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/META-INF/MANIFEST.MF
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/META-INF/MANIFEST.MF
@@ -2,7 +2,6 @@ Manifest-Version: 1.0
Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime,
org.eclipse.papyrus.views.modelexplorer;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.query.core,
org.eclipse.gmf.runtime.notation,
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/plugin.xml b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/plugin.xml
index 01a4149096f..67dca5e4697 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/plugin.xml
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/plugin.xml
@@ -1,20 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
- <extension point="org.eclipse.emf.facet.infra.query.registration">
+ <!-- TODO: EMF-FACET update uicustom and queries
+ <extension point="org.eclipse.papyrus.emf.facet.infra.query.registration">
<modelqueryset file="resources/PapyrusTablesFacet.querySet">
</modelqueryset>
</extension>
- <extension point="org.eclipse.emf.facet.infra.browser.custom.core.registration">
+ <extension point="org.eclipse.papyrus.emf.facet.infra.browser.custom.core.registration">
<browserCustomization file="resources/PapyrusTables.uiCustom" loadByDefault="true"/>
</extension>
- <extension point="org.eclipse.emf.facet.infra.browser.custom.core.registration">
+ <extension point="org.eclipse.papyrus.emf.facet.infra.browser.custom.core.registration">
<browserCustomization file="resources/PapyrusTablesFacet.uiCustom" loadByDefault="true"/>
</extension>
- <extension point="org.eclipse.emf.facet.infra.facet.registration">
+ <extension point="org.eclipse.papyrus.emf.facet.infra.facet.registration">
<facetset file="resources/PapyrusTablesFacet.facetSet">
</facetset>
- </extension>
+ </extension-->
<extension point="org.eclipse.ui.handlers">
<handler class="org.eclipse.papyrus.infra.nattable.modelexplorer.handlers.RenameTableHandler" commandId="org.eclipse.ui.edit.rename">
<activeWhen>
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/src/org/eclipse/papyrus/infra/nattable/modelexplorer/queries/GetContainedTables.java b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/src/org/eclipse/papyrus/infra/nattable/modelexplorer/queries/GetContainedTables.java
index 381d6a2bff0..b493d924f04 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/src/org/eclipse/papyrus/infra/nattable/modelexplorer/queries/GetContainedTables.java
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/src/org/eclipse/papyrus/infra/nattable/modelexplorer/queries/GetContainedTables.java
@@ -11,22 +11,11 @@
*****************************************************************************/
package org.eclipse.papyrus.infra.nattable.modelexplorer.queries;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
-import org.eclipse.papyrus.infra.nattable.model.nattable.Table;
-import org.eclipse.papyrus.views.modelexplorer.NavigatorUtils;
-import org.eclipse.papyrus.views.modelexplorer.queries.AbstractEditorContainerQuery;
-
+//TODO: EMF-FACET update query
/** Get the collection of all contained tables */
-public class GetContainedTables extends AbstractEditorContainerQuery implements IJavaModelQuery<EObject, Collection<Table>> {
+public class GetContainedTables {/*
+ extends AbstractEditorContainerQuery implements IJavaModelQuery<EObject, Collection<Table>> {
+
@Override
public Collection<Table> evaluate(final EObject context, final ParameterValueList parameterValues) throws ModelQueryExecutionException {
@@ -45,5 +34,5 @@ public class GetContainedTables extends AbstractEditorContainerQuery implements
}
}
return result;
- }
+ }**/
}
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/src/org/eclipse/papyrus/infra/nattable/modelexplorer/queries/IsTableContainer.java b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/src/org/eclipse/papyrus/infra/nattable/modelexplorer/queries/IsTableContainer.java
index 6a39028161e..25b549ed7ca 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/src/org/eclipse/papyrus/infra/nattable/modelexplorer/queries/IsTableContainer.java
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable.modelexplorer/src/org/eclipse/papyrus/infra/nattable/modelexplorer/queries/IsTableContainer.java
@@ -15,19 +15,15 @@ import java.util.Iterator;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
import org.eclipse.papyrus.infra.nattable.model.nattable.Table;
import org.eclipse.papyrus.views.modelexplorer.NavigatorUtils;
-import org.eclipse.papyrus.views.modelexplorer.queries.AbstractEditorContainerQuery;
-
-public class IsTableContainer extends AbstractEditorContainerQuery implements IJavaModelQuery<EObject, Boolean> {
-
+//TODO: EMF-FACET update query
+public class IsTableContainer {/*extends AbstractEditorContainerQuery implements IJavaModelQuery<EObject, Boolean> {
+*/
/**
* Return true if the element is a Diagram Container
*/
- @Override
+ /*@Override
public Boolean evaluate(final EObject context, ParameterValueList parameterValues) throws ModelQueryExecutionException {
Iterator<EObject> roots = NavigatorUtils.getNotationRoots(context);
if(roots == null) {
@@ -42,5 +38,5 @@ public class IsTableContainer extends AbstractEditorContainerQuery implements IJ
}
}
return false;
- }
+ }*/
}
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/META-INF/MANIFEST.MF b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/META-INF/MANIFEST.MF
index 4d5061bd4b3..9dbe6dc68e9 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/META-INF/MANIFEST.MF
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/META-INF/MANIFEST.MF
@@ -11,7 +11,6 @@ Require-Bundle: org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="1.0.0",
org.eclipse.papyrus.infra.nattable.model;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.1",
org.eclipse.papyrus.infra.tools;bundle-version="1.0.0",
org.eclipse.emf.edit.ui,
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
@@ -20,7 +19,9 @@ Require-Bundle: org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
org.eclipse.papyrus.infra.services.edit;bundle-version="1.0.0",
org.eclipse.papyrus.infra.widgets.toolbox;bundle-version="1.0.0",
org.apache.commons.lang,
- com.google.guava;bundle-version="11.0.0"
+ com.google.guava;bundle-version="11.0.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0"
Export-Package: org.eclipse.papyrus.infra.nattable,
org.eclipse.papyrus.infra.nattable.celleditor,
org.eclipse.papyrus.infra.nattable.celleditor.config,
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/manager/ImportAxisInNattableManager.java b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/manager/ImportAxisInNattableManager.java
index aa65257b2a7..a686f2dc08a 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/manager/ImportAxisInNattableManager.java
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/manager/ImportAxisInNattableManager.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.nattable.manager;
import java.io.File;
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/painter/PapyrusSortableHeaderTextPainter.java b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/painter/PapyrusSortableHeaderTextPainter.java
index 87051275623..14dcfa556ce 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/painter/PapyrusSortableHeaderTextPainter.java
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/painter/PapyrusSortableHeaderTextPainter.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.nattable.painter;
import org.apache.commons.lang.StringUtils;
diff --git a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/provider/PasteEObjectAxisInNattableCommandProvider.java b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/provider/PasteEObjectAxisInNattableCommandProvider.java
index 6dc82b8469e..8def89fed89 100644
--- a/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/provider/PasteEObjectAxisInNattableCommandProvider.java
+++ b/plugins/infra/nattable/org.eclipse.papyrus.infra.nattable/src/org/eclipse/papyrus/infra/nattable/provider/PasteEObjectAxisInNattableCommandProvider.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.nattable.provider;
/*****************************************************************************
diff --git a/plugins/infra/org.eclipse.papyrus.infra.constraints/.project b/plugins/infra/org.eclipse.papyrus.infra.constraints/.project
index 543b13908d2..ed51e8e7431 100644
--- a/plugins/infra/org.eclipse.papyrus.infra.constraints/.project
+++ b/plugins/infra/org.eclipse.papyrus.infra.constraints/.project
@@ -22,7 +22,7 @@
</buildCommand>
</buildSpec>
<natures>
- <nature>org.eclipse.emf.facet.common.ProjectNature</nature>
+ <nature>org.eclipse.papyrus.emf.facet.common.ProjectNature</nature>
<nature>org.eclipse.pde.PluginNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
diff --git a/plugins/infra/org.eclipse.papyrus.infra.constraints/META-INF/MANIFEST.MF b/plugins/infra/org.eclipse.papyrus.infra.constraints/META-INF/MANIFEST.MF
index 78628eb3ccf..da5e62cf952 100644
--- a/plugins/infra/org.eclipse.papyrus.infra.constraints/META-INF/MANIFEST.MF
+++ b/plugins/infra/org.eclipse.papyrus.infra.constraints/META-INF/MANIFEST.MF
@@ -16,9 +16,6 @@ Bundle-RequiredExecutionEnvironment: J2SE-1.5
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.emf.ecore,
org.eclipse.ui;bundle-version="3.7.0",
- org.eclipse.emf.facet.infra.query;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.query.core;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.common.core;bundle-version="0.1.0",
org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
org.eclipse.papyrus.infra.tools;bundle-version="1.0.0";visibility:=reexport,
diff --git a/plugins/infra/org.eclipse.papyrus.infra.constraints/plugin.xml b/plugins/infra/org.eclipse.papyrus.infra.constraints/plugin.xml
index adcf796f3ba..09aea95ab04 100644
--- a/plugins/infra/org.eclipse.papyrus.infra.constraints/plugin.xml
+++ b/plugins/infra/org.eclipse.papyrus.infra.constraints/plugin.xml
@@ -19,13 +19,15 @@
</package>
</extension>
+ <!-- TODO: EMF-FACET update uicustom
<extension
- point="org.eclipse.emf.facet.infra.browser.custom.core.registration">
+ point="org.eclipse.papyrus.emf.facet.infra.browser.custom.core.registration">
<browserCustomization
file="custom/constraints.uiCustom"
loadByDefault="true">
</browserCustomization>
</extension>
+ -->
<extension
point="org.eclipse.papyrus.infra.constraints.ConstraintEnvironment">
<environment
diff --git a/plugins/infra/org.eclipse.papyrus.infra.constraints/src/org/eclipse/papyrus/infra/constraints/constraints/EMFQueryConstraint.java b/plugins/infra/org.eclipse.papyrus.infra.constraints/src/org/eclipse/papyrus/infra/constraints/constraints/EMFQueryConstraint.java
index 22c247ba550..f9194564065 100644
--- a/plugins/infra/org.eclipse.papyrus.infra.constraints/src/org/eclipse/papyrus/infra/constraints/constraints/EMFQueryConstraint.java
+++ b/plugins/infra/org.eclipse.papyrus.infra.constraints/src/org/eclipse/papyrus/infra/constraints/constraints/EMFQueryConstraint.java
@@ -11,19 +11,6 @@
*****************************************************************************/
package org.eclipse.papyrus.infra.constraints.constraints;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EcorePackage;
-import org.eclipse.emf.facet.infra.query.OCLModelQuery;
-import org.eclipse.emf.facet.infra.query.QueryFactory;
-import org.eclipse.emf.facet.infra.query.core.AbstractModelQuery;
-import org.eclipse.emf.facet.infra.query.core.ModelQuerySetCatalog;
-import org.eclipse.emf.facet.infra.query.runtime.ModelQueryResult;
-import org.eclipse.papyrus.infra.constraints.Activator;
-import org.eclipse.papyrus.infra.constraints.ConfigProperty;
-import org.eclipse.papyrus.infra.constraints.ReferenceProperty;
-import org.eclipse.papyrus.infra.constraints.SimpleConstraint;
-import org.eclipse.papyrus.infra.constraints.ValueProperty;
-import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
/**
* A constraint applying an EMF Query on a selection. The Query should return
@@ -33,52 +20,64 @@ import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
*/
public class EMFQueryConstraint extends AbstractConstraint {
- private OCLModelQuery query;
-
@Override
- protected void setDescriptor(SimpleConstraint descriptor) {
- ConfigProperty property = getProperty("query"); //$NON-NLS-1$
- if(property instanceof ReferenceProperty) {
- query = (OCLModelQuery)getReferenceValue("query"); //$NON-NLS-1$
- } else {
- String queryExpression = ((ValueProperty)property).getValue();
- query = QueryFactory.eINSTANCE.createOCLModelQuery();
- query.setQuery(queryExpression);
- query.setReturnType(EcorePackage.eINSTANCE.getEBoolean());
- query.getScope().add(EcorePackage.eINSTANCE.getEObject());
- throw new UnsupportedOperationException();
- }
- }
-
- public boolean match(Object selection) {
- if(query == null) {
- return false;
- }
-
- EObject selectedItem = EMFHelper.getEObject(selection);
-
- if(selectedItem != null) {
- try {
- ModelQuerySetCatalog catalog = ModelQuerySetCatalog.getSingleton();
- AbstractModelQuery abstractQuery = catalog.getModelQueryImpl(query);
- ModelQueryResult result = abstractQuery.evaluate(selectedItem);
- Object value = result.getValue();
- return value == null ? false : (Boolean)value;
- } catch (Exception ex) {
- Activator.log.error(ex);
- }
-
- }
+ protected boolean equivalent(Constraint constraint) {
+ // TODO Auto-generated method stub
return false;
}
@Override
- protected boolean equivalent(Constraint constraint) {
- if(constraint != null && constraint instanceof EMFQueryConstraint) {
- EMFQueryConstraint other = (EMFQueryConstraint)constraint;
- return other.query.equals(query);
- }
+ protected boolean match(Object selection) {
+ // TODO Auto-generated method stub
return false;
}
+// private OCLModelQuery query;
+//
+// @Override
+// protected void setDescriptor(SimpleConstraint descriptor) {
+// ConfigProperty property = getProperty("query"); //$NON-NLS-1$
+// if(property instanceof ReferenceProperty) {
+// query = (OCLModelQuery)getReferenceValue("query"); //$NON-NLS-1$
+// } else {
+// String queryExpression = ((ValueProperty)property).getValue();
+// query = QueryFactory.eINSTANCE.createOCLModelQuery();
+// query.setQuery(queryExpression);
+// query.setReturnType(EcorePackage.eINSTANCE.getEBoolean());
+// query.getScope().add(EcorePackage.eINSTANCE.getEObject());
+// throw new UnsupportedOperationException();
+// }
+// }
+//
+// public boolean match(Object selection) {
+// if(query == null) {
+// return false;
+// }
+//
+// EObject selectedItem = EMFHelper.getEObject(selection);
+//
+// if(selectedItem != null) {
+// try {
+// ModelQuerySetCatalog catalog = ModelQuerySetCatalog.getSingleton();
+// AbstractModelQuery abstractQuery = catalog.getModelQueryImpl(query);
+// ModelQueryResult result = abstractQuery.evaluate(selectedItem);
+// Object value = result.getValue();
+// return value == null ? false : (Boolean)value;
+// } catch (Exception ex) {
+// Activator.log.error(ex);
+// }
+//
+// }
+// return false;
+// }
+//
+// @Override
+// protected boolean equivalent(Constraint constraint) {
+// if(constraint != null && constraint instanceof EMFQueryConstraint) {
+// EMFQueryConstraint other = (EMFQueryConstraint)constraint;
+// return other.query.equals(query);
+// }
+// return false;
+// }
+
}
diff --git a/plugins/infra/org.eclipse.papyrus.infra.constraints/src/org/eclipse/papyrus/infra/constraints/constraints/JavaQueryConstraint.java b/plugins/infra/org.eclipse.papyrus.infra.constraints/src/org/eclipse/papyrus/infra/constraints/constraints/JavaQueryConstraint.java
index 46d85a2dc53..68090043b71 100644
--- a/plugins/infra/org.eclipse.papyrus.infra.constraints/src/org/eclipse/papyrus/infra/constraints/constraints/JavaQueryConstraint.java
+++ b/plugins/infra/org.eclipse.papyrus.infra.constraints/src/org/eclipse/papyrus/infra/constraints/constraints/JavaQueryConstraint.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.constraints.constraints;
import org.eclipse.papyrus.infra.constraints.Activator;
diff --git a/plugins/infra/org.eclipse.papyrus.infra.constraints/src/org/eclipse/papyrus/infra/constraints/providers/ConstraintTypeContentProvider.java b/plugins/infra/org.eclipse.papyrus.infra.constraints/src/org/eclipse/papyrus/infra/constraints/providers/ConstraintTypeContentProvider.java
index 77a29b7f127..29a373244d1 100644
--- a/plugins/infra/org.eclipse.papyrus.infra.constraints/src/org/eclipse/papyrus/infra/constraints/providers/ConstraintTypeContentProvider.java
+++ b/plugins/infra/org.eclipse.papyrus.infra.constraints/src/org/eclipse/papyrus/infra/constraints/providers/ConstraintTypeContentProvider.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.constraints.providers;
import org.eclipse.papyrus.infra.constraints.runtime.ConstraintsManager;
diff --git a/plugins/infra/org.eclipse.papyrus.infra.extendedtypes.emf/src/org/eclipse/papyrus/infra/extendedtypes/emf/Activator.java b/plugins/infra/org.eclipse.papyrus.infra.extendedtypes.emf/src/org/eclipse/papyrus/infra/extendedtypes/emf/Activator.java
index 8692f17824c..58b7983bcf3 100644
--- a/plugins/infra/org.eclipse.papyrus.infra.extendedtypes.emf/src/org/eclipse/papyrus/infra/extendedtypes/emf/Activator.java
+++ b/plugins/infra/org.eclipse.papyrus.infra.extendedtypes.emf/src/org/eclipse/papyrus/infra/extendedtypes/emf/Activator.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.extendedtypes.emf;
import org.eclipse.papyrus.infra.core.log.LogHelper;
diff --git a/plugins/infra/org.eclipse.papyrus.infra.extendedtypes/src/org/eclipse/papyrus/infra/extendedtypes/Activator.java b/plugins/infra/org.eclipse.papyrus.infra.extendedtypes/src/org/eclipse/papyrus/infra/extendedtypes/Activator.java
index 712e63367a5..96da7016787 100644
--- a/plugins/infra/org.eclipse.papyrus.infra.extendedtypes/src/org/eclipse/papyrus/infra/extendedtypes/Activator.java
+++ b/plugins/infra/org.eclipse.papyrus.infra.extendedtypes/src/org/eclipse/papyrus/infra/extendedtypes/Activator.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.extendedtypes;
import org.eclipse.papyrus.infra.core.log.LogHelper;
diff --git a/plugins/infra/org.eclipse.papyrus.infra.hyperlink/META-INF/MANIFEST.MF b/plugins/infra/org.eclipse.papyrus.infra.hyperlink/META-INF/MANIFEST.MF
index 900b3f2a8a6..f0b94ae6f9f 100644
--- a/plugins/infra/org.eclipse.papyrus.infra.hyperlink/META-INF/MANIFEST.MF
+++ b/plugins/infra/org.eclipse.papyrus.infra.hyperlink/META-INF/MANIFEST.MF
@@ -15,7 +15,6 @@ Require-Bundle: org.eclipse.emf.transaction,
org.eclipse.papyrus.infra.core.sasheditor;bundle-version="1.0.0",
org.eclipse.ui,
org.eclipse.ui.ide;bundle-version="3.8.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.0",
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
@@ -23,7 +22,9 @@ Require-Bundle: org.eclipse.emf.transaction,
org.eclipse.ui.navigator;bundle-version="3.5.200",
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
org.eclipse.core.filesystem;bundle-version="1.3.200",
- org.eclipse.papyrus.infra.services.openelement;bundle-version="1.0.0"
+ org.eclipse.papyrus.infra.services.openelement;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0"
Bundle-Vendor: %providerName
Bundle-Version: 1.0.0.qualifier
Bundle-ManifestVersion: 2
diff --git a/plugins/infra/org.eclipse.papyrus.infra.hyperlink/src/org/eclipse/papyrus/infra/hyperlink/ui/EditorLookForEditorShell.java b/plugins/infra/org.eclipse.papyrus.infra.hyperlink/src/org/eclipse/papyrus/infra/hyperlink/ui/EditorLookForEditorShell.java
index ef1fbc2cb1a..79aa3d7ed94 100644
--- a/plugins/infra/org.eclipse.papyrus.infra.hyperlink/src/org/eclipse/papyrus/infra/hyperlink/ui/EditorLookForEditorShell.java
+++ b/plugins/infra/org.eclipse.papyrus.infra.hyperlink/src/org/eclipse/papyrus/infra/hyperlink/ui/EditorLookForEditorShell.java
@@ -13,10 +13,12 @@
*****************************************************************************/
package org.eclipse.papyrus.infra.hyperlink.ui;
+import java.util.ArrayList;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
+import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
@@ -36,7 +38,7 @@ import org.eclipse.papyrus.infra.core.resource.ModelSet;
import org.eclipse.papyrus.infra.core.sasheditor.contentprovider.IPageManager;
import org.eclipse.papyrus.infra.core.services.ServiceException;
import org.eclipse.papyrus.infra.core.services.ServicesRegistry;
-import org.eclipse.papyrus.infra.emf.providers.MoDiscoContentProvider;
+import org.eclipse.papyrus.infra.emf.providers.strategy.SemanticEMFContentProvider;
import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForEObject;
import org.eclipse.papyrus.infra.hyperlink.Activator;
@@ -51,7 +53,6 @@ import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Menu;
import org.eclipse.swt.widgets.MenuItem;
-
//TODO: Refactor. Remove the diagram creation listener, and use a Dialog (Which is blocker) instead of a Shell
public class EditorLookForEditorShell extends AbstractLookForEditorShell {
@@ -227,10 +228,46 @@ public class EditorLookForEditorShell extends AbstractLookForEditorShell {
}
treeViewer.setLabelProvider(labelProvider);
- // treeViewer.setContentProvider(new CustomAdapterFactoryContentProvider(adapterFactory));
- // treeViewer.setContentProvider(new SemanticEMFContentProvider(amodel)); //This content provider will only display the selected element, instead of the root element
- treeViewer.setContentProvider(new MoDiscoContentProvider()); //FIXME: Use a standard, non-deprecated content provider.
- //treeViewer.setInput(model.eResource());
+ // treeViewer.setContentProvider(new
+ // CustomAdapterFactoryContentProvider(adapterFactory));
+ // treeViewer.setContentProvider(new
+ // SemanticEMFContentProvider(amodel)); //This content provider will
+ // only display the selected element, instead of the root element
+ // FIXME: Use a standard, non-deprecated content
+ treeViewer.setContentProvider(new SemanticEMFContentProvider() {
+
+ @Override
+ public boolean hasChildren(Object element) {
+ return super.getChildren(element).length > 0;
+ }
+
+ /**
+ *
+ * @see org.eclipse.papyrus.infra.emf.providers.MoDiscoContentProvider#getChildren(java.lang.Object)
+ *
+ * @param parentElement
+ * @return
+ */
+ //in some case we return diagram twice!
+ //TODO the best correction we be able to manage applied facet, because if we get diagram twice it is probably because there are 2 facets with the same behavior applied
+ @Override
+ public Object[] getChildren(Object parentElement) {
+ List<Object> alreadyVisited = new ArrayList<Object>();
+ List<Object> returnedChildren = new ArrayList<Object>();
+ Object[] children = super.getChildren(parentElement);
+ for(Object current : children) {
+ if(current instanceof IAdaptable) {
+ EObject el = EMFHelper.getEObject(current);
+ if(!alreadyVisited.contains(el)) {
+ returnedChildren.add(current);
+ alreadyVisited.add(el);
+ }
+ }
+ }
+ return returnedChildren.toArray();
+ }
+ });
+ // treeViewer.setInput(model.eResource());
treeViewer.setInput(registry);
// install diagramlist
diff --git a/plugins/infra/org.eclipse.papyrus.infra.newchild/META-INF/MANIFEST.MF b/plugins/infra/org.eclipse.papyrus.infra.newchild/META-INF/MANIFEST.MF
index dd0d850549f..64cad83022d 100644
--- a/plugins/infra/org.eclipse.papyrus.infra.newchild/META-INF/MANIFEST.MF
+++ b/plugins/infra/org.eclipse.papyrus.infra.newchild/META-INF/MANIFEST.MF
@@ -5,7 +5,6 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.emf.ecore,
org.eclipse.osgi,
org.eclipse.emf.ecore.xmi,
- org.eclipse.papyrus.infra.queries.core.configuration;bundle-version="1.0.0";visibility:=reexport,
org.eclipse.papyrus.infra.extendedtypes;bundle-version="1.0.0";visibility:=reexport,
org.eclipse.papyrus.infra.services.resourceloading;bundle-version="1.0.0",
org.eclipse.emf.transaction,
diff --git a/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration.edit/META-INF/MANIFEST.MF b/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration.edit/META-INF/MANIFEST.MF
index 8a393a254a5..1a2041eb873 100644
--- a/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration.edit/META-INF/MANIFEST.MF
+++ b/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration.edit/META-INF/MANIFEST.MF
@@ -6,8 +6,6 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.emf.edit;visibility:=reexport,
org.eclipse.emf.ecore;visibility:=reexport,
org.eclipse.emf.ecore.edit;visibility:=reexport,
- org.eclipse.emf.facet.infra.query,
- org.eclipse.emf.facet.infra.query.edit,
org.eclipse.uml2.uml,
org.eclipse.uml2.uml.edit
Bundle-Vendor: %providerName
diff --git a/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration.edit/src-gen/org/eclipse/papyrus/infra/queries/core/configuration/provider/ConfigurationEditPlugin.java b/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration.edit/src-gen/org/eclipse/papyrus/infra/queries/core/configuration/provider/ConfigurationEditPlugin.java
index 3b656338250..f8205917100 100644
--- a/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration.edit/src-gen/org/eclipse/papyrus/infra/queries/core/configuration/provider/ConfigurationEditPlugin.java
+++ b/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration.edit/src-gen/org/eclipse/papyrus/infra/queries/core/configuration/provider/ConfigurationEditPlugin.java
@@ -7,13 +7,8 @@
package org.eclipse.papyrus.infra.queries.core.configuration.provider;
import org.eclipse.emf.common.EMFPlugin;
-
import org.eclipse.emf.common.util.ResourceLocator;
-
import org.eclipse.emf.ecore.provider.EcoreEditPlugin;
-
-import org.eclipse.emf.facet.infra.query.edit.provider.QueryEditPlugin;
-
import org.eclipse.uml2.uml.edit.UMLEditPlugin;
/**
@@ -49,7 +44,7 @@ public final class ConfigurationEditPlugin extends EMFPlugin {
super
(new ResourceLocator [] {
EcoreEditPlugin.INSTANCE,
- QueryEditPlugin.INSTANCE,
+ // QueryEditPlugin.INSTANCE,
UMLEditPlugin.INSTANCE,
});
}
diff --git a/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration/META-INF/MANIFEST.MF b/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration/META-INF/MANIFEST.MF
index dc1292f2cfa..48330dece96 100644
--- a/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration/META-INF/MANIFEST.MF
+++ b/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration/META-INF/MANIFEST.MF
@@ -6,7 +6,6 @@ Export-Package: org.eclipse.papyrus.infra.queries.core.configuration,
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.emf.ecore;visibility:=reexport,
org.eclipse.emf.ecore.xmi;visibility:=reexport,
- org.eclipse.emf.facet.infra.query,
org.eclipse.uml2.uml
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
diff --git a/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration/src-gen/org/eclipse/papyrus/infra/queries/core/configuration/impl/ConfigurationPackageImpl.java b/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration/src-gen/org/eclipse/papyrus/infra/queries/core/configuration/impl/ConfigurationPackageImpl.java
index 66153d6db8a..93081f21411 100644
--- a/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration/src-gen/org/eclipse/papyrus/infra/queries/core/configuration/impl/ConfigurationPackageImpl.java
+++ b/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core.configuration/src-gen/org/eclipse/papyrus/infra/queries/core/configuration/impl/ConfigurationPackageImpl.java
@@ -11,7 +11,6 @@ import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.impl.EPackageImpl;
-import org.eclipse.emf.facet.infra.query.QueryPackage;
import org.eclipse.papyrus.infra.queries.core.configuration.ConfigurationFactory;
import org.eclipse.papyrus.infra.queries.core.configuration.ConfigurationPackage;
import org.eclipse.papyrus.infra.queries.core.configuration.ConstantParameterValue;
@@ -120,7 +119,7 @@ public class ConfigurationPackageImpl extends EPackageImpl implements Configurat
isInited = true;
// Initialize simple dependencies
- QueryPackage.eINSTANCE.eClass();
+ //QueryPackage.eINSTANCE.eClass();
UMLPackage.eINSTANCE.eClass();
// Obtain or create and register interdependencies
@@ -332,7 +331,7 @@ public class ConfigurationPackageImpl extends EPackageImpl implements Configurat
setNsURI(eNS_URI);
// Obtain other dependent packages
- QueryPackage theQueryPackage = (QueryPackage)EPackage.Registry.INSTANCE.getEPackage(QueryPackage.eNS_URI);
+ //QueryPackage theQueryPackage = (QueryPackage)EPackage.Registry.INSTANCE.getEPackage(QueryPackage.eNS_URI);
UMLPackage theUMLPackage = (UMLPackage)EPackage.Registry.INSTANCE.getEPackage(UMLPackage.eNS_URI);
// Create type parameters
@@ -350,11 +349,11 @@ public class ConfigurationPackageImpl extends EPackageImpl implements Configurat
initEAttribute(getQueryConfiguration_Name(), ecorePackage.getEString(), "name", null, 1, 1, QueryConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(modiscoQueryConfigurationEClass, ModiscoQueryConfiguration.class, "ModiscoQueryConfiguration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getModiscoQueryConfiguration_Query(), theQueryPackage.getModelQuery(), null, "query", null, 1, 1, ModiscoQueryConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ //initEReference(getModiscoQueryConfiguration_Query(), theQueryPackage.getModelQuery(), null, "query", null, 1, 1, ModiscoQueryConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getModiscoQueryConfiguration_ParameterValues(), this.getParameterValue(), null, "parameterValues", null, 0, -1, ModiscoQueryConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(parameterValueEClass, ParameterValue.class, "ParameterValue", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getParameterValue_Parameter(), theQueryPackage.getModelQueryParameter(), null, "parameter", null, 1, 1, ParameterValue.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ //initEReference(getParameterValue_Parameter(), theQueryPackage.getModelQueryParameter(), null, "parameter", null, 1, 1, ParameterValue.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(queryExecutionValueEClass, QueryExecutionValue.class, "QueryExecutionValue", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getQueryExecutionValue_Configuration(), this.getQueryConfiguration(), null, "configuration", null, 1, 1, QueryExecutionValue.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
diff --git a/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core/META-INF/MANIFEST.MF b/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core/META-INF/MANIFEST.MF
index b37366c3d3d..49ac0760eea 100644
--- a/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core/META-INF/MANIFEST.MF
+++ b/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core/META-INF/MANIFEST.MF
@@ -1,9 +1,6 @@
Manifest-Version: 1.0
Require-Bundle: org.eclipse.ui;bundle-version="3.7.0",
org.eclipse.core.runtime;bundle-version="3.7.0",
- org.eclipse.emf.facet.infra.query;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.query.core;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.common.core;bundle-version="0.1.0",
org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
org.eclipse.core.databinding;bundle-version="1.3.100",
org.eclipse.papyrus.infra.queries.core.configuration;bundle-version="1.0.0",
diff --git a/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core/src/org/eclipse/papyrus/infra/queries/core/converter/ConverterRegistry.java b/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core/src/org/eclipse/papyrus/infra/queries/core/converter/ConverterRegistry.java
index 5d2bef8bc11..fed4d51e1e6 100644
--- a/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core/src/org/eclipse/papyrus/infra/queries/core/converter/ConverterRegistry.java
+++ b/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core/src/org/eclipse/papyrus/infra/queries/core/converter/ConverterRegistry.java
@@ -133,17 +133,17 @@ public class ConverterRegistry {
throw new RuntimeException("List conversion not implemented for this type of configuration. " + queryConfiguration.eClass().getName());
}
Object executionResult = null;
- try {
- executionResult = QueryUtil.evaluateBooleanQuery(context, queryConfiguration);
- } catch (Exception e) {
- Activator.log.error(e);
- }
- int upperBound = ((ModiscoQueryConfiguration)queryConfiguration).getQuery().getUpperBound();
- if(upperBound == 1) {
- return Arrays.asList(executionResult);
- } else {
+// try {
+// executionResult = QueryUtil.evaluateBooleanQuery(context, queryConfiguration);
+// } catch (Exception e) {
+// Activator.log.error(e);
+// }
+// int upperBound = ((ModiscoQueryConfiguration)queryConfiguration).getQuery().getUpperBound();
+// if(upperBound == 1) {
+// return Arrays.asList(executionResult);
+// } else {
return (List<?>)executionResult;
- }
+// }
};
/**
diff --git a/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core/src/org/eclipse/papyrus/infra/queries/core/modisco/QueryUtil.java b/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core/src/org/eclipse/papyrus/infra/queries/core/modisco/QueryUtil.java
index 4ff17948d52..f87a4810a9a 100644
--- a/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core/src/org/eclipse/papyrus/infra/queries/core/modisco/QueryUtil.java
+++ b/plugins/infra/queries/org.eclipse.papyrus.infra.queries.core/src/org/eclipse/papyrus/infra/queries/core/modisco/QueryUtil.java
@@ -11,33 +11,6 @@
*****************************************************************************/
package org.eclipse.papyrus.infra.queries.core.modisco;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.MultiStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.emf.ecore.EClassifier;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.facet.infra.query.ModelQuery;
-import org.eclipse.emf.facet.infra.query.ModelQueryParameter;
-import org.eclipse.emf.facet.infra.query.ModelQuerySet;
-import org.eclipse.emf.facet.infra.query.core.AbstractModelQuery;
-import org.eclipse.emf.facet.infra.query.core.ModelQuerySetCatalog;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
-import org.eclipse.emf.facet.infra.query.runtime.ModelQueryParameterValue;
-import org.eclipse.emf.facet.infra.query.runtime.ModelQueryResult;
-import org.eclipse.papyrus.infra.queries.core.Activator;
-import org.eclipse.papyrus.infra.queries.core.configuration.ConstantParameterValue;
-import org.eclipse.papyrus.infra.queries.core.configuration.ListParameterValue;
-import org.eclipse.papyrus.infra.queries.core.configuration.ModiscoQueryConfiguration;
-import org.eclipse.papyrus.infra.queries.core.configuration.ParameterValue;
-import org.eclipse.papyrus.infra.queries.core.configuration.QueryConfiguration;
-import org.eclipse.papyrus.infra.queries.core.configuration.QueryExecutionValue;
-import org.eclipse.papyrus.infra.queries.core.configuration.util.ConfigurationSwitch;
-import org.eclipse.papyrus.infra.queries.core.converter.ConverterNotfoundException;
-import org.eclipse.papyrus.infra.queries.core.converter.ConverterRegistry;
/**
* Utility class for modisco queries
@@ -54,394 +27,394 @@ public class QueryUtil {
protected QueryUtil() {
}
- /**
- * Evaluates a modisco query, that should only return a boolean value.
- *
- * @param query
- * the query to check and evaluate
- * @param context
- * the eobject on which the query is evaluated
- * @param parameters
- * a map containing the name of parameters and their values
- * @return <code>true</code> if the context fills the condition given by the query
- * @throws Exception
- * exception thrown when the query could not be correctly evaluated
- */
- public static final boolean evaluateBooleanQuery(final ModelQuery query, EObject context, Map<String, Object> parameters) throws Exception {
- // construct the structure parameterValues if the query is valid
- IStatus queryStatus = isValidQuery(query);
- if(!queryStatus.isOK()) {
- throw new Exception(queryStatus.getMessage());
- }
-
- // if no parameters, evaluate
- List<ModelQueryParameter> queryParameters = query.getParameters();
- List<ModelQueryParameterValue> parameterValues = new ArrayList<ModelQueryParameterValue>();
- if(queryParameters == null || queryParameters.isEmpty()) {
- return evaluateBooleanQuery(query, context, parameterValues);
- }
-
- // check the parameters given and the set of required parameters
- IStatus parameterCheck = isValidParameterSet(query, parameters);
- if(IStatus.CANCEL == parameterCheck.getSeverity() || IStatus.ERROR == parameterCheck.getSeverity()) {
- Activator.log.error(parameterCheck.getMessage(), null);
- throw new Exception(parameterCheck.getMessage());
- } else if(IStatus.WARNING == parameterCheck.getSeverity()) {
- Activator.log.warn(parameterCheck.getMessage());
- } else if(IStatus.INFO == parameterCheck.getSeverity()) {
- Activator.log.info(parameterCheck.getMessage());
- }
-
- // construct parameter structure for Modisco solver
- for(ModelQueryParameter parameter : queryParameters) {
- String parametername = parameter.getName();
- Object value = parameters.get(parametername);
- ModelQueryParameterValue parameterValue = ParameterValueList.createParameterValue(value, parameter);
-
- // should try to bind elements here..
- parameterValues.add(parameterValue);
- }
-
- // execute the query
- return evaluateBooleanQuery(query, context, parameterValues);
- }
-
- /**
- * Evaluates a query.
- *
- * @param context
- * the eobject on which the query is evaluated
- * @param queryConfiguration
- * the query configuration, containing all values for the parameters of the query
- * @return the result of the execution of the query
- * @throws Exception
- * exception thrown when the query could not be correctly evaluated
- */
- public static final Object evaluateQuery(EObject context, QueryConfiguration queryConfiguration) throws Exception {
- if(queryConfiguration instanceof ModiscoQueryConfiguration) {
- return evaluateQuery(context, (ModiscoQueryConfiguration)queryConfiguration);
- }
- throw new Exception("Unhandled kind of query");
- }
-
- /**
- * Evaluates a query, that should only return a boolean value.
- *
- * @param context
- * the eobject on which the query is evaluated
- * @param queryConfiguration
- * the query configuration, containing all values for the parameters of the query
- * @return <code>true</code> if the context fills the condition given by the query
- * @throws Exception
- * exception thrown when the query could not be correctly evaluated
- */
- public static final boolean evaluateBooleanQuery(EObject context, QueryConfiguration queryConfiguration) throws Exception {
- if(queryConfiguration instanceof ModiscoQueryConfiguration) {
- return evaluateBooleanQuery(context, (ModiscoQueryConfiguration)queryConfiguration);
- }
- throw new Exception("Unhandled kind of query");
- }
-
- /**
- * Evaluates a modisco query, that should only return a boolean value.
- *
- * @param context
- * the eobject on which the query is evaluated
- * @param queryConfiguration
- * the query configuration, containing all values for the parameters of the query
- * @return <code>true</code> if the context fills the condition given by the query
- * @throws Exception
- * exception thrown when the query could not be correctly evaluated
- */
- public static final boolean evaluateBooleanQuery(EObject context, ModiscoQueryConfiguration queryConfiguration) throws Exception {
- Object result = evaluateQuery(context, queryConfiguration);
- if(result instanceof Boolean) {
- return (Boolean)result;
- }
- Activator.log.error("Not a boolean result: " + result, null);
- return defaultReturnValue;
- }
-
- /**
- * Evaluates a modisco query, that should only return a boolean value.
- *
- * @param context
- * the eobject on which the query is evaluated
- * @param queryConfiguration
- * the query configuration, containing all values for the parameters of the query
- * @return <code>true</code> if the context fills the condition given by the query
- * @throws Exception
- * exception thrown when the query could not be correctly evaluated
- */
- public static final Object evaluateQuery(EObject context, ModiscoQueryConfiguration queryConfiguration) throws Exception {
- // retrieve query (problem of bundle loader if not used correctly)
- ModelQuery query = queryConfiguration.getQuery();
- String modelQuerySetName = query.getModelQuerySet().getName();
- String modelQueryName = query.getName();
-
- ModelQuery finalModelQuery = retrieveModelQuery(modelQueryName, modelQuerySetName);
-
- // construct the structure parameterValues if the query is valid
- IStatus queryValidation = isValidQuery(finalModelQuery);
- if(!queryValidation.isOK()) {
- throw new Exception(queryValidation.getMessage(), queryValidation.getException());
- }
-
- // create the set of parameter values
- List<ModelQueryParameterValue> parameterValues = createParameterValuesListFromConfiguration(context, queryConfiguration);
-
- // execute the query
- return evaluateQuery(finalModelQuery, context, parameterValues);
- }
-
- /**
- * Creates the {@link ModelQueryParameterValue} list from a configuration
- *
- * @param queryConfiguration
- * the configuration to check
- * @return the list of parameter values
- */
- private static List<ModelQueryParameterValue> createParameterValuesListFromConfiguration(EObject context, ModiscoQueryConfiguration queryConfiguration) {
- List<ModelQueryParameterValue> parameterValues = new ArrayList<ModelQueryParameterValue>();
-
- List<ModelQueryParameter> parameters = queryConfiguration.getQuery().getParameters();
- for(ModelQueryParameter parameter : parameters) {
- Object value = retrieveParameterValue(context, parameter, queryConfiguration);
- // resolve the value for the parameters
- ModelQueryParameterValue parameterValue = ParameterValueList.createParameterValue(value, parameter);
- parameterValues.add(parameterValue);
- }
- return parameterValues;
- }
-
- /**
- * Retrieves the value of a parameter.
- *
- * @param parameter
- * the parameter for which the value is computed
- * @return the parameter value associated to the parameter
- */
- private static Object retrieveParameterValue(final EObject context, final ModelQueryParameter parameter, ModiscoQueryConfiguration configuration) {
- for(final ParameterValue parameterValue : configuration.getParameterValues()) {
- if(parameter.equals(parameterValue.getParameter())) {
- // This is the right parameter. Compute the value, depending on the type of the parameters
- return new ConfigurationSwitch<Object>() {
-
- /**
- * {@inheritDoc}
- */
- @Override
- public Object caseListParameterValue(ListParameterValue listParameterValue) {
- ArrayList<Object> values = new ArrayList<Object>();
- Class<?> parameterType = parameter.getType().getInstanceClass();
- for(ParameterValue parameterValue : listParameterValue.getValues()) {
- values.addAll(ConverterRegistry.getSingleton().convertToList(context, parameterType, parameterValue));
- }
- return values;
- };
-
- /**
- * {@inheritDoc}
- */
- @Override
- public Object caseConstantParameterValue(ConstantParameterValue constantParameterValue) {
- Class<?> parameterType = parameter.getType().getInstanceClass();
- try {
- Object convertedValue = ConverterRegistry.getSingleton().convert(parameterType, constantParameterValue.getValueInstance());
- return convertedValue;
- } catch (ConverterNotfoundException e) {
- Activator.log.error(e);
- }
- return null;
- };
-
-
- /**
- * {@inheritDoc}
- */
- @Override
- public Object caseQueryExecutionValue(QueryExecutionValue queryExecutionValue) {
- // retrieves the associated configuration and launch it.
- QueryConfiguration configuration = queryExecutionValue.getConfiguration();
- try {
- return QueryUtil.evaluateQuery(context, configuration);
- } catch (Exception e) {
- Activator.log.error(e);
- }
- return null;
-
- };
- }.doSwitch(parameterValue);
- }
- }
- return null;
-
- }
-
- /**
- * Evaluates a modisco query.
- *
- * @param query
- * the query to evaluate
- * @param context
- * the context element against which the query is evaluated
- * @param parameterValues
- * the list of parameters for the query
- * @return the result of the query evaluation
- * @throws Exception
- * exception thrown in case of problem during evaluation of the query
- */
- public static final Object evaluateQuery(final ModelQuery query, EObject context, List<ModelQueryParameterValue> parameterValues) throws Exception {
- // checks that the query is valid
- if(isValidQuery(query).isOK()) {
- AbstractModelQuery myModelQuery;
- myModelQuery = ModelQuerySetCatalog.getSingleton().getModelQueryImpl(query);
- //the model query set evaluation
- ModelQueryResult result = myModelQuery.evaluate(context, parameterValues);
- if(result.getException() != null) {
- throw new Exception();
- }
- return result.getValue();
- }
- throw new Exception("Query was not a valid query: " + query, null);
- }
-
- /**
- * Evaluates a modisco query, that should only return a boolean value.
- *
- * @param query
- * the query to check and evaluate
- * @param context
- * the eobject on which the query is evaluated
- * @param parameterValues
- * the list of parameter values for the evaluation
- * @return <code>true</code> if the context fills the condition given by the query
- * @throws Exception
- * exception thrown when the query can not be correctly evaluated
- */
- public static final boolean evaluateBooleanQuery(final ModelQuery query, EObject context, List<ModelQueryParameterValue> parameterValues) throws Exception {
- Object result = evaluateQuery(query, context, parameterValues);
- if(result instanceof Boolean) {
- // try to cast into a boolean
- return (Boolean)result;
- }
- Activator.log.error("Query did not return a boolean: " + result, null);
- return defaultReturnValue;
- }
-
- /**
- * Retrieves a model query, given its name and its query set.
- *
- * @param queryName
- * the name of the query
- * @param querySetName
- * the name of the query set
- * @return the found model query or <code>null</code>.
- * @throws ModelQueryNotFoundException
- * exception thrown when the the query set was found but not the model query was not found.
- * @throws ModelQuerySetNotFoundException
- * exception thrown when the the query set was not found.
- */
- public static final ModelQuery retrieveModelQuery(String queryName, String querySetName) throws ModelQueryNotFoundException, ModelQuerySetNotFoundException {
- ModelQuerySet querySet = ModelQuerySetCatalog.getSingleton().getModelQuerySet(querySetName);
- if(querySet == null) {
- throw new ModelQuerySetNotFoundException(querySetName);
- }
-
- ModelQuery query = querySet.getQuery(queryName);
- if(query == null) {
- throw new ModelQueryNotFoundException(queryName);
- }
-
- return query;
- }
-
- /**
- * Checks if the query is valid, i.e. not <code>null</code>, returning a boolean value, etc.
- *
- * @param query
- * the query to test
- * @return <code>true</code> if the query is valid
- */
- public static final IStatus isValidQuery(ModelQuery query) {
- if(query == null) {
- return new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Query should not be null.");
- }
- return Status.OK_STATUS;
- }
-
- /**
- * Checks if the query is valid, i.e. not <code>null</code>, returning a boolean value, etc.
- * @param query the query to test
- * @return <code>true</code> if the query is valid
- */
- public static final IStatus isValidBooleanQuery(ModelQuery query) {
- IStatus status = isValidQuery(query);
- if(status.isOK()) {
- // check the instance type is compatible with boolean
- EClassifier returnType = query.getReturnType();
- if(returnType == null) {
- return new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Query " + query.getName() + " does not have a return value, whereas it should have a boolean return status");
- } else {
- Class<?> instanceClass = returnType.getInstanceClass();
- if(!boolean.class.isAssignableFrom(instanceClass)) {
- return new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Query " + query.getName() + " should return a value that can be cast into Boolean value. Currently: " + returnType.getInstanceClass());
- }
- // check return size of the query... should be 0..1 or 1..1 (even 0..1 could be difficult to handle, but we let this possible)
- if(query.getUpperBound() > 1 || query.getUpperBound() < 0) {
- return new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Query " + query.getName() + " should return only one value. Currently: " + query.getUpperBound());
- }
- }
- }
- return status;
- }
-
- /**
- * Check if the set of given parameters is compatible with the query
- * @param query the query against which the set of parameters is tested
- * @param parameters the map of parameter names and their value
- * @return the status corresponding to the validation
- */
- public static final IStatus isValidParameterSet(ModelQuery query, Map<String, Object> parameters) {
- // check size, which should be equal.
- int querySize = query.getParameters().size();
- int parameterSize = parameters.keySet().size();
-
- if(querySize != parameterSize) {
- return new Status(IStatus.ERROR, Activator.PLUGIN_ID, "The given parameters set do not have the same size (" + parameterSize + ") than the query parameter set (" + querySize + ")");
- }
-
- List<IStatus> status = new ArrayList<IStatus>();
-
- // size is ok, checking names, type, multiplicity
- for(String parameterName : parameters.keySet()) {
- // retrieve the equivalent parameter in the query
- ModelQueryParameter queryParameter = retrieveParameterByName(query, parameterName);
- if(queryParameter == null) {
- status.add(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Impossible to find the parameter " + parameterName + " in the query parameters list for query: " + query.getName()));
- }
- }
- if(status.size() > 0) {
- return new MultiStatus(Activator.PLUGIN_ID, IStatus.OK, status.toArray(new IStatus[status.size()]), "", null);
- }
- return Status.OK_STATUS;
- }
-
- /**
- * Retrieves a parameter, given the query to look into and the name of the parameter
- *
- * @param query
- * the query where the parameter is stored
- * @param parameterName
- * the name of the parameter
- * @return the parameter
- */
- private final static ModelQueryParameter retrieveParameterByName(ModelQuery query, String parameterName) {
- for(ModelQueryParameter queryParameter : query.getParameters()) {
- if(parameterName.equals(queryParameter.getName())) {
- return queryParameter;
- }
- }
- return null;
- }
+// /**
+// * Evaluates a modisco query, that should only return a boolean value.
+// *
+// * @param query
+// * the query to check and evaluate
+// * @param context
+// * the eobject on which the query is evaluated
+// * @param parameters
+// * a map containing the name of parameters and their values
+// * @return <code>true</code> if the context fills the condition given by the query
+// * @throws Exception
+// * exception thrown when the query could not be correctly evaluated
+// */
+// public static final boolean evaluateBooleanQuery(final ModelQuery query, EObject context, Map<String, Object> parameters) throws Exception {
+// // construct the structure parameterValues if the query is valid
+// IStatus queryStatus = isValidQuery(query);
+// if(!queryStatus.isOK()) {
+// throw new Exception(queryStatus.getMessage());
+// }
+//
+// // if no parameters, evaluate
+// List<ModelQueryParameter> queryParameters = query.getParameters();
+// List<ModelQueryParameterValue> parameterValues = new ArrayList<ModelQueryParameterValue>();
+// if(queryParameters == null || queryParameters.isEmpty()) {
+// return evaluateBooleanQuery(query, context, parameterValues);
+// }
+//
+// // check the parameters given and the set of required parameters
+// IStatus parameterCheck = isValidParameterSet(query, parameters);
+// if(IStatus.CANCEL == parameterCheck.getSeverity() || IStatus.ERROR == parameterCheck.getSeverity()) {
+// Activator.log.error(parameterCheck.getMessage(), null);
+// throw new Exception(parameterCheck.getMessage());
+// } else if(IStatus.WARNING == parameterCheck.getSeverity()) {
+// Activator.log.warn(parameterCheck.getMessage());
+// } else if(IStatus.INFO == parameterCheck.getSeverity()) {
+// Activator.log.info(parameterCheck.getMessage());
+// }
+//
+// // construct parameter structure for Modisco solver
+// for(ModelQueryParameter parameter : queryParameters) {
+// String parametername = parameter.getName();
+// Object value = parameters.get(parametername);
+// ModelQueryParameterValue parameterValue = ParameterValueList.createParameterValue(value, parameter);
+//
+// // should try to bind elements here..
+// parameterValues.add(parameterValue);
+// }
+//
+// // execute the query
+// return evaluateBooleanQuery(query, context, parameterValues);
+// }
+//
+// /**
+// * Evaluates a query.
+// *
+// * @param context
+// * the eobject on which the query is evaluated
+// * @param queryConfiguration
+// * the query configuration, containing all values for the parameters of the query
+// * @return the result of the execution of the query
+// * @throws Exception
+// * exception thrown when the query could not be correctly evaluated
+// */
+// public static final Object evaluateQuery(EObject context, QueryConfiguration queryConfiguration) throws Exception {
+// if(queryConfiguration instanceof ModiscoQueryConfiguration) {
+// return evaluateQuery(context, (ModiscoQueryConfiguration)queryConfiguration);
+// }
+// throw new Exception("Unhandled kind of query");
+// }
+//
+// /**
+// * Evaluates a query, that should only return a boolean value.
+// *
+// * @param context
+// * the eobject on which the query is evaluated
+// * @param queryConfiguration
+// * the query configuration, containing all values for the parameters of the query
+// * @return <code>true</code> if the context fills the condition given by the query
+// * @throws Exception
+// * exception thrown when the query could not be correctly evaluated
+// */
+// public static final boolean evaluateBooleanQuery(EObject context, QueryConfiguration queryConfiguration) throws Exception {
+// if(queryConfiguration instanceof ModiscoQueryConfiguration) {
+// return evaluateBooleanQuery(context, (ModiscoQueryConfiguration)queryConfiguration);
+// }
+// throw new Exception("Unhandled kind of query");
+// }
+//
+// /**
+// * Evaluates a modisco query, that should only return a boolean value.
+// *
+// * @param context
+// * the eobject on which the query is evaluated
+// * @param queryConfiguration
+// * the query configuration, containing all values for the parameters of the query
+// * @return <code>true</code> if the context fills the condition given by the query
+// * @throws Exception
+// * exception thrown when the query could not be correctly evaluated
+// */
+// public static final boolean evaluateBooleanQuery(EObject context, ModiscoQueryConfiguration queryConfiguration) throws Exception {
+// Object result = evaluateQuery(context, queryConfiguration);
+// if(result instanceof Boolean) {
+// return (Boolean)result;
+// }
+// Activator.log.error("Not a boolean result: " + result, null);
+// return defaultReturnValue;
+// }
+//
+// /**
+// * Evaluates a modisco query, that should only return a boolean value.
+// *
+// * @param context
+// * the eobject on which the query is evaluated
+// * @param queryConfiguration
+// * the query configuration, containing all values for the parameters of the query
+// * @return <code>true</code> if the context fills the condition given by the query
+// * @throws Exception
+// * exception thrown when the query could not be correctly evaluated
+// */
+// public static final Object evaluateQuery(EObject context, ModiscoQueryConfiguration queryConfiguration) throws Exception {
+// // retrieve query (problem of bundle loader if not used correctly)
+// ModelQuery query = queryConfiguration.getQuery();
+// String modelQuerySetName = query.getModelQuerySet().getName();
+// String modelQueryName = query.getName();
+//
+// ModelQuery finalModelQuery = retrieveModelQuery(modelQueryName, modelQuerySetName);
+//
+// // construct the structure parameterValues if the query is valid
+// IStatus queryValidation = isValidQuery(finalModelQuery);
+// if(!queryValidation.isOK()) {
+// throw new Exception(queryValidation.getMessage(), queryValidation.getException());
+// }
+//
+// // create the set of parameter values
+// List<ModelQueryParameterValue> parameterValues = createParameterValuesListFromConfiguration(context, queryConfiguration);
+//
+// // execute the query
+// return evaluateQuery(finalModelQuery, context, parameterValues);
+// }
+//
+// /**
+// * Creates the {@link ModelQueryParameterValue} list from a configuration
+// *
+// * @param queryConfiguration
+// * the configuration to check
+// * @return the list of parameter values
+// */
+// private static List<ModelQueryParameterValue> createParameterValuesListFromConfiguration(EObject context, ModiscoQueryConfiguration queryConfiguration) {
+// List<ModelQueryParameterValue> parameterValues = new ArrayList<ModelQueryParameterValue>();
+//
+// List<ModelQueryParameter> parameters = queryConfiguration.getQuery().getParameters();
+// for(ModelQueryParameter parameter : parameters) {
+// Object value = retrieveParameterValue(context, parameter, queryConfiguration);
+// // resolve the value for the parameters
+// ModelQueryParameterValue parameterValue = ParameterValueList.createParameterValue(value, parameter);
+// parameterValues.add(parameterValue);
+// }
+// return parameterValues;
+// }
+//
+// /**
+// * Retrieves the value of a parameter.
+// *
+// * @param parameter
+// * the parameter for which the value is computed
+// * @return the parameter value associated to the parameter
+// */
+// private static Object retrieveParameterValue(final EObject context, final ModelQueryParameter parameter, ModiscoQueryConfiguration configuration) {
+// for(final ParameterValue parameterValue : configuration.getParameterValues()) {
+// if(parameter.equals(parameterValue.getParameter())) {
+// // This is the right parameter. Compute the value, depending on the type of the parameters
+// return new ConfigurationSwitch<Object>() {
+//
+// /**
+// * {@inheritDoc}
+// */
+// @Override
+// public Object caseListParameterValue(ListParameterValue listParameterValue) {
+// ArrayList<Object> values = new ArrayList<Object>();
+// Class<?> parameterType = parameter.getType().getInstanceClass();
+// for(ParameterValue parameterValue : listParameterValue.getValues()) {
+// values.addAll(ConverterRegistry.getSingleton().convertToList(context, parameterType, parameterValue));
+// }
+// return values;
+// };
+//
+// /**
+// * {@inheritDoc}
+// */
+// @Override
+// public Object caseConstantParameterValue(ConstantParameterValue constantParameterValue) {
+// Class<?> parameterType = parameter.getType().getInstanceClass();
+// try {
+// Object convertedValue = ConverterRegistry.getSingleton().convert(parameterType, constantParameterValue.getValueInstance());
+// return convertedValue;
+// } catch (ConverterNotfoundException e) {
+// Activator.log.error(e);
+// }
+// return null;
+// };
+//
+//
+// /**
+// * {@inheritDoc}
+// */
+// @Override
+// public Object caseQueryExecutionValue(QueryExecutionValue queryExecutionValue) {
+// // retrieves the associated configuration and launch it.
+// QueryConfiguration configuration = queryExecutionValue.getConfiguration();
+// try {
+// return QueryUtil.evaluateQuery(context, configuration);
+// } catch (Exception e) {
+// Activator.log.error(e);
+// }
+// return null;
+//
+// };
+// }.doSwitch(parameterValue);
+// }
+// }
+// return null;
+//
+// }
+//
+// /**
+// * Evaluates a modisco query.
+// *
+// * @param query
+// * the query to evaluate
+// * @param context
+// * the context element against which the query is evaluated
+// * @param parameterValues
+// * the list of parameters for the query
+// * @return the result of the query evaluation
+// * @throws Exception
+// * exception thrown in case of problem during evaluation of the query
+// */
+// public static final Object evaluateQuery(final ModelQuery query, EObject context, List<ModelQueryParameterValue> parameterValues) throws Exception {
+// // checks that the query is valid
+// if(isValidQuery(query).isOK()) {
+// AbstractModelQuery myModelQuery;
+// myModelQuery = ModelQuerySetCatalog.getSingleton().getModelQueryImpl(query);
+// //the model query set evaluation
+// ModelQueryResult result = myModelQuery.evaluate(context, parameterValues);
+// if(result.getException() != null) {
+// throw new Exception();
+// }
+// return result.getValue();
+// }
+// throw new Exception("Query was not a valid query: " + query, null);
+// }
+//
+// /**
+// * Evaluates a modisco query, that should only return a boolean value.
+// *
+// * @param query
+// * the query to check and evaluate
+// * @param context
+// * the eobject on which the query is evaluated
+// * @param parameterValues
+// * the list of parameter values for the evaluation
+// * @return <code>true</code> if the context fills the condition given by the query
+// * @throws Exception
+// * exception thrown when the query can not be correctly evaluated
+// */
+// public static final boolean evaluateBooleanQuery(final ModelQuery query, EObject context, List<ModelQueryParameterValue> parameterValues) throws Exception {
+// Object result = evaluateQuery(query, context, parameterValues);
+// if(result instanceof Boolean) {
+// // try to cast into a boolean
+// return (Boolean)result;
+// }
+// Activator.log.error("Query did not return a boolean: " + result, null);
+// return defaultReturnValue;
+// }
+//
+// /**
+// * Retrieves a model query, given its name and its query set.
+// *
+// * @param queryName
+// * the name of the query
+// * @param querySetName
+// * the name of the query set
+// * @return the found model query or <code>null</code>.
+// * @throws ModelQueryNotFoundException
+// * exception thrown when the the query set was found but not the model query was not found.
+// * @throws ModelQuerySetNotFoundException
+// * exception thrown when the the query set was not found.
+// */
+// public static final ModelQuery retrieveModelQuery(String queryName, String querySetName) throws ModelQueryNotFoundException, ModelQuerySetNotFoundException {
+// ModelQuerySet querySet = ModelQuerySetCatalog.getSingleton().getModelQuerySet(querySetName);
+// if(querySet == null) {
+// throw new ModelQuerySetNotFoundException(querySetName);
+// }
+//
+// ModelQuery query = querySet.getQuery(queryName);
+// if(query == null) {
+// throw new ModelQueryNotFoundException(queryName);
+// }
+//
+// return query;
+// }
+//
+// /**
+// * Checks if the query is valid, i.e. not <code>null</code>, returning a boolean value, etc.
+// *
+// * @param query
+// * the query to test
+// * @return <code>true</code> if the query is valid
+// */
+// public static final IStatus isValidQuery(ModelQuery query) {
+// if(query == null) {
+// return new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Query should not be null.");
+// }
+// return Status.OK_STATUS;
+// }
+//
+// /**
+// * Checks if the query is valid, i.e. not <code>null</code>, returning a boolean value, etc.
+// * @param query the query to test
+// * @return <code>true</code> if the query is valid
+// */
+// public static final IStatus isValidBooleanQuery(ModelQuery query) {
+// IStatus status = isValidQuery(query);
+// if(status.isOK()) {
+// // check the instance type is compatible with boolean
+// EClassifier returnType = query.getReturnType();
+// if(returnType == null) {
+// return new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Query " + query.getName() + " does not have a return value, whereas it should have a boolean return status");
+// } else {
+// Class<?> instanceClass = returnType.getInstanceClass();
+// if(!boolean.class.isAssignableFrom(instanceClass)) {
+// return new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Query " + query.getName() + " should return a value that can be cast into Boolean value. Currently: " + returnType.getInstanceClass());
+// }
+// // check return size of the query... should be 0..1 or 1..1 (even 0..1 could be difficult to handle, but we let this possible)
+// if(query.getUpperBound() > 1 || query.getUpperBound() < 0) {
+// return new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Query " + query.getName() + " should return only one value. Currently: " + query.getUpperBound());
+// }
+// }
+// }
+// return status;
+// }
+//
+// /**
+// * Check if the set of given parameters is compatible with the query
+// * @param query the query against which the set of parameters is tested
+// * @param parameters the map of parameter names and their value
+// * @return the status corresponding to the validation
+// */
+// public static final IStatus isValidParameterSet(ModelQuery query, Map<String, Object> parameters) {
+// // check size, which should be equal.
+// int querySize = query.getParameters().size();
+// int parameterSize = parameters.keySet().size();
+//
+// if(querySize != parameterSize) {
+// return new Status(IStatus.ERROR, Activator.PLUGIN_ID, "The given parameters set do not have the same size (" + parameterSize + ") than the query parameter set (" + querySize + ")");
+// }
+//
+// List<IStatus> status = new ArrayList<IStatus>();
+//
+// // size is ok, checking names, type, multiplicity
+// for(String parameterName : parameters.keySet()) {
+// // retrieve the equivalent parameter in the query
+// ModelQueryParameter queryParameter = retrieveParameterByName(query, parameterName);
+// if(queryParameter == null) {
+// status.add(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Impossible to find the parameter " + parameterName + " in the query parameters list for query: " + query.getName()));
+// }
+// }
+// if(status.size() > 0) {
+// return new MultiStatus(Activator.PLUGIN_ID, IStatus.OK, status.toArray(new IStatus[status.size()]), "", null);
+// }
+// return Status.OK_STATUS;
+// }
+//
+// /**
+// * Retrieves a parameter, given the query to look into and the name of the parameter
+// *
+// * @param query
+// * the query where the parameter is stored
+// * @param parameterName
+// * the name of the parameter
+// * @return the parameter
+// */
+// private final static ModelQueryParameter retrieveParameterByName(ModelQuery query, String parameterName) {
+// for(ModelQueryParameter queryParameter : query.getParameters()) {
+// if(parameterName.equals(queryParameter.getName())) {
+// return queryParameter;
+// }
+// }
+// return null;
+// }
}
diff --git a/plugins/infra/services/org.eclipse.papyrus.infra.services.decoration/META-INF/MANIFEST.MF b/plugins/infra/services/org.eclipse.papyrus.infra.services.decoration/META-INF/MANIFEST.MF
index 4ad78236345..630381bf922 100644
--- a/plugins/infra/services/org.eclipse.papyrus.infra.services.decoration/META-INF/MANIFEST.MF
+++ b/plugins/infra/services/org.eclipse.papyrus.infra.services.decoration/META-INF/MANIFEST.MF
@@ -5,11 +5,11 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime,
org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
org.apache.commons.lang;bundle-version="2.4.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.0",
org.eclipse.emf.ecore;bundle-version="2.8.0",
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
org.eclipse.core.resources;bundle-version="3.7.0",
- org.eclipse.papyrus.infra.services.markerlistener;bundle-version="1.0.0"
+ org.eclipse.papyrus.infra.services.markerlistener;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.metamodel
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
Bundle-Version: 1.0.0.qualifier
diff --git a/plugins/infra/services/org.eclipse.papyrus.infra.services.decoration/src/org/eclipse/papyrus/infra/services/decoration/util/DecorationUtils.java b/plugins/infra/services/org.eclipse.papyrus.infra.services.decoration/src/org/eclipse/papyrus/infra/services/decoration/util/DecorationUtils.java
index cc0d33be308..bf3169f63b8 100644
--- a/plugins/infra/services/org.eclipse.papyrus.infra.services.decoration/src/org/eclipse/papyrus/infra/services/decoration/util/DecorationUtils.java
+++ b/plugins/infra/services/org.eclipse.papyrus.infra.services.decoration/src/org/eclipse/papyrus/infra/services/decoration/util/DecorationUtils.java
@@ -21,7 +21,7 @@ import org.eclipse.core.runtime.Platform;
import org.eclipse.emf.common.util.BasicEList;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.facet.infra.browser.uicore.internal.model.LinkItem;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement;
import org.eclipse.papyrus.infra.services.decoration.DecorationService;
import org.eclipse.papyrus.infra.services.decoration.IDecorationSpecificFunctions;
import org.eclipse.papyrus.infra.services.decoration.IDecorationSpecificFunctions.MarkChildren;
@@ -61,9 +61,9 @@ public class DecorationUtils {
if(eObject != null) {
eObjects.add(eObject);
}
- else if(element instanceof LinkItem) {
+ else if(element instanceof EReferenceTreeElement) {
// for bug 391676
- for(Object child : ((LinkItem)element).getChildrenElements()) {
+ for(Object child : ((EReferenceTreeElement)element).getReferedEObjectTE()) {
if(child instanceof EObject) {
eObjects.add((EObject)child);
}
diff --git a/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/META-INF/MANIFEST.MF b/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/META-INF/MANIFEST.MF
index 1466cc5fd0e..35e5d14e224 100644
--- a/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/META-INF/MANIFEST.MF
+++ b/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/META-INF/MANIFEST.MF
@@ -7,14 +7,12 @@ Require-Bundle: org.eclipse.ui,
org.apache.commons.lang;bundle-version="2.3.0",
org.eclipse.emf.edit.ui;bundle-version="2.6.0",
org.eclipse.gmf.runtime.emf.commands.core;bundle-version="1.0.100",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.1.0",
org.eclipse.papyrus.infra.services.decoration;bundle-version="1.0.0",
org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="1.0.0",
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.facet;bundle-version="0.3.0",
org.eclipse.papyrus.infra.services.markerlistener;bundle-version="1.0.0",
org.eclipse.uml2.uml;bundle-version="4.1.0"
Export-Package: org.eclipse.papyrus.infra.services.validation,
diff --git a/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/IPapyrusDiagnostician.java b/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/IPapyrusDiagnostician.java
index a9dda91fb94..8b0f4a6d2be 100644
--- a/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/IPapyrusDiagnostician.java
+++ b/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/IPapyrusDiagnostician.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.services.validation;
import java.util.Map;
diff --git a/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/ValidationTool.java b/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/ValidationTool.java
index 663b18ac062..833162524db 100644
--- a/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/ValidationTool.java
+++ b/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/ValidationTool.java
@@ -26,7 +26,6 @@ import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.emf.common.util.Diagnostic;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.resource.Resource;
-import org.eclipse.emf.facet.infra.browser.uicore.internal.model.LinkItem;
import org.eclipse.jface.operation.IRunnableWithProgress;
import org.eclipse.papyrus.infra.services.markerlistener.IPapyrusMarker;
import org.eclipse.papyrus.infra.services.markerlistener.providers.IMarkerProvider;
@@ -89,13 +88,14 @@ public class ValidationTool {
// element has no eObject. try parent
if(getEObject() == null) {
// TODO: is it possible to access the children in another way (without internal access?)
- if(element instanceof LinkItem) {
+ //TODO: EMF-FACET update link-item
+ /**if(element instanceof LinkItem) {
List<?> items = ((LinkItem)element).getChildrenElements();
if(items.size() > 0 && items.get(0) instanceof EObject) {
// element = items[0];
setEObject((EObject)items.get(0));
}
- }
+ }**/
}
}
diff --git a/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/commands/AsyncValidateSubtreeCommand.java b/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/commands/AsyncValidateSubtreeCommand.java
index edd2646136d..98ff5ebf720 100644
--- a/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/commands/AsyncValidateSubtreeCommand.java
+++ b/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/commands/AsyncValidateSubtreeCommand.java
@@ -29,6 +29,11 @@ import org.eclipse.swt.widgets.Display;
*/
public class AsyncValidateSubtreeCommand extends ValidateSubtreeCommand {
+ /**
+ * Constructor based on selected element and diagnostician
+ * @param selectedElement the element from which on a subtree should be validated
+ * @param diagnostician the diagnostician (e.g. UMLDiagnostician)
+ */
public AsyncValidateSubtreeCommand(EObject selectedElement,
IPapyrusDiagnostician diagnostician) {
super(selectedElement, diagnostician);
diff --git a/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/commands/ValidateSubtreeCommand.java b/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/commands/ValidateSubtreeCommand.java
index 02386812e99..3a069670dfe 100644
--- a/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/commands/ValidateSubtreeCommand.java
+++ b/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/commands/ValidateSubtreeCommand.java
@@ -22,10 +22,18 @@ import org.eclipse.emf.transaction.util.TransactionUtil;
import org.eclipse.gmf.runtime.common.core.command.CommandResult;
import org.eclipse.papyrus.infra.services.validation.IPapyrusDiagnostician;
-
+/**
+ * Validate a sub-tree (in the sense of ecore containment hierarchy).
+ *
+ */
public class ValidateSubtreeCommand extends AbstractValidateCommand {
- public ValidateSubtreeCommand(EObject selectedElement,IPapyrusDiagnostician diagnostician) {
+ /**
+ * Constructor based on selected element and diagnostician
+ * @param selectedElement the element from which on a subtree should be validated
+ * @param diagnostician the diagnostician (e.g. UMLDiagnostician)
+ */
+ public ValidateSubtreeCommand(EObject selectedElement, IPapyrusDiagnostician diagnostician) {
super(Messages.ValidateSubtreeCommand_ValidateSubtree, TransactionUtil.getEditingDomain(selectedElement), selectedElement, diagnostician);
}
diff --git a/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/handler/AbstractCommandHandler.java b/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/handler/AbstractCommandHandler.java
index 1521c484fe0..61a73d76cbf 100644
--- a/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/handler/AbstractCommandHandler.java
+++ b/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/handler/AbstractCommandHandler.java
@@ -26,6 +26,7 @@ import org.eclipse.emf.ecore.EObject;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.papyrus.infra.emf.utils.BusinessModelResolver;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.ui.PlatformUI;
/**
@@ -78,7 +79,7 @@ public abstract class AbstractCommandHandler extends AbstractHandler {
// Treat non-null selected object (try to adapt and return EObject)
if(selection != null) {
if(selection instanceof IAdaptable) {
- selection = ((IAdaptable)selection).getAdapter(EObject.class);
+ selection = EMFHelper.getEObject(selection);
}
Object businessObject = BusinessModelResolver.getInstance().getBusinessModel(selection);
@@ -112,14 +113,14 @@ public abstract class AbstractCommandHandler extends AbstractHandler {
for(Object current : structuredSelection.toArray()) {
// Adapt current selection to EObject
if(current instanceof IAdaptable) {
- selectedEObjects.add((EObject)((IAdaptable)current).getAdapter(EObject.class));
+ selectedEObjects.add(EMFHelper.getEObject(current));
}
}
} else { // Not a IStructuredSelection
if(selection != null) {
// Adapt current selection to EObject
if(selection instanceof IAdaptable) {
- selectedEObjects.add((EObject)((IAdaptable)selection).getAdapter(EObject.class));
+ selectedEObjects.add(EMFHelper.getEObject(selection));
}
}
}
diff --git a/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/preferences/Initializer.java b/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/preferences/Initializer.java
index 5cc01628d1d..195887997a8 100644
--- a/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/preferences/Initializer.java
+++ b/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/preferences/Initializer.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.services.validation.preferences;
import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
diff --git a/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/preferences/PreferencePage.java b/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/preferences/PreferencePage.java
index 550dfb260bb..4646d599aa9 100644
--- a/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/preferences/PreferencePage.java
+++ b/plugins/infra/services/org.eclipse.papyrus.infra.services.validation/src/org/eclipse/papyrus/infra/services/validation/preferences/PreferencePage.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.infra.services.validation.preferences;
import org.eclipse.emf.common.notify.Notification;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/META-INF/MANIFEST.MF b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/META-INF/MANIFEST.MF
index 341591db8ee..adca22ec8af 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/META-INF/MANIFEST.MF
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/META-INF/MANIFEST.MF
@@ -30,11 +30,12 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.ui.ide;bundle-version="3.8.0",
org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
org.eclipse.uml2.uml;bundle-version="4.0.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.0",
org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="1.0.0",
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
org.eclipse.gmf.tooling.runtime;bundle-version="3.1.0",
- org.eclipse.papyrus.infra.tools;bundle-version="1.0.0"
+ org.eclipse.papyrus.infra.tools;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0"
Export-Package: org.eclipse.papyrus.sysml.diagram.blockdefinition,
org.eclipse.papyrus.sysml.diagram.blockdefinition.command,
org.eclipse.papyrus.sysml.diagram.blockdefinition.dnd.helper,
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/part/BlockDefinitionDiagramEditPart.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/part/BlockDefinitionDiagramEditPart.java
index 2ac420eba31..972350f2b0e 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/part/BlockDefinitionDiagramEditPart.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/part/BlockDefinitionDiagramEditPart.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2011-2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/factory/DiagramPaletteFactory.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/factory/DiagramPaletteFactory.java
index 7eb8b914727..9b188a1bc6b 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/factory/DiagramPaletteFactory.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/factory/DiagramPaletteFactory.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2011-2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/preferences/BlockPreferencePage.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/preferences/BlockPreferencePage.java
index df6bf1babd1..e880f01b9bf 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/preferences/BlockPreferencePage.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/preferences/BlockPreferencePage.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2011-2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/provider/CustomGraphicalTypeRegistry.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/provider/CustomGraphicalTypeRegistry.java
index a82c829a4f7..842f91e006b 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/provider/CustomGraphicalTypeRegistry.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src-gen/org/eclipse/papyrus/sysml/diagram/blockdefinition/provider/CustomGraphicalTypeRegistry.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2011-2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/BlockDefinitionDiagramCondition.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/BlockDefinitionDiagramCondition.java
index d92666a740b..ab73a3a7606 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/BlockDefinitionDiagramCondition.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/BlockDefinitionDiagramCondition.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2009 Atos Origin.
+ * Copyright (c) 2011 CEA LIST.
*
- *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Emilien Perico (Atos Origin) emilien.perico@atosorigin.com - Initial API and implementation
+ *
+ * CEA LIST - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.blockdefinition;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/CreateBlockDefinitionDiagramWithNavigationHandler.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/CreateBlockDefinitionDiagramWithNavigationHandler.java
index 45b372be084..7f0736c872a 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/CreateBlockDefinitionDiagramWithNavigationHandler.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/CreateBlockDefinitionDiagramWithNavigationHandler.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2011 Atos Origin.
+ * Copyright (c) 2011 CEA LIST.
*
- *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Mathieu Velten (Atos Origin) mathieu.velten@atosorigin.com - Initial API and implementation
+ *
+ * CEA LIST - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.blockdefinition;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/command/CustomDeleteCommand.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/command/CustomDeleteCommand.java
index c467064655e..f064719248a 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/command/CustomDeleteCommand.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/command/CustomDeleteCommand.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/dnd/helper/CustomLinkMappingHelper.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/dnd/helper/CustomLinkMappingHelper.java
index 567675882ce..a3544ab1b5b 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/dnd/helper/CustomLinkMappingHelper.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/dnd/helper/CustomLinkMappingHelper.java
@@ -1,16 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
- *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Patrick Tessier (CEA LIST) Patrick.tessier@cea.fr - Initial API and implementation
- * Emilien Perico (Atos Origin) emilien.perico@atosorigin.com -
- * refactor common behavior between diagrams, define only specific behavior
+ *
+ * CEA LIST - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.blockdefinition.dnd.helper;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/policy/PackageCreationEditPolicy.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/policy/PackageCreationEditPolicy.java
index 42cdae487f8..f5446efa8b0 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/policy/PackageCreationEditPolicy.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/policy/PackageCreationEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/policy/PackageSemanticEditPolicy.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/policy/PackageSemanticEditPolicy.java
index c66cbf7b1db..90db7109190 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/policy/PackageSemanticEditPolicy.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/policy/PackageSemanticEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/policy/ShowHideRelatedLinkEditPolicy.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/policy/ShowHideRelatedLinkEditPolicy.java
index c0ed490f10b..7fdbe23cd00 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/policy/ShowHideRelatedLinkEditPolicy.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/edit/policy/ShowHideRelatedLinkEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/handler/ManageProvidedInterfacesHandler.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/handler/ManageProvidedInterfacesHandler.java
index bd1bff4a63a..38304bdf99a 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/handler/ManageProvidedInterfacesHandler.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/handler/ManageProvidedInterfacesHandler.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
- *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ * CEA LIST - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.blockdefinition.handler;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/DeleteViewDuringPartEditHelperAdvice.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/DeleteViewDuringPartEditHelperAdvice.java
index 1a977f16629..90f1ee93447 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/DeleteViewDuringPartEditHelperAdvice.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/DeleteViewDuringPartEditHelperAdvice.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2011-2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/DeleteViewDuringReferenceEditHelperAdvice.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/DeleteViewDuringReferenceEditHelperAdvice.java
index efb101ee9f3..842c5ea6a60 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/DeleteViewDuringReferenceEditHelperAdvice.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/DeleteViewDuringReferenceEditHelperAdvice.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2011-2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/GeneralizationHelperAdvice.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/GeneralizationHelperAdvice.java
index f7e48e2b1ac..5dc825dd350 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/GeneralizationHelperAdvice.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/GeneralizationHelperAdvice.java
@@ -1,13 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
- *
+ * Copyright (c) 2011 CEA LIST.
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ * CEA LIST - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.blockdefinition.helper.advice;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/GeneralizationUtil.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/GeneralizationUtil.java
index 32ceac8e711..87d650ef335 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/GeneralizationUtil.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/helper/advice/GeneralizationUtil.java
@@ -1,13 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
- *
+ * Copyright (c) 2011 CEA LIST.
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ * CEA LIST - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.blockdefinition.helper.advice;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/part/SysMLDiagramUpdater.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/part/SysMLDiagramUpdater.java
index 790d93bc142..808b8643140 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/part/SysMLDiagramUpdater.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/part/SysMLDiagramUpdater.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/part/SysMLVisualIDRegistry.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/part/SysMLVisualIDRegistry.java
index 734855a1fca..f7d6ab6acc7 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/part/SysMLVisualIDRegistry.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/part/SysMLVisualIDRegistry.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/provider/CustomEditPolicyProvider.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/provider/CustomEditPolicyProvider.java
index 15d885e56f7..44c5971fa91 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/provider/CustomEditPolicyProvider.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/provider/CustomEditPolicyProvider.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010-2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -9,7 +9,6 @@
* Contributors:
*
* CEA LIST - Initial API and implementation
- * Arthur Daussy - arthur.daussy@atos.net - 395920: [Block Diagram Definition] All element contained by a block should be able to be linked to constraint or comment
*
*****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.blockdefinition.provider;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/ui/CreateUmlElementDialog.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/ui/CreateUmlElementDialog.java
index 02c0fb82c23..0215eb996a8 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/ui/CreateUmlElementDialog.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/ui/CreateUmlElementDialog.java
@@ -1,7 +1,7 @@
/*****************************************************************************
* Copyright (c) 2010 CEA LIST.
*
- *
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -28,11 +28,9 @@ import org.eclipse.gef.commands.Command;
import org.eclipse.gmf.runtime.common.core.command.CommandResult;
import org.eclipse.gmf.runtime.common.core.command.CompositeCommand;
import org.eclipse.gmf.runtime.common.core.command.ICommand;
-import org.eclipse.gmf.runtime.common.core.command.UnexecutableCommand;
import org.eclipse.gmf.runtime.diagram.ui.commands.ICommandProxy;
import org.eclipse.gmf.runtime.emf.commands.core.command.AbstractTransactionalCommand;
import org.eclipse.gmf.runtime.emf.type.core.IHintedType;
-import org.eclipse.gmf.runtime.emf.type.core.commands.CreateRelationshipCommand;
import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest;
import org.eclipse.gmf.runtime.emf.type.core.requests.IEditCommandRequest;
import org.eclipse.jface.viewers.ILabelProvider;
@@ -42,7 +40,7 @@ import org.eclipse.jface.viewers.ITreeContentProvider;
import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils;
import org.eclipse.papyrus.infra.services.edit.service.IElementEditService;
import org.eclipse.papyrus.sysml.diagram.blockdefinition.messages.Messages;
-import org.eclipse.papyrus.uml.tools.utils.ElementUtil;
+import org.eclipse.papyrus.uml.diagram.common.util.Util;
import org.eclipse.papyrus.uml.tools.utils.NamedElementUtil;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridData;
@@ -95,7 +93,7 @@ public class CreateUmlElementDialog extends ElementTreeSelectionDialog {
/**
* Constructor.
- *
+ *
* @param parent
* the parent
* @param domain
@@ -131,7 +129,7 @@ public class CreateUmlElementDialog extends ElementTreeSelectionDialog {
/**
* Sets the forbidden names.
- *
+ *
* @param forbiddenNames
* the new forbidden names
*/
@@ -141,7 +139,7 @@ public class CreateUmlElementDialog extends ElementTreeSelectionDialog {
/**
* Creates the dialog area.
- *
+ *
* @param parent
* the parent
* @return the control
@@ -166,7 +164,7 @@ public class CreateUmlElementDialog extends ElementTreeSelectionDialog {
/**
* Creates the name section and put it at the top of the composite.
- *
+ *
* @param parent
* the composite parent
*/
@@ -196,7 +194,7 @@ public class CreateUmlElementDialog extends ElementTreeSelectionDialog {
/**
* Returns the default name for the new Element.
- *
+ *
* @return the default name
* the default name for the new Element
*/
@@ -207,7 +205,7 @@ public class CreateUmlElementDialog extends ElementTreeSelectionDialog {
int max = 0;
do {
- List<Interface> allInterface = ElementUtil.getInstancesFilteredByType(pack, Interface.class, null);
+ List<Interface> allInterface = Util.getInstancesFilteredByType(pack, Interface.class, null);
for(Object object : allInterface) {
String name = NamedElementUtil.getName((NamedElement)object);
if(name != null && name.startsWith(type)) {
@@ -236,7 +234,7 @@ public class CreateUmlElementDialog extends ElementTreeSelectionDialog {
/**
* Tests if the proposed name is not forbidden
- *
+ *
* @param name
* a name
* @return
@@ -251,7 +249,7 @@ public class CreateUmlElementDialog extends ElementTreeSelectionDialog {
/**
* Returns the command to create the new element which the chosen name.
- *
+ *
* @return the command
* the command to create the new element which the chosen name
*/
@@ -276,7 +274,7 @@ public class CreateUmlElementDialog extends ElementTreeSelectionDialog {
/**
* Compute result.
- *
+ *
* @see org.eclipse.ui.dialogs.ElementTreeSelectionDialog#computeResult()
*/
@Override
@@ -288,7 +286,7 @@ public class CreateUmlElementDialog extends ElementTreeSelectionDialog {
/**
* Set the value to {@link #name} and {@link #parentContainer}.
- *
+ *
* @see org.eclipse.ui.dialogs.SelectionStatusDialog#okPressed()
*/
@Override
@@ -305,7 +303,7 @@ public class CreateUmlElementDialog extends ElementTreeSelectionDialog {
/**
* Returns a command corresponding to this request.
- *
+ *
* @param request
* a request
* @return the command
@@ -334,7 +332,7 @@ public class CreateUmlElementDialog extends ElementTreeSelectionDialog {
/**
* Constructor.
- *
+ *
* @param domain
* the domain
* @param label
@@ -353,7 +351,7 @@ public class CreateUmlElementDialog extends ElementTreeSelectionDialog {
/**
* Do execute with result.
- *
+ *
* @param monitor
* the monitor
* @param info
@@ -378,7 +376,7 @@ public class CreateUmlElementDialog extends ElementTreeSelectionDialog {
/**
* This command allows to create a new element when its parent is not yet created when the command is build
- *
+ *
* We need a such command, because {@link CreateRelationshipCommand#getCommandResult()} return <code>null</code> when the command has not been
* executed.
*/
@@ -389,7 +387,7 @@ public class CreateUmlElementDialog extends ElementTreeSelectionDialog {
/**
* Constructor.
- *
+ *
* @param domain
* the domain
* @param label
@@ -406,7 +404,7 @@ public class CreateUmlElementDialog extends ElementTreeSelectionDialog {
/**
* Do execute with result.
- *
+ *
* @param monitor
* the monitor
* @param info
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/ui/InterfaceManagerDialog.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/ui/InterfaceManagerDialog.java
index 7fe0262b6e4..ce699e9b062 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/ui/InterfaceManagerDialog.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/ui/InterfaceManagerDialog.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
- *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ * CEA LIST - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.blockdefinition.ui;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/ui/NewElementRepresentation.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/ui/NewElementRepresentation.java
index 83ad269689c..219df0375c5 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/ui/NewElementRepresentation.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.blockdefinition/src/org/eclipse/papyrus/sysml/diagram/blockdefinition/ui/NewElementRepresentation.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
- *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ * CEA LIST - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.blockdefinition.ui;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/META-INF/MANIFEST.MF b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/META-INF/MANIFEST.MF
index f0a1e8be392..d60ac90d235 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/META-INF/MANIFEST.MF
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/META-INF/MANIFEST.MF
@@ -29,12 +29,13 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.uml2.uml.edit;bundle-version="4.0.0",
org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="1.0.0",
org.eclipse.emf.edit.ui;bundle-version="2.8.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.0",
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
org.eclipse.gmf.tooling.runtime;bundle-version="3.1.0",
- org.eclipse.papyrus.uml.diagram.composite;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.tools;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.extendedtypes;bundle-version="1.0.0"
+ org.eclipse.papyrus.uml.diagram.composite;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.tools;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.extendedtypes;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0"
Export-Package: org.eclipse.papyrus.gmf.diagram.common.commands,
org.eclipse.papyrus.gmf.diagram.common.compatibility,
org.eclipse.papyrus.gmf.diagram.common.edit.part,
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/commands/IdentityCommandWithNotification.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/commands/IdentityCommandWithNotification.java
index cb65145164b..ec0e19b8971 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/commands/IdentityCommandWithNotification.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/commands/IdentityCommandWithNotification.java
@@ -1,14 +1,16 @@
-/******************************************************************************
- * Copyright (c) 2006 IBM Corporation and others.
+/*****************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * IBM Corporation - initial API and implementation
- * CEA LIST - Papyrus notification added in command execution
- ****************************************************************************/
+ *
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.gmf.diagram.common.commands;
import org.eclipse.core.commands.ExecutionException;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/CommonDiagramDragDropEditPolicy.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/CommonDiagramDragDropEditPolicy.java
index 1733997dcd0..4802945aec3 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/CommonDiagramDragDropEditPolicy.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/CommonDiagramDragDropEditPolicy.java
@@ -1,18 +1,15 @@
/*****************************************************************************
- * Copyright (c) 2011-2012 CEA LIST.
- *
+ * Copyright (c) 2011 CEA LIST.
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * Patrick Tessier (CEA LIST) Patrick.tessier@cea.fr - Initial API and implementation
- * Emilien Perico (Atos Origin) emilien.perico@atosorigin.com - refactor common behavior between diagrams
- *
- * CEA LIST - Adapted to use a local graphical type registry.
- *
+ *
+ * CEA LIST - Initial API and implementation
+ *
*****************************************************************************/
package org.eclipse.papyrus.gmf.diagram.common.edit.policy;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/CompartmentSemanticEditPolicy.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/CompartmentSemanticEditPolicy.java
index 6c19e73c215..fd4c6e3d220 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/CompartmentSemanticEditPolicy.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/CompartmentSemanticEditPolicy.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.gmf.diagram.common.edit.policy;
import org.eclipse.gef.commands.Command;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/DefaultContainerNodeEditPolicy.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/DefaultContainerNodeEditPolicy.java
index 2a845240b00..68e68028613 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/DefaultContainerNodeEditPolicy.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/DefaultContainerNodeEditPolicy.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.gmf.diagram.common.edit.policy;
import org.eclipse.core.runtime.IAdaptable;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/DefaultSnapBackEditPolicy.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/DefaultSnapBackEditPolicy.java
index a9410ae086b..7d8cdbb4b64 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/DefaultSnapBackEditPolicy.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/DefaultSnapBackEditPolicy.java
@@ -1,15 +1,16 @@
-/******************************************************************************
- * Copyright (c) 2004, 2007 IBM Corporation and others.
+/*****************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * IBM Corporation - initial API and implementation
- * CEA LIST - Adaptation to support a different hint for SnapBack location storage.
- *
- ****************************************************************************/
+ *
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.gmf.diagram.common.edit.policy;
import org.eclipse.draw2d.geometry.Point;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/DefaultXYLayoutEditPolicy.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/DefaultXYLayoutEditPolicy.java
index 2ad1e4c7118..9f4e08a5090 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/DefaultXYLayoutEditPolicy.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/DefaultXYLayoutEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/ILinkMappingHelper.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/ILinkMappingHelper.java
index cfa839dc4bb..17e513b3573 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/ILinkMappingHelper.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/ILinkMappingHelper.java
@@ -1,15 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2009 Atos Origin.
+ * Copyright (c) 2011 CEA LIST.
*
- *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Emilien Perico (Atos Origin) emilien.perico@atosorigin.com - Initial API and implementation
- * CEA LIST - adapted in a non-UML specific manner.
+ *
+ * CEA LIST - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.gmf.diagram.common.edit.policy;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/LabelDefaultSemanticEditPolicy.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/LabelDefaultSemanticEditPolicy.java
index 8db6801563e..93581d4b237 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/LabelDefaultSemanticEditPolicy.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/edit/policy/LabelDefaultSemanticEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/provider/AbstractViewProvider.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/provider/AbstractViewProvider.java
index ead0e3b9e60..eaf4527c314 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/provider/AbstractViewProvider.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/provider/AbstractViewProvider.java
@@ -1,18 +1,16 @@
-/******************************************************************************
- * Copyright (c) 2002, 2010 IBM Corporation and others.
+/*****************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * IBM Corporation - initial API and implementation
- *
- * CEA LIST - createNode and createEdge final statement removed
- * in order to provide different implementation in subclasses.
- * The original class is {@link AbstractViewProvider}.
- *
- ****************************************************************************/
+ *
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.gmf.diagram.common.provider;
import java.lang.reflect.Constructor;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/provider/CustomAbstractViewProvider.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/provider/CustomAbstractViewProvider.java
index c112a1944a6..a30ee718df8 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/provider/CustomAbstractViewProvider.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/provider/CustomAbstractViewProvider.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2011-2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/provider/ElementTypeLabelProvider.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/provider/ElementTypeLabelProvider.java
index e5bd29f1d5a..57f320d7777 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/provider/ElementTypeLabelProvider.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-gmf/org/eclipse/papyrus/gmf/diagram/common/provider/ElementTypeLabelProvider.java
@@ -1,13 +1,16 @@
-/******************************************************************************
- * Copyright (c) 2004 IBM Corporation and others.
+/*****************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * IBM Corporation - initial API and implementation
- ****************************************************************************/
+ *
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.gmf.diagram.common.provider;
import org.eclipse.gmf.runtime.common.ui.services.icon.IconService;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/commands/ConstraintExtendedDirectEditionDialog.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/commands/ConstraintExtendedDirectEditionDialog.java
index dbac0ce2dc4..2d34a52f720 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/commands/ConstraintExtendedDirectEditionDialog.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/commands/ConstraintExtendedDirectEditionDialog.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.common.commands;
import org.eclipse.papyrus.extensionpoints.editors.configuration.IDirectEditorConfiguration;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/commands/CreateActorPartWithTypeConfigureCommandFactory.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/commands/CreateActorPartWithTypeConfigureCommandFactory.java
index 8a41c91511c..59ac04ad23e 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/commands/CreateActorPartWithTypeConfigureCommandFactory.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/commands/CreateActorPartWithTypeConfigureCommandFactory.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/commands/CreateConstraintPropertyWithTypeConfigureCommandFactory.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/commands/CreateConstraintPropertyWithTypeConfigureCommandFactory.java
index f00a0fff9d4..716a7f4954e 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/commands/CreateConstraintPropertyWithTypeConfigureCommandFactory.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/commands/CreateConstraintPropertyWithTypeConfigureCommandFactory.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -8,7 +8,7 @@
*
* Contributors:
*
- * Régis Chevrel (chevrel.regis@gmail.com) CEA LIST - Initial API and implementation
+ * CEA LIST - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.common.commands;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/dialogs/CreateOrSelectActorPartTypeDialog.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/dialogs/CreateOrSelectActorPartTypeDialog.java
index d2e22627b71..32f0812b92c 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/dialogs/CreateOrSelectActorPartTypeDialog.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/dialogs/CreateOrSelectActorPartTypeDialog.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/dialogs/CreateOrSelectTypeDialog.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/dialogs/CreateOrSelectTypeDialog.java
index 18f6346160d..7dec5fecc70 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/dialogs/CreateOrSelectTypeDialog.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/dialogs/CreateOrSelectTypeDialog.java
@@ -1,16 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2010 Atos Origin.
+ * Copyright (c) 2011 CEA LIST.
*
- *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Emilien Perico (Atos Origin) emilien.perico@atosorigin.com - Initial API and implementation
- *
- * CEA LIST - Class Adaptation in SysML context, Content and Label provider replacement.
+ *
+ * CEA LIST - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.common.dialogs;
@@ -29,6 +27,7 @@ import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest;
import org.eclipse.jface.dialogs.IDialogConstants;
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.jface.window.Window;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.services.edit.commands.ConfigureFeatureCommandFactory;
import org.eclipse.papyrus.infra.services.edit.commands.IConfigureCommandFactory;
import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils;
@@ -506,7 +505,7 @@ public class CreateOrSelectTypeDialog extends FormDialog {
if(dialog.open() == Window.OK) {
Object result = dialog.getResult()[0];
if(result instanceof IAdaptable) {
- result = ((IAdaptable)result).getAdapter(EObject.class);
+ result = EMFHelper.getEObject(result);
}
if(result instanceof EObject) {
@@ -548,7 +547,7 @@ public class CreateOrSelectTypeDialog extends FormDialog {
if(dialog.open() == Window.OK) {
Object result = dialog.getResult()[0];
if(result instanceof IAdaptable) {
- result = ((IAdaptable)result).getAdapter(EObject.class);
+ result = EMFHelper.getEObject(result);
}
if(result instanceof EObject) {
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/part/BlockPropertyCompositeEditPart.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/part/BlockPropertyCompositeEditPart.java
index 307879f6165..63074f417d0 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/part/BlockPropertyCompositeEditPart.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/part/BlockPropertyCompositeEditPart.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2011-2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/part/ConstraintBlockPropertyCompositeEditPart.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/part/ConstraintBlockPropertyCompositeEditPart.java
index d57bd5960fc..9ebfbdd4ae8 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/part/ConstraintBlockPropertyCompositeEditPart.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/part/ConstraintBlockPropertyCompositeEditPart.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2011-2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/part/NestedBlockPropertyCompositeEditPart.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/part/NestedBlockPropertyCompositeEditPart.java
index 4fb200142f9..364f7e42ab0 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/part/NestedBlockPropertyCompositeEditPart.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/part/NestedBlockPropertyCompositeEditPart.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/BlockPropertyStructureCompartmentSemanticEditPolicy.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/BlockPropertyStructureCompartmentSemanticEditPolicy.java
index 8c1f4a10c5e..03360fa02c5 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/BlockPropertyStructureCompartmentSemanticEditPolicy.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/BlockPropertyStructureCompartmentSemanticEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/NestedBlockPropertyCompositeSemanticEditPolicy.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/NestedBlockPropertyCompositeSemanticEditPolicy.java
index 6d7d2500c9d..d35d901294f 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/NestedBlockPropertyCompositeSemanticEditPolicy.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/NestedBlockPropertyCompositeSemanticEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/PropertyCompartmentSemanticEditPolicy.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/PropertyCompartmentSemanticEditPolicy.java
index 7da2226fed0..270a2a27c7b 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/PropertyCompartmentSemanticEditPolicy.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/PropertyCompartmentSemanticEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2011-2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/StructureCompartmentSemanticEditPolicy.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/StructureCompartmentSemanticEditPolicy.java
index 2aa9a51e4c2..d162be9e9c6 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/StructureCompartmentSemanticEditPolicy.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/edit/policy/StructureCompartmentSemanticEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2011-2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/figure/AssociationFigure.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/figure/AssociationFigure.java
index 3b3b4593fff..d134b4f7183 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/figure/AssociationFigure.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/figure/AssociationFigure.java
@@ -1,6 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009-2011 CEA LIST.
- *
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@@ -8,9 +7,8 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * Patrick Tessier (CEA LIST) Patrick.tessier@cea.fr - Initial API and implementation
- * CEA LIST - Adaptation for SysML purpose.
+ *
+ * CEA LIST - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.common.figure;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/messages/Messages.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/messages/Messages.java
index d7b31fe3162..da28833808a 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/messages/Messages.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/messages/Messages.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2011-2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/FlowPortLabelParser.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/FlowPortLabelParser.java
index fcb9728c154..074dcd63565 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/FlowPortLabelParser.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/FlowPortLabelParser.java
@@ -24,6 +24,7 @@ import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.sysml.diagram.common.preferences.ILabelPreferenceConstants;
import org.eclipse.papyrus.sysml.portandflows.FlowDirection;
import org.eclipse.papyrus.sysml.portandflows.FlowPort;
@@ -62,7 +63,7 @@ public class FlowPortLabelParser extends PropertyLabelParser {
}
String result = "";
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(element);
if((eObject != null) && (eObject instanceof Port)) {
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/FlowPropertyLabelParser.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/FlowPropertyLabelParser.java
index ae53802c7bf..a21692e2a96 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/FlowPropertyLabelParser.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/FlowPropertyLabelParser.java
@@ -23,6 +23,7 @@ import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.sysml.diagram.common.preferences.ILabelPreferenceConstants;
import org.eclipse.papyrus.sysml.portandflows.FlowDirection;
import org.eclipse.papyrus.sysml.portandflows.FlowProperty;
@@ -53,7 +54,7 @@ public class FlowPropertyLabelParser extends PropertyLabelParser {
String result = super.getPrintString(element, flags);
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(element);
if((eObject != null) && (eObject instanceof Property)) {
Property property = (Property)eObject;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/RequirementLabelParser.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/RequirementLabelParser.java
index 4f9ec40ffba..c9665eb6cf8 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/RequirementLabelParser.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/RequirementLabelParser.java
@@ -22,6 +22,7 @@ import java.util.Map;
import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.sysml.diagram.common.preferences.ILabelPreferenceConstants;
import org.eclipse.papyrus.sysml.requirements.Requirement;
import org.eclipse.papyrus.uml.diagram.common.parser.NamedElementLabelParser;
@@ -52,7 +53,7 @@ public class RequirementLabelParser extends NamedElementLabelParser {
}
String result = "";
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject =EMFHelper.getEObject(element);
if((eObject != null) && (eObject instanceof Class)) {
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/UnitLabelParser.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/UnitLabelParser.java
index e6581c89ca5..7b15a33dff8 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/UnitLabelParser.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-sysml/org/eclipse/papyrus/sysml/diagram/common/parser/UnitLabelParser.java
@@ -24,6 +24,7 @@ import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.sysml.blocks.BlocksPackage;
import org.eclipse.papyrus.sysml.blocks.Dimension;
import org.eclipse.papyrus.sysml.blocks.Unit;
@@ -56,7 +57,7 @@ public class UnitLabelParser extends NamedElementLabelParser {
}
String result = "";
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(element);
if((eObject != null) && (eObject instanceof InstanceSpecification)) {
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/dnd/helper/LinkMappingHelper.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/dnd/helper/LinkMappingHelper.java
index cfa06fc0324..77b035429e7 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/dnd/helper/LinkMappingHelper.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/dnd/helper/LinkMappingHelper.java
@@ -1,15 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
- *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Patrick Tessier (CEA LIST) Patrick.tessier@cea.fr - Initial API and implementation
- * Emilien Perico (Atos Origin) emilien.perico@atosorigin.com - refactor common behavior between diagrams
+ *
+ * CEA LIST - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.common.dnd.helper;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/edit/part/AbstractElementChildLabelEditPart.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/edit/part/AbstractElementChildLabelEditPart.java
index 9708e175882..86f26591e1b 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/edit/part/AbstractElementChildLabelEditPart.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/edit/part/AbstractElementChildLabelEditPart.java
@@ -7,9 +7,8 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
+ *
* CEA LIST - Initial API and implementation
- * Arthur Daussy - arthur.daussy@atos.net - 395920: [Block Diagram Definition] All element contained by a block should be able to be linked to constraint or comment
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.common.edit.part;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/edit/part/AbstractShapeCompartmentEditPart.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/edit/part/AbstractShapeCompartmentEditPart.java
index 7202aa4da9e..d6b36f8d876 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/edit/part/AbstractShapeCompartmentEditPart.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/edit/part/AbstractShapeCompartmentEditPart.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.common.edit.part;
import org.eclipse.draw2d.geometry.Dimension;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/edit/policy/StructuredClassifierCreationEditPolicy.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/edit/policy/StructuredClassifierCreationEditPolicy.java
index ded500e86c8..25d93894f72 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/edit/policy/StructuredClassifierCreationEditPolicy.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/edit/policy/StructuredClassifierCreationEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2011-2012 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/AssociationEndLabelParser.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/AssociationEndLabelParser.java
index 67aee13d461..33fdd110b3c 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/AssociationEndLabelParser.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/AssociationEndLabelParser.java
@@ -21,6 +21,7 @@ import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.sysml.diagram.common.preferences.ILabelPreferenceConstants;
import org.eclipse.papyrus.uml.tools.utils.ValueSpecificationUtil;
import org.eclipse.uml2.uml.Association;
@@ -49,7 +50,7 @@ public class AssociationEndLabelParser extends PropertyLabelParser {
}
String result = "";
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject =EMFHelper.getEObject(element);
if((eObject != null) && (eObject instanceof Property)) {
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ConnectorLabelParser.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ConnectorLabelParser.java
index 80bd0c997b8..751e220d76c 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ConnectorLabelParser.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ConnectorLabelParser.java
@@ -24,6 +24,7 @@ import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.sysml.diagram.common.preferences.ILabelPreferenceConstants;
import org.eclipse.uml2.uml.Connector;
import org.eclipse.uml2.uml.UMLPackage;
@@ -52,7 +53,7 @@ public class ConnectorLabelParser extends NamedElementLabelParser {
}
String result = "";
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(element);
if((eObject != null) && (eObject instanceof Connector)) {
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ConstraintLabelParser.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ConstraintLabelParser.java
index 14339d19f4d..5cdb13f6730 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ConstraintLabelParser.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ConstraintLabelParser.java
@@ -29,6 +29,7 @@ import org.eclipse.gmf.runtime.common.core.command.ICommand;
import org.eclipse.gmf.runtime.common.core.command.UnexecutableCommand;
import org.eclipse.gmf.runtime.emf.type.core.requests.SetRequest;
import org.eclipse.papyrus.infra.core.services.ServiceException;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils;
import org.eclipse.papyrus.sysml.diagram.common.preferences.ILabelPreferenceConstants;
import org.eclipse.papyrus.uml.diagram.common.Activator;
@@ -62,7 +63,7 @@ public class ConstraintLabelParser extends NamedElementLabelParser {
String editString = "";
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject =EMFHelper.getEObject(element);
if((eObject != null) && (eObject instanceof Constraint)) {
Constraint semElement = (Constraint)eObject;
@@ -97,7 +98,7 @@ public class ConstraintLabelParser extends NamedElementLabelParser {
}
String result = "";
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(element);
if((eObject != null) && (eObject instanceof Constraint)) {
@@ -135,7 +136,7 @@ public class ConstraintLabelParser extends NamedElementLabelParser {
ICommand command = UnexecutableCommand.INSTANCE;
SetRequest updateRequest = null;
- Constraint constraint = (Constraint)element.getAdapter(EObject.class);
+ Constraint constraint = (Constraint)EMFHelper.getEObject(element);
if(constraint == null) {
return UnexecutableCommand.INSTANCE;
}
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/MultiplicityElementLabelParser.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/MultiplicityElementLabelParser.java
index 563023623fc..48ef1416777 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/MultiplicityElementLabelParser.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/MultiplicityElementLabelParser.java
@@ -32,6 +32,7 @@ import org.eclipse.gmf.runtime.common.ui.services.parser.ParserEditStatus;
import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
import org.eclipse.papyrus.gmf.diagram.common.parser.IMaskManagedSemanticParser;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.gmfdiag.common.helper.MaskLabelHelper;
import org.eclipse.papyrus.sysml.diagram.common.preferences.ILabelPreferenceConstants;
import org.eclipse.papyrus.uml.tools.utils.ValueSpecificationUtil;
@@ -83,7 +84,7 @@ public class MultiplicityElementLabelParser implements IMaskManagedSemanticParse
}
String result = "";
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(element);
if((eObject != null) && (eObject instanceof MultiplicityElement)) {
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/NamedElementLabelParser.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/NamedElementLabelParser.java
index 2b4563d0692..4c8d65ee7ae 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/NamedElementLabelParser.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/NamedElementLabelParser.java
@@ -33,6 +33,7 @@ import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
import org.eclipse.papyrus.gmf.diagram.common.parser.IMaskManagedSemanticParser;
import org.eclipse.papyrus.infra.core.services.ServiceException;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.gmfdiag.common.helper.MaskLabelHelper;
import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils;
import org.eclipse.papyrus.uml.diagram.common.Activator;
@@ -50,7 +51,7 @@ public class NamedElementLabelParser implements IMaskManagedSemanticParser {
public String getEditString(IAdaptable element, int flags) {
String editString = "";
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(element);
if((eObject != null) && (eObject instanceof NamedElement)) {
NamedElement semElement = (NamedElement)eObject;
if(semElement.isSetName()) {
@@ -74,7 +75,7 @@ public class NamedElementLabelParser implements IMaskManagedSemanticParser {
ICommand command = UnexecutableCommand.INSTANCE;
- EObject objectToEdit = (EObject)element.getAdapter(EObject.class);
+ EObject objectToEdit =EMFHelper.getEObject(element);
if(objectToEdit == null) {
return UnexecutableCommand.INSTANCE;
}
@@ -93,7 +94,7 @@ public class NamedElementLabelParser implements IMaskManagedSemanticParser {
*/
public String getPrintString(IAdaptable element, int flags) {
String result = "";
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(element);
if(eObject instanceof NamedElement) {
return ((NamedElement)eObject).getName();
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/OperationLabelParser.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/OperationLabelParser.java
index 730791b78b7..46a7b96bdf4 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/OperationLabelParser.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/OperationLabelParser.java
@@ -27,6 +27,7 @@ import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.papyrus.gmf.diagram.common.parser.IMaskManagedSemanticParser;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.tools.util.StringHelper;
import org.eclipse.papyrus.sysml.diagram.common.preferences.ILabelPreferenceConstants;
import org.eclipse.papyrus.uml.diagram.common.utils.ParameterLabelUtil;
@@ -70,7 +71,7 @@ public class OperationLabelParser extends NamedElementLabelParser {
}
String result = "";
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject =EMFHelper.getEObject(element);
if((eObject != null) && (eObject instanceof Operation)) {
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ParameterLabelParser.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ParameterLabelParser.java
index 5c670d28a47..6c2fc31b5a6 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ParameterLabelParser.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ParameterLabelParser.java
@@ -24,6 +24,7 @@ import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.sysml.diagram.common.preferences.ILabelPreferenceConstants;
import org.eclipse.papyrus.uml.diagram.common.utils.ParameterLabelUtil;
import org.eclipse.uml2.uml.Parameter;
@@ -64,7 +65,7 @@ public class ParameterLabelParser extends NamedElementLabelParser {
return MaskedLabel;
}
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(element);
if(eObject != null && eObject instanceof Parameter) {
Parameter parameter = (Parameter)eObject;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/PropertyLabelParser.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/PropertyLabelParser.java
index 89355916813..65cda498f40 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/PropertyLabelParser.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/PropertyLabelParser.java
@@ -25,6 +25,7 @@ import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.sysml.diagram.common.preferences.ILabelPreferenceConstants;
import org.eclipse.papyrus.uml.tools.utils.ValueSpecificationUtil;
import org.eclipse.uml2.uml.InstanceValue;
@@ -75,7 +76,7 @@ public class PropertyLabelParser extends NamedElementLabelParser {
}
String result = "";
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(element);
if((eObject != null) && (eObject instanceof Property)) {
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ReceptionLabelParser.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ReceptionLabelParser.java
index 634a110d27d..8ac02e08e00 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ReceptionLabelParser.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/ReceptionLabelParser.java
@@ -25,6 +25,7 @@ import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.papyrus.gmf.diagram.common.parser.IMaskManagedSemanticParser;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.sysml.diagram.common.preferences.ILabelPreferenceConstants;
import org.eclipse.uml2.uml.Reception;
import org.eclipse.uml2.uml.UMLPackage;
@@ -56,7 +57,7 @@ public class ReceptionLabelParser extends NamedElementLabelParser implements IMa
}
String result = PREFIX;
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(element);
if((eObject != null) && (eObject instanceof Reception)) {
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/SlotLabelParser.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/SlotLabelParser.java
index bd13fef47b3..fa15078a465 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/SlotLabelParser.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/parser/SlotLabelParser.java
@@ -27,6 +27,7 @@ import org.eclipse.gmf.runtime.common.ui.services.parser.IParserEditStatus;
import org.eclipse.gmf.runtime.common.ui.services.parser.ParserEditStatus;
import org.eclipse.gmf.runtime.emf.ui.services.parser.ISemanticParser;
import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.uml2.uml.InstanceValue;
import org.eclipse.uml2.uml.Slot;
import org.eclipse.uml2.uml.UMLPackage;
@@ -63,7 +64,7 @@ public class SlotLabelParser implements ISemanticParser {
*/
public String getPrintString(IAdaptable element, int flags) {
String result = "";
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject =EMFHelper.getEObject(element);
if(eObject instanceof Slot) {
Slot slot = (Slot)eObject;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/utils/ParameterLabelUtil.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/utils/ParameterLabelUtil.java
index 1176e80e693..5ba1a5621b3 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/utils/ParameterLabelUtil.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-common-uml/org/eclipse/papyrus/uml/diagram/common/utils/ParameterLabelUtil.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.common.utils;
import java.util.Collection;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-gen/org/eclipse/papyrus/sysml/diagram/common/factory/ConstraintBlockPropertyCompositeClassifierViewFactory.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-gen/org/eclipse/papyrus/sysml/diagram/common/factory/ConstraintBlockPropertyCompositeClassifierViewFactory.java
index dec7d49ded3..0df988d5820 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-gen/org/eclipse/papyrus/sysml/diagram/common/factory/ConstraintBlockPropertyCompositeClassifierViewFactory.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-gen/org/eclipse/papyrus/sysml/diagram/common/factory/ConstraintBlockPropertyCompositeClassifierViewFactory.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.common.factory;
import org.eclipse.core.runtime.IAdaptable;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-gen/org/eclipse/papyrus/sysml/diagram/common/figure/ConstraintBlockPropertyCompositeFigure.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-gen/org/eclipse/papyrus/sysml/diagram/common/figure/ConstraintBlockPropertyCompositeFigure.java
index 8c044cbff09..3d4d3e107c7 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-gen/org/eclipse/papyrus/sysml/diagram/common/figure/ConstraintBlockPropertyCompositeFigure.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-gen/org/eclipse/papyrus/sysml/diagram/common/figure/ConstraintBlockPropertyCompositeFigure.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.common.figure;
import java.util.ArrayList;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-gen/org/eclipse/papyrus/sysml/diagram/common/figure/SysMLDiagramFrameFigure.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-gen/org/eclipse/papyrus/sysml/diagram/common/figure/SysMLDiagramFrameFigure.java
index ff4aaece588..7c50997b434 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-gen/org/eclipse/papyrus/sysml/diagram/common/figure/SysMLDiagramFrameFigure.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src-gen/org/eclipse/papyrus/sysml/diagram/common/figure/SysMLDiagramFrameFigure.java
@@ -1,12 +1,15 @@
/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
- *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
+ * Contributors:
+ *
+ * CEA LIST - Initial API and implementation
+ *
*****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.common.figure;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/Activator.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/Activator.java
index d5c54840e24..d1ba80264a0 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/Activator.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/Activator.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.common;
import java.util.ArrayList;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/commands/CreateSysMLModelCommand.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/commands/CreateSysMLModelCommand.java
index fa291b14c1a..f9aa4c0527e 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/commands/CreateSysMLModelCommand.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/commands/CreateSysMLModelCommand.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2011 CEA LIST.
*
- *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Tatiana Fesenko (CEA LIST) - Initial API and implementation
+ *
+ * CEA LIST - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.common.commands;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/utils/ConstraintBlockHelper.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/utils/ConstraintBlockHelper.java
index 313897643ab..b60d6ba58c9 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/utils/ConstraintBlockHelper.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.common/src/org/eclipse/papyrus/sysml/diagram/common/utils/ConstraintBlockHelper.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2011 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.sysml.diagram.common.utils;
import org.eclipse.emf.ecore.EObject;
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/META-INF/MANIFEST.MF b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/META-INF/MANIFEST.MF
index 1b1f6aa2d23..0ef0093f596 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/META-INF/MANIFEST.MF
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/META-INF/MANIFEST.MF
@@ -26,11 +26,13 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.papyrus.uml.tools.utils;bundle-version="1.0.0",
org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
org.eclipse.uml2.uml;bundle-version="4.0.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.0",
org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="1.0.0",
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
org.eclipse.gmf.tooling.runtime;bundle-version="3.1.0",
- org.eclipse.papyrus.infra.tools;bundle-version="1.0.0"
+ org.eclipse.papyrus.infra.tools;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0",
+ org.eclipse.papyrus.uml.diagram.common
Export-Package: org.eclipse.papyrus.sysml.diagram.internalblock,
org.eclipse.papyrus.sysml.diagram.internalblock.compatibility,
org.eclipse.papyrus.sysml.diagram.internalblock.dnd.helper,
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src-gen/org/eclipse/papyrus/sysml/diagram/internalblock/provider/InheritedCompositeDiagramViewProvider.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src-gen/org/eclipse/papyrus/sysml/diagram/internalblock/provider/InheritedCompositeDiagramViewProvider.java
index 664cc5d10aa..8b1f99cf86c 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src-gen/org/eclipse/papyrus/sysml/diagram/internalblock/provider/InheritedCompositeDiagramViewProvider.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src-gen/org/eclipse/papyrus/sysml/diagram/internalblock/provider/InheritedCompositeDiagramViewProvider.java
@@ -26,6 +26,7 @@ import org.eclipse.gmf.runtime.notation.Edge;
import org.eclipse.gmf.runtime.notation.Node;
import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.papyrus.gmf.diagram.common.provider.IGraphicalTypeRegistry;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.sysml.diagram.common.utils.SysMLGraphicalTypes;
import org.eclipse.papyrus.sysml.diagram.internalblock.Activator;
import org.eclipse.papyrus.uml.diagram.common.commands.SemanticAdapter;
@@ -46,7 +47,7 @@ public class InheritedCompositeDiagramViewProvider extends UMLViewProvider {
createdEdge = super.createEdge(semanticAdapter, containerView, semanticHint, index, persisted, preferencesHint);
} else {
- EObject domainElement = (EObject)semanticAdapter.getAdapter(EObject.class);
+ EObject domainElement = EMFHelper.getEObject(semanticAdapter);
String domainElementGraphicalType = semanticHint;
if(domainElementGraphicalType == null) {
@@ -197,7 +198,7 @@ public class InheritedCompositeDiagramViewProvider extends UMLViewProvider {
String containerGraphicalType = containerView.getType();
// Get the type of the domain element
- EObject domainElement = (EObject)semanticAdapter.getAdapter(EObject.class);
+ EObject domainElement = EMFHelper.getEObject(semanticAdapter);
if(semanticHint != null) {
// Look for a possible graphicalType replacement
diff --git a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src/org/eclipse/papyrus/sysml/diagram/internalblock/edit/policy/ShowHideRelatedLinkEditPolicy.java b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src/org/eclipse/papyrus/sysml/diagram/internalblock/edit/policy/ShowHideRelatedLinkEditPolicy.java
index 56beb25e126..8cdb4ee64b3 100644
--- a/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src/org/eclipse/papyrus/sysml/diagram/internalblock/edit/policy/ShowHideRelatedLinkEditPolicy.java
+++ b/plugins/sysml/diagram/org.eclipse.papyrus.sysml.diagram.internalblock/src/org/eclipse/papyrus/sysml/diagram/internalblock/edit/policy/ShowHideRelatedLinkEditPolicy.java
@@ -286,7 +286,7 @@ public class ShowHideRelatedLinkEditPolicy extends AbstractUMLShowHideRelatedLin
for (View targetView : targetViewList) {
if (canDisplayExistingLinkBetweenViews((Connector) linkToShow, sourceView, targetView)){
- if (connectorUtils.canDisplayExistingConnectorBetweenViewsAccordingToPartWithPort((Connector) linkToShow, sourceView, targetView)){
+ if (connectorUtils.canDisplayExistingConnectorBetweenViewsAccordingToNestedPaths((Connector) linkToShow, sourceView, targetView)){
boolean alreadyDisplayed = false;
if (linkSet != null){
for (View viewLink : linkSet) {
diff --git a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/.project b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/.project
index 75c4d55ac8c..00c00f2882b 100644
--- a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/.project
+++ b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/.project
@@ -22,7 +22,7 @@
</buildCommand>
</buildSpec>
<natures>
- <nature>org.eclipse.emf.facet.common.ProjectNature</nature>
+ <nature>org.eclipse.papyrus.emf.facet.common.ProjectNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
<nature>org.eclipse.pde.PluginNature</nature>
</natures>
diff --git a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/META-INF/MANIFEST.MF b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/META-INF/MANIFEST.MF
index 4010594470b..f88a590a790 100644
--- a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/META-INF/MANIFEST.MF
+++ b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/META-INF/MANIFEST.MF
@@ -1,7 +1,5 @@
Manifest-Version: 1.0
Require-Bundle: org.eclipse.core.runtime,
- org.eclipse.emf.facet.infra.common.core,
- org.eclipse.emf.facet.infra.query.core,
org.eclipse.uml2.uml,
org.eclipse.papyrus.sysml;bundle-version="1.0.0",
org.eclipse.swt,
@@ -12,7 +10,6 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.papyrus.views.modelexplorer;bundle-version="1.0.0",
org.eclipse.ui.navigator;bundle-version="3.5.0",
org.eclipse.papyrus.sysml.diagram.common;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.1.0",
org.eclipse.ui.views.properties.tabbed;bundle-version="3.5.200",
org.eclipse.gmf.runtime.emf.type.core;bundle-version="1.4.0",
org.eclipse.ui.ide;bundle-version="3.8.0",
@@ -23,7 +20,11 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
- org.eclipse.papyrus.uml.modelexplorer;bundle-version="1.0.0"
+ org.eclipse.papyrus.uml.modelexplorer;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.query.java.core,
+ org.eclipse.papyrus.emf.facet.custom.ui,
+ org.eclipse.papyrus.emf.facet.custom.metamodel,
+ org.eclipse.emf.edit.ui
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
Bundle-ClassPath: .,
diff --git a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/plugin.xml b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/plugin.xml
index 0733c0705cb..17f7cf34f50 100644
--- a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/plugin.xml
+++ b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/plugin.xml
@@ -2,17 +2,10 @@
<?eclipse version="3.4"?>
<plugin>
-<!-- SysML ModelExplorer customization -->
-<extension point="org.eclipse.emf.facet.infra.browser.custom.core.registration">
- <browserCustomization
- file="resources/SysMLDefaultExplorerCustomization.uiCustom"
- loadByDefault="true"/>
+<extension point="org.eclipse.papyrus.emf.facet.util.emf.core.modeldeclaration">
+ <modeldeclaration file="resources/SimpleSysML.custom"/>
</extension>
-
-<extension point="org.eclipse.emf.facet.infra.query.registration">
- <modelqueryset file="resources/SysMLDefaultExplorerQueries.querySet"/>
-</extension>
-
+-->
<!-- This declaration is added in order command (CommandHandler) status to be
verified (isVisible and isEnabled) before any attempt to execute the command,
and to mask the command in case it is not supported or executable.
diff --git a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/resources/SimpleSysML.custom b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/resources/SimpleSysML.custom
new file mode 100644
index 00000000000..941b5c86251
--- /dev/null
+++ b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/resources/SimpleSysML.custom
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<custom:Customization xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:custom="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:efacet="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet" xmlns:javaQuery="http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation/javaquery" name="SimpleSysML" documentation="Display SysML elements">
+ <eClassifiers xsi:type="custom:EClassCustomization" name="SysMLElement">
+ <extendedMetaclass href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
+ <facetOperations name="GetSysMLElementIcon">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters name="eStructuralElement">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature"/>
+ </eParameters>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.sysml.modelexplorer.query.GetImageQuery"/>
+ <override xsi:type="efacet:FacetOperation" href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/image"/>
+ </facetOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="custom:EClassCustomization" name="NamedElement">
+ <extendedMetaclass href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement"/>
+ <facetOperations name="GetSysMLElementLabel">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eParameters name="eObject">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eParameters>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.sysml.modelexplorer.query.GetLabelQuery"/>
+ <override xsi:type="efacet:FacetOperation" href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/label"/>
+ </facetOperations>
+ <extendedFacets href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject"/>
+ </eClassifiers>
+</custom:Customization>
diff --git a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/resources/SysMLDefaultExplorerCustomization.uiCustom b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/resources/SysMLDefaultExplorerCustomization.uiCustom
deleted file mode 100644
index 1eb5f7b83be..00000000000
--- a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/resources/SysMLDefaultExplorerCustomization.uiCustom
+++ /dev/null
@@ -1,9122 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<uicustom:MetamodelView xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" xmlns:uicustom="http://www.eclipse.org/EmfFacet/infra/browser/custom/0.8" metamodelURI="http://www.eclipse.org/uml2/5.0.0/UML">
- <types metaclassName="uml.Element">
- <customizedFeatures customizedFeature="icon">
- <valueCases>
- <value xsi:type="uicustom:DerivedFeatureValue">
- <valueCalculator xsi:type="query:JavaModelQuery" href="emffacet:/query/SysMLDefaultExplorerQueries#getImage"/>
- </value>
- <condition xsi:type="query:JavaModelQuery" href="emffacet:/query/SysMLDefaultExplorerQueries#hasImage"/>
- </valueCases>
- </customizedFeatures>
- <customizedFeatures customizedFeature="hideMetaclassName">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="eAnnotations">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Package">
- <customizedFeatures customizedFeature="hideMetaclassName">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- <references referenceName="profileApplication">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="nestedPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="nestingPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="packagedElement">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.NamedElement">
- <customizedFeatures customizedFeature="label">
- <defaultValue xsi:type="uicustom:DerivedFeatureValue">
- <valueCalculator xsi:type="query:JavaModelQuery" href="emffacet:/query/SysMLDefaultExplorerQueries#getLabel"/>
- </defaultValue>
- </customizedFeatures>
- <references referenceName="eAnnotations">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Comment">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.PackageableElement">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Dependency">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DirectedRelationship">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Relationship">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Namespace">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ElementImport">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.PackageImport">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Constraint">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ValueSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TypedElement">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Type">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Association">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="endType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Classifier">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.RedefinableElement">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TemplateableElement">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TemplateBinding">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TemplateSignature">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TemplateParameter">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ParameterableElement">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TemplateParameterSubstitution">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Generalization">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.GeneralizationSet">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Feature">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Substitution">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Realization">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Abstraction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.OpaqueExpression">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="result">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Parameter">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="end">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.MultiplicityElement">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ConnectableElement">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="end">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ConnectorEnd">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="definingEnd">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Property">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="end">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="opposite">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DeploymentTarget">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Deployment">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DeployedArtifact">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DeploymentSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Artifact">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Manifestation">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Operation">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="type">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.BehavioralFeature">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Behavior">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Class">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.BehavioredClassifier">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InterfaceRealization">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Interface">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Reception">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Signal">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ProtocolStateMachine">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StateMachine">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Region">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Vertex">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="outgoing">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="incoming">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Transition">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Trigger">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Event">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Port">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="end">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="opposite">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="required">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="provided">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.State">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="outgoing">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="incoming">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ConnectionPointReference">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="outgoing">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="incoming">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Pseudostate">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="outgoing">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="incoming">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ProtocolConformance">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.EncapsulatedClassifier">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StructuredClassifier">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Connector">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Extension">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="endType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="metaclass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExtensionEnd">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="end">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="opposite">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Stereotype">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Image">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Profile">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="nestedPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="nestingPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedStereotype">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Model">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="nestedPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="nestingPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ParameterSet">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DataType">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.OperationTemplateParameter">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StructuralFeature">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ConnectableElementTemplateParameter">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CollaborationUse">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Collaboration">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.UseCase">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Include">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Extend">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExtensionPoint">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.RedefinableTemplateSignature">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedParameter">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ClassifierTemplateParameter">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StringExpression">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Expression">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Usage">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.PackageMerge">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ProfileApplication">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Enumeration">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.EnumerationLiteral">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InstanceSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Slot">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.PrimitiveType">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LiteralSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LiteralInteger">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LiteralString">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LiteralBoolean">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LiteralNull">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InstanceValue">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LiteralUnlimitedNatural">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.OpaqueBehavior">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.FunctionBehavior">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.OpaqueAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Action">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExecutableNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActivityNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StructuredActivityNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subgroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActivityGroup">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subgroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Activity">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="structuredNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Variable">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="end">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActivityEdge">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActivityPartition">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subgroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InterruptibleActivityRegion">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subgroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExceptionHandler">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ObjectNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.OutputPin">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Pin">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InputPin">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CallAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InvocationAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.SendSignalAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CallOperationAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CallBehaviorAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.SequenceNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subgroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ControlNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ControlFlow">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InitialNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActivityParameterNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ValuePin">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Message">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="signature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.MessageEnd">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Interaction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InteractionFragment">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Lifeline">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.PartDecomposition">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InteractionUse">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Gate">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.GeneralOrdering">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.OccurrenceSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InteractionOperand">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InteractionConstraint">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExecutionSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StateInvariant">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActionExecutionSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.BehaviorExecutionSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.MessageEvent">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.MessageOccurrenceSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExecutionOccurrenceSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Actor">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CallEvent">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ChangeEvent">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.SignalEvent">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.AnyReceiveEvent">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ForkNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.FlowFinalNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.FinalNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CentralBufferNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.MergeNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DecisionNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ObjectFlow">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActivityFinalNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ComponentRealization">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Component">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="required">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="provided">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Node">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CommunicationPath">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="endType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Device">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExecutionEnvironment">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CombinedFragment">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Continuation">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ConsiderIgnoreFragment">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CreateObjectAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DestroyObjectAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TestIdentityAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadSelfAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StructuralFeatureAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadStructuralFeatureAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.WriteStructuralFeatureAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ClearStructuralFeatureAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.RemoveStructuralFeatureValueAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.AddStructuralFeatureValueAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LinkAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LinkEndData">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.QualifierValue">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadLinkAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LinkEndCreationData">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CreateLinkAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.WriteLinkAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DestroyLinkAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LinkEndDestructionData">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ClearAssociationAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.BroadcastSignalAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.SendObjectAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ValueSpecificationAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TimeExpression">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Observation">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Duration">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DurationInterval">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Interval">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TimeConstraint">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.IntervalConstraint">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TimeInterval">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DurationConstraint">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TimeObservation">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DurationObservation">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.FinalState">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="outgoing">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="incoming">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TimeEvent">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.VariableAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadVariableAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.WriteVariableAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ClearVariableAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.AddVariableValueAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.RemoveVariableValueAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.RaiseExceptionAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActionInputPin">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InformationItem">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InformationFlow">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadExtentAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReclassifyObjectAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadIsClassifiedObjectAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StartClassifierBehaviorAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadLinkObjectEndAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadLinkObjectEndQualifierAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CreateLinkObjectAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.AcceptEventAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.AcceptCallAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReplyAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.UnmarshallAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReduceAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StartObjectBehaviorAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.JoinNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DataStoreNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ConditionalNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subgroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Clause">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LoopNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subgroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExpansionNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExpansionRegion">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subgroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ProtocolTransition">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="referred">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.AssociationClass">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="endType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
-</uicustom:MetamodelView>
diff --git a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/resources/SysMLDefaultExplorerQueries.querySet b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/resources/SysMLDefaultExplorerQueries.querySet
deleted file mode 100644
index 2e98c0c32fc..00000000000
--- a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/resources/SysMLDefaultExplorerQueries.querySet
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<query:ModelQuerySet xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" name="SysMLDefaultExplorerQueries">
- <associatedMetamodels href="http://www.eclipse.org/uml2/5.0.0/UML#/"/>
- <associatedMetamodels href="http://www.eclipse.org/uml2/5.0.0/Types#/"/>
- <queries xsi:type="query:JavaModelQuery" name="getLabel" description="Basic label provider for named elements" lowerBound="1" implementationClassName="org.eclipse.papyrus.sysml.modelexplorer.query.GetLabelQuery">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
- <scope href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement"/>
- </queries>
- <queries xsi:type="query:JavaModelQuery" name="getImage" description="SysML icon provider" implementationClassName="org.eclipse.papyrus.sysml.modelexplorer.query.GetImageQuery">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
- <scope href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
- </queries>
- <queries xsi:type="query:JavaModelQuery" name="hasImage" description="SysML icon tester" implementationClassName="org.eclipse.papyrus.sysml.modelexplorer.query.HasImageQuery">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//Boolean"/>
- <scope href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
- </queries>
-</query:ModelQuerySet>
diff --git a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/Activator.java b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/Activator.java
index fdcd682be0a..fed66390e27 100644
--- a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/Activator.java
+++ b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/Activator.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.sysml.modelexplorer;
import org.eclipse.core.runtime.Plugin;
diff --git a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/query/GetImageQuery.java b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/query/GetImageQuery.java
index 0ded9eb1614..f6683fc4eaa 100644
--- a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/query/GetImageQuery.java
+++ b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/query/GetImageQuery.java
@@ -1,26 +1,47 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.sysml.modelexplorer.query;
import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IImage;
+import org.eclipse.papyrus.emf.facet.custom.ui.ImageUtils;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.custompt.ImageWrapper;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.query.ImageQuery;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
import org.eclipse.papyrus.uml.tools.utils.ElementUtil;
+import org.eclipse.swt.graphics.Image;
import org.eclipse.uml2.uml.Element;
import org.eclipse.uml2.uml.Stereotype;
/** Create a basic label based on element name */
-public class GetImageQuery implements IJavaModelQuery<Element, String> {
+public class GetImageQuery implements IJavaQuery2<Element, IImage> {
- public static final String sysml_plugin_path = "/org.eclipse.papyrus.sysml/";
+ public static final String sysml_plugin_path = "platform:/plugin/org.eclipse.papyrus.sysml/";
- public String evaluate(final Element context, final ParameterValueList parameterValues) throws ModelQueryExecutionException {
+ @Override
+ public IImage evaluate(Element source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException {
String iconPath = "";
- if(!context.getAppliedStereotypes().isEmpty()) {
- Stereotype first_stereotype = context.getAppliedStereotypes().get(0);
+ if(!source.getAppliedStereotypes().isEmpty()) {
+ Stereotype first_stereotype = source.getAppliedStereotypes().get(0);
if(!first_stereotype.getIcons().isEmpty()) {
- org.eclipse.uml2.uml.Image icon = ElementUtil.getStereotypeImage(context, first_stereotype, "icon");
+ org.eclipse.uml2.uml.Image icon = ElementUtil.getStereotypeImage(source, first_stereotype, "icon");
if(icon != null) {
iconPath = icon.getLocation();
}
@@ -34,10 +55,12 @@ public class GetImageQuery implements IJavaModelQuery<Element, String> {
if(iconURI.isRelative()) {
imagePath = sysml_plugin_path + iconPath;
} else {
- imagePath = iconURI.toPlatformString(true);
+ imagePath = iconURI.toString();
}
}
-
- return imagePath;
+ if("".equals(imagePath)){
+ return ImageQuery.getEObjectImage(source);
+ }
+ return ImageUtils.wrap(imagePath);
}
}
diff --git a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/query/GetLabelQuery.java b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/query/GetLabelQuery.java
index d8ef0e58495..8c0ed095de9 100644
--- a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/query/GetLabelQuery.java
+++ b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/query/GetLabelQuery.java
@@ -1,20 +1,41 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.sysml.modelexplorer.query;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
import org.eclipse.uml2.uml.NamedElement;
/** Create a basic label based on element name */
-public class GetLabelQuery implements IJavaModelQuery<NamedElement, String> {
+public class GetLabelQuery implements IJavaQuery2<NamedElement, String> {
public static final String UNNAMED = "";
- public String evaluate(final NamedElement context, final ParameterValueList parameterValues) throws ModelQueryExecutionException {
+ @Override
+ public String evaluate(NamedElement source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException {
+ ParameterValue parameterValue= (ParameterValue)parameterValues.getParameterValueByName("eObject");
+ if(parameterValue.getValue() instanceof EStructuralFeature){
+ return ((EStructuralFeature)parameterValue.getValue()).getName();
+ }
+
String label = UNNAMED;
- if(context.isSetName() && (!"".equals(context.getName()))) {
- label = context.getName();
+ if(source.isSetName() && (!"".equals(source.getName().trim()))) {
+ label = source.getName();
}
return label;
}
diff --git a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/query/HasImageQuery.java b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/query/HasImageQuery.java
index ca5f6978ecf..410008d4475 100644
--- a/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/query/HasImageQuery.java
+++ b/plugins/sysml/modelexplorer/org.eclipse.papyrus.sysml.modelexplorer/src/org/eclipse/papyrus/sysml/modelexplorer/query/HasImageQuery.java
@@ -1,20 +1,34 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.sysml.modelexplorer.query;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
import org.eclipse.uml2.uml.Element;
/** Check is the element has a stereotype icon that can be used */
-public class HasImageQuery implements IJavaModelQuery<Element, Boolean> {
+public class HasImageQuery implements IJavaQuery2<Element, Boolean> {
- public Boolean evaluate(final Element context, final ParameterValueList parameterValues) throws ModelQueryExecutionException {
- IJavaModelQuery<Element, String> ImgageGetter = new GetImageQuery();
- String temp_img_path = ImgageGetter.evaluate(context, parameterValues);
- if(!"".equals(temp_img_path)) {
- return true;
- }
+ @Override
+ public Boolean evaluate(Element source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException {
+// IJavaQuery2<Element, String> ImgageGetter = new GetImageQuery();
+// String temp_img_path = ImgageGetter.evaluate(source, parameterValues,facetManager);
+// if(!"".equals(temp_img_path)) {
+// return true;
+// }
return false;
}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/META-INF/MANIFEST.MF b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/META-INF/MANIFEST.MF
index d6b4430a045..0c971a7afbb 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/META-INF/MANIFEST.MF
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/META-INF/MANIFEST.MF
@@ -1,105 +1,105 @@
-Manifest-Version: 1.0
-Export-Package: org.eclipse.papyrus.uml.diagram.common,
- org.eclipse.papyrus.uml.diagram.common.actions,
- org.eclipse.papyrus.uml.diagram.common.actions.handlers,
- org.eclipse.papyrus.uml.diagram.common.command.wrappers,
- org.eclipse.papyrus.uml.diagram.common.commands,
- org.eclipse.papyrus.uml.diagram.common.dialogs,
- org.eclipse.papyrus.uml.diagram.common.directedit,
- org.eclipse.papyrus.uml.diagram.common.dragtracker,
- org.eclipse.papyrus.uml.diagram.common.draw2d,
- org.eclipse.papyrus.uml.diagram.common.draw2d.anchors,
- org.eclipse.papyrus.uml.diagram.common.editparts,
- org.eclipse.papyrus.uml.diagram.common.editpolicies,
- org.eclipse.papyrus.uml.diagram.common.figure.edge,
- org.eclipse.papyrus.uml.diagram.common.figure.layout,
- org.eclipse.papyrus.uml.diagram.common.figure.node,
- org.eclipse.papyrus.uml.diagram.common.handlers,
- org.eclipse.papyrus.uml.diagram.common.helper,
- org.eclipse.papyrus.uml.diagram.common.ids,
- org.eclipse.papyrus.uml.diagram.common.layout,
- org.eclipse.papyrus.uml.diagram.common.listeners,
- org.eclipse.papyrus.uml.diagram.common.locator,
- org.eclipse.papyrus.uml.diagram.common.parser,
- org.eclipse.papyrus.uml.diagram.common.parser.assist,
- org.eclipse.papyrus.uml.diagram.common.parser.custom,
- org.eclipse.papyrus.uml.diagram.common.parser.lookup,
- org.eclipse.papyrus.uml.diagram.common.parser.packageimport,
- org.eclipse.papyrus.uml.diagram.common.parser.stereotype,
- org.eclipse.papyrus.uml.diagram.common.parser.structural,
- org.eclipse.papyrus.uml.diagram.common.part,
- org.eclipse.papyrus.uml.diagram.common.preferences,
- org.eclipse.papyrus.uml.diagram.common.providers,
- org.eclipse.papyrus.uml.diagram.common.providers.assistant,
- org.eclipse.papyrus.uml.diagram.common.resourceupdate,
- org.eclipse.papyrus.uml.diagram.common.service,
- org.eclipse.papyrus.uml.diagram.common.service.palette,
- org.eclipse.papyrus.uml.diagram.common.sheet,
- org.eclipse.papyrus.uml.diagram.common.ui.dialogs,
- org.eclipse.papyrus.uml.diagram.common.ui.helper,
- org.eclipse.papyrus.uml.diagram.common.util,
- org.eclipse.papyrus.uml.diagram.common.util.functions,
- org.eclipse.papyrus.uml.diagram.common.util.predicates
-Bundle-ActivationPolicy: lazy
-Bundle-ClassPath: .
-Bundle-Name: %pluginName
-Bundle-Localization: plugin
-Created-By: 1.5.0_06-b05 (Sun Microsystems Inc.)
+Manifest-Version: 1.0
+Export-Package: org.eclipse.papyrus.uml.diagram.common,
+ org.eclipse.papyrus.uml.diagram.common.actions,
+ org.eclipse.papyrus.uml.diagram.common.actions.handlers,
+ org.eclipse.papyrus.uml.diagram.common.command.wrappers,
+ org.eclipse.papyrus.uml.diagram.common.commands,
+ org.eclipse.papyrus.uml.diagram.common.dialogs,
+ org.eclipse.papyrus.uml.diagram.common.directedit,
+ org.eclipse.papyrus.uml.diagram.common.dragtracker,
+ org.eclipse.papyrus.uml.diagram.common.draw2d,
+ org.eclipse.papyrus.uml.diagram.common.draw2d.anchors,
+ org.eclipse.papyrus.uml.diagram.common.editparts,
+ org.eclipse.papyrus.uml.diagram.common.editpolicies,
+ org.eclipse.papyrus.uml.diagram.common.figure.edge,
+ org.eclipse.papyrus.uml.diagram.common.figure.layout,
+ org.eclipse.papyrus.uml.diagram.common.figure.node,
+ org.eclipse.papyrus.uml.diagram.common.handlers,
+ org.eclipse.papyrus.uml.diagram.common.helper,
+ org.eclipse.papyrus.uml.diagram.common.ids,
+ org.eclipse.papyrus.uml.diagram.common.layout,
+ org.eclipse.papyrus.uml.diagram.common.listeners,
+ org.eclipse.papyrus.uml.diagram.common.locator,
+ org.eclipse.papyrus.uml.diagram.common.parser,
+ org.eclipse.papyrus.uml.diagram.common.parser.assist,
+ org.eclipse.papyrus.uml.diagram.common.parser.custom,
+ org.eclipse.papyrus.uml.diagram.common.parser.lookup,
+ org.eclipse.papyrus.uml.diagram.common.parser.packageimport,
+ org.eclipse.papyrus.uml.diagram.common.parser.stereotype,
+ org.eclipse.papyrus.uml.diagram.common.parser.structural,
+ org.eclipse.papyrus.uml.diagram.common.part,
+ org.eclipse.papyrus.uml.diagram.common.preferences,
+ org.eclipse.papyrus.uml.diagram.common.providers,
+ org.eclipse.papyrus.uml.diagram.common.providers.assistant,
+ org.eclipse.papyrus.uml.diagram.common.resourceupdate,
+ org.eclipse.papyrus.uml.diagram.common.service,
+ org.eclipse.papyrus.uml.diagram.common.service.palette,
+ org.eclipse.papyrus.uml.diagram.common.sheet,
+ org.eclipse.papyrus.uml.diagram.common.ui.dialogs,
+ org.eclipse.papyrus.uml.diagram.common.ui.helper,
+ org.eclipse.papyrus.uml.diagram.common.util,
+ org.eclipse.papyrus.uml.diagram.common.util.functions,
+ org.eclipse.papyrus.uml.diagram.common.util.predicates
+Bundle-ActivationPolicy: lazy
+Bundle-ClassPath: .
+Bundle-Name: %pluginName
+Bundle-Localization: plugin
+Created-By: 1.5.0_06-b05 (Sun Microsystems Inc.)
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Require-Bundle: org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
- org.eclipse.gmf.runtime.diagram.ui.resources.editor,
- org.eclipse.gmf.runtime.diagram.ui.providers;bundle-version="1.1.0",
- org.eclipse.papyrus.extensionpoints.editors;bundle-version="1.0.0",
- org.eclipse.papyrus.uml.tools.utils;bundle-version="1.0.0",
- org.eclipse.gmf.runtime.diagram.ui.properties;bundle-version="1.2.0",
- org.eclipse.papyrus.uml.diagram.wizards;bundle-version="1.0.0",
- org.eclipse.papyrus.editor;bundle-version="1.0.0",
- org.eclipse.gmf.runtime.diagram.ui.render;bundle-version="1.3.0",
- org.eclipse.ui,
- org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.gmfdiag.preferences;bundle-version="1.0.0",
- org.eclipse.gmf.runtime.diagram.ui.actions,
- org.eclipse.gmf.runtime.draw2d.ui.render;bundle-version="1.4.0",
- org.eclipse.core.expressions,
- org.eclipse.papyrus.infra.extendedtypes;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.services.edit;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.gmfdiag.navigation;bundle-version="1.0.0",
- org.eclipse.papyrus.uml.diagram.navigation;bundle-version="1.0.0",
- org.eclipse.gmf.runtime.diagram.ui.printing,
- org.eclipse.gmf.runtime.diagram.ui.providers.ide,
- org.eclipse.papyrus.infra.services.decoration;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.services.resourceloading;bundle-version="1.0.0",
- org.eclipse.papyrus.uml.tools;bundle-version="1.0.0",
- com.google.guava;bundle-version="11.0.0",
- org.eclipse.papyrus.uml.profile;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.emf.appearance;bundle-version="1.0.0",
- org.eclipse.papyrus.uml.appearance;bundle-version="1.0.0",
- org.eclipse.uml2.uml.edit;bundle-version="4.0.0",
- org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.core.sasheditor;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="1.0.0",
- org.eclipse.ui.ide;bundle-version="3.8.0",
- org.eclipse.papyrus.infra.widgets.toolbox;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
- org.eclipse.jface,
- org.eclipse.papyrus.infra.emf.readonly;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.4.0",
- org.eclipse.papyrus.infra.services.localizer;bundle-version="1.0.0",
- org.apache.batik.dom.svg;bundle-version="[1.6.0,1.7.0)",
- org.w3c.dom.svg,
- org.apache.batik.css;bundle-version="[1.6.0,1.7.0)",
- org.apache.batik.util;bundle-version="[1.6.0,1.7.0)",
- org.apache.batik.dom;bundle-version="[1.6.0,1.7.0)",
- org.eclipse.core.databinding;bundle-version="1.4.1",
- org.eclipse.gmf.tooling.runtime
-Bundle-Vendor: %providerName
-Ant-Version: Apache Ant 1.7.0
-Bundle-Version: 1.0.0.qualifier
-Eclipse-BuddyPolicy: dependent
-Bundle-ManifestVersion: 2
-Bundle-Activator: org.eclipse.papyrus.uml.diagram.common.Activator
-Bundle-SymbolicName: org.eclipse.papyrus.uml.diagram.common;singleton:
- =true
-
+Require-Bundle: org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
+ org.eclipse.gmf.runtime.diagram.ui.resources.editor,
+ org.eclipse.gmf.runtime.diagram.ui.providers;bundle-version="1.1.0",
+ org.eclipse.papyrus.extensionpoints.editors;bundle-version="1.0.0",
+ org.eclipse.papyrus.uml.tools.utils;bundle-version="1.0.0",
+ org.eclipse.gmf.runtime.diagram.ui.properties;bundle-version="1.2.0",
+ org.eclipse.papyrus.uml.diagram.wizards;bundle-version="1.0.0",
+ org.eclipse.papyrus.editor;bundle-version="1.0.0",
+ org.eclipse.gmf.runtime.diagram.ui.render;bundle-version="1.3.0",
+ org.eclipse.ui,
+ org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.gmfdiag.preferences;bundle-version="1.0.0",
+ org.eclipse.gmf.runtime.diagram.ui.actions,
+ org.eclipse.gmf.runtime.draw2d.ui.render;bundle-version="1.4.0",
+ org.eclipse.core.expressions,
+ org.eclipse.papyrus.infra.extendedtypes;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.services.edit;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.gmfdiag.navigation;bundle-version="1.0.0",
+ org.eclipse.papyrus.uml.diagram.navigation;bundle-version="1.0.0",
+ org.eclipse.gmf.runtime.diagram.ui.printing,
+ org.eclipse.gmf.runtime.diagram.ui.providers.ide,
+ org.eclipse.papyrus.infra.services.decoration;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.services.resourceloading;bundle-version="1.0.0",
+ org.eclipse.papyrus.uml.tools;bundle-version="1.0.0",
+ com.google.guava;bundle-version="11.0.0",
+ org.eclipse.papyrus.uml.profile;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.emf.appearance;bundle-version="1.0.0",
+ org.eclipse.papyrus.uml.appearance;bundle-version="1.0.0",
+ org.eclipse.uml2.uml.edit;bundle-version="4.0.0",
+ org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.core.sasheditor;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="1.0.0",
+ org.eclipse.ui.ide;bundle-version="3.8.0",
+ org.eclipse.papyrus.infra.widgets.toolbox;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
+ org.eclipse.jface,
+ org.eclipse.papyrus.infra.emf.readonly;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.services.localizer;bundle-version="1.0.0",
+ org.apache.batik.dom.svg;bundle-version="[1.6.0,1.7.0)",
+ org.w3c.dom.svg,
+ org.apache.batik.css;bundle-version="[1.6.0,1.7.0)",
+ org.apache.batik.util;bundle-version="[1.6.0,1.7.0)",
+ org.apache.batik.dom;bundle-version="[1.6.0,1.7.0)",
+ org.eclipse.core.databinding;bundle-version="1.4.1",
+ org.eclipse.gmf.tooling.runtime,
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="1.0.0"
+Bundle-Vendor: %providerName
+Ant-Version: Apache Ant 1.7.0
+Bundle-Version: 1.0.0.qualifier
+Eclipse-BuddyPolicy: dependent
+Bundle-ManifestVersion: 2
+Bundle-Activator: org.eclipse.papyrus.uml.diagram.common.Activator
+Bundle-SymbolicName: org.eclipse.papyrus.uml.diagram.common;singleton:
+ =true
+
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/editpolicies/PortLabelEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/editpolicies/PortLabelEditPolicy.java
index ebcda33d110..8ad309247e6 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/editpolicies/PortLabelEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/editpolicies/PortLabelEditPolicy.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.common.editpolicies;
import java.util.Collection;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/handlers/DeleteFromDiagramCommandHandler.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/handlers/DeleteFromDiagramCommandHandler.java
index aec76b56af1..54889843210 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/handlers/DeleteFromDiagramCommandHandler.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/handlers/DeleteFromDiagramCommandHandler.java
@@ -36,6 +36,7 @@ import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.jface.dialogs.IDialogConstants;
import org.eclipse.jface.dialogs.MessageDialogWithToggle;
import org.eclipse.jface.preference.IPreferenceStore;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.uml.diagram.common.Activator;
import org.eclipse.swt.widgets.Display;
@@ -122,7 +123,7 @@ public class DeleteFromDiagramCommandHandler extends GraphicalCommandHandler imp
* Copied from {@link DeleteFromDiagramAction}
*/
protected boolean isCanonical(EditPart ep) {
- EObject eObject = (EObject)ep.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(ep);
EditPart parent = ep.getParent();
if(eObject != null && parent != null) { // sanity checks
CanonicalEditPolicy cep = (CanonicalEditPolicy)parent.getEditPolicy(EditPolicyRoles.CANONICAL_ROLE);
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/helper/MultiAssociationHelper.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/helper/MultiAssociationHelper.java
index 8dcadb02b4f..cb206a64f73 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/helper/MultiAssociationHelper.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/helper/MultiAssociationHelper.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.common.helper;
import org.eclipse.gmf.runtime.notation.NotationPackage;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/listeners/DropTargetListener.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/listeners/DropTargetListener.java
index e10ff7cea22..00d3c892f2d 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/listeners/DropTargetListener.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/listeners/DropTargetListener.java
@@ -27,6 +27,7 @@ import org.eclipse.gmf.runtime.diagram.ui.parts.DiagramDropTargetListener;
import org.eclipse.gmf.runtime.diagram.ui.parts.DiagramGraphicalViewer;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.papyrus.infra.gmfdiag.common.preferences.PreferencesConstantsHelper;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.services.localizer.IObjectLocalizer;
import org.eclipse.papyrus.infra.services.localizer.util.LocalizerUtil;
import org.eclipse.swt.dnd.Transfer;
@@ -66,16 +67,16 @@ public abstract class DropTargetListener extends DiagramDropTargetListener {
// get objects from transfer
TransferData data = getCurrentEvent().currentDataType;
ArrayList<URI> uris = new ArrayList<URI>(); // Array list to keep the
- // order of the selection
+ // order of the selection
Object transferedObject = getJavaObject(data);
ArrayList<EObject> result = new ArrayList<EObject>();
-
+
if(transferedObject instanceof IStructuredSelection) {
IStructuredSelection selection = (IStructuredSelection)transferedObject;
ResourceSet localSet = getTransactionalEditingDomain().getResourceSet();
IObjectLocalizer localizer = LocalizerUtil.getInstance(localSet);
-
+
for(Iterator<?> it = selection.iterator(); it.hasNext();) {
Object nextSelectedObject = it.next();
// if (nextSelectedObject instanceof UMLNavigatorItem) {
@@ -83,10 +84,7 @@ public abstract class DropTargetListener extends DiagramDropTargetListener {
// nextSelectedObject).getView();
// nextSelectedObject = view.getElement();
// } else
- if(nextSelectedObject instanceof IAdaptable) {
- IAdaptable adaptable = (IAdaptable)nextSelectedObject;
- nextSelectedObject = adaptable.getAdapter(EObject.class);
- }
+ nextSelectedObject = EMFHelper.getEObject(nextSelectedObject);
if(nextSelectedObject instanceof EObject) {
EObject local = localizer.getLocalEObject(localSet, (EObject)nextSelectedObject);
if(local != null) {
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/CommentParser.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/CommentParser.java
index 77bd53908d6..68c848e26b5 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/CommentParser.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/CommentParser.java
@@ -30,6 +30,7 @@ import org.eclipse.gmf.runtime.emf.commands.core.command.CompositeTransactionalC
import org.eclipse.gmf.runtime.emf.type.core.commands.SetValueCommand;
import org.eclipse.gmf.runtime.emf.type.core.requests.SetRequest;
import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.uml.tools.namereferences.NameReferencesHelper;
import org.eclipse.uml2.uml.Comment;
import org.eclipse.uml2.uml.UMLPackage;
@@ -151,7 +152,7 @@ public class CommentParser implements IParser {
* @return the property associated or null if it can't be found.
*/
protected Comment doAdapt(IAdaptable element) {
- Object obj = element.getAdapter(EObject.class);
+ Object obj = EMFHelper.getEObject(element);
if(obj instanceof Comment) {
return (Comment)obj;
}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/ConstraintParser.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/ConstraintParser.java
index 0a4f206f036..7fd47ee26f4 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/ConstraintParser.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/ConstraintParser.java
@@ -31,6 +31,7 @@ import org.eclipse.gmf.runtime.emf.type.core.commands.SetValueCommand;
import org.eclipse.gmf.runtime.emf.type.core.requests.SetRequest;
import org.eclipse.gmf.runtime.emf.ui.services.parser.ISemanticParser;
import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.uml.diagram.common.helper.NamedElementHelper;
import org.eclipse.uml2.uml.Constraint;
import org.eclipse.uml2.uml.Duration;
@@ -255,7 +256,7 @@ public class ConstraintParser implements IParser, ISemanticParser {
* @return the constraint or null if it can't be found.
*/
protected Constraint doAdapt(IAdaptable element) {
- Object obj = element.getAdapter(EObject.class);
+ Object obj = EMFHelper.getEObject(element);
if(obj instanceof Constraint) {
return (Constraint)obj;
}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/ShortcutDiagramParser.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/ShortcutDiagramParser.java
index 04954159f5e..72a9a35a3d5 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/ShortcutDiagramParser.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/ShortcutDiagramParser.java
@@ -28,6 +28,7 @@ import org.eclipse.gmf.runtime.emf.type.core.requests.SetRequest;
import org.eclipse.gmf.runtime.notation.Diagram;
import org.eclipse.gmf.runtime.notation.NotationPackage;
import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.uml.diagram.common.Messages;
/**
@@ -115,7 +116,7 @@ public class ShortcutDiagramParser implements IParser {
* @return the diagram or null if it can't be found.
*/
protected Diagram doAdapt(IAdaptable element) {
- Object obj = element.getAdapter(EObject.class);
+ Object obj =EMFHelper.getEObject(element);
if(obj instanceof Diagram) {
return (Diagram)obj;
}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/StereotypePropertyParser.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/StereotypePropertyParser.java
index 54b9268ee8b..a37bde0c73d 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/StereotypePropertyParser.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/StereotypePropertyParser.java
@@ -30,6 +30,7 @@ import org.eclipse.gmf.runtime.common.ui.services.parser.ParserEditStatus;
import org.eclipse.gmf.runtime.emf.ui.services.parser.ISemanticParser;
import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil;
import org.eclipse.uml2.uml.Element;
import org.eclipse.uml2.uml.Property;
@@ -64,7 +65,7 @@ public class StereotypePropertyParser implements IParser, ISemanticParser {
*/
public String getEditString(IAdaptable element, int flags) {
if(element instanceof IAdaptable) {
- final Property property = ((Property)((IAdaptable)element).getAdapter(EObject.class));
+ final Property property = ((Property)EMFHelper.getEObject(element));
final View view=((View)((IAdaptable)element).getAdapter(View.class));
final EObject stereotypeApplication=((View)view.eContainer()).getElement();
final Stereotype stereotype=UMLUtil.getStereotype(stereotypeApplication);
@@ -93,7 +94,7 @@ public class StereotypePropertyParser implements IParser, ISemanticParser {
*/
public ICommand getParseCommand(IAdaptable element, final String newString, int flags) {
if(element instanceof IAdaptable) {
- final Property property = ((Property)((IAdaptable)element).getAdapter(EObject.class));
+ final Property property = ((Property)(EMFHelper.getEObject(element)));
final View view=((View)((IAdaptable)element).getAdapter(View.class));
final EObject stereotypeApplication=((View)view.eContainer()).getElement();
final Stereotype stereotype=UMLUtil.getStereotype(stereotypeApplication);
@@ -140,7 +141,7 @@ public class StereotypePropertyParser implements IParser, ISemanticParser {
public String getPrintString(IAdaptable element, int flags) {
if(element instanceof IAdaptable) {
- final Property property = ((Property)((IAdaptable)element).getAdapter(EObject.class));
+ final Property property = ((Property)(EMFHelper.getEObject(element)));
final View view=((View)((IAdaptable)element).getAdapter(View.class));
final EObject stereotypeApplication=((View)view.eContainer()).getElement();
final Stereotype stereotype=UMLUtil.getStereotype(stereotypeApplication);
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/custom/AbstractAssociationEndParser.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/custom/AbstractAssociationEndParser.java
index 1ab94f44176..c3c5bdf8844 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/custom/AbstractAssociationEndParser.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/custom/AbstractAssociationEndParser.java
@@ -20,6 +20,7 @@ import org.eclipse.gmf.runtime.common.core.command.ICommand;
import org.eclipse.gmf.runtime.common.ui.services.parser.IParser;
import org.eclipse.gmf.runtime.common.ui.services.parser.IParserEditStatus;
import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.uml2.uml.Association;
import org.eclipse.uml2.uml.Property;
@@ -95,7 +96,7 @@ public abstract class AbstractAssociationEndParser implements IParser {
* @return the property associated or null if it can't be found.
*/
protected Property doAdapt(IAdaptable element) {
- Object obj = element.getAdapter(EObject.class);
+ Object obj = EMFHelper.getEObject(element);
Property property = null;
if(obj instanceof Association) {
Association association = (Association)obj;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/structural/UMLStructuralFeatureParser.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/structural/UMLStructuralFeatureParser.java
index 79040365cb0..58092088fbe 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/structural/UMLStructuralFeatureParser.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/parser/structural/UMLStructuralFeatureParser.java
@@ -18,6 +18,7 @@ import org.eclipse.gmf.runtime.common.core.command.UnexecutableCommand;
import org.eclipse.gmf.runtime.common.ui.services.parser.IParserEditStatus;
import org.eclipse.gmf.runtime.common.ui.services.parser.ParserEditStatus;
import org.eclipse.gmf.runtime.emf.commands.core.command.CompositeTransactionalCommand;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
// TODO: Auto-generated Javadoc
/**
@@ -103,7 +104,7 @@ public class UMLStructuralFeatureParser extends UMLAbstractParser {
*/
@Override
protected String getStringByPattern(IAdaptable adapter, int flags, String pattern, MessageFormat processor) {
- EObject element = (EObject)adapter.getAdapter(EObject.class);
+ EObject element = EMFHelper.getEObject(adapter);
element = getDomainElement(element);
return getStringByPattern(element, feature, processor);
}
@@ -165,7 +166,7 @@ public class UMLStructuralFeatureParser extends UMLAbstractParser {
*/
@Override
public ICommand getParseCommand(IAdaptable adapter, Object[] values) {
- EObject element = (EObject)adapter.getAdapter(EObject.class);
+ EObject element =EMFHelper.getEObject(adapter);
element = getDomainElement(element);
if(element == null) {
return UnexecutableCommand.INSTANCE;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/service/InheritedDecorator.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/service/InheritedDecorator.java
index 5867a824ab3..e03c11054c5 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/service/InheritedDecorator.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/service/InheritedDecorator.java
@@ -52,7 +52,7 @@ import org.eclipse.uml2.uml.Type;
import org.eclipse.uml2.uml.UMLPackage;
/**
- *
+ *
* The decorator to represent inherited element This decorator adds a small
* image ( the generalization icon) next to the UML Element which are inherited.
* 3 positions are defined for the decoration :
@@ -62,8 +62,8 @@ import org.eclipse.uml2.uml.UMLPackage;
* <li>else if the element is in a compartment list : {@link PositionConstants#EAST} and margin =-1</li>
* <li>else {@link PositionConstants#SOUTH_EAST} and margin = -1</li>
* </ul>
- *
- * @deprecated Replaced with the generic {@link org.eclipse.papyrus.infra.gmfdiag.common.decoration.ExternalReferenceMarker}
+ *
+ * @deprecated Replaced with the generic org.eclipse.papyrus.infra.gmfdiag.common.decoration.ExternalReferenceMarker
*/
@Deprecated
public class InheritedDecorator implements IDecorator {
@@ -86,7 +86,7 @@ public class InheritedDecorator implements IDecorator {
/**
* Creates a new <code>AbstractDecorator</code> for the decorator target
* passed in.
- *
+ *
* @param decoratorTarget
* the object to be decorated
*/
@@ -96,7 +96,7 @@ public class InheritedDecorator implements IDecorator {
/**
* Gets the object to be decorated.
- *
+ *
* @return Returns the object to be decorated
*/
protected IDecoratorTarget getDecoratorTarget() {
@@ -132,7 +132,7 @@ public class InheritedDecorator implements IDecorator {
* getDecoratorTargetClassifier Utility method to determine if the
* decoratorTarget is a supported type for this decorator and return the
* associated Classifier element.
- *
+ *
* @param decoratorTarget
* IDecoratorTarget to check and return valid Classifier target.
* @return node Node if IDecoratorTarget can be supported, null otherwise.
@@ -205,7 +205,7 @@ public class InheritedDecorator implements IDecorator {
/**
* Returns a figure corresponding to this image
- *
+ *
* @param image
* a image
* @return a figure corresponding to this image
@@ -220,7 +220,7 @@ public class InheritedDecorator implements IDecorator {
/**
* Returns the direction to set the decorator for the node
- *
+ *
* @param node
* the node
* @return the direction to set the decorator for the node direction can be
@@ -264,7 +264,7 @@ public class InheritedDecorator implements IDecorator {
/**
* Tests if the compartment is a compartment list
- *
+ *
* @param node
* the node on which we want add an Overlay
* @return <code>true</code> if the compartment is managed by an {@link XYLayoutEditPolicy}
@@ -288,7 +288,7 @@ public class InheritedDecorator implements IDecorator {
/**
* Tests if the node is an inherited element
- *
+ *
* @param node
* a node
* @return <code>true</code> if the node is an inherited element <code>false</code> if not
@@ -325,7 +325,7 @@ public class InheritedDecorator implements IDecorator {
/**
* getDescriptionStyle Accessor to retrieve the description style from a
* Node.
- *
+ *
* @param node
* Node to retrieve the description style from.
* @return DescriptionStyle style object
@@ -340,9 +340,9 @@ public class InheritedDecorator implements IDecorator {
private NotificationListener notificationListener = new NotificationListener() {
/**
- *
+ *
* @see org.eclipse.gmf.runtime.diagram.core.listener.NotificationListener#notifyChanged(org.eclipse.emf.common.notify.Notification)
- *
+ *
* @param notification
*/
@Override
@@ -427,7 +427,7 @@ public class InheritedDecorator implements IDecorator {
/**
* Tests if the element can be inherited
- *
+ *
* @param semanticElement
* the element to test
* @return <code>true</code> if the element can be inherited
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/service/InheritedDecoratorProvider.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/service/InheritedDecoratorProvider.java
index 39f51b7f6d4..d07809b2e46 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/service/InheritedDecoratorProvider.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/service/InheritedDecoratorProvider.java
@@ -22,10 +22,10 @@ import org.eclipse.gmf.runtime.diagram.ui.services.decorator.IDecoratorTarget;
import org.eclipse.gmf.runtime.notation.Node;
/**
- *
+ *
* Provide the decorator for the Inheritance
- *
- * @deprecated Replaced with the generic {@link org.eclipse.papyrus.infra.gmfdiag.common.decoration.ExternalReferenceMarker}
+ *
+ * @deprecated Replaced with the generic org.eclipse.papyrus.infra.gmfdiag.common.decoration.ExternalReferenceMarker
*/
@Deprecated
public class InheritedDecoratorProvider extends AbstractProvider implements IDecoratorProvider {
@@ -34,9 +34,9 @@ public class InheritedDecoratorProvider extends AbstractProvider implements IDec
public static final String GENERALIZATION = "Generalization"; //$NON-NLS-1$
/**
- *
+ *
* @see org.eclipse.gmf.runtime.diagram.ui.services.decorator.IDecoratorProvider#createDecorators(org.eclipse.gmf.runtime.diagram.ui.services.decorator.IDecoratorTarget)
- *
+ *
* @param decoratorTarget
*/
@Override
@@ -49,7 +49,7 @@ public class InheritedDecoratorProvider extends AbstractProvider implements IDec
/*
* (non-Javadoc)
- *
+ *
* @see
* org.eclipse.gmf.runtime.common.core.internal.service.IProvider#provides
* (org.eclipse.gmf.runtime.common.core.service.IOperation)
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/sheet/UMLPropertySection.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/sheet/UMLPropertySection.java
index fceb297b792..089588e2c9b 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/sheet/UMLPropertySection.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.common/src/org/eclipse/papyrus/uml/diagram/common/sheet/UMLPropertySection.java
@@ -26,6 +26,7 @@ import org.eclipse.gmf.runtime.diagram.ui.properties.sections.AdvancedPropertySe
import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.ui.IWorkbenchPart;
import org.eclipse.ui.views.properties.IPropertySource;
import org.eclipse.ui.views.properties.IPropertySourceProvider;
@@ -92,7 +93,7 @@ public class UMLPropertySection extends AdvancedPropertySection implements IProp
if(view != null) {
return view.getElement();
}
- EObject elem = (EObject)((IAdaptable)selected).getAdapter(EObject.class);
+ EObject elem = EMFHelper.getEObject(selected);
return elem;
}
return selected;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.component/META-INF/MANIFEST.MF b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.component/META-INF/MANIFEST.MF
index d324a48f003..5a76a3e47f3 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.component/META-INF/MANIFEST.MF
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.component/META-INF/MANIFEST.MF
@@ -47,7 +47,6 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.papyrus.infra.gmfdiag.navigation;bundle-version="1.0.0",
org.eclipse.uml2.uml.edit;bundle-version="4.0.0",
org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.0",
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
org.eclipse.ui.views,
org.eclipse.emf.ecore,
@@ -59,7 +58,9 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.emf.validation;visibility:=reexport,
org.eclipse.gef,
org.eclipse.gmf.tooling.runtime;bundle-version="3.0.0",
- org.eclipse.papyrus.uml.diagram.menu;bundle-version="1.0.0"
+ org.eclipse.papyrus.uml.diagram.menu;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0"
Bundle-Vendor: %providerName
Eclipse-LazyStart: true
Bundle-Version: 1.0.0.qualifier
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.component/src/org/eclipse/papyrus/uml/diagram/component/parsers/MessageFormatParser.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.component/src/org/eclipse/papyrus/uml/diagram/component/parsers/MessageFormatParser.java
index 48faba6ed98..07c1d328036 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.component/src/org/eclipse/papyrus/uml/diagram/component/parsers/MessageFormatParser.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.component/src/org/eclipse/papyrus/uml/diagram/component/parsers/MessageFormatParser.java
@@ -24,6 +24,7 @@ import org.eclipse.gmf.runtime.common.ui.services.parser.IParserEditStatus;
import org.eclipse.gmf.runtime.common.ui.services.parser.ParserEditStatus;
import org.eclipse.gmf.tooling.runtime.parsers.AbstractAttributeParser;
import org.eclipse.osgi.util.NLS;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.uml.diagram.component.part.Messages;
import org.eclipse.papyrus.uml.diagram.component.part.UMLDiagramEditorPlugin;
@@ -204,7 +205,7 @@ public class MessageFormatParser extends AbstractAttributeParser {
* @generated
*/
public String getEditString(IAdaptable adapter, int flags) {
- EObject element = (EObject)adapter.getAdapter(EObject.class);
+ EObject element =EMFHelper.getEObject(adapter);
return getEditorProcessor().format(getEditableValues(element), new StringBuffer(), new FieldPosition(0)).toString();
}
@@ -255,7 +256,7 @@ public class MessageFormatParser extends AbstractAttributeParser {
* @generated
*/
public String getPrintString(IAdaptable adapter, int flags) {
- EObject element = (EObject)adapter.getAdapter(EObject.class);
+ EObject element = EMFHelper.getEObject(adapter);
return getViewProcessor().format(getValues(element), new StringBuffer(), new FieldPosition(0)).toString();
}
}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.component/src/org/eclipse/papyrus/uml/diagram/component/providers/UMLViewProvider.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.component/src/org/eclipse/papyrus/uml/diagram/component/providers/UMLViewProvider.java
index a735b20e0b6..cee084d6808 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.component/src/org/eclipse/papyrus/uml/diagram/component/providers/UMLViewProvider.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.component/src/org/eclipse/papyrus/uml/diagram/component/providers/UMLViewProvider.java
@@ -51,6 +51,7 @@ import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.gmf.runtime.notation.datatype.RelativeBendpoint;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.preference.PreferenceConverter;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.extendedtypes.types.IExtendedHintedElementType;
import org.eclipse.papyrus.infra.extendedtypes.util.ElementTypeUtils;
import org.eclipse.papyrus.infra.gmfdiag.common.preferences.PreferencesConstantsHelper;
@@ -1383,7 +1384,7 @@ public class UMLViewProvider extends AbstractProvider implements IViewProvider {
if(semanticAdapter == null) {
return null;
}
- EObject eObject = (EObject)semanticAdapter.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(semanticAdapter);
if(eObject != null) {
return EMFCoreUtil.resolve(TransactionUtil.getEditingDomain(eObject), eObject);
}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/META-INF/MANIFEST.MF b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/META-INF/MANIFEST.MF
index d425b0eaf60..0035ce00726 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/META-INF/MANIFEST.MF
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/META-INF/MANIFEST.MF
@@ -59,7 +59,6 @@ Require-Bundle: org.eclipse.emf.ecore,
org.eclipse.uml2.uml.edit;bundle-version="4.0.0",
org.eclipse.papyrus.infra.gmfdiag.navigation;bundle-version="1.0.0",
org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.0",
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
org.eclipse.emf.ecore.xmi,
org.eclipse.emf.edit.ui,
@@ -68,7 +67,9 @@ Require-Bundle: org.eclipse.emf.ecore,
org.eclipse.ocl.ecore;visibility:=reexport,
org.eclipse.emf.validation;visibility:=reexport,
org.eclipse.gef,
- org.eclipse.gmf.tooling.runtime;bundle-version="3.0.0"
+ org.eclipse.gmf.tooling.runtime;bundle-version="3.0.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0"
Bundle-Vendor: %providerName
Eclipse-LazyStart: true
Bundle-Version: 1.0.0.qualifier
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CompositeDiagramCreationCondition.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CompositeDiagramCreationCondition.java
index bf890085d4e..8e0e3458b8a 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CompositeDiagramCreationCondition.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CompositeDiagramCreationCondition.java
@@ -1,12 +1,15 @@
/*****************************************************************************
- * Copyright (c) 2010 Atos Origin.
- *
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
+ *
* Contributors:
- * Atos Origin - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CompositeDiagramEditorFactory.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CompositeDiagramEditorFactory.java
index 53f09dd58e2..72bcb9af146 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CompositeDiagramEditorFactory.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CompositeDiagramEditorFactory.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Cedric Dumoulin cedric.dumoulin@lifl.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CreateCompositeDiagramCommand.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CreateCompositeDiagramCommand.java
index 14d41118bb6..9b23ea680f3 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CreateCompositeDiagramCommand.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CreateCompositeDiagramCommand.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,8 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Cedric Dumoulin cedric.dumoulin@lifl.fr - Initial API and implementation
- * Yann Tanguy yann.tanguy@cea.fr - Adapted from Class Diagram
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CreateCompositeDiagramWithNavigationHandler.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CreateCompositeDiagramWithNavigationHandler.java
index 459773a084c..85b15880bae 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CreateCompositeDiagramWithNavigationHandler.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/CreateCompositeDiagramWithNavigationHandler.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2011 Atos Origin.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Mathieu Velten (Atos Origin) mathieu.velten@atosorigin.com - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/UmlCompositeDiagramForMultiEditor.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/UmlCompositeDiagramForMultiEditor.java
index e2a40e0dc35..08f94d2e67d 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/UmlCompositeDiagramForMultiEditor.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/UmlCompositeDiagramForMultiEditor.java
@@ -1,15 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
- *
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Cedric Dumoulin cedric.dumoulin@lifl.fr - Initial API and implementation
- * Yann Tanguy yann.tanguy@cea.fr - Adapted from Class Diagram
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/actions/ManageProvidedInterfacesHandler.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/actions/ManageProvidedInterfacesHandler.java
index 0bec9c5be2a..5b977e4ca41 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/actions/ManageProvidedInterfacesHandler.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/actions/ManageProvidedInterfacesHandler.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.actions;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/actions/ShowHideRelatedContentsAction.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/actions/ShowHideRelatedContentsAction.java
index 740b3c8a9a3..afc735fc3ce 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/actions/ShowHideRelatedContentsAction.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/actions/ShowHideRelatedContentsAction.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009-2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.actions;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/actions/ShowHideRelatedContentsHandler.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/actions/ShowHideRelatedContentsHandler.java
index 82a585c4e46..61ba6b8bbc6 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/actions/ShowHideRelatedContentsHandler.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/actions/ShowHideRelatedContentsHandler.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009-2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.actions;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CollaborationRoleCreateCommand.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CollaborationRoleCreateCommand.java
index 3ed25025a6b..c1a12f94af0 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CollaborationRoleCreateCommand.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CollaborationRoleCreateCommand.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CollaborationUseFromTypeCreateCommand.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CollaborationUseFromTypeCreateCommand.java
index 4540612941a..87aa0feea89 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CollaborationUseFromTypeCreateCommand.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CollaborationUseFromTypeCreateCommand.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CreateBehaviorPortCommand.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CreateBehaviorPortCommand.java
index 420a04ac34f..03fe729ea38 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CreateBehaviorPortCommand.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CreateBehaviorPortCommand.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * Patrick Tessier (CEA LIST) - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.command;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CreateViewCommand.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CreateViewCommand.java
index 554d0c3bf16..5af834dae5a 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CreateViewCommand.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/CreateViewCommand.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/InformationFlowCreateCommand.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/InformationFlowCreateCommand.java
index 36ba67cd1c4..cd94d49e2d1 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/InformationFlowCreateCommand.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/InformationFlowCreateCommand.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.command;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/PortCreateCommand.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/PortCreateCommand.java
index 097b9740b7b..0e1990e6e19 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/PortCreateCommand.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/PortCreateCommand.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/PropertyPartCreateCommand.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/PropertyPartCreateCommand.java
index 1a528c9835b..f392ae4b55b 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/PropertyPartCreateCommand.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/PropertyPartCreateCommand.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/PropertyPartFromTypeCreateCommand.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/PropertyPartFromTypeCreateCommand.java
index cfc6bbdf124..fd68682d55c 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/PropertyPartFromTypeCreateCommand.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/PropertyPartFromTypeCreateCommand.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/RoleBindingCreateCommand.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/RoleBindingCreateCommand.java
index 76e3a159bb0..82ed31b27d5 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/RoleBindingCreateCommand.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/RoleBindingCreateCommand.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/SetTypeWithDialogCommand.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/SetTypeWithDialogCommand.java
index 6113b6d75fb..9e5d843e815 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/SetTypeWithDialogCommand.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/command/SetTypeWithDialogCommand.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/AbstractBehaviorPortEditPart.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/AbstractBehaviorPortEditPart.java
index bfbd97b48d2..9306c89f3e8 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/AbstractBehaviorPortEditPart.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/AbstractBehaviorPortEditPart.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Patrick Tessier (CEA LIST) Patrick.Tessier@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.parts;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/AbstractObservationEditPart.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/AbstractObservationEditPart.java
index 78d720bcbbc..f1a30100567 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/AbstractObservationEditPart.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/AbstractObservationEditPart.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConnectorMultiplicitySourceEditPart.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConnectorMultiplicitySourceEditPart.java
index cdba198cff9..d450f893957 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConnectorMultiplicitySourceEditPart.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConnectorMultiplicitySourceEditPart.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2011 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * CEA LIST - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.parts;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConnectorMultiplicityTargetEditPart.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConnectorMultiplicityTargetEditPart.java
index 5f875f51174..960f7c15883 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConnectorMultiplicityTargetEditPart.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConnectorMultiplicityTargetEditPart.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2011 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * CEA LIST - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.parts;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConstrainedNamedElementEditPart.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConstrainedNamedElementEditPart.java
index 2664d39adf5..7ee398339c9 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConstrainedNamedElementEditPart.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConstrainedNamedElementEditPart.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2011 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * CEA LIST - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.parts;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConstrainedShapeNodeEditPart.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConstrainedShapeNodeEditPart.java
index bba09d9c558..d4b24139e21 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConstrainedShapeNodeEditPart.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/ConstrainedShapeNodeEditPart.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2011 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * CEA LIST - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.parts;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/CustomEditPartFactory.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/CustomEditPartFactory.java
index 13cbda0a9f7..dc3a9a0ede8 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/CustomEditPartFactory.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/CustomEditPartFactory.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2011 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * CEA LIST - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.parts;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/PropertyPartEditPartCN.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/PropertyPartEditPartCN.java
index dc7892b359e..838c0f7f303 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/PropertyPartEditPartCN.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/parts/PropertyPartEditPartCN.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/AbstractCustomLabelEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/AbstractCustomLabelEditPolicy.java
index 6a142d9e332..7db86e3c8c9 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/AbstractCustomLabelEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/AbstractCustomLabelEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,8 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.policies;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorLayoutEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorLayoutEditPolicy.java
index 8ec958937d6..3edaf9c5b1e 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorLayoutEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorLayoutEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorPortEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorPortEditPolicy.java
index 3c1c297bf24..6191de88a05 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorPortEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorPortEditPolicy.java
@@ -1,14 +1,15 @@
-/*****************************************************************************
- * Copyright (c) 2013, 2014 CEA LIST and others.
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST and others.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
- * Contributors:
+ * Contributors:
* Patrick Tessier (CEA LIST) - Initial API and implementation
- * Christian W. Damus (CEA) - bug 323802
+ * Christian W. Damus (CEA) - bug 323802
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.policies;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorResizableShapeEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorResizableShapeEditPolicy.java
index 3fc31af011c..c592a1bc602 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorResizableShapeEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorResizableShapeEditPolicy.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2011 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * CEA LIST - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.policies;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorSymbolEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorSymbolEditPolicy.java
index daeb0198b98..adce2c33864 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorSymbolEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/BehaviorSymbolEditPolicy.java
@@ -1,14 +1,15 @@
-/*****************************************************************************
- * Copyright (c) 2013, 2014 CEA LIST and others.
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST and others.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
- * Contributors:
+ * Contributors:
* Patrick Tessier (CEA LIST) - Initial API and implementation
- * Christian W. Damus (CEA) - bug 323802
+ * Christian W. Damus (CEA) - bug 323802
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.policies;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationCompositeCompartmentItemSemanticEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationCompositeCompartmentItemSemanticEditPolicy.java
index f183c0623a2..59d93e76318 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationCompositeCompartmentItemSemanticEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationCompositeCompartmentItemSemanticEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationRoleItemSemanticEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationRoleItemSemanticEditPolicy.java
index 088171d698f..006d87bb126 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationRoleItemSemanticEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationRoleItemSemanticEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009-2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationUseItemSemanticEditPolicyCN.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationUseItemSemanticEditPolicyCN.java
index 6d250074886..d6fcc043b9e 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationUseItemSemanticEditPolicyCN.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationUseItemSemanticEditPolicyCN.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationUseLabelEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationUseLabelEditPolicy.java
index b3513969670..b665a4edc67 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationUseLabelEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CollaborationUseLabelEditPolicy.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Remi Schnekenburger (CEA LIST) remi.schnekenburger@cea.fr - Initial API and implementation
- * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - customization for CollaborationUse
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.policies;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CustomDiagramDragDropEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CustomDiagramDragDropEditPolicy.java
index e05a249a62d..498aa7dbc36 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CustomDiagramDragDropEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/CustomDiagramDragDropEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 - 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -9,7 +9,7 @@
*
* Contributors:
* Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr (adds drop for Comment and Constraint)
+ *
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.policies;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/EncapsulatedClassifierResizableShapeEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/EncapsulatedClassifierResizableShapeEditPolicy.java
index 76def34ef67..3d6ac03ad7b 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/EncapsulatedClassifierResizableShapeEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/EncapsulatedClassifierResizableShapeEditPolicy.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2011 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * CEA LIST - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.policies;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ExternalLabelPrimaryDragRoleEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ExternalLabelPrimaryDragRoleEditPolicy.java
index f517a9992c5..ff73ff37887 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ExternalLabelPrimaryDragRoleEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ExternalLabelPrimaryDragRoleEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/GraphicalNodeEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/GraphicalNodeEditPolicy.java
index 781d04ce5c9..170f7758079 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/GraphicalNodeEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/GraphicalNodeEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -9,7 +9,6 @@
*
* Contributors:
* Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
- * Vincent Lorenzo(CEA LIST) vincent.lorenzo@cea.fr
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.policies;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/InformationFlowCustomLabelEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/InformationFlowCustomLabelEditPolicy.java
index 79c545c47e5..7932387afdf 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/InformationFlowCustomLabelEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/InformationFlowCustomLabelEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,8 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.policies;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoConnectableEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoConnectableEditPolicy.java
index 277e77f5ea8..1f9549987b8 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoConnectableEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoConnectableEditPolicy.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * CEA LIST - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.policies;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoDeleteFromDiagramEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoDeleteFromDiagramEditPolicy.java
index 66e97fa9658..ccb2ec18b22 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoDeleteFromDiagramEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoDeleteFromDiagramEditPolicy.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * CEA LIST - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.policies;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoScrollBehaviorResizableShapeEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoScrollBehaviorResizableShapeEditPolicy.java
index 3982313e19f..4c7d2de4da0 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoScrollBehaviorResizableShapeEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoScrollBehaviorResizableShapeEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2011 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Patrick Tessier (CEA LIST) patrick.tessier@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.policies;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoScrollClassifierResizableShapeEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoScrollClassifierResizableShapeEditPolicy.java
index d34add28e25..02c6dadb676 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoScrollClassifierResizableShapeEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/NoScrollClassifierResizableShapeEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2011 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Patrick Tessier (CEA LIST) patrick.tessier@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.policies;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ObservationLayoutEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ObservationLayoutEditPolicy.java
index 821ab38286c..8744bb9514c 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ObservationLayoutEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ObservationLayoutEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ParameterItemSemanticEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ParameterItemSemanticEditPolicy.java
index 9ff41e02585..759e9f3341e 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ParameterItemSemanticEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ParameterItemSemanticEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010-2011 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ParameterLabelEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ParameterLabelEditPolicy.java
index b6e342c4eeb..bab2e13a217 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ParameterLabelEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ParameterLabelEditPolicy.java
@@ -1,13 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Remi Schnekenburger (CEA LIST) remi.schnekenburger@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ParameterLayoutEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ParameterLayoutEditPolicy.java
index 87a7d570498..68d56a4afd3 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ParameterLayoutEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/ParameterLayoutEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PortInCompartmentCreationEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PortInCompartmentCreationEditPolicy.java
index 3f3cb2c9bd6..5515b54c4f4 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PortInCompartmentCreationEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PortInCompartmentCreationEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 - 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PortLayoutEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PortLayoutEditPolicy.java
index b1aceb3455a..30f58149dc5 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PortLayoutEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PortLayoutEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PropertyLayoutEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PropertyLayoutEditPolicy.java
index eef47280875..1421cc181f8 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PropertyLayoutEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PropertyLayoutEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PropertyPartCompartmentItemSemanticEditPolicyCN.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PropertyPartCompartmentItemSemanticEditPolicyCN.java
index 0db93d39684..c563f2eedd0 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PropertyPartCompartmentItemSemanticEditPolicyCN.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/PropertyPartCompartmentItemSemanticEditPolicyCN.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/RemoveOrphanViewPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/RemoveOrphanViewPolicy.java
index 62b5c46c731..c8ae65e8ed7 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/RemoveOrphanViewPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/RemoveOrphanViewPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,10 +8,8 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Patrick Tessier (CEA LIST) Patrick.Tessier@cea.fr - Initial API and implementation
- * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Adaptation for Composite Diagram
-
- *
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.edit.policies;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/StructuredClassifierLayoutEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/StructuredClassifierLayoutEditPolicy.java
index 4a469247eff..2cdf45066fa 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/StructuredClassifierLayoutEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/edit/policies/StructuredClassifierLayoutEditPolicy.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/AbstractObservationNodeFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/AbstractObservationNodeFigure.java
index d2dc4b4ab3f..3d2e75953ad 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/AbstractObservationNodeFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/AbstractObservationNodeFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ActivityCompositeFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ActivityCompositeFigure.java
index 16d790101dd..65123e846fe 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ActivityCompositeFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ActivityCompositeFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ClassCompositeFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ClassCompositeFigure.java
index 22c23401d7e..0e5d6ebdf06 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ClassCompositeFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ClassCompositeFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CollaborationCompositeFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CollaborationCompositeFigure.java
index 4e8d5d3cd44..3b550ff59d8 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CollaborationCompositeFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CollaborationCompositeFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CollaborationRoleFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CollaborationRoleFigure.java
index a1c30cf3497..6d5f0cf1dad 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CollaborationRoleFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CollaborationRoleFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CollaborationUseFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CollaborationUseFigure.java
index 2099d1dff41..4fe05d22bdf 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CollaborationUseFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CollaborationUseFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ComponentCompositeFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ComponentCompositeFigure.java
index d28d0536c9b..405a0dbb767 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ComponentCompositeFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ComponentCompositeFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CompositeFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CompositeFigure.java
index 34b89bb7e3c..c8b69c6b4a0 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CompositeFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/CompositeFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ConnectorFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ConnectorFigure.java
index 0913111c6c8..201ae9531d0 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ConnectorFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ConnectorFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/DeviceCompositeFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/DeviceCompositeFigure.java
index 5420abb2194..7890d76510c 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/DeviceCompositeFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/DeviceCompositeFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/DurationObservationNodeFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/DurationObservationNodeFigure.java
index 4deafc84734..b5e88fb864c 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/DurationObservationNodeFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/DurationObservationNodeFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ExecutionEnvironmentCompositeFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ExecutionEnvironmentCompositeFigure.java
index 0172bb631df..301cad27cc5 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ExecutionEnvironmentCompositeFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ExecutionEnvironmentCompositeFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/FunctionBehaviorCompositeFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/FunctionBehaviorCompositeFigure.java
index 3d35bf8844b..c4fecf18c60 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/FunctionBehaviorCompositeFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/FunctionBehaviorCompositeFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InformationFlowFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InformationFlowFigure.java
index 62039a4fa60..da9a306d3be 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InformationFlowFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InformationFlowFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.figures;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InformationItemFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InformationItemFigure.java
index 872451dc8fe..8a8ce7ffd2d 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InformationItemFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InformationItemFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.figures;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InteractionCompositeFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InteractionCompositeFigure.java
index c38e5788e8f..689fa6c91bf 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InteractionCompositeFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InteractionCompositeFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InterfaceCompositeFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InterfaceCompositeFigure.java
index 416606675fe..dcd48cd724f 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InterfaceCompositeFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/InterfaceCompositeFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/NodeCompositeFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/NodeCompositeFigure.java
index d55a684911f..4385e059b55 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/NodeCompositeFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/NodeCompositeFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/OpaqueBehaviorCompositeFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/OpaqueBehaviorCompositeFigure.java
index 47becbbc132..44144da9753 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/OpaqueBehaviorCompositeFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/OpaqueBehaviorCompositeFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ParameterFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ParameterFigure.java
index 116475cbef4..5a07ca04b18 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ParameterFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ParameterFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/PortFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/PortFigure.java
index e3116b24006..7d3f19620ec 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/PortFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/PortFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/PropertyPartFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/PropertyPartFigure.java
index 313b045bbe5..eeb4a77a410 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/PropertyPartFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/PropertyPartFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ProtocolStateMachineCompositeFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ProtocolStateMachineCompositeFigure.java
index fc644b69913..88ba106b96f 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ProtocolStateMachineCompositeFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/ProtocolStateMachineCompositeFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/RepresentationFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/RepresentationFigure.java
index adb2bdb2dbb..bc65e7e290d 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/RepresentationFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/RepresentationFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.figures;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/RoleBindingFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/RoleBindingFigure.java
index 4e3788fdb44..a5a5ae4f06f 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/RoleBindingFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/RoleBindingFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/StateMachineCompositeFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/StateMachineCompositeFigure.java
index 9448aa1e9ba..cf5bc09179a 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/StateMachineCompositeFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/StateMachineCompositeFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/TimeObservationNodeFigure.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/TimeObservationNodeFigure.java
index cb0f4ec1798..12e1eb1c277 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/TimeObservationNodeFigure.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/figures/TimeObservationNodeFigure.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/CollaborationHelper.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/CollaborationHelper.java
index 15f33b34071..36305aa0dbc 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/CollaborationHelper.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/CollaborationHelper.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - customization for CollaborationUse
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.helper;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/CollaborationUseLabelHelper.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/CollaborationUseLabelHelper.java
index b6c3a12449e..0b5b1927e1c 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/CollaborationUseLabelHelper.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/CollaborationUseLabelHelper.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Remi Schnekenburger (CEA LIST) remi.schnekenburger@cea.fr - Initial API and implementation
- * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - customization for CollaborationUse
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.helper;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/CompositeLinkMappingHelper.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/CompositeLinkMappingHelper.java
index 8f1d2ad2a97..d3712b8281b 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/CompositeLinkMappingHelper.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/CompositeLinkMappingHelper.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/ConnectorHelper.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/ConnectorHelper.java
index f3d0f374917..d6b1eb1ff78 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/ConnectorHelper.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/ConnectorHelper.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -9,7 +9,7 @@
*
* Contributors:
* Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr
+ *
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.helper;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/DurationObservationHelper.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/DurationObservationHelper.java
index 746501dc00c..52628030af7 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/DurationObservationHelper.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/DurationObservationHelper.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.helper;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/ParameterLabelHelper.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/ParameterLabelHelper.java
index d23ffacaf31..8cf4d8290c7 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/ParameterLabelHelper.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/ParameterLabelHelper.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2009 - 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Remi Schnekenburger (CEA LIST) remi.schnekenburger@cea.fr - Initial API and implementation
- * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Customization for Parameter
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.helper;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/TimeObservationHelper.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/TimeObservationHelper.java
index 634eee82379..4580613da0e 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/TimeObservationHelper.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/TimeObservationHelper.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.helper;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/TypeHelper.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/TypeHelper.java
index ad12216da45..eaf11fd3cfb 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/TypeHelper.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/TypeHelper.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - customization for CollaborationUse
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.helper;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/advice/CollaborationHelperAdvice.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/advice/CollaborationHelperAdvice.java
index fcbf8d51875..f51475327ea 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/advice/CollaborationHelperAdvice.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/advice/CollaborationHelperAdvice.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.helper.advice;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/advice/GeneralizationHelperAdvice.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/advice/GeneralizationHelperAdvice.java
index 32e22c13d27..42546bade18 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/advice/GeneralizationHelperAdvice.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/advice/GeneralizationHelperAdvice.java
@@ -1,13 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
- *
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.helper.advice;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/advice/PropertyHelperAdvice.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/advice/PropertyHelperAdvice.java
index bd0150ddb0d..326146ec75e 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/advice/PropertyHelperAdvice.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/helper/advice/PropertyHelperAdvice.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.helper.advice;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/BehaviorPortLocator.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/BehaviorPortLocator.java
index 0905977500b..b6b07450bdb 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/BehaviorPortLocator.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/BehaviorPortLocator.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * Patrick Tessier (CEA LIST) - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.locators;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/ExternalPortPositionLocator.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/ExternalPortPositionLocator.java
index be7a1793d74..44d1ecfc60c 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/ExternalPortPositionLocator.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/ExternalPortPositionLocator.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.locators;
import org.eclipse.draw2d.IFigure;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/InternalPortPositionLocator.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/InternalPortPositionLocator.java
index 473ce9e27f1..a25147483d8 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/InternalPortPositionLocator.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/InternalPortPositionLocator.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.locators;
import org.eclipse.draw2d.IFigure;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/PortPositionLocator.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/PortPositionLocator.java
index 859b35ed612..b72864e3717 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/PortPositionLocator.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/locators/PortPositionLocator.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009-2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -9,7 +9,7 @@
*
* Contributors:
* Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
- * Vincent Lorenzo(CEA-List) vincent.lorenzo@cea.fr - getCurrentSideOfParent()
+ *
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.locators;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/log/Log.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/log/Log.java
index 61c7a1e543c..4260b7a30cf 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/log/Log.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/log/Log.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/messages/Messages.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/messages/Messages.java
index cd1cfab2b10..6530efaa9c8 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/messages/Messages.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/messages/Messages.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.messages;
import org.eclipse.osgi.util.NLS;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/ConnectorLabelParser.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/ConnectorLabelParser.java
index dfabf0d1167..04bd86eaee1 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/ConnectorLabelParser.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/ConnectorLabelParser.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2011 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * CEA LIST - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.parsers;
@@ -20,6 +20,7 @@ import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.uml2.uml.Connector;
import org.eclipse.uml2.uml.UMLPackage;
@@ -37,7 +38,7 @@ public class ConnectorLabelParser extends NamedElementLabelParser {
@Override
public String getPrintString(IAdaptable element, int flags) {
String result = "";
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(element);
if((eObject != null) && (eObject instanceof Connector)) {
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/MultiplicityLabelParser.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/MultiplicityLabelParser.java
index 2e1a6a7c50d..1bd38a30d29 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/MultiplicityLabelParser.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/MultiplicityLabelParser.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2011 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * CEA LIST - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.parsers;
@@ -26,6 +26,7 @@ import org.eclipse.gmf.runtime.common.ui.services.parser.IParserEditStatus;
import org.eclipse.gmf.runtime.common.ui.services.parser.ParserEditStatus;
import org.eclipse.gmf.runtime.emf.ui.services.parser.ISemanticParser;
import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.uml.tools.utils.ValueSpecificationUtil;
import org.eclipse.uml2.uml.MultiplicityElement;
import org.eclipse.uml2.uml.Property;
@@ -42,7 +43,7 @@ public class MultiplicityLabelParser implements ISemanticParser {
public String getPrintString(IAdaptable element, int flags) {
String result = "";
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(element);
if((eObject != null) && (eObject instanceof MultiplicityElement)) {
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/NamedElementLabelParser.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/NamedElementLabelParser.java
index 6bf6139fa27..b0306a36bb5 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/NamedElementLabelParser.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/NamedElementLabelParser.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2011 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * CEA LIST - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.parsers;
@@ -28,6 +28,7 @@ import org.eclipse.gmf.runtime.emf.type.core.requests.SetRequest;
import org.eclipse.gmf.runtime.emf.ui.services.parser.ISemanticParser;
import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
import org.eclipse.papyrus.infra.core.services.ServiceException;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils;
import org.eclipse.papyrus.uml.diagram.common.Activator;
import org.eclipse.uml2.uml.NamedElement;
@@ -44,7 +45,7 @@ public class NamedElementLabelParser implements ISemanticParser {
public String getEditString(IAdaptable element, int flags) {
String editString = "";
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(element);
if((eObject != null) && (eObject instanceof NamedElement)) {
NamedElement semElement = (NamedElement)eObject;
if(semElement.isSetName()) {
@@ -68,7 +69,7 @@ public class NamedElementLabelParser implements ISemanticParser {
ICommand command = UnexecutableCommand.INSTANCE;
- EObject objectToEdit = (EObject)element.getAdapter(EObject.class);
+ EObject objectToEdit = EMFHelper.getEObject(element);
if(objectToEdit == null) {
return UnexecutableCommand.INSTANCE;
}
@@ -87,7 +88,7 @@ public class NamedElementLabelParser implements ISemanticParser {
*/
public String getPrintString(IAdaptable element, int flags) {
String result = "";
- EObject eObject = (EObject)element.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(element);
if(eObject instanceof NamedElement) {
return ((NamedElement)eObject).getName();
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/RoleBindingRoleNameParser.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/RoleBindingRoleNameParser.java
index a5ae2d6f7f7..9b96a4b4c6d 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/RoleBindingRoleNameParser.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parsers/RoleBindingRoleNameParser.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -25,6 +25,7 @@ import org.eclipse.gmf.runtime.common.ui.services.parser.IParserEditStatus;
import org.eclipse.gmf.runtime.common.ui.services.parser.ParserEditStatus;
import org.eclipse.gmf.runtime.emf.ui.services.parser.ISemanticParser;
import org.eclipse.jface.text.contentassist.IContentAssistProcessor;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.uml2.uml.Dependency;
import org.eclipse.uml2.uml.NamedElement;
import org.eclipse.uml2.uml.UMLPackage;
@@ -145,7 +146,7 @@ public class RoleBindingRoleNameParser implements ISemanticParser {
* @return the {@link Dependency} adapted from the adaptable
*/
private Dependency doAdapt(IAdaptable adaptable) {
- Dependency element = (Dependency)adaptable.getAdapter(EObject.class);
+ Dependency element = (Dependency)EMFHelper.getEObject(adaptable);
return element;
}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parts/PropertyDiagramUpdater.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parts/PropertyDiagramUpdater.java
index 62742d5d2b4..ecbfff504d0 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parts/PropertyDiagramUpdater.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/parts/PropertyDiagramUpdater.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/CustomDiagramPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/CustomDiagramPreferencePage.java
index d4ddd9455f7..392f55bd7cc 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/CustomDiagramPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/CustomDiagramPreferencePage.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Patrick Tessier (CEA LIST) patrick.tessier@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.preferences;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/IPapyrusCollaborationUsePreferencesConstant.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/IPapyrusCollaborationUsePreferencesConstant.java
index 8c657cc7cf7..b25ecfe0061 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/IPapyrusCollaborationUsePreferencesConstant.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/IPapyrusCollaborationUsePreferencesConstant.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Remi Schnekenburger (CEA LIST) - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.preferences;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/IPapyrusPropertyPreferencesConstant.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/IPapyrusPropertyPreferencesConstant.java
index 4c89f19fd6d..51c08ee01f3 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/IPapyrusPropertyPreferencesConstant.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/IPapyrusPropertyPreferencesConstant.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Remi Schnekenburger (CEA LIST) - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.preferences;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/IParameterPreferencesConstant.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/IParameterPreferencesConstant.java
index 9fa44446d2e..4f4f37d5721 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/IParameterPreferencesConstant.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/preferences/IParameterPreferencesConstant.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Remi Schnekenburger (CEA LIST) - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.preferences;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/providers/ActionStateSourceProvider.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/providers/ActionStateSourceProvider.java
index 5d9f405f484..39835347ef3 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/providers/ActionStateSourceProvider.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/providers/ActionStateSourceProvider.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.providers;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/providers/CustomEditPartProvider.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/providers/CustomEditPartProvider.java
index f62186b1a2a..aa95b7c722d 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/providers/CustomEditPartProvider.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/providers/CustomEditPartProvider.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2011 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * CEA LIST - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.providers;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/providers/CustomParserProvider.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/providers/CustomParserProvider.java
index 72c9c15566c..932e39f4080 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/providers/CustomParserProvider.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/providers/CustomParserProvider.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2011 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * CEA LIST - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.providers;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/CollaborationRoleTreeContentProvider.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/CollaborationRoleTreeContentProvider.java
index 3a9469473e1..f1a79002446 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/CollaborationRoleTreeContentProvider.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/CollaborationRoleTreeContentProvider.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/CollaborationRoleValidator.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/CollaborationRoleValidator.java
index 41ac8ab260f..59f68cca8b2 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/CollaborationRoleValidator.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/CollaborationRoleValidator.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/CreateUmlElementDialog.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/CreateUmlElementDialog.java
index 18eadc2e809..9def59bb639 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/CreateUmlElementDialog.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/CreateUmlElementDialog.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.ui;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/InformationItemElementTreeSelectionDialog.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/InformationItemElementTreeSelectionDialog.java
index ce46e35c6c1..3771e718f72 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/InformationItemElementTreeSelectionDialog.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/InformationItemElementTreeSelectionDialog.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/InformationItemValidator.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/InformationItemValidator.java
index 5a0c1087747..b57168ad215 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/InformationItemValidator.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/InformationItemValidator.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/InterfaceManagerDialog.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/InterfaceManagerDialog.java
index 94cfcc340e3..a1539ffe449 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/InterfaceManagerDialog.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/InterfaceManagerDialog.java
@@ -1,7 +1,7 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
- *
- *
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/NameLabelValidator.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/NameLabelValidator.java
index 364a87e66c5..32a56babeaa 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/NameLabelValidator.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/NameLabelValidator.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2009 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.ui;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/NewElementRepresentation.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/NewElementRepresentation.java
index a405ece6a79..5befe27ca80 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/NewElementRepresentation.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/ui/NewElementRepresentation.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.ui;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/utils/CompositeEditPartUtil.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/utils/CompositeEditPartUtil.java
index d445e9cc4bf..2c1c6ebfd4b 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/utils/CompositeEditPartUtil.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/utils/CompositeEditPartUtil.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
@@ -8,7 +8,7 @@
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - customization for CollaborationUse
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.utils;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/utils/GeneralizationUtil.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/utils/GeneralizationUtil.java
index 6876f8db40a..0a2541b84d2 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/utils/GeneralizationUtil.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/custom-src/org/eclipse/papyrus/uml/diagram/composite/custom/utils/GeneralizationUtil.java
@@ -1,13 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2010 CEA LIST.
- *
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.custom.utils;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/edit/parts/BehaviorPortEditPart.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/edit/parts/BehaviorPortEditPart.java
index 945762ccc2a..70f0f3fb8de 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/edit/parts/BehaviorPortEditPart.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/edit/parts/BehaviorPortEditPart.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * Patrick Tessier (CEA LIST) - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.edit.parts;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/edit/parts/BehaviorPortLinkEditPart.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/edit/parts/BehaviorPortLinkEditPart.java
index d3971b88c55..c91090b160c 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/edit/parts/BehaviorPortLinkEditPart.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/edit/parts/BehaviorPortLinkEditPart.java
@@ -1,14 +1,14 @@
/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
+ * Copyright (c) 2009-2011 CEA LIST.
*
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
- *
- * Patrick Tessier (CEA LIST) - Initial API and implementation
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
*
*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.edit.parts;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/edit/policies/UMLBaseItemSemanticEditPolicy.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/edit/policies/UMLBaseItemSemanticEditPolicy.java
index 02b40944d4b..34b84403d33 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/edit/policies/UMLBaseItemSemanticEditPolicy.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/edit/policies/UMLBaseItemSemanticEditPolicy.java
@@ -1,6 +1,16 @@
-/*
- *
- */
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.edit.policies;
import java.util.Iterator;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/AbstractionPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/AbstractionPreferencePage.java
index 5784d2315ae..19ad312177d 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/AbstractionPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/AbstractionPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ActivityPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ActivityPreferencePage.java
index 38649dc1056..96aa2fe9c70 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ActivityPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ActivityPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ActorPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ActorPreferencePage.java
index 15b7df651e8..259083f7557 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ActorPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ActorPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/AnyReceiveEventPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/AnyReceiveEventPreferencePage.java
index 43a7e65bb2b..f103443f0e3 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/AnyReceiveEventPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/AnyReceiveEventPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ArtifactPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ArtifactPreferencePage.java
index d558616d3f7..c6cbd8ca046 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ArtifactPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ArtifactPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CallEventPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CallEventPreferencePage.java
index 225252dae3d..52ead3b885d 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CallEventPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CallEventPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ChangeEventPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ChangeEventPreferencePage.java
index 00c41aea924..a33b4149df3 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ChangeEventPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ChangeEventPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ClassPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ClassPreferencePage.java
index 0de2fdae5b1..85da499cda6 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ClassPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ClassPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CollaborationPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CollaborationPreferencePage.java
index 67b01474540..28f56ec82c5 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CollaborationPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CollaborationPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CollaborationRolePreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CollaborationRolePreferencePage.java
index 63b96188aa6..328b989c2fc 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CollaborationRolePreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CollaborationRolePreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CollaborationUsePreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CollaborationUsePreferencePage.java
index b2ff39cb188..a3e4a4c159b 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CollaborationUsePreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CollaborationUsePreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CommentAnnotatedElementPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CommentAnnotatedElementPreferencePage.java
index a3b38374648..8079a97c3c2 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CommentAnnotatedElementPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CommentAnnotatedElementPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CommentPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CommentPreferencePage.java
index 08ce7ddf700..645ebd916aa 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CommentPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/CommentPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ComponentPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ComponentPreferencePage.java
index 6a18edb3294..b5aab213b35 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ComponentPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ComponentPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ComponentRealizationPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ComponentRealizationPreferencePage.java
index 64f77778e95..946b34bab0e 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ComponentRealizationPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ComponentRealizationPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ConnectorPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ConnectorPreferencePage.java
index c21ff33df8b..4f1dfdb5c2b 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ConnectorPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ConnectorPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ConstraintConstrainedElementPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ConstraintConstrainedElementPreferencePage.java
index d257318efdf..84faf341be6 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ConstraintConstrainedElementPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ConstraintConstrainedElementPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ConstraintPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ConstraintPreferencePage.java
index b2299a96316..891f1e08d0c 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ConstraintPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ConstraintPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DataTypePreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DataTypePreferencePage.java
index 4e17e926061..13cec262da5 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DataTypePreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DataTypePreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DependencyPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DependencyPreferencePage.java
index 1e3e45e4cfd..099a8d2670a 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DependencyPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DependencyPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DeploymentPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DeploymentPreferencePage.java
index d94e41692eb..c2470f632ce 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DeploymentPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DeploymentPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DeploymentSpecificationPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DeploymentSpecificationPreferencePage.java
index 12087ff2d2c..34ff77625f0 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DeploymentSpecificationPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DeploymentSpecificationPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DevicePreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DevicePreferencePage.java
index 5e0d8f29ffe..fc3bf87253a 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DevicePreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DevicePreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationConstraintPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationConstraintPreferencePage.java
index 43f9152f387..94192132a22 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationConstraintPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationConstraintPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationIntervalPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationIntervalPreferencePage.java
index d5d03be8dc2..7094d96a74a 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationIntervalPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationIntervalPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationObservationEventPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationObservationEventPreferencePage.java
index b8327a45d65..b15a43f2610 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationObservationEventPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationObservationEventPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationObservationPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationObservationPreferencePage.java
index 0b5c086a255..ea53093fc9b 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationObservationPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationObservationPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationPreferencePage.java
index f285c808b22..04f587b614d 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/DurationPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/EnumerationLiteralPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/EnumerationLiteralPreferencePage.java
index 4b3ba535218..4977377111f 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/EnumerationLiteralPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/EnumerationLiteralPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/EnumerationPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/EnumerationPreferencePage.java
index bec59a3d6f1..54e9ef01732 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/EnumerationPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/EnumerationPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ExecutionEnvironmentPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ExecutionEnvironmentPreferencePage.java
index 1baeff4692d..6a2b939889a 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ExecutionEnvironmentPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ExecutionEnvironmentPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ExpressionPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ExpressionPreferencePage.java
index 83079aef14b..f6b697bce4b 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ExpressionPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ExpressionPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/FunctionBehaviorPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/FunctionBehaviorPreferencePage.java
index 88774d91550..5cbf92d2560 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/FunctionBehaviorPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/FunctionBehaviorPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/GeneralizationPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/GeneralizationPreferencePage.java
index e735526ea0d..ca6c4480703 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/GeneralizationPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/GeneralizationPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InformationFlowPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InformationFlowPreferencePage.java
index 7d63838f353..267d472335c 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InformationFlowPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InformationFlowPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InformationItemPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InformationItemPreferencePage.java
index 5fda11bb3f1..2dc4d2aa3d2 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InformationItemPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InformationItemPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InstanceValuePreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InstanceValuePreferencePage.java
index 8fb57f4fabf..80ed9736a46 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InstanceValuePreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InstanceValuePreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InteractionConstraintPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InteractionConstraintPreferencePage.java
index 654001f8b59..1d075b36b78 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InteractionConstraintPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InteractionConstraintPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InteractionPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InteractionPreferencePage.java
index 076e3ec347f..24c5a8a1e1b 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InteractionPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InteractionPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InterfacePreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InterfacePreferencePage.java
index 806415a7568..96b934167d7 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InterfacePreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InterfacePreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InterfaceRealizationPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InterfaceRealizationPreferencePage.java
index 342dad54f51..cb287aac651 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InterfaceRealizationPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/InterfaceRealizationPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/IntervalConstraintPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/IntervalConstraintPreferencePage.java
index f7830d82b76..b6962187173 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/IntervalConstraintPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/IntervalConstraintPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/IntervalPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/IntervalPreferencePage.java
index ad162128091..b1d464bfa11 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/IntervalPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/IntervalPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralBooleanPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralBooleanPreferencePage.java
index 11108fb030d..11b80c7c2b8 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralBooleanPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralBooleanPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralIntegerPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralIntegerPreferencePage.java
index 5906356e13f..cad737be8c3 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralIntegerPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralIntegerPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralNullPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralNullPreferencePage.java
index 74719be5043..6ace6f39f36 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralNullPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralNullPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralStringPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralStringPreferencePage.java
index b1638c39e94..d1a8f32128d 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralStringPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralStringPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralUnlimitedNaturalPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralUnlimitedNaturalPreferencePage.java
index deac6b15026..282b0825daf 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralUnlimitedNaturalPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/LiteralUnlimitedNaturalPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ManifestationPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ManifestationPreferencePage.java
index b39daeb04a2..132c065a9b8 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ManifestationPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ManifestationPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/NodePreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/NodePreferencePage.java
index 23831613f02..3c26dbaba69 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/NodePreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/NodePreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/OpaqueBehaviorPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/OpaqueBehaviorPreferencePage.java
index 2697a244212..55f23926601 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/OpaqueBehaviorPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/OpaqueBehaviorPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/OpaqueExpressionPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/OpaqueExpressionPreferencePage.java
index b007a147201..23eb5710f7e 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/OpaqueExpressionPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/OpaqueExpressionPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/OperationPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/OperationPreferencePage.java
index 36b361a0b2b..1d4d918a7fc 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/OperationPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/OperationPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ParameterPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ParameterPreferencePage.java
index f8502b604d5..3fe6d8e875a 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ParameterPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ParameterPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/PortPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/PortPreferencePage.java
index 486c4fe1e85..dbefc3c1d73 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/PortPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/PortPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/PrimitiveTypePreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/PrimitiveTypePreferencePage.java
index 04261825579..0f16aa9b4b9 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/PrimitiveTypePreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/PrimitiveTypePreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/PropertyPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/PropertyPreferencePage.java
index 61c6e34293c..bc2aa52b5a7 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/PropertyPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/PropertyPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ProtocolStateMachinePreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ProtocolStateMachinePreferencePage.java
index 6c0c838b51a..8786d770f50 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ProtocolStateMachinePreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ProtocolStateMachinePreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/RealizationPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/RealizationPreferencePage.java
index 490f1f0c1db..45b6961e8d3 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/RealizationPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/RealizationPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ReceptionPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ReceptionPreferencePage.java
index cfd28bf439d..c012c59352a 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ReceptionPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/ReceptionPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/RoleBindingPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/RoleBindingPreferencePage.java
index 99c6ff1b52c..c58c49c3416 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/RoleBindingPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/RoleBindingPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/SignalEventPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/SignalEventPreferencePage.java
index b8a38f9f02e..ba7e1a8e5cf 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/SignalEventPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/SignalEventPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/SignalPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/SignalPreferencePage.java
index 61d194acbbb..21e8f2a02e5 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/SignalPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/SignalPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/StateMachinePreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/StateMachinePreferencePage.java
index 7e2ac776815..975b877ce95 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/StateMachinePreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/StateMachinePreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/StringExpressionPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/StringExpressionPreferencePage.java
index 73f5f7ce093..ed6dd10c70a 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/StringExpressionPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/StringExpressionPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/SubstitutionPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/SubstitutionPreferencePage.java
index b00d0a5e74e..e434983f347 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/SubstitutionPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/SubstitutionPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeConstraintPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeConstraintPreferencePage.java
index 5561d5ad9c8..72c77d525d5 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeConstraintPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeConstraintPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeEventPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeEventPreferencePage.java
index bcde0a433ee..a423637012c 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeEventPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeEventPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeExpressionPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeExpressionPreferencePage.java
index 23ed64c4c42..24b7f5839c0 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeExpressionPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeExpressionPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeIntervalPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeIntervalPreferencePage.java
index 0dd3553effd..c0e67607e88 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeIntervalPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeIntervalPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeObservationEventPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeObservationEventPreferencePage.java
index 393fc8bf7fd..a0e0a71041f 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeObservationEventPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeObservationEventPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeObservationPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeObservationPreferencePage.java
index dd8395016a5..89ac2ff6d74 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeObservationPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/TimeObservationPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/UndefinedPreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/UndefinedPreferencePage.java
index 3c928a4535a..badb696606b 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/UndefinedPreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/UndefinedPreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/UsagePreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/UsagePreferencePage.java
index a141a680a67..25eb67ff157 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/UsagePreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/UsagePreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import java.util.Map;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/UseCasePreferencePage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/UseCasePreferencePage.java
index aa9924e035e..7722b8eccf9 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/UseCasePreferencePage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/preferences/UseCasePreferencePage.java
@@ -1,3 +1,16 @@
+/*****************************************************************************
+ * Copyright (c) 2009-2011 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Yann Tanguy (CEA LIST) yann.tanguy@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
package org.eclipse.papyrus.uml.diagram.composite.preferences;
import org.eclipse.jface.preference.IPreferenceStore;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/providers/UMLViewProvider.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/providers/UMLViewProvider.java
index 3388d74d505..f1cd92bfe55 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/providers/UMLViewProvider.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.composite/src/org/eclipse/papyrus/uml/diagram/composite/providers/UMLViewProvider.java
@@ -53,6 +53,7 @@ import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.gmf.runtime.notation.datatype.RelativeBendpoint;
import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.preference.PreferenceConverter;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.extendedtypes.types.IExtendedHintedElementType;
import org.eclipse.papyrus.infra.extendedtypes.util.ElementTypeUtils;
import org.eclipse.papyrus.infra.gmfdiag.common.preferences.PreferencesConstantsHelper;
@@ -3296,7 +3297,7 @@ public class UMLViewProvider extends AbstractProvider implements IViewProvider {
if(semanticAdapter == null) {
return null;
}
- EObject eObject = (EObject)semanticAdapter.getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(semanticAdapter);
if(eObject != null) {
return EMFCoreUtil.resolve(TransactionUtil.getEditingDomain(eObject), eObject);
}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.dnd/META-INF/MANIFEST.MF b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.dnd/META-INF/MANIFEST.MF
index 9954ab0c1d1..931021c81fc 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.dnd/META-INF/MANIFEST.MF
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.dnd/META-INF/MANIFEST.MF
@@ -9,9 +9,9 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
org.eclipse.papyrus.uml.tools;bundle-version="1.0.0",
org.eclipse.papyrus.uml.diagram.clazz;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.0",
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
- org.eclipse.papyrus.uml.diagram.composite;bundle-version="1.0.0"
+ org.eclipse.papyrus.uml.diagram.composite;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="1.0.0"
Export-Package: org.eclipse.papyrus.uml.diagram.dnd,
org.eclipse.papyrus.uml.diagram.dnd.strategy.instancespecification,
org.eclipse.papyrus.uml.diagram.dnd.strategy.instancespecification.command,
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.interactionoverview/META-INF/MANIFEST.MF b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.interactionoverview/META-INF/MANIFEST.MF
index 7eba98fc56d..f5cade54750 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.interactionoverview/META-INF/MANIFEST.MF
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.interactionoverview/META-INF/MANIFEST.MF
@@ -34,11 +34,12 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.papyrus.uml.tools.utils;bundle-version="1.0.0",
org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
org.eclipse.papyrus.uml.diagram.modelexplorer;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.3.0",
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
org.eclipse.papyrus.uml.diagram.communication;bundle-version="1.0.0",
org.eclipse.papyrus.infra.hyperlink;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.gmfdiag.dnd;bundle-version="1.0.0"
+ org.eclipse.papyrus.infra.gmfdiag.dnd;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0"
Export-Package: org.eclipse.papyrus.uml.diagram.interactionoverview,
org.eclipse.papyrus.uml.diagram.interactionoverview.edit.advices,
org.eclipse.papyrus.uml.diagram.interactionoverview.edit.commands,
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/parser/CustomCallBehaviorActionParser.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/parser/CustomCallBehaviorActionParser.java
index dd189b64539..6b7f71654d0 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/parser/CustomCallBehaviorActionParser.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.interactionoverview/src/org/eclipse/papyrus/uml/diagram/interactionoverview/parser/CustomCallBehaviorActionParser.java
@@ -18,6 +18,7 @@ import org.eclipse.emf.transaction.util.TransactionUtil;
import org.eclipse.gmf.runtime.common.core.command.ICommand;
import org.eclipse.gmf.runtime.common.core.command.UnexecutableCommand;
import org.eclipse.gmf.runtime.emf.commands.core.command.CompositeTransactionalCommand;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.uml.diagram.activity.parser.custom.CallBehaviorActionParser;
import org.eclipse.uml2.uml.CallBehaviorAction;
import org.eclipse.uml2.uml.Interaction;
@@ -31,7 +32,7 @@ public class CustomCallBehaviorActionParser extends CallBehaviorActionParser {
@Override
public String getPrintString(final IAdaptable element, final int flags) {
- final Object obj = element.getAdapter(EObject.class);
+ final Object obj = EMFHelper.getEObject(element);
if(obj instanceof CallBehaviorAction) {
final CallBehaviorAction action = (CallBehaviorAction)obj;
String behaviorName = "";
@@ -48,7 +49,7 @@ public class CustomCallBehaviorActionParser extends CallBehaviorActionParser {
@Override
public String getEditString(final IAdaptable element, final int flags) {
- final Object obj = element.getAdapter(EObject.class);
+ final Object obj = EMFHelper.getEObject(element);
if(obj instanceof CallBehaviorAction) {
final CallBehaviorAction action = (CallBehaviorAction)obj;
String behaviorName = "";
@@ -68,7 +69,7 @@ public class CustomCallBehaviorActionParser extends CallBehaviorActionParser {
if(newString == null) {
return UnexecutableCommand.INSTANCE;
}
- final EObject element = (EObject)adapter.getAdapter(EObject.class);
+ final EObject element = EMFHelper.getEObject(adapter);
final TransactionalEditingDomain editingDomain = TransactionUtil.getEditingDomain(element);
if(editingDomain == null) {
return UnexecutableCommand.INSTANCE;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/META-INF/MANIFEST.MF b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/META-INF/MANIFEST.MF
index cf2c1934346..85fa3c37216 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/META-INF/MANIFEST.MF
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/META-INF/MANIFEST.MF
@@ -1,41 +1,40 @@
-Manifest-Version: 1.0
-Require-Bundle: org.eclipse.ui,
- org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.gmfdiag.preferences;bundle-version="1.0.0",
- org.eclipse.gmf.runtime.diagram.ui.actions,
- org.eclipse.gmf.runtime.draw2d.ui.render;bundle-version="1.4.0",
- org.eclipse.core.expressions,
- org.eclipse.gmf.runtime.diagram.ui.resources.editor,
- org.eclipse.gmf.runtime.diagram.ui.providers;bundle-version="1.1.0",
- org.eclipse.gmf.runtime.diagram.ui.properties;bundle-version="1.2.0",
- org.eclipse.gmf.runtime.diagram.ui.actions,
- org.eclipse.gmf.runtime.diagram.ui.render;bundle-version="1.2.0",
- org.eclipse.papyrus.uml.diagram.wizards;bundle-version="1.0.0",
- org.eclipse.papyrus.uml.diagram.common;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="1.0.0",
- org.eclipse.papyrus.uml.tools;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
- org.eclipse.uml2.uml;bundle-version="4.0.0",
- org.eclipse.papyrus.infra.core.sasheditor;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
- org.eclipse.ui.ide;bundle-version="3.8.0",
- org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.tools;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.custom.ui;bundle-version="0.4.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.4.0"
-Export-Package: org.eclipse.papyrus.uml.diagram.menu,
- org.eclipse.papyrus.uml.diagram.menu.actions,
- org.eclipse.papyrus.uml.diagram.menu.actions.handlers
-Bundle-Vendor: %providerName
-Bundle-ActivationPolicy: lazy
-Bundle-Version: 1.0.0.qualifier
-Bundle-Name: %pluginName
-Bundle-Localization: plugin
-Bundle-ManifestVersion: 2
-Bundle-Activator: org.eclipse.papyrus.uml.diagram.menu.Activator
-Bundle-SymbolicName: org.eclipse.papyrus.uml.diagram.menu;singleton:=t
- rue
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
-
+Manifest-Version: 1.0
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.gmfdiag.preferences;bundle-version="1.0.0",
+ org.eclipse.gmf.runtime.diagram.ui.actions,
+ org.eclipse.gmf.runtime.draw2d.ui.render;bundle-version="1.4.0",
+ org.eclipse.core.expressions,
+ org.eclipse.gmf.runtime.diagram.ui.resources.editor,
+ org.eclipse.gmf.runtime.diagram.ui.providers;bundle-version="1.1.0",
+ org.eclipse.gmf.runtime.diagram.ui.properties;bundle-version="1.2.0",
+ org.eclipse.gmf.runtime.diagram.ui.actions,
+ org.eclipse.gmf.runtime.diagram.ui.render;bundle-version="1.2.0",
+ org.eclipse.papyrus.uml.diagram.wizards;bundle-version="1.0.0",
+ org.eclipse.papyrus.uml.diagram.common;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="1.0.0",
+ org.eclipse.papyrus.uml.tools;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
+ org.eclipse.uml2.uml;bundle-version="4.0.0",
+ org.eclipse.papyrus.infra.core.sasheditor;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
+ org.eclipse.ui.ide;bundle-version="3.8.0",
+ org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
+ org.eclipse.papyrus.infra.tools;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="1.0.0"
+Export-Package: org.eclipse.papyrus.uml.diagram.menu,
+ org.eclipse.papyrus.uml.diagram.menu.actions,
+ org.eclipse.papyrus.uml.diagram.menu.actions.handlers
+Bundle-Vendor: %providerName
+Bundle-ActivationPolicy: lazy
+Bundle-Version: 1.0.0.qualifier
+Bundle-Name: %pluginName
+Bundle-Localization: plugin
+Bundle-ManifestVersion: 2
+Bundle-Activator: org.eclipse.papyrus.uml.diagram.menu.Activator
+Bundle-SymbolicName: org.eclipse.papyrus.uml.diagram.menu;singleton:=t
+ rue
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/AbstractDistributeAction.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/AbstractDistributeAction.java
index a2559c56b72..c4fea81f3f0 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/AbstractDistributeAction.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/AbstractDistributeAction.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.menu.actions;
/*****************************************************************************
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/AbstractShowHideAction.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/AbstractShowHideAction.java
index 4e1c715af23..66b29220f9f 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/AbstractShowHideAction.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/AbstractShowHideAction.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.menu.actions;
/*****************************************************************************
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/DiagramUIActionsMessages.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/DiagramUIActionsMessages.java
index e8a8750ec25..6897bd3dcaf 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/DiagramUIActionsMessages.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/DiagramUIActionsMessages.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.menu.actions;
import org.eclipse.osgi.util.NLS;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/handlers/ShowHideRelatedLinkHandler.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/handlers/ShowHideRelatedLinkHandler.java
index a7d446e722c..94edac60ba6 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/handlers/ShowHideRelatedLinkHandler.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.menu/src/org/eclipse/papyrus/uml/diagram/menu/actions/handlers/ShowHideRelatedLinkHandler.java
@@ -37,6 +37,7 @@ import org.eclipse.jface.viewers.ISelectionProvider;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.papyrus.commands.wrappers.GEFtoEMFCommandWrapper;
import org.eclipse.papyrus.infra.core.services.ServiceException;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.gmfdiag.common.commands.requests.ShowHideRelatedLinkRequest;
import org.eclipse.papyrus.infra.gmfdiag.common.commands.requests.ShowHideRelatedLinkRequest.ShowHideKind;
import org.eclipse.papyrus.infra.gmfdiag.common.editpolicies.AbstractShowHideRelatedLinkEditPolicy;
@@ -167,7 +168,7 @@ public class ShowHideRelatedLinkHandler extends AbstractHandler implements IExec
if(current instanceof EditPart) {
final EditPart top = DiagramEditPartsUtil.getTopSemanticEditPart((EditPart)current);
if(top instanceof IGraphicalEditPart) {
- final EObject currentEObject = (EObject)top.getAdapter(EObject.class);
+ final EObject currentEObject = EMFHelper.getEObject(top);
if(!eobjectsAlreadyManaged.contains(currentEObject)) {//to avoid duplicated semantic element
this.selection.add((IGraphicalEditPart)top);
eobjectsAlreadyManaged.add(currentEObject);
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.modelexplorer/META-INF/MANIFEST.MF b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.modelexplorer/META-INF/MANIFEST.MF
index b39a3bf16a1..d1cddc7b8a8 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.modelexplorer/META-INF/MANIFEST.MF
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.modelexplorer/META-INF/MANIFEST.MF
@@ -5,12 +5,9 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.uml2.uml.editor;bundle-version="3.1.0",
org.eclipse.papyrus.uml.service.types;bundle-version="1.0.0",
org.eclipse.papyrus.infra.services.edit;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.facet;bundle-version="0.1.0",
org.eclipse.papyrus.views.modelexplorer;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.1.0",
org.eclipse.emf.ecore,
org.eclipse.gmf.runtime.notation,
- org.eclipse.emf.facet.infra.query.core,
org.eclipse.ui.views.properties.tabbed;bundle-version="3.5.200",
org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
@@ -19,7 +16,9 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="1.0.0",
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
- org.eclipse.papyrus.uml.tools;bundle-version="1.0.0"
+ org.eclipse.papyrus.uml.tools;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0"
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
Bundle-Version: 1.0.0.qualifier
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.modelexplorer/plugin.xml b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.modelexplorer/plugin.xml
index a32c674fa72..7e28e27444d 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.modelexplorer/plugin.xml
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.modelexplorer/plugin.xml
@@ -23,7 +23,7 @@
</triggerPoints>
<possibleChildren>
<or>
- <instanceof value="org.eclipse.emf.facet.infra.browser.uicore.internal.model.ModelElementItem">
+ <instanceof value="org.eclipse.papyrus.emf.facet.infra.browser.uicore.internal.model.ModelElementItem">
</instanceof>
<instanceof value="org.eclipse.gmf.runtime.notation.Diagram">
</instanceof>
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration.edit/META-INF/MANIFEST.MF b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration.edit/META-INF/MANIFEST.MF
index cdc6a8b0eea..aa5e48aea01 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration.edit/META-INF/MANIFEST.MF
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration.edit/META-INF/MANIFEST.MF
@@ -1,20 +1,25 @@
Manifest-Version: 1.0
Export-Package: org.eclipse.papyrus.uml.diagram.paletteconfiguration.provider
-Bundle-ActivationPolicy: lazy
-Bundle-ClassPath: .
-Bundle-Name: %pluginName
-Bundle-Localization: plugin
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
-Require-Bundle: org.eclipse.core.runtime,
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.papyrus.uml.diagram.paletteconfiguration;bundle-version="1.0.0";visibility:=reexport,
+ org.eclipse.emf.edit;visibility:=reexport,
+ org.eclipse.emf.ecore;visibility:=reexport,
+ org.eclipse.emf.ecore.edit;visibility:=reexport,
org.eclipse.papyrus.uml.diagram.paletteconfiguration;bundle-version="1.0.0",
org.eclipse.emf.edit,
org.eclipse.emf.ecore,
- org.eclipse.emf.ecore.edit,
+ org.eclipse.emf.ecore.edit,
org.eclipse.uml2.uml,
- org.eclipse.uml2.uml.edit
+ org.eclipse.uml2.uml.edit,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel.edit
Bundle-Vendor: %providerName
+Bundle-ActivationPolicy: lazy
+Bundle-ClassPath: .
Bundle-Version: 1.0.0.qualifier
+Bundle-Name: %pluginName
+Bundle-Localization: plugin
Bundle-ManifestVersion: 2
-Bundle-Activator: org.eclipse.papyrus.uml.diagram.paletteconfiguration.provider.PaletteConfigurationEditPlugin$Implementation
+Bundle-Activator: org.eclipse.papyrus.uml.diagram.paletteconfiguration.edit.provider.PaletteConfigurationEditPlugin$Implementation
Bundle-SymbolicName: org.eclipse.papyrus.uml.diagram.paletteconfiguration.edit;singleton:=true
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/META-INF/MANIFEST.MF b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/META-INF/MANIFEST.MF
index 95db0bd3144..febd02fa499 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/META-INF/MANIFEST.MF
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/META-INF/MANIFEST.MF
@@ -7,8 +7,6 @@ Export-Package: org.eclipse.papyrus.uml.diagram.paletteconfiguration,
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.emf.ecore;visibility:=reexport,
org.eclipse.emf.ecore.xmi;visibility:=reexport,
- org.eclipse.papyrus.infra.queries.core.configuration;bundle-version="1.0.0";visibility:=reexport,
- org.eclipse.emf.facet.infra.query;visibility:=reexport,
org.eclipse.uml2.uml,
org.eclipse.ui,
org.eclipse.gmf.runtime.common.core;bundle-version="1.4.0",
@@ -27,9 +25,7 @@ Bundle-Version: 1.0.0.qualifier
Bundle-Name: %pluginName
Bundle-Localization: plugin
Bundle-ManifestVersion: 2
-Bundle-Activator: org.eclipse.papyrus.uml.diagram.paletteconfiguration
- .Activator
-Bundle-SymbolicName: org.eclipse.papyrus.uml.diagram.paletteconfigurat
- ion;singleton:=true
+Bundle-Activator: org.eclipse.papyrus.uml.diagram.paletteconfiguration.Activator
+Bundle-SymbolicName: org.eclipse.papyrus.uml.diagram.paletteconfiguration;singleton:=true
Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/model/PaletteConfiguration.ecore b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/model/PaletteConfiguration.ecore
index 94cfbb03b97..c0c40a553f4 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/model/PaletteConfiguration.ecore
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/model/PaletteConfiguration.ecore
@@ -23,17 +23,17 @@
upperBound="-1" eType="#//ChildConfiguration" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Configuration" abstract="true">
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" lowerBound="1" eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="unique identifier of the configuration, used by the tool to retrieve the configuration"/>
</eAnnotations>
</eStructuralFeatures>
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="label" lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="label" lowerBound="1" eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="label of the configuration, used only for display"/>
</eAnnotations>
</eStructuralFeatures>
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Description of the configuration."/>
</eAnnotations>
@@ -45,13 +45,13 @@
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Descriptor for icons, constituted from the bundle ID and the path in the bundle."/>
</eAnnotations>
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="pluginID" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="pluginID" eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="ID of the plugin where the icon is located. If not set, the tool will look in the bundle defining the palette."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="iconPath" lowerBound="1"
- eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString">
+ eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Path of the icon in the bundle. "/>
</eAnnotations>
@@ -63,9 +63,9 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ElementDescriptor">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="elementTypeId" lowerBound="1"
- eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="graphicalHints" upperBound="-1"
- eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="SeparatorConfiguration" eSuperTypes="#//LeafConfiguration"/>
<eClassifiers xsi:type="ecore:EClass" name="LeafConfiguration" abstract="true" eSuperTypes="#//ChildConfiguration"/>
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/PaletteconfigurationPackage.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/PaletteconfigurationPackage.java
index 4721f4f1909..13b65ee91e4 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/PaletteconfigurationPackage.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/PaletteconfigurationPackage.java
@@ -336,22 +336,13 @@ public interface PaletteconfigurationPackage extends EPackage {
int TOOL_CONFIGURATION__ICON = LEAF_CONFIGURATION__ICON;
/**
- * The feature id for the '<em><b>Pre Validation Query</b></em>' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- * @ordered
- */
- int TOOL_CONFIGURATION__PRE_VALIDATION_QUERY = LEAF_CONFIGURATION_FEATURE_COUNT + 0;
-
- /**
* The feature id for the '<em><b>Kind</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int TOOL_CONFIGURATION__KIND = LEAF_CONFIGURATION_FEATURE_COUNT + 1;
+ int TOOL_CONFIGURATION__KIND = LEAF_CONFIGURATION_FEATURE_COUNT + 0;
/**
* The feature id for the '<em><b>Element Descriptors</b></em>' containment reference list.
@@ -360,7 +351,7 @@ public interface PaletteconfigurationPackage extends EPackage {
* @generated
* @ordered
*/
- int TOOL_CONFIGURATION__ELEMENT_DESCRIPTORS = LEAF_CONFIGURATION_FEATURE_COUNT + 2;
+ int TOOL_CONFIGURATION__ELEMENT_DESCRIPTORS = LEAF_CONFIGURATION_FEATURE_COUNT + 1;
/**
* The number of structural features of the '<em>Tool Configuration</em>' class.
@@ -369,7 +360,7 @@ public interface PaletteconfigurationPackage extends EPackage {
* @generated
* @ordered
*/
- int TOOL_CONFIGURATION_FEATURE_COUNT = LEAF_CONFIGURATION_FEATURE_COUNT + 3;
+ int TOOL_CONFIGURATION_FEATURE_COUNT = LEAF_CONFIGURATION_FEATURE_COUNT + 2;
/**
* The meta object id for the '{@link org.eclipse.papyrus.uml.diagram.paletteconfiguration.impl.StackConfigurationImpl <em>Stack Configuration</em>}' class.
@@ -671,17 +662,6 @@ public interface PaletteconfigurationPackage extends EPackage {
EClass getToolConfiguration();
/**
- * Returns the meta object for the reference '{@link org.eclipse.papyrus.uml.diagram.paletteconfiguration.ToolConfiguration#getPreValidationQuery <em>Pre Validation Query</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @return the meta object for the reference '<em>Pre Validation Query</em>'.
- * @see org.eclipse.papyrus.uml.diagram.paletteconfiguration.ToolConfiguration#getPreValidationQuery()
- * @see #getToolConfiguration()
- * @generated
- */
- EReference getToolConfiguration_PreValidationQuery();
-
- /**
* Returns the meta object for the attribute '{@link org.eclipse.papyrus.uml.diagram.paletteconfiguration.ToolConfiguration#getKind <em>Kind</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -954,14 +934,6 @@ public interface PaletteconfigurationPackage extends EPackage {
EClass TOOL_CONFIGURATION = eINSTANCE.getToolConfiguration();
/**
- * The meta object literal for the '<em><b>Pre Validation Query</b></em>' reference feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- EReference TOOL_CONFIGURATION__PRE_VALIDATION_QUERY = eINSTANCE.getToolConfiguration_PreValidationQuery();
-
- /**
* The meta object literal for the '<em><b>Kind</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/ToolConfiguration.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/ToolConfiguration.java
index 51cf71a4d20..e5a277941ad 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/ToolConfiguration.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/ToolConfiguration.java
@@ -7,7 +7,6 @@
package org.eclipse.papyrus.uml.diagram.paletteconfiguration;
import org.eclipse.emf.common.util.EList;
-import org.eclipse.papyrus.infra.queries.core.configuration.QueryConfiguration;
/**
* <!-- begin-user-doc -->
@@ -17,7 +16,6 @@ import org.eclipse.papyrus.infra.queries.core.configuration.QueryConfiguration;
* <p>
* The following features are supported:
* <ul>
- * <li>{@link org.eclipse.papyrus.uml.diagram.paletteconfiguration.ToolConfiguration#getPreValidationQuery <em>Pre Validation Query</em>}</li>
* <li>{@link org.eclipse.papyrus.uml.diagram.paletteconfiguration.ToolConfiguration#getKind <em>Kind</em>}</li>
* <li>{@link org.eclipse.papyrus.uml.diagram.paletteconfiguration.ToolConfiguration#getElementDescriptors <em>Element Descriptors</em>}</li>
* </ul>
@@ -29,32 +27,6 @@ import org.eclipse.papyrus.infra.queries.core.configuration.QueryConfiguration;
*/
public interface ToolConfiguration extends LeafConfiguration {
/**
- * Returns the value of the '<em><b>Pre Validation Query</b></em>' reference.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Pre Validation Query</em>' reference isn't clear,
- * there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- * @return the value of the '<em>Pre Validation Query</em>' reference.
- * @see #setPreValidationQuery(QueryConfiguration)
- * @see org.eclipse.papyrus.uml.diagram.paletteconfiguration.PaletteconfigurationPackage#getToolConfiguration_PreValidationQuery()
- * @model
- * @generated
- */
- QueryConfiguration getPreValidationQuery();
-
- /**
- * Sets the value of the '{@link org.eclipse.papyrus.uml.diagram.paletteconfiguration.ToolConfiguration#getPreValidationQuery <em>Pre Validation Query</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @param value the new value of the '<em>Pre Validation Query</em>' reference.
- * @see #getPreValidationQuery()
- * @generated
- */
- void setPreValidationQuery(QueryConfiguration value);
-
- /**
* Returns the value of the '<em><b>Kind</b></em>' attribute.
* The default value is <code>"CreationTool"</code>.
* The literals are from the enumeration {@link org.eclipse.papyrus.uml.diagram.paletteconfiguration.ToolKind}.
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/impl/PaletteconfigurationFactoryImpl.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/impl/PaletteconfigurationFactoryImpl.java
index 4b94482e28f..101983d64d4 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/impl/PaletteconfigurationFactoryImpl.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/impl/PaletteconfigurationFactoryImpl.java
@@ -12,6 +12,7 @@ import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.impl.EFactoryImpl;
import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.eclipse.papyrus.uml.diagram.paletteconfiguration.*;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.DrawerConfiguration;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.ElementDescriptor;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.IconDescriptor;
@@ -38,7 +39,7 @@ public class PaletteconfigurationFactoryImpl extends EFactoryImpl implements Pal
*/
public static PaletteconfigurationFactory init() {
try {
- PaletteconfigurationFactory thePaletteconfigurationFactory = (PaletteconfigurationFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/diagram/paletteconfiguration/0.7");
+ PaletteconfigurationFactory thePaletteconfigurationFactory = (PaletteconfigurationFactory)EPackage.Registry.INSTANCE.getEFactory(PaletteconfigurationPackage.eNS_URI);
if (thePaletteconfigurationFactory != null) {
return thePaletteconfigurationFactory;
}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/impl/PaletteconfigurationPackageImpl.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/impl/PaletteconfigurationPackageImpl.java
index 4b4da02bd8a..f6bfc218746 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/impl/PaletteconfigurationPackageImpl.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/impl/PaletteconfigurationPackageImpl.java
@@ -13,7 +13,6 @@ import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.EcorePackage;
import org.eclipse.emf.ecore.impl.EPackageImpl;
-import org.eclipse.papyrus.infra.queries.core.configuration.ConfigurationPackage;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.ChildConfiguration;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.Configuration;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.DrawerConfiguration;
@@ -159,7 +158,7 @@ public class PaletteconfigurationPackageImpl extends EPackageImpl implements Pal
isInited = true;
// Initialize simple dependencies
- ConfigurationPackage.eINSTANCE.eClass();
+ EcorePackage.eINSTANCE.eClass();
// Create package meta-data objects
thePaletteconfigurationPackage.createPackageContents();
@@ -208,17 +207,8 @@ public class PaletteconfigurationPackageImpl extends EPackageImpl implements Pal
* <!-- end-user-doc -->
* @generated
*/
- public EReference getToolConfiguration_PreValidationQuery() {
- return (EReference)toolConfigurationEClass.getEStructuralFeatures().get(0);
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
public EAttribute getToolConfiguration_Kind() {
- return (EAttribute)toolConfigurationEClass.getEStructuralFeatures().get(1);
+ return (EAttribute)toolConfigurationEClass.getEStructuralFeatures().get(0);
}
/**
@@ -227,7 +217,7 @@ public class PaletteconfigurationPackageImpl extends EPackageImpl implements Pal
* @generated
*/
public EReference getToolConfiguration_ElementDescriptors() {
- return (EReference)toolConfigurationEClass.getEStructuralFeatures().get(2);
+ return (EReference)toolConfigurationEClass.getEStructuralFeatures().get(1);
}
/**
@@ -433,7 +423,6 @@ public class PaletteconfigurationPackageImpl extends EPackageImpl implements Pal
createEReference(paletteConfigurationEClass, PALETTE_CONFIGURATION__DRAWER_CONFIGURATIONS);
toolConfigurationEClass = createEClass(TOOL_CONFIGURATION);
- createEReference(toolConfigurationEClass, TOOL_CONFIGURATION__PRE_VALIDATION_QUERY);
createEAttribute(toolConfigurationEClass, TOOL_CONFIGURATION__KIND);
createEReference(toolConfigurationEClass, TOOL_CONFIGURATION__ELEMENT_DESCRIPTORS);
@@ -491,7 +480,6 @@ public class PaletteconfigurationPackageImpl extends EPackageImpl implements Pal
setNsURI(eNS_URI);
// Obtain other dependent packages
- ConfigurationPackage theConfigurationPackage = (ConfigurationPackage)EPackage.Registry.INSTANCE.getEPackage(ConfigurationPackage.eNS_URI);
EcorePackage theEcorePackage = (EcorePackage)EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
// Create type parameters
@@ -512,7 +500,6 @@ public class PaletteconfigurationPackageImpl extends EPackageImpl implements Pal
initEReference(getPaletteConfiguration_DrawerConfigurations(), this.getDrawerConfiguration(), null, "drawerConfigurations", null, 1, -1, PaletteConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(toolConfigurationEClass, ToolConfiguration.class, "ToolConfiguration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getToolConfiguration_PreValidationQuery(), theConfigurationPackage.getQueryConfiguration(), null, "preValidationQuery", null, 0, 1, ToolConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getToolConfiguration_Kind(), this.getToolKind(), "kind", "CreationTool", 1, 1, ToolConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getToolConfiguration_ElementDescriptors(), this.getElementDescriptor(), null, "elementDescriptors", null, 0, -1, ToolConfiguration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/impl/ToolConfigurationImpl.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/impl/ToolConfigurationImpl.java
index 396b21a8773..77e1f373add 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/impl/ToolConfigurationImpl.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/impl/ToolConfigurationImpl.java
@@ -16,7 +16,6 @@ import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.util.EObjectContainmentEList;
import org.eclipse.emf.ecore.util.InternalEList;
-import org.eclipse.papyrus.infra.queries.core.configuration.QueryConfiguration;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.ElementDescriptor;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.PaletteconfigurationPackage;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.ToolConfiguration;
@@ -29,7 +28,6 @@ import org.eclipse.papyrus.uml.diagram.paletteconfiguration.ToolKind;
* <p>
* The following features are implemented:
* <ul>
- * <li>{@link org.eclipse.papyrus.uml.diagram.paletteconfiguration.impl.ToolConfigurationImpl#getPreValidationQuery <em>Pre Validation Query</em>}</li>
* <li>{@link org.eclipse.papyrus.uml.diagram.paletteconfiguration.impl.ToolConfigurationImpl#getKind <em>Kind</em>}</li>
* <li>{@link org.eclipse.papyrus.uml.diagram.paletteconfiguration.impl.ToolConfigurationImpl#getElementDescriptors <em>Element Descriptors</em>}</li>
* </ul>
@@ -39,16 +37,6 @@ import org.eclipse.papyrus.uml.diagram.paletteconfiguration.ToolKind;
*/
public class ToolConfigurationImpl extends LeafConfigurationImpl implements ToolConfiguration {
/**
- * The cached value of the '{@link #getPreValidationQuery() <em>Pre Validation Query</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @see #getPreValidationQuery()
- * @generated
- * @ordered
- */
- protected QueryConfiguration preValidationQuery;
-
- /**
* The default value of the '{@link #getKind() <em>Kind</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -102,44 +90,6 @@ public class ToolConfigurationImpl extends LeafConfigurationImpl implements Tool
* <!-- end-user-doc -->
* @generated
*/
- public QueryConfiguration getPreValidationQuery() {
- if (preValidationQuery != null && preValidationQuery.eIsProxy()) {
- InternalEObject oldPreValidationQuery = (InternalEObject)preValidationQuery;
- preValidationQuery = (QueryConfiguration)eResolveProxy(oldPreValidationQuery);
- if (preValidationQuery != oldPreValidationQuery) {
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, PaletteconfigurationPackage.TOOL_CONFIGURATION__PRE_VALIDATION_QUERY, oldPreValidationQuery, preValidationQuery));
- }
- }
- return preValidationQuery;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public QueryConfiguration basicGetPreValidationQuery() {
- return preValidationQuery;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
- public void setPreValidationQuery(QueryConfiguration newPreValidationQuery) {
- QueryConfiguration oldPreValidationQuery = preValidationQuery;
- preValidationQuery = newPreValidationQuery;
- if (eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, PaletteconfigurationPackage.TOOL_CONFIGURATION__PRE_VALIDATION_QUERY, oldPreValidationQuery, preValidationQuery));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
public ToolKind getKind() {
return kind;
}
@@ -190,9 +140,6 @@ public class ToolConfigurationImpl extends LeafConfigurationImpl implements Tool
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
- case PaletteconfigurationPackage.TOOL_CONFIGURATION__PRE_VALIDATION_QUERY:
- if (resolve) return getPreValidationQuery();
- return basicGetPreValidationQuery();
case PaletteconfigurationPackage.TOOL_CONFIGURATION__KIND:
return getKind();
case PaletteconfigurationPackage.TOOL_CONFIGURATION__ELEMENT_DESCRIPTORS:
@@ -210,9 +157,6 @@ public class ToolConfigurationImpl extends LeafConfigurationImpl implements Tool
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
- case PaletteconfigurationPackage.TOOL_CONFIGURATION__PRE_VALIDATION_QUERY:
- setPreValidationQuery((QueryConfiguration)newValue);
- return;
case PaletteconfigurationPackage.TOOL_CONFIGURATION__KIND:
setKind((ToolKind)newValue);
return;
@@ -232,9 +176,6 @@ public class ToolConfigurationImpl extends LeafConfigurationImpl implements Tool
@Override
public void eUnset(int featureID) {
switch (featureID) {
- case PaletteconfigurationPackage.TOOL_CONFIGURATION__PRE_VALIDATION_QUERY:
- setPreValidationQuery((QueryConfiguration)null);
- return;
case PaletteconfigurationPackage.TOOL_CONFIGURATION__KIND:
setKind(KIND_EDEFAULT);
return;
@@ -253,8 +194,6 @@ public class ToolConfigurationImpl extends LeafConfigurationImpl implements Tool
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
- case PaletteconfigurationPackage.TOOL_CONFIGURATION__PRE_VALIDATION_QUERY:
- return preValidationQuery != null;
case PaletteconfigurationPackage.TOOL_CONFIGURATION__KIND:
return kind != KIND_EDEFAULT;
case PaletteconfigurationPackage.TOOL_CONFIGURATION__ELEMENT_DESCRIPTORS:
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/util/PaletteconfigurationAdapterFactory.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/util/PaletteconfigurationAdapterFactory.java
index d42b07e0a36..ae2239af6a5 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/util/PaletteconfigurationAdapterFactory.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/util/PaletteconfigurationAdapterFactory.java
@@ -10,6 +10,7 @@ import org.eclipse.emf.common.notify.Adapter;
import org.eclipse.emf.common.notify.Notifier;
import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.uml.diagram.paletteconfiguration.*;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.ChildConfiguration;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.Configuration;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.DrawerConfiguration;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/util/PaletteconfigurationResourceFactoryImpl.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/util/PaletteconfigurationResourceFactoryImpl.java
index 40d83bcb1a7..839db870925 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/util/PaletteconfigurationResourceFactoryImpl.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/util/PaletteconfigurationResourceFactoryImpl.java
@@ -9,7 +9,6 @@ package org.eclipse.papyrus.uml.diagram.paletteconfiguration.util;
import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.emf.ecore.resource.impl.ResourceFactoryImpl;
-import org.eclipse.emf.ecore.xmi.XMLResource;
/**
* <!-- begin-user-doc -->
@@ -37,16 +36,7 @@ public class PaletteconfigurationResourceFactoryImpl extends ResourceFactoryImpl
*/
@Override
public Resource createResource(URI uri) {
- XMLResource result = new PaletteconfigurationResourceImpl(uri);
- result.getDefaultSaveOptions().put(XMLResource.OPTION_EXTENDED_META_DATA, Boolean.TRUE);
- result.getDefaultLoadOptions().put(XMLResource.OPTION_EXTENDED_META_DATA, Boolean.TRUE);
-
- result.getDefaultSaveOptions().put(XMLResource.OPTION_SCHEMA_LOCATION, Boolean.TRUE);
-
- result.getDefaultLoadOptions().put(XMLResource.OPTION_USE_ENCODED_ATTRIBUTE_STYLE, Boolean.TRUE);
- result.getDefaultSaveOptions().put(XMLResource.OPTION_USE_ENCODED_ATTRIBUTE_STYLE, Boolean.TRUE);
-
- result.getDefaultLoadOptions().put(XMLResource.OPTION_USE_LEXICAL_HANDLER, Boolean.TRUE);
+ Resource result = new PaletteconfigurationResourceImpl(uri);
return result;
}
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/util/PaletteconfigurationSwitch.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/util/PaletteconfigurationSwitch.java
index bb3da931ca3..387ac94278c 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/util/PaletteconfigurationSwitch.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src-gen/org/eclipse/papyrus/uml/diagram/paletteconfiguration/util/PaletteconfigurationSwitch.java
@@ -9,6 +9,7 @@ package org.eclipse.papyrus.uml.diagram.paletteconfiguration.util;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.util.Switch;
+import org.eclipse.papyrus.uml.diagram.paletteconfiguration.*;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.ChildConfiguration;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.Configuration;
import org.eclipse.papyrus.uml.diagram.paletteconfiguration.DrawerConfiguration;
diff --git a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src/org/eclipse/papyrus/uml/diagram/paletteconfiguration/descriptor/ExtendedSemanticTypeDescriptor.java b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src/org/eclipse/papyrus/uml/diagram/paletteconfiguration/descriptor/ExtendedSemanticTypeDescriptor.java
index 15a28a4ad2b..25c266a94bd 100644
--- a/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src/org/eclipse/papyrus/uml/diagram/paletteconfiguration/descriptor/ExtendedSemanticTypeDescriptor.java
+++ b/plugins/uml/diagram/org.eclipse.papyrus.uml.diagram.paletteconfiguration/src/org/eclipse/papyrus/uml/diagram/paletteconfiguration/descriptor/ExtendedSemanticTypeDescriptor.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.uml.diagram.paletteconfiguration.descriptor;
import java.net.MalformedURLException;
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/.project b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/.project
index 0699df8629a..0505aedf2a3 100644
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/.project
+++ b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/.project
@@ -22,7 +22,7 @@
</buildCommand>
</buildSpec>
<natures>
- <nature>org.eclipse.emf.facet.common.ProjectNature</nature>
+ <nature>org.eclipse.papyrus.emf.facet.common.ProjectNature</nature>
<nature>org.eclipse.pde.PluginNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/META-INF/MANIFEST.MF b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/META-INF/MANIFEST.MF
index ab037dd30bb..073620de703 100644
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/META-INF/MANIFEST.MF
+++ b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/META-INF/MANIFEST.MF
@@ -1,45 +1,36 @@
Manifest-Version: 1.0
-Export-Package: org.eclipse.papyrus.uml.modelexplorer,
- org.eclipse.papyrus.uml.modelexplorer.factory,
- org.eclipse.papyrus.uml.modelexplorer.handler,
- org.eclipse.papyrus.uml.modelexplorer.queries,
- org.eclipse.papyrus.uml.modelexplorer.util
-Require-Bundle: org.eclipse.ui,
- org.eclipse.core.runtime,
- org.eclipse.papyrus.views.modelexplorer;bundle-version="1.0.0",
- org.eclipse.ui.navigator;bundle-version="3.4.0",
- org.eclipse.emf.transaction;bundle-version="1.4.0",
- org.eclipse.emf.facet.infra.query.core;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.facet;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.1.0",
- org.eclipse.gmf.runtime.common.core;bundle-version="1.4.1",
- org.eclipse.gmf.runtime.emf.type.core;bundle-version="1.4.0",
- org.eclipse.gmf.runtime.notation;bundle-version="1.5.0",
- org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
- com.google.guava;bundle-version="11.0.0",
- org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="1.0.0",
- org.eclipse.ui.views.properties.tabbed;bundle-version="3.5.300",
- org.eclipse.ui.ide;bundle-version="3.8.0",
- org.eclipse.uml2.uml;bundle-version="4.0.0",
- org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
- org.eclipse.papyrus.uml.tools;bundle-version="1.0.0",
- org.eclipse.papyrus.uml.service.types;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.services.edit;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.custom;bundle-version="0.3.0",
- org.eclipse.emf.facet.infra.browser.custom.core;bundle-version="0.3.0",
- org.eclipse.emf.facet.infra.common.core;bundle-version="0.3.0"
-Bundle-Vendor: %providerName
+Export-Package: org.eclipse.papyrus.uml.modelexplorer,org.eclipse.papy
+ rus.uml.modelexplorer.factory,org.eclipse.papyrus.uml.modelexplorer.h
+ andler,org.eclipse.papyrus.uml.modelexplorer.queries,org.eclipse.papy
+ rus.uml.modelexplorer.util
Bundle-ActivationPolicy: lazy
-Bundle-ClassPath: .,
- bin/
-Bundle-Version: 1.0.0.qualifier
+Bundle-ClassPath: .,bin/
Bundle-Name: %pluginName
Bundle-Localization: plugin
+Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Require-Bundle: org.eclipse.ui,org.eclipse.core.runtime,org.eclipse.pa
+ pyrus.views.modelexplorer;bundle-version="1.0.0",org.eclipse.ui.navig
+ ator;bundle-version="3.4.0",org.eclipse.emf.transaction;bundle-versio
+ n="1.4.0",org.eclipse.gmf.runtime.common.core;bundle-version="1.4.1",
+ org.eclipse.gmf.runtime.emf.type.core;bundle-version="1.4.0",org.ecli
+ pse.gmf.runtime.notation;bundle-version="1.5.0",org.eclipse.papyrus.i
+ nfra.emf;bundle-version="1.0.0",com.google.guava;bundle-version="11.0
+ .0",org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",org.ecl
+ ipse.papyrus.infra.gmfdiag.commands;bundle-version="1.0.0",org.eclips
+ e.ui.views.properties.tabbed;bundle-version="3.5.300",org.eclipse.ui.
+ ide;bundle-version="3.8.0",org.eclipse.uml2.uml;bundle-version="4.0.0
+ ",org.eclipse.papyrus.infra.core;bundle-version="1.0.0",org.eclipse.p
+ apyrus.infra.widgets;bundle-version="1.0.0",org.eclipse.papyrus.uml.t
+ ools;bundle-version="1.0.0",org.eclipse.papyrus.uml.service.types;bun
+ dle-version="1.0.0",org.eclipse.papyrus.infra.services.edit;bundle-ve
+ rsion="1.0.0",org.eclipse.papyrus.emf.facet.custom.metamodel,org.ecli
+ pse.papyrus.emf.facet.query.java.core,org.eclipse.emf.ecore,org.eclip
+ se.papyrus.emf.facet.efacet.core
+Bundle-Vendor: %providerName
+Bundle-Version: 1.0.0.qualifier
Bundle-ManifestVersion: 2
Bundle-Activator: org.eclipse.papyrus.uml.modelexplorer.Activator
+Import-Package: org.eclipse.papyrus.emf.facet.custom.core
Bundle-SymbolicName: org.eclipse.papyrus.uml.modelexplorer;singleton:=
true
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/plugin.xml b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/plugin.xml
index 360813989a4..5ce1836ca8b 100644
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/plugin.xml
+++ b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/plugin.xml
@@ -3,12 +3,17 @@
<plugin>
- <extension point="org.eclipse.emf.facet.infra.browser.custom.core.registration">
+<extension point="org.eclipse.papyrus.emf.facet.util.emf.core.modeldeclaration">
+ <modeldeclaration file="resource/SimpleUML.custom"/>
+</extension>
+
+ <!-- TODO: EMF-FACET update queries and custom
+ <extension point="org.eclipse.papyrus.emf.facet.infra.browser.custom.core.registration">
<browserCustomization file="resource/UMLPapyrusDefaultBrowserCustomization.uiCustom" loadByDefault="true"/>
</extension>
- <extension point="org.eclipse.emf.facet.infra.query.registration">
+ <extension point="org.eclipse.papyrus.emf.facet.infra.query.registration">
<modelqueryset file="resource/PapyrusBrowserQuery.querySet"/>
- </extension>
+ </extension-->
<extension point="org.eclipse.ui.navigator.navigatorContent">
<navigatorContent
activeByDefault="true"
@@ -22,25 +27,25 @@
<or>
<instanceof value="org.eclipse.emf.ecore.EObject">
</instanceof>
- <adapt type="org.eclipse.emf.ecore.EObject">
- </adapt>
<instanceof value="java.lang.Object">
</instanceof>
</or>
</triggerPoints>
<possibleChildren>
<or>
- <instanceof value="org.eclipse.emf.facet.infra.browser.uicore.internal.model.ModelElementItem">
- </instanceof>
<instanceof value="org.eclipse.gmf.runtime.notation.Diagram">
</instanceof>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</or>
</possibleChildren>
<actionProvider class="org.eclipse.papyrus.views.modelexplorer.actionprovider.GenericTransformActionProvider" id="org.eclipse.papyrus.views.modelexplorer.actionprovider.GenericTransformActionProvider">
<enablement>
<or>
- <adapt type="org.eclipse.emf.ecore.EObject">
- </adapt>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</or>
</enablement>
</actionProvider>
@@ -51,8 +56,9 @@
<instanceof value="org.eclipse.gmf.runtime.notation.Diagram">
</instanceof>
</not>
- <adapt type="org.eclipse.emf.ecore.EObject">
- </adapt>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</and>
</enablement>
</actionProvider>
@@ -61,8 +67,9 @@
<or>
<instanceof value="org.eclipse.gmf.runtime.notation.Diagram">
</instanceof>
- <adapt type="org.eclipse.emf.ecore.EObject">
- </adapt>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</or>
</possibleDropTargets>
</dropAssistant>
@@ -1080,17 +1087,17 @@
and to mask the command in case it is not supported or executable.
-->
<extension point="org.eclipse.core.runtime.adapters">
- <factory adaptableType="org.eclipse.emf.facet.infra.browser.uicore.internal.model.ModelElementItem" class="org.eclipse.papyrus.uml.modelexplorer.factory.ModelElementItemFactory">
+ <factory adaptableType="org.eclipse.papyrus.emf.facet.infra.browser.uicore.internal.model.ModelElementItem" class="org.eclipse.papyrus.uml.modelexplorer.factory.ModelElementItemFactory">
<adapter type="org.eclipse.uml2.uml.NamedElement">
</adapter>
</factory>
</extension>
- <extension point="org.eclipse.emf.facet.infra.facet.registration">
+ <!--extension point="org.eclipse.papyrus.emf.facet.infra.facet.registration">
<facetset file="resource/PapyrusUMLFacet.facetSet">
</facetset>
</extension>
- <extension point="org.eclipse.emf.facet.infra.browser.custom.core.registration">
+ <extension point="org.eclipse.papyrus.emf.facet.infra.browser.custom.core.registration">
<browserCustomization file="resource/UMLFacetDefaultBrowserCustomization.uiCustom" loadByDefault="true"/>
<browserCustomization file="resource/NotationCustomization.uiCustom" loadByDefault="true">
</browserCustomization>
@@ -1098,7 +1105,7 @@
file="resource/SimpleUML.uiCustom"
loadByDefault="true">
</browserCustomization>
- </extension>
+ </extension-->
<extension point= "org.eclipse.ui.handlers">
<handler class= "org.eclipse.papyrus.uml.modelexplorer.handler.AbstractionHandler" commandId="org.eclipse.papyrus.uml.service.types.AbstractionCreateCommand">
<activeWhen>
@@ -3319,5 +3326,11 @@
</state>
</command>
</extension>
+ <extension
+ point="org.eclipse.papyrus.emf.facet.util.emf.core.modeldeclaration">
+ <modeldeclaration
+ file="resource/StereotypeDisplay.custom">
+ </modeldeclaration>
+ </extension>
</plugin>
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/NotationCustomization.uiCustom b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/NotationCustomization.uiCustom
deleted file mode 100644
index 5665913ec6b..00000000000
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/NotationCustomization.uiCustom
+++ /dev/null
@@ -1,50 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<uicustom:MetamodelView xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" xmlns:uicustom="http://www.eclipse.org/EmfFacet/infra/browser/custom/0.8" metamodelURI="http://www.eclipse.org/gmf/runtime/1.0.2/notation">
- <types metaclassName="notation.Diagram">
- <customizedFeatures customizedFeature="italic">
- <defaultValue xsi:type="uicustom:DerivedFeatureValue">
- <valueCalculator xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusBrowserQuery#IsReadOnly"/>
- </defaultValue>
- </customizedFeatures>
- <customizedFeatures customizedFeature="icon">
- <defaultValue xsi:type="uicustom:DerivedFeatureValue">
- <valueCalculator xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusBrowserQuery#GetDiagramIcon"/>
- </defaultValue>
- </customizedFeatures>
- <customizedFeatures customizedFeature="hideMetaclassName">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- <customizedFeatures customizedFeature="color">
- <valueCases>
- <value xsi:type="uicustom:StaticFeatureValue" value="(192,192,192)"/>
- <condition xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusBrowserQuery#IsReadOnly"/>
- </valueCases>
- </customizedFeatures>
- <references referenceName="children">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="styles">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="diagram">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="element">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="edges">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <availableQuerySets>PapyrusBrowserQuery</availableQuerySets>
-</uicustom:MetamodelView>
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/PapyrusBrowserQuery.querySet b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/PapyrusBrowserQuery.querySet
deleted file mode 100644
index fffc0648713..00000000000
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/PapyrusBrowserQuery.querySet
+++ /dev/null
@@ -1,32 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<query:ModelQuerySet xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" name="PapyrusBrowserQuery">
- <associatedMetamodels href="http://www.eclipse.org/uml2/5.0.0/UML#/"/>
- <associatedMetamodels href="http://www.eclipse.org/gmf/runtime/1.0.2/notation#/"/>
- <associatedMetamodels href="http://www.eclipse.org/emf/2002/Ecore#/"/>
- <associatedMetamodels href="http://www.eclipse.org/uml2/5.0.0/Types#/"/>
- <queries xsi:type="query:JavaModelQuery" name="GetComplexName" description="get the name + the list of applied stereotypes" implementationClassName="org.eclipse.papyrus.uml.modelexplorer.queries.GetComplexName">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
- <scope href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement"/>
- </queries>
- <queries xsi:type="query:JavaModelQuery" name="IsReadOnly" description="Return true if the ressource is in a read only mode" implementationClassName="org.eclipse.papyrus.uml.modelexplorer.queries.IsReadOnly">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//Boolean"/>
- <scope href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
- <scope href="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram"/>
- </queries>
- <queries xsi:type="query:JavaModelQuery" name="IsDiagramContainer" description="return true if the element contains diagrams" implementationClassName="org.eclipse.papyrus.uml.modelexplorer.queries.IsDiagramContainer">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//Boolean"/>
- <scope href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
- </queries>
- <queries xsi:type="query:JavaModelQuery" name="GetContainedDiagrams" description="Get the collection of all contained diagrams" upperBound="-1" implementationClassName="org.eclipse.papyrus.uml.modelexplorer.queries.GetContainedDiagrams">
- <returnType xsi:type="ecore:EClass" href="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram"/>
- <scope href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
- </queries>
- <queries xsi:type="query:JavaModelQuery" name="GetDiagramIcon" description="Return the path to the icon of the corresponding diagram" implementationClassName="org.eclipse.papyrus.uml.modelexplorer.queries.GetDiagramIcon">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
- <scope href="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram"/>
- </queries>
- <queries xsi:type="query:JavaModelQuery" name="IsDiagram" description="Return tru eif the element is a diagram" implementationClassName="org.eclipse.papyrus.uml.modelexplorer.queries.IsDiagram">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//Boolean"/>
- <scope href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
- </queries>
-</query:ModelQuerySet>
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/PapyrusUMLFacet.facetSet b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/PapyrusUMLFacet.facetSet
deleted file mode 100644
index b7586a93b63..00000000000
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/PapyrusUMLFacet.facetSet
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<facet:FacetSet xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:facet="http://www.eclipse.org/EmfFacet/infra/facet/0.8.incubation" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" name="PapyrusUMLFacet" nsURI="http://org.eclipse.org/papyrus/modelExplorer/Facet" nsPrefix="papyrusUMLFacet">
- <eClassifiers xsi:type="facet:Facet" name="DiagramContainer" abstract="true">
- <eSuperTypes href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
- <eStructuralFeatures xsi:type="facet:FacetReference" name="diagrams" upperBound="-1" volatile="true" unsettable="true">
- <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram"/>
- <valueQuery xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusBrowserQuery#GetContainedDiagrams"/>
- </eStructuralFeatures>
- <conditionQuery xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusBrowserQuery#IsDiagramContainer"/>
- </eClassifiers>
- <extendedPackage href="http://www.eclipse.org/uml2/5.0.0/UML#/"/>
-</facet:FacetSet>
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/SimpleUML.custom b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/SimpleUML.custom
new file mode 100644
index 00000000000..fd5e6ff90e8
--- /dev/null
+++ b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/SimpleUML.custom
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<custom:Customization xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:custom="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:efacet="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet" xmlns:javaQuery="http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation/javaquery" name="SimpleUML" documentation="Display structure of UML base model" mustBeLoadedByDefault="true">
+ <eClassifiers xsi:type="custom:EClassCustomization" name="Element">
+ <extendedMetaclass href="http://www.eclipse.org/uml2/5.0.0/UML#//Element"/>
+ <facetOperations name="DisplayOnlyContainamentReferences">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ <eParameters name="eStructuralFeature">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature"/>
+ </eParameters>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.uml.modelexplorer.queries.DisplayUMLStructuralFeature"/>
+ <override xsi:type="efacet:FacetOperation" href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/isVisible"/>
+ </facetOperations>
+ <facetOperations name="CollapseContaimentRef">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ <eParameters name="eStructuralFeature">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature"/>
+ </eParameters>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.uml.modelexplorer.queries.DisplayUMLStructuralFeature"/>
+ <override xsi:type="efacet:FacetOperation" href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/collapseLink"/>
+ </facetOperations>
+ </eClassifiers>
+</custom:Customization>
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/SimpleUML.uiCustom b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/SimpleUML.uiCustom
deleted file mode 100644
index 47724d5a873..00000000000
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/SimpleUML.uiCustom
+++ /dev/null
@@ -1,2787 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<uicustom:MetamodelView xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:uicustom="http://www.eclipse.org/EmfFacet/infra/browser/custom/0.8" metamodelURI="http://www.eclipse.org/uml2/5.0.0/UML">
- <types metaclassName="uml.Abstraction">
- <references referenceName="mapping">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Dependency">
- <references referenceName="client">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="supplier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ParameterableElement">
- <references referenceName="owningTemplateParameter">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="templateParameter">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Element">
- <references referenceName="ownedComment">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Comment">
- <references referenceName="annotatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Stereotype">
- <references referenceName="icon">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="profile">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Class">
- <references referenceName="ownedOperation">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="nestedClassifier">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedReception">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.EncapsulatedClassifier">
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StructuredClassifier">
- <references referenceName="ownedAttribute">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedConnector">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Classifier">
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="collaborationUse">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="generalization">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="powertypeExtent">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedUseCase">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="useCase">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="representation">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="substitution">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Namespace">
- <references referenceName="elementImport">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="packageImport">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedRule">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.NamedElement">
- <references referenceName="clientDependency">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="nameExpression">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StringExpression">
- <references referenceName="owningExpression">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subExpression">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Expression">
- <references referenceName="operand">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TypedElement">
- <references referenceName="type">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Type">
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Package">
- <references referenceName="nestedPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="nestingPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedStereotype">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="packageMerge">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="packagedElement">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="profileApplication">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TemplateableElement">
- <references referenceName="ownedTemplateSignature">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="templateBinding">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TemplateSignature">
- <references referenceName="ownedParameter">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="parameter">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="template">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TemplateParameter">
- <references referenceName="default">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedDefault">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedParameteredElement">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="parameteredElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="signature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TemplateBinding">
- <references referenceName="parameterSubstitution">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="signature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="boundElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DirectedRelationship">
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Relationship">
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TemplateParameterSubstitution">
- <references referenceName="actual">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="formal">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedActual">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="templateBinding">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.PackageMerge">
- <references referenceName="mergedPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="receivingPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ProfileApplication">
- <references referenceName="appliedProfile">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="applyingPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Profile">
- <references referenceName="metaclassReference">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="metamodelReference">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ElementImport">
- <references referenceName="importedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="importingNamespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.PackageImport">
- <references referenceName="importedPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="importingNamespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Extension">
- <references referenceName="metaclass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Association">
- <references referenceName="endType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="memberEnd">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedEnd">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="navigableOwnedEnd">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Property">
- <references referenceName="interface">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="datatype">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="associationEnd">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="qualifier">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="class">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="defaultValue">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="opposite">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owningAssociation">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedProperty">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subsettedProperty">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="association">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.MultiplicityElement">
- <references referenceName="lowerValue">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="upperValue">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Feature">
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.RedefinableElement">
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ConnectableElement">
- <references referenceName="end">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ConnectorEnd">
- <references referenceName="definingEnd">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="partWithPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DeploymentTarget">
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployment">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Deployment">
- <references referenceName="configuration">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedArtifact">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="location">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DeploymentSpecification">
- <references referenceName="deployment">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Artifact">
- <references referenceName="manifestation">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="nestedArtifact">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedAttribute">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedOperation">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Manifestation">
- <references referenceName="utilizedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Operation">
- <references referenceName="interface">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="bodyCondition">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="class">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="datatype">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="postcondition">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="precondition">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedOperation">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="type">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.BehavioralFeature">
- <references referenceName="method">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedParameter">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedParameterSet">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="raisedException">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Behavior">
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedParameter">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedParameterSet">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="postcondition">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="precondition">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedBehavior">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="specification">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.BehavioredClassifier">
- <references referenceName="classifierBehavior">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="interfaceRealization">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedBehavior">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InterfaceRealization">
- <references referenceName="contract">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="implementingClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Interface">
- <references referenceName="nestedClassifier">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedAttribute">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedOperation">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedReception">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="protocol">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedInterface">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Reception">
- <references referenceName="signal">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Signal">
- <references referenceName="ownedAttribute">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ProtocolStateMachine">
- <references referenceName="conformance">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StateMachine">
- <references referenceName="connectionPoint">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="submachineState">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="region">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="extendedStateMachine">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Pseudostate">
- <references referenceName="state">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="stateMachine">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Vertex">
- <references referenceName="container">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="incoming">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="outgoing">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Region">
- <references referenceName="extendedRegion">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="state">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="stateMachine">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="transition">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="subvertex">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.State">
- <references referenceName="connection">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="connectionPoint">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="deferrableTrigger">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="doActivity">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="entry">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="exit">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedState">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="stateInvariant">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="submachine">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="region">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ConnectionPointReference">
- <references referenceName="entry">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="exit">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="state">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Trigger">
- <references referenceName="event">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="port">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Port">
- <references referenceName="protocol">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="provided">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="required">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Constraint">
- <references referenceName="constrainedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="specification">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Transition">
- <references referenceName="effect">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="guard">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedTransition">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="trigger">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="container">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ProtocolConformance">
- <references referenceName="generalMachine">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="specificMachine">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Parameter">
- <references referenceName="defaultValue">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="operation">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="parameterSet">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ParameterSet">
- <references referenceName="condition">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="parameter">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DataType">
- <references referenceName="ownedAttribute">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedOperation">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Enumeration">
- <references referenceName="ownedLiteral">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.EnumerationLiteral">
- <references referenceName="enumeration">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InstanceSpecification">
- <references referenceName="classifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="slot">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="specification">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Slot">
- <references referenceName="definingFeature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="value">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="owningInstance">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CollaborationUse">
- <references referenceName="roleBinding">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="type">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Collaboration">
- <references referenceName="collaborationRole">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Generalization">
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="generalizationSet">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="specific">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.GeneralizationSet">
- <references referenceName="powertype">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="generalization">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.RedefinableTemplateSignature">
- <references referenceName="extendedSignature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedParameter">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="classifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.UseCase">
- <references referenceName="extend">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="extensionPoint">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="include">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="subject">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Extend">
- <references referenceName="condition">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="extendedCase">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extensionLocation">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExtensionPoint">
- <references referenceName="useCase">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Include">
- <references referenceName="addition">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="includingCase">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Substitution">
- <references referenceName="contract">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="substitutingClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ClassifierTemplateParameter">
- <references referenceName="constrainingClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Connector">
- <references referenceName="contract">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="end">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedConnector">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="type">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.OpaqueExpression">
- <references referenceName="behavior">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="result">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.AcceptCallAction">
- <references referenceName="returnInformation">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.AcceptEventAction">
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="trigger">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Action">
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="localPostcondition">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="localPrecondition">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExecutableNode">
- <references referenceName="handler">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActivityNode">
- <references referenceName="activity">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inPartition">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inStructuredNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inInterruptibleRegion">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="outgoing">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="incoming">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Activity">
- <references referenceName="ownedGroup">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="edge">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="variable">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="group">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedNode">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="partition">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="structuredNode">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="node">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActivityGroup">
- <references referenceName="containedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inActivity">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subgroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActivityEdge">
- <references referenceName="activity">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="guard">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="inPartition">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inStructuredNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="interrupts">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="weight">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActivityPartition">
- <references referenceName="node">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="represents">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subpartition">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="superPartition">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="edge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StructuredActivityNode">
- <references referenceName="node">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="structuredNodeInput">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="structuredNodeOutput">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="variable">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="edge">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ObjectNode">
- <references referenceName="inState">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="selection">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="upperBound">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Variable">
- <references referenceName="activityScope">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="scope">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InterruptibleActivityRegion">
- <references referenceName="node">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="interruptingEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExceptionHandler">
- <references referenceName="exceptionInput">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="exceptionType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="handlerBody">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="protectedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActionExecutionSpecification">
- <references referenceName="action">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExecutionSpecification">
- <references referenceName="finish">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="start">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InteractionFragment">
- <references referenceName="covered">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="enclosingInteraction">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="enclosingOperand">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="generalOrdering">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Lifeline">
- <references referenceName="decomposedAs">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="interaction">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="represents">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="selector">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="coveredBy">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InteractionUse">
- <references referenceName="actualGate">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="argument">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="refersTo">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="returnValue">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="returnValueRecipient">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.MessageEnd">
- <references referenceName="message">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Message">
- <references referenceName="argument">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="connector">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="interaction">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="receiveEvent">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="sendEvent">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="signature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Interaction">
- <references referenceName="action">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="formalGate">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="fragment">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="lifeline">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="message">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InteractionOperand">
- <references referenceName="guard">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="fragment">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InteractionConstraint">
- <references referenceName="maxint">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="minint">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.GeneralOrdering">
- <references referenceName="after">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="before">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.OccurrenceSpecification">
- <references referenceName="toAfter">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="toBefore">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActionInputPin">
- <references referenceName="fromAction">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActivityParameterNode">
- <references referenceName="parameter">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.AddStructuralFeatureValueAction">
- <references referenceName="insertAt">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.WriteStructuralFeatureAction">
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="value">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StructuralFeatureAction">
- <references referenceName="object">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="structuralFeature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.AddVariableValueAction">
- <references referenceName="insertAt">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.WriteVariableAction">
- <references referenceName="value">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.VariableAction">
- <references referenceName="variable">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.BehaviorExecutionSpecification">
- <references referenceName="behavior">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.BroadcastSignalAction">
- <references referenceName="signal">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InvocationAction">
- <references referenceName="argument">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="onPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CallAction">
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CallBehaviorAction">
- <references referenceName="behavior">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CallEvent">
- <references referenceName="operation">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CallOperationAction">
- <references referenceName="operation">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ChangeEvent">
- <references referenceName="changeExpression">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Clause">
- <references referenceName="body">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="bodyOutput">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="decider">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="predecessorClause">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="successorClause">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="test">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ClearAssociationAction">
- <references referenceName="association">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="object">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ClearStructuralFeatureAction">
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CombinedFragment">
- <references referenceName="cfragmentGate">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="operand">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Component">
- <references referenceName="packagedElement">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="provided">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="realization">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="required">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ComponentRealization">
- <references referenceName="realizingClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="abstraction">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ConditionalNode">
- <references referenceName="clause">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ConsiderIgnoreFragment">
- <references referenceName="message">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LinkAction">
- <references referenceName="endData">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="inputValue">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LinkEndData">
- <references referenceName="end">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="qualifier">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="value">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.QualifierValue">
- <references referenceName="qualifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="value">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LinkEndCreationData">
- <references referenceName="insertAt">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CreateLinkObjectAction">
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CreateObjectAction">
- <references referenceName="classifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DecisionNode">
- <references referenceName="decisionInput">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="decisionInputFlow">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ObjectFlow">
- <references referenceName="selection">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="transformation">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LinkEndDestructionData">
- <references referenceName="destroyAt">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DestroyObjectAction">
- <references referenceName="target">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Node">
- <references referenceName="nestedNode">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Duration">
- <references referenceName="expr">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="observation">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Interval">
- <references referenceName="max">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="min">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DurationObservation">
- <references referenceName="event">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExecutionOccurrenceSpecification">
- <references referenceName="execution">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExpansionNode">
- <references referenceName="regionAsInput">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="regionAsOutput">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExpansionRegion">
- <references referenceName="outputElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inputElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InformationFlow">
- <references referenceName="conveyed">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="informationSource">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="informationTarget">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="realization">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="realizingActivityEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="realizingConnector">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="realizingMessage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InformationItem">
- <references referenceName="represented">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InstanceValue">
- <references referenceName="instance">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.JoinNode">
- <references referenceName="joinSpec">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LoopNode">
- <references referenceName="bodyOutput">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="bodyPart">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="decider">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="loopVariable">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="loopVariableInput">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="setupPart">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="test">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.OpaqueAction">
- <references referenceName="inputValue">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="outputValue">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ProtocolTransition">
- <references referenceName="postCondition">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="preCondition">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="referred">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.RaiseExceptionAction">
- <references referenceName="exception">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadExtentAction">
- <references referenceName="classifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadIsClassifiedObjectAction">
- <references referenceName="classifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="object">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadLinkAction">
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadLinkObjectEndAction">
- <references referenceName="end">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="object">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadLinkObjectEndQualifierAction">
- <references referenceName="object">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="qualifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadSelfAction">
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadStructuralFeatureAction">
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadVariableAction">
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReclassifyObjectAction">
- <references referenceName="newClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="object">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="oldClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReduceAction">
- <references referenceName="collection">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="reducer">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.RemoveStructuralFeatureValueAction">
- <references referenceName="removeAt">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.RemoveVariableValueAction">
- <references referenceName="removeAt">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReplyAction">
- <references referenceName="replyToCall">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="replyValue">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="returnInformation">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.SendObjectAction">
- <references referenceName="request">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.SendSignalAction">
- <references referenceName="signal">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.SequenceNode">
- <references referenceName="executableNode">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.SignalEvent">
- <references referenceName="signal">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StartClassifierBehaviorAction">
- <references referenceName="object">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StartObjectBehaviorAction">
- <references referenceName="object">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StateInvariant">
- <references referenceName="invariant">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TestIdentityAction">
- <references referenceName="first">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="second">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TimeExpression">
- <references referenceName="expr">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="observation">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TimeEvent">
- <references referenceName="when">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TimeObservation">
- <references referenceName="event">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.UnmarshallAction">
- <references referenceName="object">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="unmarshallType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ValuePin">
- <references referenceName="value">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ValueSpecificationAction">
- <references referenceName="result">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="value">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
-</uicustom:MetamodelView>
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/StereotypeDisplay.custom b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/StereotypeDisplay.custom
new file mode 100644
index 00000000000..27ef72051e6
--- /dev/null
+++ b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/StereotypeDisplay.custom
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<custom:Customization xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:custom="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:efacet="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet" xmlns:javaQuery="http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation/javaquery" name="StereotypeDisplay" documentation="Used to display Stereotype Application" mustBeLoadedByDefault="true">
+ <eClassifiers xsi:type="custom:EClassCustomization" name="Element">
+ <extendedMetaclass href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement"/>
+ <facetOperations name="DisplayStereotype">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eParameters name="eObject">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eParameters>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.uml.modelexplorer.queries.GetComplexName"/>
+ <override xsi:type="efacet:FacetOperation" href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/label"/>
+ </facetOperations>
+ <extendedFacets href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject"/>
+ </eClassifiers>
+</custom:Customization>
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/UMLFacetDefaultBrowserCustomization.uiCustom b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/UMLFacetDefaultBrowserCustomization.uiCustom
deleted file mode 100644
index f9ef843ee40..00000000000
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/UMLFacetDefaultBrowserCustomization.uiCustom
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<uicustom:MetamodelView xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" xmlns:uicustom="http://www.eclipse.org/EmfFacet/infra/browser/custom/0.8" metamodelURI="http://org.eclipse.org/papyrus/modelExplorer/Facet">
- <types metaclassName="PapyrusUMLFacet.DiagramContainer">
- <references referenceName="diagrams">
- <customizedFeatures>
- <valueCases>
- <value xsi:type="uicustom:StaticFeatureValue" value="false"/>
- <condition xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusBrowserQuery#IsDiagramContainer"/>
- </valueCases>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <availableQuerySets>PapyrusBrowserQuery</availableQuerySets>
-</uicustom:MetamodelView>
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/UMLPapyrusDefaultBrowserCustomization.uiCustom b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/UMLPapyrusDefaultBrowserCustomization.uiCustom
deleted file mode 100644
index 75f892479a2..00000000000
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/resource/UMLPapyrusDefaultBrowserCustomization.uiCustom
+++ /dev/null
@@ -1,9142 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<uicustom:MetamodelView xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" xmlns:uicustom="http://www.eclipse.org/EmfFacet/infra/browser/custom/0.8" metamodelURI="http://www.eclipse.org/uml2/5.0.0/UML">
- <types metaclassName="uml.Package">
- <references referenceName="packagedElement">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="packageImport">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="nestedPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="nestingPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.NamedElement">
- <customizedFeatures customizedFeature="label">
- <defaultValue xsi:type="uicustom:DerivedFeatureValue">
- <valueCalculator xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusBrowserQuery#GetComplexName"/>
- </defaultValue>
- </customizedFeatures>
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Element">
- <customizedFeatures customizedFeature="color">
- <valueCases>
- <value xsi:type="uicustom:StaticFeatureValue" value="(192,192,192)"/>
- <condition xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusBrowserQuery#IsReadOnly"/>
- </valueCases>
- </customizedFeatures>
- <customizedFeatures customizedFeature="italic">
- <defaultValue xsi:type="uicustom:DerivedFeatureValue">
- <valueCalculator xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusBrowserQuery#IsReadOnly"/>
- </defaultValue>
- </customizedFeatures>
- <customizedFeatures customizedFeature="hideMetaclassName">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- <references referenceName="eAnnotations">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Comment">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.PackageableElement">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Dependency">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DirectedRelationship">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Relationship">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Namespace">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ElementImport">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.PackageImport">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importingNamespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Constraint">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ValueSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TypedElement">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Type">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Association">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="endType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Classifier">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.RedefinableElement">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TemplateableElement">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TemplateBinding">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TemplateSignature">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TemplateParameter">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ParameterableElement">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TemplateParameterSubstitution">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Generalization">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.GeneralizationSet">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Feature">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Substitution">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Realization">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Abstraction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.OpaqueExpression">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="result">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Parameter">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="end">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.MultiplicityElement">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ConnectableElement">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="end">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ConnectorEnd">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="definingEnd">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Property">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="end">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="opposite">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DeploymentTarget">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Deployment">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DeployedArtifact">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DeploymentSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Artifact">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Manifestation">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Operation">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="type">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.BehavioralFeature">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Behavior">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Class">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.BehavioredClassifier">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InterfaceRealization">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Interface">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Reception">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Signal">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ProtocolStateMachine">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StateMachine">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Region">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Vertex">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="outgoing">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="incoming">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Transition">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Trigger">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Event">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Port">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="end">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="opposite">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="required">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="provided">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.State">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="outgoing">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="incoming">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ConnectionPointReference">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="outgoing">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="incoming">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Pseudostate">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="outgoing">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="incoming">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ProtocolConformance">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.EncapsulatedClassifier">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StructuredClassifier">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Connector">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Extension">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="endType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="metaclass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExtensionEnd">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="end">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="opposite">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Stereotype">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="profile">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedAttribute">
- <customizedFeatures customizedFeature="collapseLink">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Image">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Profile">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="nestedPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="nestingPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedStereotype">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Model">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="nestedPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="nestingPackage">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ParameterSet">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DataType">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.OperationTemplateParameter">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StructuralFeature">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="featuringClassifier">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ConnectableElementTemplateParameter">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CollaborationUse">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Collaboration">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.UseCase">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Include">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Extend">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExtensionPoint">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.RedefinableTemplateSignature">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedParameter">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ClassifierTemplateParameter">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StringExpression">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Expression">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Usage">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.PackageMerge">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ProfileApplication">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Enumeration">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.EnumerationLiteral">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InstanceSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Slot">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.PrimitiveType">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LiteralSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LiteralInteger">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LiteralString">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LiteralBoolean">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LiteralNull">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InstanceValue">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LiteralUnlimitedNatural">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.OpaqueBehavior">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.FunctionBehavior">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.OpaqueAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Action">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExecutableNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActivityNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StructuredActivityNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subgroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActivityGroup">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subgroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Activity">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="structuredNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Variable">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="end">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActivityEdge">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActivityPartition">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subgroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InterruptibleActivityRegion">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subgroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExceptionHandler">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ObjectNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.OutputPin">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Pin">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InputPin">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CallAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InvocationAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.SendSignalAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CallOperationAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CallBehaviorAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.SequenceNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subgroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ControlNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ControlFlow">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InitialNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActivityParameterNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ValuePin">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Message">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="signature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.MessageEnd">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Interaction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InteractionFragment">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Lifeline">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.PartDecomposition">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InteractionUse">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Gate">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.GeneralOrdering">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.OccurrenceSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InteractionOperand">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InteractionConstraint">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExecutionSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StateInvariant">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActionExecutionSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.BehaviorExecutionSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.MessageEvent">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.MessageOccurrenceSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExecutionOccurrenceSpecification">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Actor">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CallEvent">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ChangeEvent">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.SignalEvent">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.AnyReceiveEvent">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ForkNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.FlowFinalNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.FinalNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CentralBufferNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.MergeNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DecisionNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ObjectFlow">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActivityFinalNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ComponentRealization">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Component">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="required">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="provided">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Node">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CommunicationPath">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="endType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Device">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExecutionEnvironment">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="deployedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CombinedFragment">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Continuation">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ConsiderIgnoreFragment">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CreateObjectAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DestroyObjectAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TestIdentityAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadSelfAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StructuralFeatureAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadStructuralFeatureAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.WriteStructuralFeatureAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ClearStructuralFeatureAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.RemoveStructuralFeatureValueAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.AddStructuralFeatureValueAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LinkAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LinkEndData">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.QualifierValue">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadLinkAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LinkEndCreationData">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CreateLinkAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.WriteLinkAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DestroyLinkAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LinkEndDestructionData">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ClearAssociationAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.BroadcastSignalAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.SendObjectAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ValueSpecificationAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TimeExpression">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Observation">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Duration">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DurationInterval">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Interval">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TimeConstraint">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.IntervalConstraint">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TimeInterval">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DurationConstraint">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TimeObservation">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DurationObservation">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.FinalState">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="outgoing">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="incoming">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.TimeEvent">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.VariableAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadVariableAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.WriteVariableAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ClearVariableAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.AddVariableValueAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.RemoveVariableValueAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.RaiseExceptionAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ActionInputPin">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InformationItem">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.InformationFlow">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="source">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="target">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadExtentAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReclassifyObjectAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadIsClassifiedObjectAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StartClassifierBehaviorAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadLinkObjectEndAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReadLinkObjectEndQualifierAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.CreateLinkObjectAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.AcceptEventAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.AcceptCallAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReplyAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.UnmarshallAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ReduceAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.StartObjectBehaviorAction">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.JoinNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.DataStoreNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ConditionalNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subgroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.Clause">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.LoopNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subgroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExpansionNode">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ExpansionRegion">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="output">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="input">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="context">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="subgroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superGroup">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedEdge">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="containedNode">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.ProtocolTransition">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="referred">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
- <types metaclassName="uml.AssociationClass">
- <references referenceName="ownedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="owner">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="namespace">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="member">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="importedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="redefinitionContext">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="package">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="feature">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="inheritedMember">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="general">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="attribute">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="part">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="role">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="ownedPort">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="superClass">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="extension">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="relatedElement">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- <references referenceName="endType">
- <customizedFeatures>
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="false"/>
- </customizedFeatures>
- </references>
- </types>
-</uicustom:MetamodelView>
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src-gen/org/eclipse/papyrus/uml/modelexplorer/handler/DestructionOccurrenceSpecificationHandler.java b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src-gen/org/eclipse/papyrus/uml/modelexplorer/handler/DestructionOccurrenceSpecificationHandler.java
index edda1c96ca5..cbe8ece9f1a 100644
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src-gen/org/eclipse/papyrus/uml/modelexplorer/handler/DestructionOccurrenceSpecificationHandler.java
+++ b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src-gen/org/eclipse/papyrus/uml/modelexplorer/handler/DestructionOccurrenceSpecificationHandler.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.uml.modelexplorer.handler;
import org.eclipse.gmf.runtime.emf.type.core.IElementType;
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src-gen/org/eclipse/papyrus/uml/modelexplorer/handler/LiteralRealHandler.java b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src-gen/org/eclipse/papyrus/uml/modelexplorer/handler/LiteralRealHandler.java
index 1c04c7768fd..909bf34e61a 100644
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src-gen/org/eclipse/papyrus/uml/modelexplorer/handler/LiteralRealHandler.java
+++ b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src-gen/org/eclipse/papyrus/uml/modelexplorer/handler/LiteralRealHandler.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.uml.modelexplorer.handler;
import org.eclipse.gmf.runtime.emf.type.core.IElementType;
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src-gen/org/eclipse/papyrus/uml/modelexplorer/handler/RefineHandler.java b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src-gen/org/eclipse/papyrus/uml/modelexplorer/handler/RefineHandler.java
index b1c96844fa1..eae6e34f2e9 100644
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src-gen/org/eclipse/papyrus/uml/modelexplorer/handler/RefineHandler.java
+++ b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src-gen/org/eclipse/papyrus/uml/modelexplorer/handler/RefineHandler.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.uml.modelexplorer.handler;
import org.eclipse.gmf.runtime.emf.type.core.IElementType;
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/Activator.java b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/Activator.java
index e5fd501bc61..3fe63a6b332 100644
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/Activator.java
+++ b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/Activator.java
@@ -4,7 +4,6 @@
package org.eclipse.papyrus.uml.modelexplorer;
import org.eclipse.emf.ecore.EValidator;
-import org.eclipse.emf.facet.infra.facet.validation.EValidatorAdapter;
import org.eclipse.papyrus.infra.core.log.LogHelper;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.eclipse.uml2.uml.UMLPackage;
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/factory/ModelElementItemFactory.java b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/factory/ModelElementItemFactory.java
index 97329bd4545..5cd026de12e 100644
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/factory/ModelElementItemFactory.java
+++ b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/factory/ModelElementItemFactory.java
@@ -3,22 +3,16 @@
*/
package org.eclipse.papyrus.uml.modelexplorer.factory;
-import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.core.runtime.IAdapterFactory;
import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
public class ModelElementItemFactory implements IAdapterFactory {
public Object getAdapter(Object adaptableObject, Class adapterType) {
- if(adaptableObject instanceof IAdaptable) {
- EObject eobject = (EObject)((IAdaptable)adaptableObject).getAdapter(EObject.class);
- if(adapterType.isInstance(eobject)) {
+ EObject eobject = EMFHelper.getEObject(adaptableObject);
return eobject;
- }
- }
- // TODO Auto-generated method stub
- return null;
}
public Class<?>[] getAdapterList() {
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/handler/ToggleAdvancedModelExplorerHandler.java b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/handler/ToggleAdvancedModelExplorerHandler.java
index 0018675c9fd..265e4ca5643 100644
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/handler/ToggleAdvancedModelExplorerHandler.java
+++ b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/handler/ToggleAdvancedModelExplorerHandler.java
@@ -19,9 +19,10 @@ import java.util.List;
import org.eclipse.core.commands.AbstractHandler;
import org.eclipse.core.commands.ExecutionEvent;
import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.emf.facet.infra.browser.custom.MetamodelView;
-import org.eclipse.emf.facet.infra.browser.custom.core.CustomizationsCatalog;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationCatalogManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationCatalogManagerFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
import org.eclipse.papyrus.views.modelexplorer.Activator;
import org.eclipse.papyrus.views.modelexplorer.ModelExplorerPageBookView;
import org.eclipse.swt.widgets.Event;
@@ -54,25 +55,30 @@ public class ToggleAdvancedModelExplorerHandler extends AbstractHandler {
public Object execute(ExecutionEvent event) throws ExecutionException {
- //State state = event.getCommand().getState("org.eclipse.papyrus.uml.modelexplorer.customization.advanced.state");
-
-
- CustomizationManager customizationManager = Activator.getDefault().getCustomizationManager();
+ ICustomizationManager customizationManager = Activator.getDefault().getCustomizationManager();
if(customizationManager != null) {
if(event.getTrigger() instanceof Event) {
if(((Event)event.getTrigger()).widget instanceof ToolItem) {
ToolItem item = (ToolItem)((Event)event.getTrigger()).widget;
+ ICustomizationCatalogManager customCatalog = ICustomizationCatalogManagerFactory.DEFAULT.getOrCreateCustomizationCatalogManager(customizationManager.getResourceSet());
+ Customization simpleUMLCustomization = null;
+
+ //look for SIMPLE UML Customization
+ for(Customization customization : customCatalog.getRegisteredCustomizations()) {
+ if(SIMPLE_UML_CUSTOMIZATION.equals(customization.getName())){
+ simpleUMLCustomization= customization;
+ }
+ }
- MetamodelView simpleUMLCustomization = CustomizationsCatalog.getInstance().getCustomization(SIMPLE_UML_CUSTOMIZATION);
if(simpleUMLCustomization != null) {
if(item.getSelection()) {
//Advanced view
- List<MetamodelView> registeredCustomizations = new LinkedList<MetamodelView>(customizationManager.getRegisteredCustomizations());
+ List<Customization> registeredCustomizations = new LinkedList<Customization>(customizationManager.getManagedCustomizations());
if(registeredCustomizations.remove(simpleUMLCustomization)) {
- customizationManager.clearCustomizations();
- for(MetamodelView customization : registeredCustomizations) {
- customizationManager.registerCustomization(customization);
+ customizationManager.getManagedCustomizations().clear();
+ for(Customization customization : registeredCustomizations) {
+ customizationManager.getManagedCustomizations().add(customization);
}
} else {
//No change
@@ -81,14 +87,13 @@ public class ToggleAdvancedModelExplorerHandler extends AbstractHandler {
} else {
//Simple view
- if(customizationManager.getRegisteredCustomizations().contains(simpleUMLCustomization)) {
+ if(customizationManager.getManagedCustomizations().contains(simpleUMLCustomization)) {
return null; //No change
}
- customizationManager.registerCustomization(simpleUMLCustomization);
+ customizationManager.getManagedCustomizations().add(0,simpleUMLCustomization);
}
- customizationManager.loadCustomizations();
//Save the current state of the customizations
org.eclipse.papyrus.infra.emf.Activator.getDefault().saveCustomizationManagerState();
}
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/handler/ToggleAdvancedModelExplorerState.java b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/handler/ToggleAdvancedModelExplorerState.java
index 6926348ec69..809c40cd80f 100644
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/handler/ToggleAdvancedModelExplorerState.java
+++ b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/handler/ToggleAdvancedModelExplorerState.java
@@ -14,9 +14,10 @@
package org.eclipse.papyrus.uml.modelexplorer.handler;
import org.eclipse.core.commands.State;
-import org.eclipse.emf.facet.infra.browser.custom.MetamodelView;
-import org.eclipse.emf.facet.infra.browser.custom.core.CustomizationsCatalog;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationCatalogManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationCatalogManagerFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
import org.eclipse.papyrus.views.modelexplorer.Activator;
/**
@@ -33,19 +34,28 @@ public class ToggleAdvancedModelExplorerState extends State {
@Override
public Boolean getValue() {
- MetamodelView simpleUMLCustomization = CustomizationsCatalog.getInstance().getCustomization(ToggleAdvancedModelExplorerHandler.SIMPLE_UML_CUSTOMIZATION);
+ ICustomizationManager customizationManager = Activator.getDefault().getCustomizationManager();
+ ICustomizationCatalogManager customCatalog = ICustomizationCatalogManagerFactory.DEFAULT.getOrCreateCustomizationCatalogManager(customizationManager.getResourceSet());
+ Customization simpleUMLCustomization = null;
+
+ //look for SIMPLE UML Customization
+ for(Customization customization : customCatalog.getRegisteredCustomizations()) {
+ if(ToggleAdvancedModelExplorerHandler.SIMPLE_UML_CUSTOMIZATION.equals(customization.getName())){
+ simpleUMLCustomization= customization;
+ }
+ }
+
if(simpleUMLCustomization == null) {
//The SimpleUML Customization doesn't exist. The advanced mode is activated
return true;
}
- CustomizationManager customizationManager = Activator.getDefault().getCustomizationManager();
if(customizationManager == null) {
//Should not happen, this is a singleton
return false;
}
-
- return !customizationManager.getRegisteredCustomizations().contains(simpleUMLCustomization);
+ return false;
+ //return !customizationManager.getRegisteredCustomizations().contains(simpleUMLCustomization);
}
}
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/DisplayUMLStructuralFeature.java b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/DisplayUMLStructuralFeature.java
new file mode 100644
index 00000000000..7bbf381e588
--- /dev/null
+++ b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/DisplayUMLStructuralFeature.java
@@ -0,0 +1,76 @@
+/*****************************************************************************
+ * Copyright (c) 2013 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.uml.modelexplorer.queries;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+import org.eclipse.papyrus.views.modelexplorer.queries.IsContainmentStructuralFeature;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.UMLPackage;
+/**
+ * this query is used to return false, if the given object is a references that is not containment or if it is a attribute.
+ * it return true if the the feature is also a facetReferences
+ *
+ */
+public class DisplayUMLStructuralFeature extends IsContainmentStructuralFeature implements IJavaQuery2<EObject, Boolean> {
+ public Boolean evaluate(final EObject context,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ ParameterValue parameterValue= (ParameterValue)parameterValues.getParameterValueByName("eStructuralFeature");
+ EStructuralFeature eStructuralFeature=(EStructuralFeature)parameterValue.getValue();
+ // This is an UML element?
+ if(context instanceof Element){
+
+
+ //the eStructure is a containmentReference or Facet Reference?
+ if(eStructuralFeature instanceof EReference){
+ if(UMLPackage.eINSTANCE.getPackageImport_ImportedPackage().equals(eStructuralFeature)){
+ return true;
+ }
+ if(UMLPackage.eINSTANCE.getElementImport_ImportedElement().equals(eStructuralFeature)){
+ return true;
+ }
+ if(UMLPackage.eINSTANCE.getMultiplicityElement_LowerValue().equals(eStructuralFeature)){
+ return false;
+ }
+ if(UMLPackage.eINSTANCE.getMultiplicityElement_UpperValue().equals(eStructuralFeature)){
+ return false;
+ }
+ if(UMLPackage.eINSTANCE.getPackage_ProfileApplication().equals(eStructuralFeature)){
+ return false;
+ }
+ if(UMLPackage.eINSTANCE.getBehavior_Postcondition().equals(eStructuralFeature)){
+ return false;
+ }
+ if(UMLPackage.eINSTANCE.getBehavior_Precondition().equals(eStructuralFeature)){
+ return false;
+ }
+ if(UMLPackage.eINSTANCE.getOperation_BodyCondition().equals(eStructuralFeature)){
+ return false;
+ }
+ }
+
+ }
+ return super.evaluate(context, parameterValues, facetManager);
+ }
+} \ No newline at end of file
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/GetComplexName.java b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/GetComplexName.java
index a7db6897f64..4623ad5a8c1 100644
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/GetComplexName.java
+++ b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/GetComplexName.java
@@ -5,28 +5,33 @@ package org.eclipse.papyrus.uml.modelexplorer.queries;
import java.util.List;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
import org.eclipse.uml2.uml.NamedElement;
import org.eclipse.uml2.uml.Stereotype;
/** get the name + the list of applied stereotypes */
-public class GetComplexName implements IJavaModelQuery<NamedElement, String> {
+public class GetComplexName implements IJavaQuery2<NamedElement, String> {
/** left Stereotype delimiters ('Guillemets francais'). */
public static String ST_LEFT = String.valueOf("\u00AB"); //$NON-NLS-1$
/** Right Stereotype delimiters ('Guillemets francais'). */
public static String ST_RIGHT = String.valueOf("\u00BB"); //$NON-NLS-1$
- public String evaluate(final NamedElement context,
- final ParameterValueList parameterValues)
- throws ModelQueryExecutionException {
- // TODO Auto-generated method stub
+
+ public String evaluate(NamedElement source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException {
+ ParameterValue parameterValue= (ParameterValue)parameterValues.getParameterValueByName("eObject");
+ if(parameterValue.getValue() instanceof EStructuralFeature){
+ return ((EStructuralFeature)parameterValue.getValue()).getName();
+ }
String txt = ""; //$NON-NLS-1$
- List<Stereotype> stereoList = context.getAppliedStereotypes();
+ List<Stereotype> stereoList = source.getAppliedStereotypes();
if (stereoList.size() == 0) {
- return context.getName();
+ return source.getName();
} else {
for (int i = 0; i < stereoList.size(); i++) {
txt = txt + stereoList.get(i).getName();
@@ -34,7 +39,7 @@ public class GetComplexName implements IJavaModelQuery<NamedElement, String> {
txt = txt + ", "; //$NON-NLS-1$
}
}
- txt = ST_LEFT + txt + ST_RIGHT + " " + context.getName(); //$NON-NLS-1$
+ txt = ST_LEFT + txt + ST_RIGHT + " " + source.getName(); //$NON-NLS-1$
return txt;
}
}
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/GetContainedDiagrams.java b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/GetContainedDiagrams.java
deleted file mode 100644
index 7354ad1f1c6..00000000000
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/GetContainedDiagrams.java
+++ /dev/null
@@ -1,56 +0,0 @@
-/**
- * Copyright (c) 2011 Atos.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Atos - Initial API and implementation
- *
- */
-package org.eclipse.papyrus.uml.modelexplorer.queries;
-
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.List;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
-import org.eclipse.gmf.runtime.notation.Diagram;
-import org.eclipse.papyrus.views.modelexplorer.NavigatorUtils;
-import org.eclipse.papyrus.views.modelexplorer.queries.AbstractEditorContainerQuery;
-import org.eclipse.uml2.uml.Element;
-
-/**
- * Get the collection of all contained diagrams
- * FIXME : delete this class when the bug EMF-Facet 365744 will be corrected!
- *
- * @Deprecated : use oep.infra.gmfdiag.modelexplorer#queries.GetContainedDiagrams
- */
-@Deprecated
-public class GetContainedDiagrams extends AbstractEditorContainerQuery implements IJavaModelQuery<Element, Collection<org.eclipse.gmf.runtime.notation.Diagram>> {
-
- public Collection<Diagram> evaluate(final Element context, final ParameterValueList parameterValues) throws ModelQueryExecutionException {
- List<Diagram> result = new ArrayList<Diagram>();
- Iterator<EObject> roots = NavigatorUtils.getNotationRoots(context);
- if(roots == null) {
- return result;
- }
-
- while(roots.hasNext()) {
- EObject root = roots.next();
- if(root instanceof Diagram) {
- if(EcoreUtil.equals(((Diagram)root).getElement(), context)) {
- result.add((Diagram)root);
- }
- }
- }
- return result;
- }
-}
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/GetDiagramIcon.java b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/GetDiagramIcon.java
deleted file mode 100644
index 296d5eb3eb5..00000000000
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/GetDiagramIcon.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/**
- * Copyright (c) 2011 Atos.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Atos - Initial API and implementation
- *
- */
-package org.eclipse.papyrus.uml.modelexplorer.queries;
-
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
-import org.eclipse.gmf.runtime.notation.Diagram;
-import org.eclipse.papyrus.views.modelexplorer.queries.AbstractGetEditorIconQuery;
-
-/**
- * Return the path to the icon of the corresponding diagram * FIXME : delete this class when the bug EMF-Facet 365744 will be corrected!
- *
- * @Deprecated : use oep.infra.gmfdiag.modelexplorer#queries.GetDiagramIcon
- */
-@Deprecated
-public class GetDiagramIcon extends AbstractGetEditorIconQuery implements IJavaModelQuery<Diagram, String> {
-
- public String evaluate(final Diagram context, final ParameterValueList parameterValues) throws ModelQueryExecutionException {
- return "/" + getEditorRegistry(context).getEditorURLIcon(context); //$NON-NLS-1$
- }
-}
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/GetName.java b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/GetName.java
deleted file mode 100644
index 78f63761749..00000000000
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/GetName.java
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
- *
- */
-package org.eclipse.papyrus.uml.modelexplorer.queries;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
-import org.eclipse.uml2.uml.NamedElement;
-
-/** get the name + the list of stereotypes from a named Element */
-public class GetName implements IJavaModelQuery<NamedElement, String> {
- public String evaluate(final NamedElement context, final ParameterValueList parameterValues)
- throws ModelQueryExecutionException {
- // TODO Auto-generated method stub
- return context.getName();
- }
-}
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/IsDiagram.java b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/IsDiagram.java
deleted file mode 100644
index 2caeceaa3d6..00000000000
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/IsDiagram.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/**
- * Copyright (c) 2011 Atos.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Atos - Initial API and implementation
- *
- */
-package org.eclipse.papyrus.uml.modelexplorer.queries;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
-import org.eclipse.gmf.runtime.notation.Diagram;
-
-/**
- * Return tru eif the element is a diagram * FIXME : delete this class when the bug EMF-Facet 365744 will be corrected!
- *
- * @Deprecated : use oep.infra.gmfdiag.modelexplorer#queries.IsDiagram
- */
-@Deprecated
-public class IsDiagram implements IJavaModelQuery<EObject, Boolean> {
-
- public Boolean evaluate(final EObject context, final ParameterValueList parameterValues) throws ModelQueryExecutionException {
-
- return context instanceof Diagram;
- }
-}
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/IsDiagramContainer.java b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/IsDiagramContainer.java
deleted file mode 100644
index 09086c714b5..00000000000
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/IsDiagramContainer.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/**
- * Copyright (c) 2011 Atos.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Atos - Initial API and implementation
- *
- */
-package org.eclipse.papyrus.uml.modelexplorer.queries;
-
-import java.util.Iterator;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
-import org.eclipse.gmf.runtime.notation.Diagram;
-import org.eclipse.papyrus.views.modelexplorer.NavigatorUtils;
-import org.eclipse.papyrus.views.modelexplorer.queries.AbstractEditorContainerQuery;
-
-/**
- * FIXME : delete this class when the bug EMF-Facet 365744 will be corrected!
- *
- * @Deprecated : use oep.infra.gmfdiag.modelexplorer#queries.IsDiagramContainer
- */
-@Deprecated
-public class IsDiagramContainer extends AbstractEditorContainerQuery implements IJavaModelQuery<EObject, Boolean> {
-
-
- public Boolean evaluate(final EObject context, ParameterValueList parameterValues) throws ModelQueryExecutionException {
- Iterator<EObject> roots = NavigatorUtils.getNotationRoots(context);
- if(roots == null) {
- return false;
- }
-
- while(roots.hasNext()) {
- EObject root = roots.next();
- if(root instanceof Diagram) {
- if(EcoreUtil.equals(((Diagram)root).getElement(), context)) {
- return true;
- }
- }
- }
- return false;
- }
-}
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/IsReadOnly.java b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/IsReadOnly.java
deleted file mode 100644
index 68067243454..00000000000
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/queries/IsReadOnly.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 2011 Atos.
- *
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Atos - Initial API and implementation
- *
- *****************************************************************************/
-package org.eclipse.papyrus.uml.modelexplorer.queries;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
-import org.eclipse.emf.edit.domain.EditingDomain;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
-
-/**
- * Create a query which will return true if the ressource is in read only mode.
- *
- * @author "Arthur Daussy <a href="mailto:arthur.daussy@atos.net">arthur.daussy@atos.net</a>"
- * FIXME : delete this class when the bug EMF-Facet 365744 will be corrected!
- * @deprecated use org.eclipse.papyrus.views.modelexploer#queries.IsReadOnly
- */
-@Deprecated
-public class IsReadOnly implements IJavaModelQuery<EObject, Boolean> {
-
- public Boolean evaluate(EObject context, ParameterValueList parameterValues) throws ModelQueryExecutionException {
- EditingDomain editingDomain = AdapterFactoryEditingDomain.getEditingDomainFor(context);
- if(editingDomain != null) {
- if(editingDomain.isReadOnly(context.eResource())) {
- return true;
- }
- }
- return false;
- }
-
-}
diff --git a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/util/ModelExplorerUtils.java b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/util/ModelExplorerUtils.java
index b3d9b140921..4bdaec2a680 100644
--- a/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/util/ModelExplorerUtils.java
+++ b/plugins/uml/modelexplorer/org.eclipse.papyrus.uml.modelexplorer/src/org/eclipse/papyrus/uml/modelexplorer/util/ModelExplorerUtils.java
@@ -14,8 +14,9 @@ package org.eclipse.papyrus.uml.modelexplorer.util;
import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EReference;
-import org.eclipse.emf.facet.infra.browser.uicore.internal.model.LinkItem;
import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.uml.service.types.utils.CommandContext;
import org.eclipse.papyrus.uml.service.types.utils.ICommandContext;
import org.eclipse.ui.IWorkbenchWindow;
@@ -53,19 +54,17 @@ public class ModelExplorerUtils {
EObject container = null;
EReference reference = null;
- if(selection instanceof IAdaptable) {
- container = (EObject)((IAdaptable)selection).getAdapter(EObject.class);
+ container = EMFHelper.getEObject(selection);
- if(container == null) {
- reference = (EReference)((IAdaptable)selection).getAdapter(EReference.class);
+ if(container == null) {
+ reference = (EReference)((IAdaptable)selection).getAdapter(EReference.class);
- // The following part introduce a dependency to EMF Facet.
- // Although the selection can be adapted to EReference, the link parent is required but
- // no API allows to get this element except LinkItem or ITreeElement.
- if((reference != null) && (selection instanceof LinkItem)) {
- container = ((LinkItem)selection).getParent();
- }
+ // The following part introduce a dependency to EMF Facet.
+ // Although the selection can be adapted to EReference, the link parent is required but
+ // no API allows to get this element except LinkItem or ITreeElement.
+ if((reference != null) && (selection instanceof EReferenceTreeElement )) {
+ container = ((EReferenceTreeElement)selection).getParent();
}
}
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/META-INF/MANIFEST.MF b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/META-INF/MANIFEST.MF
index 5ea0d3074be..42625a77040 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/META-INF/MANIFEST.MF
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/META-INF/MANIFEST.MF
@@ -21,7 +21,7 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.jface,
org.eclipse.core.expressions,
org.eclipse.swt,
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.4.0"
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="1.0.0"
Export-Package: org.eclipse.papyrus.uml.nattable,
org.eclipse.papyrus.uml.nattable.config,
org.eclipse.papyrus.uml.nattable.dataprovider,
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/src/org/eclipse/papyrus/uml/nattable/config/UMLFeatureCellEditorConfig.java b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/src/org/eclipse/papyrus/uml/nattable/config/UMLFeatureCellEditorConfig.java
index e1d35d290b5..335aa070429 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/src/org/eclipse/papyrus/uml/nattable/config/UMLFeatureCellEditorConfig.java
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/src/org/eclipse/papyrus/uml/nattable/config/UMLFeatureCellEditorConfig.java
@@ -1,4 +1,4 @@
-/*****************************************************************************
+/*****************************************************************************
* Copyright (c) 2013, 2014 CEA LIST and others.
*
* All rights reserved. This program and the accompanying materials
@@ -10,7 +10,7 @@
* Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
* Christian W. Damus (CEA) - bug 402525
*
- *****************************************************************************/
+ *****************************************************************************/
package org.eclipse.papyrus.uml.nattable.config;
import org.eclipse.emf.ecore.EClassifier;
diff --git a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/src/org/eclipse/papyrus/uml/nattable/messages/Messages.java b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/src/org/eclipse/papyrus/uml/nattable/messages/Messages.java
index d8acfe53519..02b468f3bf8 100644
--- a/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/src/org/eclipse/papyrus/uml/nattable/messages/Messages.java
+++ b/plugins/uml/nattable/org.eclipse.papyrus.uml.nattable/src/org/eclipse/papyrus/uml/nattable/messages/Messages.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.uml.nattable.messages;
import org.eclipse.osgi.util.NLS;
diff --git a/plugins/uml/org.eclipse.papyrus.uml.commands/plugin.xml b/plugins/uml/org.eclipse.papyrus.uml.commands/plugin.xml
index 497a9c90c13..3496f6bf1d3 100644
--- a/plugins/uml/org.eclipse.papyrus.uml.commands/plugin.xml
+++ b/plugins/uml/org.eclipse.papyrus.uml.commands/plugin.xml
@@ -66,9 +66,9 @@
value="1">
</count>
<iterate>
- <adapt
- type="org.eclipse.uml2.uml.NamedElement">
- </adapt>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</iterate>
<!-- we add these test to force the refresh of the Menu + to avoid handlers conflit -->
<test
diff --git a/plugins/uml/org.eclipse.papyrus.uml.commands/src/org/eclipse/papyrus/uml/commands/handler/AbstractEMFCommandHandler.java b/plugins/uml/org.eclipse.papyrus.uml.commands/src/org/eclipse/papyrus/uml/commands/handler/AbstractEMFCommandHandler.java
index 53d9ba6e5ca..a4f86f1d451 100644
--- a/plugins/uml/org.eclipse.papyrus.uml.commands/src/org/eclipse/papyrus/uml/commands/handler/AbstractEMFCommandHandler.java
+++ b/plugins/uml/org.eclipse.papyrus.uml.commands/src/org/eclipse/papyrus/uml/commands/handler/AbstractEMFCommandHandler.java
@@ -31,6 +31,7 @@ import org.eclipse.papyrus.infra.core.services.ServiceException;
import org.eclipse.papyrus.infra.core.services.ServicesRegistry;
import org.eclipse.papyrus.infra.core.utils.ServiceUtils;
import org.eclipse.papyrus.infra.emf.utils.BusinessModelResolver;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForEObject;
import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForHandlers;
import org.eclipse.papyrus.uml.commands.Activator;
@@ -104,14 +105,7 @@ public abstract class AbstractEMFCommandHandler extends AbstractHandler {
// Treat non-null selected object (try to adapt and return EObject)
if(selection != null) {
- if(selection instanceof IAdaptable) {
- selection = ((IAdaptable)selection).getAdapter(EObject.class);
- }
-
- Object businessObject = BusinessModelResolver.getInstance().getBusinessModel(selection);
- if(businessObject instanceof EObject) {
- eObject = (EObject)businessObject;
- }
+ eObject=EMFHelper.getEObject(selection);
}
return eObject;
}
@@ -148,24 +142,20 @@ public abstract class AbstractEMFCommandHandler extends AbstractHandler {
IStructuredSelection structuredSelection = (IStructuredSelection)selection;
for(Object current : structuredSelection.toArray()) {
// Adapt current selection to EObject
- if(current instanceof IAdaptable) {
- EObject eobject = (EObject)((IAdaptable)current).getAdapter(EObject.class);
- if(eobject != null) {
- selectedEObjects.add(eobject);
- }
+ EObject eobject=EMFHelper.getEObject(current);
+ if(eobject != null) {
+ selectedEObjects.add(eobject);
}
}
} else { // Not a IStructuredSelection
if(selection != null) {
// Adapt current selection to EObject
- if(selection instanceof IAdaptable) {
- EObject eobject = (EObject)((IAdaptable)selection).getAdapter(EObject.class);
+ EObject eobject=EMFHelper.getEObject(selection);
if(eobject != null) {
selectedEObjects.add(eobject);
}
}
- }
}
return selectedEObjects;
diff --git a/plugins/uml/org.eclipse.papyrus.uml.import/plugin.xml b/plugins/uml/org.eclipse.papyrus.uml.import/plugin.xml
index 1663f4cbfd3..2aaf4d06a99 100644
--- a/plugins/uml/org.eclipse.papyrus.uml.import/plugin.xml
+++ b/plugins/uml/org.eclipse.papyrus.uml.import/plugin.xml
@@ -73,12 +73,9 @@
<with
variable="selection">
<iterate>
- <adapt
- type="org.eclipse.emf.ecore.EObject">
- <instanceof
- value="org.eclipse.uml2.uml.Package">
- </instanceof>
- </adapt>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</iterate>
</with>
<count
@@ -95,12 +92,9 @@
<with
variable="selection">
<iterate>
- <adapt
- type="org.eclipse.emf.ecore.EObject">
- <instanceof
- value="org.eclipse.uml2.uml.Package">
- </instanceof>
- </adapt>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</iterate>
</with>
<count
@@ -117,12 +111,9 @@
<with
variable="selection">
<iterate>
- <adapt
- type="org.eclipse.emf.ecore.EObject">
- <instanceof
- value="org.eclipse.uml2.uml.Package">
- </instanceof>
- </adapt>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</iterate>
</with>
<count
diff --git a/plugins/uml/org.eclipse.papyrus.uml.profile/META-INF/MANIFEST.MF b/plugins/uml/org.eclipse.papyrus.uml.profile/META-INF/MANIFEST.MF
index 25b579de3db..79c424569c1 100644
--- a/plugins/uml/org.eclipse.papyrus.uml.profile/META-INF/MANIFEST.MF
+++ b/plugins/uml/org.eclipse.papyrus.uml.profile/META-INF/MANIFEST.MF
@@ -1,6 +1,5 @@
Manifest-Version: 1.0
-Require-Bundle: org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.1.0",
- org.eclipse.papyrus.uml.tools.utils;bundle-version="1.0.0",
+Require-Bundle: org.eclipse.papyrus.uml.tools.utils;bundle-version="1.0.0",
org.eclipse.core.runtime;bundle-version="3.8.0",
org.eclipse.emf.transaction;bundle-version="1.4.0",
org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
@@ -17,7 +16,9 @@ Require-Bundle: org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.1.0
org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
org.eclipse.ui.views.properties.tabbed;bundle-version="3.5.300",
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
- com.google.guava;bundle-version="11.0.0"
+ com.google.guava;bundle-version="11.0.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0"
Export-Package: org.eclipse.papyrus.uml.profile,
org.eclipse.papyrus.uml.profile.constraints,
org.eclipse.papyrus.uml.profile.definition,
diff --git a/plugins/uml/org.eclipse.papyrus.uml.service.validation/plugin.xml b/plugins/uml/org.eclipse.papyrus.uml.service.validation/plugin.xml
index c3d9204bfd7..a0ce1c267b8 100644
--- a/plugins/uml/org.eclipse.papyrus.uml.service.validation/plugin.xml
+++ b/plugins/uml/org.eclipse.papyrus.uml.service.validation/plugin.xml
@@ -13,12 +13,9 @@
<iterate
ifEmpty="false"
operator="or">
- <adapt
- type="org.eclipse.emf.ecore.EObject">
- <instanceof
- value="org.eclipse.uml2.uml.Element">
- </instanceof>
- </adapt>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</iterate>
</with>
</activeWhen>
@@ -32,12 +29,9 @@
<iterate
ifEmpty="false"
operator="or">
- <adapt
- type="org.eclipse.emf.ecore.EObject">
- <instanceof
- value="org.eclipse.uml2.uml.Element">
- </instanceof>
- </adapt>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</iterate>
</with>
</activeWhen>
@@ -51,12 +45,9 @@
<iterate
ifEmpty="false"
operator="or">
- <adapt
- type="org.eclipse.emf.ecore.EObject">
- <instanceof
- value="org.eclipse.uml2.uml.Element">
- </instanceof>
- </adapt>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</iterate>
</with>
</activeWhen>
@@ -70,12 +61,9 @@
<iterate
ifEmpty="false"
operator="or">
- <adapt
- type="org.eclipse.emf.ecore.EObject">
- <instanceof
- value="org.eclipse.uml2.uml.Element">
- </instanceof>
- </adapt>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</iterate>
</with>
</activeWhen>
@@ -89,12 +77,9 @@
<iterate
ifEmpty="false"
operator="or">
- <adapt
- type="org.eclipse.emf.ecore.EObject">
- <instanceof
- value="org.eclipse.uml2.uml.Element">
- </instanceof>
- </adapt>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</iterate>
</with>
</activeWhen>
@@ -108,12 +93,9 @@
<iterate
ifEmpty="false"
operator="or">
- <adapt
- type="org.eclipse.emf.ecore.EObject">
- <instanceof
- value="org.eclipse.uml2.uml.Element">
- </instanceof>
- </adapt>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</iterate>
</with>
</activeWhen>
diff --git a/plugins/uml/org.eclipse.papyrus.uml.services.decoration/META-INF/MANIFEST.MF b/plugins/uml/org.eclipse.papyrus.uml.services.decoration/META-INF/MANIFEST.MF
index 957b2860c2d..46db7c6740b 100644
--- a/plugins/uml/org.eclipse.papyrus.uml.services.decoration/META-INF/MANIFEST.MF
+++ b/plugins/uml/org.eclipse.papyrus.uml.services.decoration/META-INF/MANIFEST.MF
@@ -6,7 +6,6 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
org.apache.commons.lang;bundle-version="2.4.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.0",
org.eclipse.emf.ecore;bundle-version="2.8.0",
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
org.eclipse.core.resources;bundle-version="3.7.0",
diff --git a/plugins/uml/org.eclipse.papyrus.uml.ui.perspectiveconfiguration/META-INF/MANIFEST.MF b/plugins/uml/org.eclipse.papyrus.uml.ui.perspectiveconfiguration/META-INF/MANIFEST.MF
index 48a948fc2c6..33392942fbb 100644
--- a/plugins/uml/org.eclipse.papyrus.uml.ui.perspectiveconfiguration/META-INF/MANIFEST.MF
+++ b/plugins/uml/org.eclipse.papyrus.uml.ui.perspectiveconfiguration/META-INF/MANIFEST.MF
@@ -2,8 +2,7 @@ Manifest-Version: 1.0
Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime,
org.eclipse.papyrus.editor.perspectiveconfiguration;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.gmfdiag.preferences;bundle-version="1.0.0",
- org.eclipse.emf.facet.widgets.nattable.workbench;bundle-version="0.1.0"
+ org.eclipse.papyrus.infra.gmfdiag.preferences;bundle-version="1.0.0"
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
Bundle-Version: 1.0.0.qualifier
diff --git a/plugins/uml/properties/org.eclipse.papyrus.uml.properties.xtext/src/org/eclipse/papyrus/uml/properties/xtext/XtextLanguageEditor.java b/plugins/uml/properties/org.eclipse.papyrus.uml.properties.xtext/src/org/eclipse/papyrus/uml/properties/xtext/XtextLanguageEditor.java
index b6e8e0bb746..2251a534bf3 100644
--- a/plugins/uml/properties/org.eclipse.papyrus.uml.properties.xtext/src/org/eclipse/papyrus/uml/properties/xtext/XtextLanguageEditor.java
+++ b/plugins/uml/properties/org.eclipse.papyrus.uml.properties.xtext/src/org/eclipse/papyrus/uml/properties/xtext/XtextLanguageEditor.java
@@ -1,6 +1,8 @@
package org.eclipse.papyrus.uml.properties.xtext;
import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
import org.eclipse.emf.transaction.util.TransactionUtil;
import org.eclipse.gmf.runtime.common.core.command.ICommand;
import org.eclipse.gmf.runtime.common.ui.services.parser.IParser;
@@ -11,6 +13,7 @@ import org.eclipse.papyrus.extensionpoints.editors.Activator;
import org.eclipse.papyrus.extensionpoints.editors.configuration.IDirectEditorConfiguration;
import org.eclipse.papyrus.extensionpoints.editors.utils.DirectEditorsUtil;
import org.eclipse.papyrus.extensionpoints.editors.utils.IDirectEditorsIds;
+import org.eclipse.papyrus.infra.emf.dialog.NestedEditingDialogContext;
import org.eclipse.papyrus.uml.properties.modelelement.UMLModelElement;
import org.eclipse.papyrus.uml.properties.widgets.BodyEditor;
import org.eclipse.papyrus.uml.xtext.integration.DefaultXtextDirectEditorConfiguration;
@@ -74,8 +77,16 @@ public class XtextLanguageEditor implements BodyEditor, IContextElementProvider
new EObjectAdapter(getEObject()),
textControl.getText(), 0);
- TransactionUtil.getEditingDomain(getEObject()).getCommandStack().execute(
- new GMFtoEMFCommandWrapper(command));
+ TransactionalEditingDomain domain = TransactionUtil.getEditingDomain(getEObject());
+ if (domain == null) {
+ // can be null for opaque expression that have been created but have not been added to parent
+ // try to get resource set from nested dialog context
+ ResourceSet rs = NestedEditingDialogContext.getInstance().getResourceSet();
+ domain = TransactionUtil.getEditingDomain(rs);
+ }
+ if (domain != null) {
+ domain.getCommandStack().execute(new GMFtoEMFCommandWrapper(command));
+ }
}
}
@@ -229,7 +240,9 @@ public class XtextLanguageEditor implements BodyEditor, IContextElementProvider
}
public void setInput(String value) {
- textControl.setText(value);
+ if (value != null) {
+ textControl.setText(value);
+ }
}
public void dispose() {
diff --git a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/.project b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/.project
index 96882b24e7a..b8670ab1c97 100644
--- a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/.project
+++ b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/.project
@@ -22,7 +22,7 @@
</buildCommand>
</buildSpec>
<natures>
- <nature>org.eclipse.emf.facet.common.ProjectNature</nature>
+ <nature>org.eclipse.papyrus.emf.facet.common.ProjectNature</nature>
<nature>org.eclipse.pde.PluginNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
diff --git a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/META-INF/MANIFEST.MF b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/META-INF/MANIFEST.MF
index 424e5ecd70f..3a0abb6ad02 100644
--- a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/META-INF/MANIFEST.MF
+++ b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/META-INF/MANIFEST.MF
@@ -10,7 +10,6 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
org.eclipse.ui;bundle-version="3.6.1",
org.eclipse.papyrus.uml.profile;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.query.core;bundle-version="0.1.0",
org.eclipse.papyrus.uml.tools;bundle-version="1.0.0",
org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
org.eclipse.papyrus.infra.tools;bundle-version="1.0.0",
@@ -28,13 +27,13 @@ Require-Bundle: org.eclipse.core.runtime,
org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="1.0.0",
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
org.eclipse.ui.ide;bundle-version="3.8.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.0",
org.eclipse.gmf.runtime.common.core;bundle-version="1.4.1",
org.eclipse.gmf.runtime.emf.commands.core;bundle-version="1.4.0",
org.eclipse.gmf.runtime.emf.type.core;bundle-version="1.4.0",
org.eclipse.gef;bundle-version="3.8.1",
org.eclipse.gmf.runtime.notation;bundle-version="1.5.0",
- org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0"
+ org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="1.0.0"
Export-Package: org.eclipse.papyrus.uml.properties.constraints,
org.eclipse.papyrus.uml.properties.creation,
org.eclipse.papyrus.uml.properties.databinding,
diff --git a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/plugin.xml b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/plugin.xml
index d0f158c26d5..b0e3d898804 100644
--- a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/plugin.xml
+++ b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/plugin.xml
@@ -43,12 +43,13 @@
</context>
</extension>
+ <!-- TODO EMF-FACET
<extension
- point="org.eclipse.emf.facet.infra.query.registration">
+ point="org.eclipse.papyrus.emf.facet.infra.query.registration">
<modelqueryset
file="Model/UML/uml.querySet">
</modelqueryset>
- </extension>
+ </extension-->
<extension
point="org.eclipse.papyrus.views.properties.labelprovider">
<labelProvider
diff --git a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/creation/ConnectorTypeEditorFactory.java b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/creation/ConnectorTypeEditorFactory.java
index 6de2edf6c58..064ea1ae955 100644
--- a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/creation/ConnectorTypeEditorFactory.java
+++ b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/creation/ConnectorTypeEditorFactory.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.uml.properties.creation;
import java.util.LinkedList;
diff --git a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/actions/AbstractViewActionDelegate.java b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/actions/AbstractViewActionDelegate.java
index 5f42b4f6d64..4fbf00fb383 100644
--- a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/actions/AbstractViewActionDelegate.java
+++ b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/actions/AbstractViewActionDelegate.java
@@ -21,6 +21,7 @@ import org.eclipse.emf.ecore.EObject;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.ui.IViewActionDelegate;
import org.eclipse.ui.IViewPart;
import org.eclipse.uml2.uml.Element;
@@ -70,8 +71,7 @@ public abstract class AbstractViewActionDelegate implements IViewActionDelegate
while(it.hasNext()) {
Object o = (Object)it.next();
if (o instanceof IAdaptable) {
- EObject eObject = (EObject) ((IAdaptable) o)
- .getAdapter(EObject.class);
+ EObject eObject =EMFHelper.getEObject(o);
if (eObject != null) {
setSelectedElement(eObject);
}
diff --git a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/compositesformodel/AppliedProfileCompositeOnModel.java b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/compositesformodel/AppliedProfileCompositeOnModel.java
index 5e661874a2a..ab5020be06e 100644
--- a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/compositesformodel/AppliedProfileCompositeOnModel.java
+++ b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/compositesformodel/AppliedProfileCompositeOnModel.java
@@ -651,8 +651,8 @@ public class AppliedProfileCompositeOnModel extends Composite {
return (EObject)object;
} else if(object instanceof IAdaptable) {
IAdaptable adaptable = (IAdaptable)object;
- if(adaptable.getAdapter(EObject.class) != null) {
- return (EObject)adaptable.getAdapter(EObject.class);
+ if(EMFHelper.getEObject(adaptable) != null) {
+ return EMFHelper.getEObject(adaptable);
}
}
return null;
diff --git a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/section/AppliedProfileSection.java b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/section/AppliedProfileSection.java
index 1e7c488c883..4b1feae75ca 100644
--- a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/section/AppliedProfileSection.java
+++ b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/section/AppliedProfileSection.java
@@ -21,6 +21,7 @@ import org.eclipse.gef.GraphicalEditPart;
import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.uml.properties.profile.ui.compositeforview.AppliedProfileCompositeWithView;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.IWorkbenchPart;
@@ -102,8 +103,8 @@ public class AppliedProfileSection extends AbstractPropertySection {
return (EObject)object;
} else if(object instanceof IAdaptable) {
IAdaptable adaptable = (IAdaptable)object;
- if(adaptable.getAdapter(EObject.class) != null) {
- return (EObject)adaptable.getAdapter(EObject.class);
+ if(EMFHelper.getEObject(adaptable) != null) {
+ return EMFHelper.getEObject(adaptable);
}
}
return null;
diff --git a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/section/AppliedStereotypePropertiesPlaceSection.java b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/section/AppliedStereotypePropertiesPlaceSection.java
index 5e89a1702bc..c0c2534bc57 100644
--- a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/section/AppliedStereotypePropertiesPlaceSection.java
+++ b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/section/AppliedStereotypePropertiesPlaceSection.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.uml.properties.profile.ui.section;
import org.eclipse.core.runtime.IAdaptable;
diff --git a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/section/AppliedStereotypeSectionWithView.java b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/section/AppliedStereotypeSectionWithView.java
index 700a2bc7d09..8d6e68c8749 100644
--- a/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/section/AppliedStereotypeSectionWithView.java
+++ b/plugins/uml/properties/org.eclipse.papyrus.uml.properties/src/org/eclipse/papyrus/uml/properties/profile/ui/section/AppliedStereotypeSectionWithView.java
@@ -20,6 +20,7 @@ import org.eclipse.gef.GraphicalEditPart;
import org.eclipse.gmf.runtime.notation.View;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.widgets.editors.MultipleReferenceEditor;
import org.eclipse.papyrus.uml.profile.tree.objects.StereotypedElementTreeObject;
import org.eclipse.papyrus.uml.properties.profile.ui.compositeforview.AppliedStereotypeCompositeWithView;
@@ -127,8 +128,8 @@ public class AppliedStereotypeSectionWithView extends AbstractPropertySection {
return (EObject) object;
} else if (object instanceof IAdaptable) {
IAdaptable adaptable = (IAdaptable) object;
- if (adaptable.getAdapter(EObject.class) != null) {
- return (EObject) adaptable.getAdapter(EObject.class);
+ if( EMFHelper.getEObject(adaptable) != null) {
+ return EMFHelper.getEObject(adaptable);
}
}
return null;
diff --git a/plugins/uml/textedit/org.eclipse.papyrus.uml.textedit.constraintwithessentialocl.xtext/src/org/eclipse/papyrus/uml/textedit/constraintwithessentialocl/xtext/EssentialOCLEditorConfiguration.java b/plugins/uml/textedit/org.eclipse.papyrus.uml.textedit.constraintwithessentialocl.xtext/src/org/eclipse/papyrus/uml/textedit/constraintwithessentialocl/xtext/EssentialOCLEditorConfiguration.java
index 078769ddcac..00727f33303 100644
--- a/plugins/uml/textedit/org.eclipse.papyrus.uml.textedit.constraintwithessentialocl.xtext/src/org/eclipse/papyrus/uml/textedit/constraintwithessentialocl/xtext/EssentialOCLEditorConfiguration.java
+++ b/plugins/uml/textedit/org.eclipse.papyrus.uml.textedit.constraintwithessentialocl.xtext/src/org/eclipse/papyrus/uml/textedit/constraintwithessentialocl/xtext/EssentialOCLEditorConfiguration.java
@@ -20,6 +20,7 @@ import org.eclipse.core.commands.ExecutionException;
import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.ResourceSet;
import org.eclipse.emf.transaction.TransactionalEditingDomain;
import org.eclipse.emf.transaction.util.TransactionUtil;
import org.eclipse.gmf.runtime.common.core.command.CommandResult;
@@ -35,6 +36,7 @@ import org.eclipse.ocl.examples.pivot.ParserException;
import org.eclipse.ocl.examples.pivot.utilities.BaseResource;
import org.eclipse.ocl.examples.pivot.utilities.PivotUtil;
import org.eclipse.ocl.examples.xtext.essentialocl.EssentialOCLRuntimeModule;
+import org.eclipse.papyrus.infra.emf.dialog.NestedEditingDialogContext;
import org.eclipse.papyrus.infra.services.validation.commands.AbstractValidateCommand;
import org.eclipse.papyrus.infra.services.validation.commands.AsyncValidateSubtreeCommand;
import org.eclipse.papyrus.uml.service.validation.UMLDiagnostician;
@@ -159,8 +161,10 @@ public class EssentialOCLEditorConfiguration extends DefaultXtextDirectEditorCon
if(indexOfOCLBody == -1) {
opaqueExpression.getLanguages().add(OCL);
opaqueExpression.getBodies().add(newTextualRepresentation);
- } else {
+ } else if (indexOfOCLBody < opaqueExpression.getBodies().size()) { // might not be true, if body list is not synchronized with language list
opaqueExpression.getBodies().set(indexOfOCLBody, newTextualRepresentation);
+ } else {
+ opaqueExpression.getBodies().add(newTextualRepresentation);
}
return CommandResult.newOKCommandResult(opaqueExpression);
}
@@ -186,7 +190,9 @@ public class EssentialOCLEditorConfiguration extends DefaultXtextDirectEditorCon
org.eclipse.uml2.uml.OpaqueExpression opaqueExpression = (org.eclipse.uml2.uml.OpaqueExpression)specification;
for(int i = 0; i < opaqueExpression.getLanguages().size() && indexOfOCLBody == -1; i++) {
if(opaqueExpression.getLanguages().get(i).equals(OCL)) {
- value += opaqueExpression.getBodies().get(i);
+ if (i < opaqueExpression.getBodies().size()) {
+ value += opaqueExpression.getBodies().get(i);
+ }
indexOfOCLBody = i;
}
}
@@ -205,8 +211,9 @@ public class EssentialOCLEditorConfiguration extends DefaultXtextDirectEditorCon
}
else if(objectToEdit instanceof OpaqueExpression) {
Element owner = ((OpaqueExpression) objectToEdit).getOwner();
- if (owner instanceof Constraint);
- return ((Constraint)owner).getContext();
+ if (owner instanceof Constraint) {
+ return ((Constraint)owner).getContext();
+ }
}
return null;
}
@@ -245,15 +252,25 @@ public class EssentialOCLEditorConfiguration extends DefaultXtextDirectEditorCon
// since the OCL expression is already stored in opaque form within the constraint.
CompositeCommand result = new CompositeCommand("validation"); //$NON-NLS-1$
TransactionalEditingDomain editingDomain = TransactionUtil.getEditingDomain(semanticObject);
+ boolean doValidation = editingDomain != null;
+ if (editingDomain == null) {
+ // can be null for opaque expression that have been created but have not been added to parent
+ // try to get resource set from nested dialog context
+ ResourceSet rs = NestedEditingDialogContext.getInstance().getResourceSet();
+ editingDomain = TransactionUtil.getEditingDomain(rs);
+
+ }
if (semanticObject instanceof Constraint) {
result.add(new UpdateConstraintCommand(editingDomain, (Constraint) semanticObject, newString));
}
else if (semanticObject instanceof OpaqueExpression) {
result.add(new UpdateOpaqueExpressionCommand(editingDomain, (OpaqueExpression) semanticObject, newString));
}
- final AbstractValidateCommand validationCommand = new AsyncValidateSubtreeCommand(semanticObject, new UMLDiagnostician());
- validationCommand.disableUIFeedback();
- result.add(validationCommand);
+ if (doValidation) {
+ final AbstractValidateCommand validationCommand = new AsyncValidateSubtreeCommand(semanticObject, new UMLDiagnostician());
+ validationCommand.disableUIFeedback();
+ result.add(validationCommand);
+ }
return result;
}
diff --git a/plugins/uml/tools/org.eclipse.papyrus.uml.tools.extendedtypes/META-INF/MANIFEST.MF b/plugins/uml/tools/org.eclipse.papyrus.uml.tools.extendedtypes/META-INF/MANIFEST.MF
index 3b73140cab2..32f4ae5acd1 100644
--- a/plugins/uml/tools/org.eclipse.papyrus.uml.tools.extendedtypes/META-INF/MANIFEST.MF
+++ b/plugins/uml/tools/org.eclipse.papyrus.uml.tools.extendedtypes/META-INF/MANIFEST.MF
@@ -2,33 +2,20 @@ Manifest-Version: 1.0
Export-Package: org.eclipse.papyrus.uml.tools.extendedtypes,
org.eclipse.papyrus.uml.tools.extendedtypes.applystereotypeactionconfiguration,
org.eclipse.papyrus.uml.tools.extendedtypes.applystereotypeactionconfiguration.impl,
- org.eclipse.papyrus.uml.tools.extendedtypes.applystereotypeactionconfiguration.util,
- org.eclipse.papyrus.uml.tools.extendedtypes.invariantstereotypeconfiguration,
- org.eclipse.papyrus.uml.tools.extendedtypes.invariantstereotypeconfiguration.impl,
- org.eclipse.papyrus.uml.tools.extendedtypes.invariantstereotypeconfiguration.util,
- org.eclipse.papyrus.uml.tools.extendedtypes.stereotypedelementmatcherconfiguration,
- org.eclipse.papyrus.uml.tools.extendedtypes.stereotypedelementmatcherconfiguration.impl,
- org.eclipse.papyrus.uml.tools.extendedtypes.stereotypedelementmatcherconfiguration.util,
- org.eclipse.papyrus.uml.tools.extendedtypes.settypeactionconfiguration,
- org.eclipse.papyrus.uml.tools.extendedtypes.settypeactionconfiguration.impl,
- org.eclipse.papyrus.uml.tools.extendedtypes.settypeactionconfiguration.util
+ org.eclipse.papyrus.uml.tools.extendedtypes.applystereotypeactionconfiguration.util
Require-Bundle: org.eclipse.core.runtime,
org.eclipse.emf.ecore;visibility:=reexport,
org.eclipse.emf.ecore.xmi;visibility:=reexport,
org.eclipse.papyrus.infra.extendedtypes;bundle-version="1.0.0";visibility:=reexport,
- org.eclipse.uml2.types;visibility:=reexport,
org.eclipse.uml2.uml,
org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
org.eclipse.papyrus.uml.tools.utils;bundle-version="1.0.0",
org.eclipse.gmf.runtime.emf.type.core;bundle-version="1.4.0",
- org.eclipse.papyrus.infra.extendedtypes.emf;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.services.edit;bundle-version="1.0.0",
- org.eclipse.papyrus.uml.tools;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
- org.eclipse.papyrus.views.properties;bundle-version="1.0.0",
- org.eclipse.papyrus.uml.properties;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
- org.eclipse.swt
+ org.eclipse.papyrus.infra.extendedtypes.emf,
+ org.eclipse.papyrus.infra.services.edit,
+ org.eclipse.swt,
+ org.eclipse.papyrus.infra.widgets,
+ org.eclipse.papyrus.uml.properties
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
Bundle-ClassPath: .
@@ -36,7 +23,9 @@ Bundle-Version: 1.0.0.qualifier
Bundle-Name: %pluginName
Bundle-Localization: plugin
Bundle-ManifestVersion: 2
-Bundle-Activator: org.eclipse.papyrus.uml.tools.extendedtypes.Activator$Implementation
-Bundle-SymbolicName: org.eclipse.papyrus.uml.tools.extendedtypes;singleton:=true
+Bundle-Activator: org.eclipse.papyrus.uml.tools.extendedtypes.Activato
+ r$Implementation
+Bundle-SymbolicName: org.eclipse.papyrus.uml.tools.extendedtypes;singl
+ eton:=true
Bundle-RequiredExecutionEnvironment: J2SE-1.5
diff --git a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/META-INF/MANIFEST.MF b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/META-INF/MANIFEST.MF
index d061f763c11..0561cb11d12 100644
--- a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/META-INF/MANIFEST.MF
+++ b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/META-INF/MANIFEST.MF
@@ -9,7 +9,6 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.emf.databinding;bundle-version="1.2.0",
org.eclipse.core.databinding.property;bundle-version="1.4.0",
org.eclipse.papyrus.infra.tools;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.0",
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
org.eclipse.papyrus.infra.services.edit;bundle-version="1.0.0",
org.eclipse.papyrus.uml.tools.utils;bundle-version="1.0.0",
@@ -21,6 +20,8 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="1.0.0",
org.eclipse.core.expressions;bundle-version="3.4.0",
org.eclipse.uml2.uml,
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0",
org.eclipse.papyrus.uml.extensionpoints;bundle-version="1.0.0",
org.eclipse.uml2.uml.validation;bundle-version="5.0.0"
Export-Package: org.eclipse.papyrus.uml.tools,
diff --git a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/Activator.java b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/Activator.java
index 2178c533d67..db4e491288d 100644
--- a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/Activator.java
+++ b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/Activator.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.uml.tools;
import java.util.ArrayList;
diff --git a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/importsources/AbstractPackageImportSource.java b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/importsources/AbstractPackageImportSource.java
index 372f9203a16..f5efe45cb02 100644
--- a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/importsources/AbstractPackageImportSource.java
+++ b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/importsources/AbstractPackageImportSource.java
@@ -27,6 +27,7 @@ import org.eclipse.emf.ecore.resource.ResourceSet;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.osgi.util.NLS;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.widgets.providers.IStaticContentProvider;
import org.eclipse.papyrus.uml.tools.Activator;
import org.eclipse.ui.model.WorkbenchLabelProvider;
@@ -62,7 +63,7 @@ public abstract class AbstractPackageImportSource implements IPackageImportSourc
result = (Package)next;
break;
} else if(next instanceof IAdaptable) {
- Object adapter = ((IAdaptable)next).getAdapter(EObject.class);
+ Object adapter = EMFHelper.getEObject(next);
if(adapter instanceof Package) {
result = (Package)adapter;
}
diff --git a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLEClassLabelProvider.java b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLEClassLabelProvider.java
index 59d3be3e4fa..5fc4f85b400 100644
--- a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLEClassLabelProvider.java
+++ b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLEClassLabelProvider.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.uml.tools.providers;
import org.eclipse.emf.ecore.EClass;
diff --git a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLLabelProvider.java b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLLabelProvider.java
index 2f93cb2c532..09eb9ee93ec 100644
--- a/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLLabelProvider.java
+++ b/plugins/uml/tools/org.eclipse.papyrus.uml.tools/src/org/eclipse/papyrus/uml/tools/providers/UMLLabelProvider.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.uml.tools.providers;
import java.util.Iterator;
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/.project b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/.project
index dbb84464caa..66cdae4dee4 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/.project
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/.project
@@ -22,7 +22,7 @@
</buildCommand>
</buildSpec>
<natures>
- <nature>org.eclipse.emf.facet.common.ProjectNature</nature>
+ <nature>org.eclipse.papyrus.emf.facet.common.ProjectNature</nature>
<nature>org.eclipse.pde.PluginNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/META-INF/MANIFEST.MF b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/META-INF/MANIFEST.MF
index 9a13baf6c69..952200d7145 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/META-INF/MANIFEST.MF
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/META-INF/MANIFEST.MF
@@ -22,15 +22,6 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.emf.workspace.ui;bundle-version="1.3.0",
org.eclipse.core.expressions;bundle-version="3.4.200",
org.eclipse.papyrus.infra.services.edit;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.browser.custom;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.browser.custom.core;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.browser.custom.ui;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.common.core;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.facet;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.facet.core;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.query.ui;bundle-version="0.1.0",
org.eclipse.papyrus.infra.widgets.toolbox;bundle-version="1.0.0",
org.eclipse.papyrus.infra.services.decoration;bundle-version="1.0.0",
org.eclipse.emf.transaction;bundle-version="1.4.0",
@@ -38,7 +29,6 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.gmf.runtime.common.core;bundle-version="1.4.1",
org.eclipse.gmf.runtime.emf.commands.core;bundle-version="1.4.0",
org.eclipse.gmf.runtime.emf.type.core;bundle-version="1.4.0",
- org.eclipse.emf.facet.infra.query.core,
org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
com.google.guava;bundle-version="11.0.0",
org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
@@ -51,7 +41,17 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.papyrus.infra.services.navigation;bundle-version="1.0.0",
org.eclipse.papyrus.infra.tools;bundle-version="1.0.0",
org.eclipse.papyrus.extensionpoints.editors;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="1.0.0"
+ org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.metamodel,
+ org.eclipse.papyrus.emf.facet.util.ui;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.query.java.core,
+ org.eclipse.papyrus.emf.facet.custom.core,
+ org.eclipse.papyrus.emf.facet.util.emf.ui;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.efacet.core,
+ org.eclipse.papyrus.emf.facet.efacet,
+ org.eclipse.papyrus.emf.facet.efacet.metamodel,
+ org.eclipse.papyrus.emf.facet.util.emf.core
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
Bundle-Version: 1.0.0.qualifier
@@ -62,4 +62,5 @@ Bundle-ManifestVersion: 2
Bundle-SymbolicName: org.eclipse.papyrus.views.modelexplorer;singleton
:=true
Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Import-Package: org.eclipse.papyrus.emf.facet.custom.core
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/plugin.xml b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/plugin.xml
index 0d61c53311a..f91145fc3d1 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/plugin.xml
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/plugin.xml
@@ -2,7 +2,16 @@
<?eclipse version="3.4"?>
<plugin>
+<extension point="org.eclipse.papyrus.emf.facet.util.emf.core.modeldeclaration">
+ <modeldeclaration file="resources/OpenedPage.custom"/>
+</extension>
<extension-point id="actionHandler" name="actionHandler" schema="schema/org.eclipse.papyrus.views.modelexplorer.actionHandler.exsd"/>
+ <extension
+ point="org.eclipse.papyrus.emf.facet.util.emf.core.modeldeclaration">
+ <modeldeclaration
+ file="resources/ReadOnlyElement.custom">
+ </modeldeclaration>
+ </extension>
<extension point="org.eclipse.ui.views">
<view category="org.eclipse.papyrus.views.category" class="org.eclipse.papyrus.views.modelexplorer.ModelExplorerPageBookView" icon="icons/ModelExplorer.gif" id="org.eclipse.papyrus.views.modelexplorer.modelexplorer" name="Model Explorer" restorable="true">
</view>
@@ -36,7 +45,7 @@
<or>
<instanceof value="org.eclipse.gmf.runtime.notation.impl.DiagramImpl">
</instanceof>
- <instanceof value="org.eclipse.emf.facet.infra.browser.uicore.internal.model.ModelElementItem"/>
+ <instanceof value="org.eclipse.emf.ecore.EObject"/>
</or>
</possibleChildren>
<actionProvider class="org.eclipse.papyrus.views.modelexplorer.actionprovider.GenericTransformActionProvider" id="org.eclipse.papyrus.views.modelexplorer.actionprovider.GenericTransformActionProvider">
@@ -44,6 +53,9 @@
<or>
<adapt type="org.eclipse.emf.ecore.EObject">
</adapt>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</or>
</enablement>
</actionProvider>
@@ -55,8 +67,9 @@
<instanceof value="org.eclipse.gmf.runtime.notation.Diagram">
</instanceof>
</not>
- <adapt type="org.eclipse.emf.ecore.EObject">
- </adapt>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</and>
</enablement>
</actionProvider>
@@ -65,8 +78,9 @@
<or>
<instanceof value="org.eclipse.gmf.runtime.notation.impl.DiagramImpl">
</instanceof>
- <adapt type="org.eclipse.emf.ecore.EObject">
- </adapt>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</or>
</possibleDropTargets>
</dropAssistant>
@@ -110,8 +124,9 @@
<and>
<with variable="selection">
<iterate>
- <adapt type="org.eclipse.emf.ecore.EObject">
- </adapt>
+ <instanceof
+ value="org.eclipse.emf.ecore.EObject">
+ </instanceof>
</iterate>
</with>
</and>
@@ -372,28 +387,30 @@
<propertyTester class="org.eclipse.papyrus.views.modelexplorer.provider.PropertyTester" id="org.eclipse.papyrus.views.modelexplorer.tester.view" namespace="org.eclipse.papyrus.views.modelexplorer.tester.view" properties="isModelExplorer" type="org.eclipse.ui.IWorkbenchPart">
</propertyTester>
</extension>
-
- <extension point="org.eclipse.emf.facet.infra.query.registration">
+<!--
+TODO: PAPYRUS EMF-FACET update uiCustom Here
+ <extension point="org.eclipse.papyrus.emf.facet.infra.query.registration">
<modelqueryset file="resources/PapyrusEcoreBrowserQuery.querySet"/>
</extension>
- <extension point="org.eclipse.emf.facet.infra.browser.custom.core.registration">
+ <extension point="org.eclipse.papyrus.emf.facet.infra.browser.custom.core.registration">
<browserCustomization file="resources/PapyrusEcoreBrowser.uiCustom"/>
</extension>
<extension point="org.eclipse.papyrus.infra.services.labelprovider.labelProvider">
<context description="The ModelExplorer labelProvider context" id="org.eclipse.papyrus.views.modelexplorer.labelProvider.context">
</context>
</extension>
- <extension point="org.eclipse.emf.facet.infra.facet.registration">
+ <extension point="org.eclipse.papyrus.emf.facet.infra.facet.registration">
<facetset file="resources/PapyrusPages.facetSet"/>
</extension>
- <extension point="org.eclipse.emf.facet.infra.query.registration">
+ <extension point="org.eclipse.papyrus.emf.facet.infra.query.registration">
<modelqueryset file="resources/PapyrusPages.querySet"/>
</extension>
- <extension point="org.eclipse.emf.facet.infra.browser.custom.core.registration">
+ <extension point="org.eclipse.papyrus.emf.facet.infra.browser.custom.core.registration">
<browserCustomization
file="resources/PapyrusPages.uiCustom"
loadByDefault="true"/>
</extension>
+ -->
<extension
point="org.eclipse.papyrus.infra.services.navigation.navigationContributor">
<target
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/OpenedPage.custom b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/OpenedPage.custom
new file mode 100644
index 00000000000..4b529da8183
--- /dev/null
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/OpenedPage.custom
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<custom:Customization xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:custom="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom" xmlns:customQuery="http://www.eclipse.org/papyrus/emf/facet/custom/0.3.incubation/query" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:efacet="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet" xmlns:javaQuery="http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation/javaquery" name="OpenedPage" documentation="Add icon to display opened Page" mustBeLoadedByDefault="true">
+ <eClassifiers xsi:type="efacet:Facet" name="PapyrusPage" instanceClassName="" documentation="a page can be a table or a diagram for example" conformanceTypedElement="//PapyrusPage/isPage">
+ <extendedMetaclass href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <facetOperations name="isPage">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.views.modelexplorer.queries.IsOpenedPage"/>
+ </facetOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="custom:FacetCustomization" name="PapyrusPage" extendedFacets="//PapyrusPage">
+ <facetOperations name="PageOvelayIcon" documentation="display the icon if the page is opened in the model">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Image"/>
+ <eParameters name="eObject">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eParameters>
+ <query xsi:type="customQuery:URIImageQuery" uri="platform:/plugin/org.eclipse.papyrus.views.modelexplorer/icons/opened.gif"/>
+ <override xsi:type="efacet:FacetOperation" href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/topRightOverlay"/>
+ </facetOperations>
+ </eClassifiers>
+</custom:Customization>
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusEcoreBrowser.uiCustom b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusEcoreBrowser.uiCustom
deleted file mode 100644
index 1fbd552d2d1..00000000000
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusEcoreBrowser.uiCustom
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<uicustom:MetamodelView xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" xmlns:uicustom="http://www.eclipse.org/EmfFacet/infra/browser/custom/0.8" metamodelURI="http://www.eclipse.org/emf/2002/Ecore">
- <types metaclassName="ecore.EObject">
- <customizedFeatures customizedFeature="color">
- <valueCases>
- <value xsi:type="uicustom:StaticFeatureValue" value="(192,192,192)"/>
- <condition xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusEcoreBrowserQuery#IsReadOnly"/>
- </valueCases>
- </customizedFeatures>
- <customizedFeatures customizedFeature="italic">
- <defaultValue xsi:type="uicustom:DerivedFeatureValue">
- <valueCalculator xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusEcoreBrowserQuery#IsReadOnly"/>
- </defaultValue>
- </customizedFeatures>
- <customizedFeatures customizedFeature="hideMetaclassName">
- <defaultValue xsi:type="uicustom:StaticFeatureValue" value="true"/>
- </customizedFeatures>
- </types>
-</uicustom:MetamodelView>
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusEcoreBrowserQuery.querySet b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusEcoreBrowserQuery.querySet
deleted file mode 100644
index 08bf8798e02..00000000000
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusEcoreBrowserQuery.querySet
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<query:ModelQuerySet xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" name="PapyrusEcoreBrowserQuery" description="Queries for the Ecore Metamodel">
- <associatedMetamodels href="http://www.eclipse.org/emf/2002/Ecore#/"/>
- <queries xsi:type="query:JavaModelQuery" name="IsReadOnly" description="This query tests if the current EditingDomain is READ-ONLY or not" implementationClassName="org.eclipse.papyrus.views.modelexplorer.queries.IsReadOnly">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
- <scope href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
- </queries>
-</query:ModelQuerySet>
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.facetSet b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.facetSet
deleted file mode 100644
index 1dfc49caae7..00000000000
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.facetSet
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<facet:FacetSet xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:facet="http://www.eclipse.org/EmfFacet/infra/facet/0.8.incubation" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" name="PapyrusPages" nsURI="http://www.eclipse.org/papyrus/views/modelexplorer/pages" nsPrefix="papyrusPages">
- <eClassifiers xsi:type="facet:Facet" name="Page" abstract="true">
- <eSuperTypes href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
- <conditionQuery xsi:type="query:JavaModelQuery" href="PapyrusPages.querySet#isPage"/>
- </eClassifiers>
- <extendedPackage href="http://www.eclipse.org/emf/2002/Ecore#/"/>
-</facet:FacetSet>
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.querySet b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.querySet
deleted file mode 100644
index 70052f53d8b..00000000000
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.querySet
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<query:ModelQuerySet xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" name="PapyrusPages" description="">
- <associatedMetamodels href="http://www.eclipse.org/emf/2002/Ecore#/"/>
- <queries xsi:type="query:JavaModelQuery" name="isPage" description="Tests whether an element is a page" lowerBound="1" implementationClassName="org.eclipse.papyrus.views.modelexplorer.queries.IsPage">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
- <scope href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
- </queries>
- <queries xsi:type="query:JavaModelQuery" name="isOpen" description="Tests whether a Page is opened" isExternalContextDependent="true" lowerBound="1" implementationClassName="org.eclipse.papyrus.views.modelexplorer.queries.IsOpen">
- <returnType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
- <scope href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
- </queries>
-</query:ModelQuerySet>
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.uiCustom b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.uiCustom
deleted file mode 100644
index eeacea75605..00000000000
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/PapyrusPages.uiCustom
+++ /dev/null
@@ -1,11 +0,0 @@
-<?xml version="1.0" encoding="ASCII"?>
-<uicustom:MetamodelView xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:query="http://www.eclipse.org/EmfFacet/infra/query/0.8.incubation" xmlns:uicustom="http://www.eclipse.org/EmfFacet/infra/browser/custom/0.8" metamodelURI="http://www.eclipse.org/papyrus/views/modelexplorer/pages">
- <types metaclassName="PapyrusPages.Page">
- <customizedFeatures customizedFeature="facetOverlayIcon">
- <valueCases>
- <value xsi:type="uicustom:StaticFeatureValue" value="/org.eclipse.papyrus.views.modelexplorer/icons/opened.gif:TopRight"/>
- <condition xsi:type="query:JavaModelQuery" href="emffacet:/query/PapyrusPages#isOpen"/>
- </valueCases>
- </customizedFeatures>
- </types>
-</uicustom:MetamodelView>
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/ReadOnlyElement.custom b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/ReadOnlyElement.custom
new file mode 100644
index 00000000000..b29412acb2b
--- /dev/null
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/resources/ReadOnlyElement.custom
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<custom:Customization xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:custom="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:efacet="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet" xmlns:javaQuery="http://www.eclipse.org/papyrus/emf/facet/query/java/0.2.incubation/javaquery" xmlns:query="http://www.eclipse.org/papyrus/emf/facet/efacet/0.2.incubation/efacet/query" name="ReadOnlyElement" documentation="Add appearance of read only element" mustBeLoadedByDefault="true">
+ <eClassifiers xsi:type="efacet:Facet" name="ReadOnlyEObject" instanceClassName="" documentation="a page can be a table or a diagram for example" conformanceTypedElement="//ReadOnlyEObject/isReadOnly">
+ <extendedMetaclass href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ <facetOperations name="isReadOnly" documentation="test if the eObject is read only">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.views.modelexplorer.queries.IsReadOnly"/>
+ </facetOperations>
+ </eClassifiers>
+ <eClassifiers xsi:type="custom:FacetCustomization" name="ReadOnlyEObjectCustom" extendedFacets="//ReadOnlyEObject">
+ <facetOperations name="ReadOnlyItalic" documentation="display the icon if the page is opened in the model">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"/>
+ <eParameters name="eObject">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eParameters>
+ <query xsi:type="query:TrueLiteralQuery"/>
+ <override xsi:type="efacet:FacetOperation" href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/isItalic"/>
+ </facetOperations>
+ <facetOperations name="ReadOnlyColor" documentation="display the icon if the page is opened in the model">
+ <eType xsi:type="ecore:EDataType" href="http://www.eclipse.org/papyrus/emf/facet/custom/0.2.incubation/custom_primitive_types#//Color"/>
+ <eParameters name="eObject">
+ <eType xsi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+ </eParameters>
+ <query xsi:type="javaQuery:JavaQuery" implementationClassName="org.eclipse.papyrus.views.modelexplorer.queries.IsReadOnlyColorQuery"/>
+ <override xsi:type="efacet:FacetOperation" href="../../../plugin/org.eclipse.papyrus.emf.facet.custom.ui/resources/customproperties.efacet#//CustomizedEObject/foreground"/>
+ </facetOperations>
+ </eClassifiers>
+</custom:Customization>
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/Activator.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/Activator.java
index c91a7c46461..7f115e62678 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/Activator.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/Activator.java
@@ -15,30 +15,15 @@ package org.eclipse.papyrus.views.modelexplorer;
import java.net.URL;
import java.util.ArrayList;
-import java.util.Collection;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
import org.eclipse.core.runtime.FileLocator;
import org.eclipse.core.runtime.IPath;
-import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Path;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EClassifier;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.edit.EMFEditPlugin;
-import org.eclipse.emf.facet.infra.browser.Messages;
-import org.eclipse.emf.facet.infra.browser.custom.MetamodelView;
-import org.eclipse.emf.facet.infra.browser.custom.TypeView;
-import org.eclipse.emf.facet.infra.browser.custom.core.CustomizationsCatalog;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizationManager;
-import org.eclipse.emf.facet.infra.facet.Facet;
-import org.eclipse.emf.facet.infra.facet.FacetSet;
-import org.eclipse.emf.facet.infra.facet.core.FacetSetCatalog;
import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.osgi.util.NLS;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
import org.eclipse.papyrus.infra.core.log.LogHelper;
import org.eclipse.ui.plugin.AbstractUIPlugin;
import org.osgi.framework.BundleContext;
@@ -62,7 +47,7 @@ public class Activator extends AbstractUIPlugin {
public Activator() {
}
- private CustomizationManager fCustomizationManager;
+ private ICustomizationManager fCustomizationManager;
/*
* (non-Javadoc)
@@ -123,100 +108,100 @@ public class Activator extends AbstractUIPlugin {
*
* @return the customization manager in charge to adapt element in modisco
*/
- public CustomizationManager getCustomizationManager() {
+ public ICustomizationManager getCustomizationManager() {
return org.eclipse.papyrus.infra.emf.Activator.getDefault().getCustomizationManager();
}
- private void init(final CustomizationManager customizationManager) {
+ private void init(final ICustomizationManager customizationManager) {
// the appearance can be customized here:
- customizationManager.setShowDerivedLinks(true);
-
- try {
-
- // load customizations defined as default through the customization
- // extension
- List<MetamodelView> registryDefaultCustomizations = CustomizationsCatalog.getInstance().getRegistryDefaultCustomizations();
- for(MetamodelView metamodelView : registryDefaultCustomizations) {
- customizationManager.registerCustomization(metamodelView);
- }
- customizationManager.loadCustomizations();
- loadFacetsForCustomizations(registryDefaultCustomizations, customizationManager);
-
- } catch (Throwable e) {
- Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Error initializing customizations", e)); //$NON-NLS-1$
- }
- }
-
- /**
- * load the facets
- *
- * @param customizations
- * list of customization
- * @param customizationManager
- * the Customization Manager
- */
- protected void loadFacetsForCustomizations(final List<MetamodelView> customizations, final CustomizationManager customizationManager) {
- final Set<Facet> referencedFacets = new HashSet<Facet>();
- final Collection<FacetSet> facetSets = FacetSetCatalog.getSingleton().getAllFacetSets();
-
- for(MetamodelView customization : customizations) {
- String metamodelURI = customization.getMetamodelURI();
- // find customized FacetSet
- FacetSet customizedFacetSet = null;
- if(metamodelURI != null) {
- for(FacetSet facetSet : facetSets) {
- if(metamodelURI.equals(facetSet.getNsURI())) {
- customizedFacetSet = facetSet;
- break;
- }
- }
- }
- if(customizedFacetSet == null) {
- continue;
- }
-
- // find customized Facets
- EList<TypeView> types = customization.getTypes();
- for(TypeView typeView : types) {
- String metaclassName = typeView.getMetaclassName();
- Facet facet = findFacetWithFullyQualifiedName(metaclassName, customizedFacetSet);
- if(facet != null) {
- referencedFacets.add(facet);
- } else {
- Activator.log.warn(NLS.bind(Messages.BrowserActionBarContributor_missingRequiredFacet, new Object[]{ metaclassName, customizedFacetSet.getName(), customization.getName() }));
- }
- }
-
- for(Facet referencedFacet : referencedFacets) {
- customizationManager.loadFacet(referencedFacet);
- }
- }
-
- //
- // for modified facets
- // customizationManager.getInstancesForMetaclasses().buildDerivationTree();
- // customizationManager.getAppearanceConfiguration().touch();
- // customizationManager.refreshDelayed(true);
+// customizationManager.setShowDerivedLinks(true);
+//
+// try {
+//
+// // load customizations defined as default through the customization
+// // extension
+// List<MetamodelView> registryDefaultCustomizations = CustomizationsCatalog.getInstance().getRegistryDefaultCustomizations();
+// for(MetamodelView metamodelView : registryDefaultCustomizations) {
+// customizationManager.registerCustomization(metamodelView);
+// }
+// customizationManager.loadCustomizations();
+// loadFacetsForCustomizations(registryDefaultCustomizations, customizationManager);
+//
+// } catch (Throwable e) {
+// Activator.getDefault().getLog().log(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "Error initializing customizations", e)); //$NON-NLS-1$
+// }
}
- /**
- * fin a facet from
- *
- * @param metaclassName
- * @param customizedFacetSet
- * @return
- */
- private Facet findFacetWithFullyQualifiedName(final String metaclassName, final FacetSet customizedFacetSet) {
- EList<Facet> facets = customizedFacetSet.getFacets();
- for(Facet facet : facets) {
- String facetName = getMetaclassQualifiedName(facet);
- if(metaclassName.equals(facetName)) {
- return facet;
- }
- }
- return null;
- }
+// /**
+// * load the facets
+// *
+// * @param customizations
+// * list of customization
+// * @param customizationManager
+// * the Customization Manager
+// */
+// protected void loadFacetsForCustomizations(final List<MetamodelView> customizations, final CustomizationManager customizationManager) {
+// final Set<Facet> referencedFacets = new HashSet<Facet>();
+// final Collection<FacetSet> facetSets = FacetSetCatalog.getSingleton().getAllFacetSets();
+//
+// for(MetamodelView customization : customizations) {
+// String metamodelURI = customization.getMetamodelURI();
+// // find customized FacetSet
+// FacetSet customizedFacetSet = null;
+// if(metamodelURI != null) {
+// for(FacetSet facetSet : facetSets) {
+// if(metamodelURI.equals(facetSet.getNsURI())) {
+// customizedFacetSet = facetSet;
+// break;
+// }
+// }
+// }
+// if(customizedFacetSet == null) {
+// continue;
+// }
+//
+// // find customized Facets
+// EList<TypeView> types = customization.getTypes();
+// for(TypeView typeView : types) {
+// String metaclassName = typeView.getMetaclassName();
+// Facet facet = findFacetWithFullyQualifiedName(metaclassName, customizedFacetSet);
+// if(facet != null) {
+// referencedFacets.add(facet);
+// } else {
+// Activator.log.warn(NLS.bind(Messages.BrowserActionBarContributor_missingRequiredFacet, new Object[]{ metaclassName, customizedFacetSet.getName(), customization.getName() }));
+// }
+// }
+//
+// for(Facet referencedFacet : referencedFacets) {
+// customizationManager.loadFacet(referencedFacet);
+// }
+// }
+//
+// //
+// // for modified facets
+// // customizationManager.getInstancesForMetaclasses().buildDerivationTree();
+// // customizationManager.getAppearanceConfiguration().touch();
+// // customizationManager.refreshDelayed(true);
+// }
+
+// /**
+// * fin a facet from
+// *
+// * @param metaclassName
+// * @param customizedFacetSet
+// * @return
+// */
+// private Facet findFacetWithFullyQualifiedName(final String metaclassName, final FacetSet customizedFacetSet) {
+// EList<Facet> facets = customizedFacetSet.getFacets();
+// for(Facet facet : facets) {
+// String facetName = getMetaclassQualifiedName(facet);
+// if(metaclassName.equals(facetName)) {
+// return facet;
+// }
+// }
+// return null;
+// }
/** @return the qualified name of the given metaclass */
public static String getMetaclassQualifiedName(final EClassifier eClass) {
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/CustomCommonViewer.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/CustomCommonViewer.java
index 0a5d85665db..bc498882a6c 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/CustomCommonViewer.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/CustomCommonViewer.java
@@ -13,6 +13,8 @@
*****************************************************************************/
package org.eclipse.papyrus.views.modelexplorer;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
import org.eclipse.jface.viewers.ColumnViewerEditor;
import org.eclipse.jface.viewers.ColumnViewerEditorActivationEvent;
import org.eclipse.jface.viewers.ColumnViewerEditorActivationStrategy;
@@ -20,6 +22,9 @@ import org.eclipse.jface.viewers.FocusCellHighlighter;
import org.eclipse.jface.viewers.IElementComparer;
import org.eclipse.jface.viewers.TreeViewerEditor;
import org.eclipse.jface.viewers.TreeViewerFocusCellManager;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement;
+import org.eclipse.papyrus.views.modelexplorer.matching.HashCodeCalculus;
import org.eclipse.papyrus.views.modelexplorer.matching.IMatchingItem;
import org.eclipse.papyrus.views.modelexplorer.matching.IReferencable;
import org.eclipse.swt.SWT;
@@ -43,6 +48,16 @@ public class CustomCommonViewer extends CommonViewer {
setComparer(new IElementComparer() {
public int hashCode(Object element) {
+ if(element instanceof EObjectTreeElement) {
+ EObject eObject = ((EObjectTreeElement)element).getEObject();
+ return HashCodeCalculus.getHashCode(eObject);
+ }
+
+ if(element instanceof EReferenceTreeElement) {
+ EObject eParent=((EReferenceTreeElement) element).getParent().getEObject();
+ EReference eref=((EReferenceTreeElement) element).getEReference();
+ return HashCodeCalculus.getHashCode(eParent, eref);
+ }
if(element instanceof IReferencable) {
IReferencable ref = (IReferencable)element;
return ref.getElementBehind().hashCode();
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/DecoratingLabelProviderWTooltips.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/DecoratingLabelProviderWTooltips.java
index 858f3da6f5b..86137eb1abe 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/DecoratingLabelProviderWTooltips.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/DecoratingLabelProviderWTooltips.java
@@ -21,13 +21,13 @@ import java.util.List;
import java.util.Observable;
import java.util.Observer;
-import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.facet.infra.browser.uicore.internal.model.LinkItem;
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.jface.viewers.LabelProviderChangedEvent;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement;
import org.eclipse.papyrus.infra.core.services.ServiceException;
import org.eclipse.papyrus.infra.core.services.ServicesRegistry;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.services.decoration.DecorationService;
import org.eclipse.papyrus.infra.services.decoration.util.Decoration;
import org.eclipse.papyrus.infra.services.decoration.util.IPapyrusDecoration;
@@ -116,9 +116,9 @@ public class DecoratingLabelProviderWTooltips extends NavigatorDecoratingLabelPr
//Set the adapter decoration with position as indicated by decoration (from decoration service)
if(element != null) {
- if(element instanceof EObject || element instanceof LinkItem // fix for bug 391676
- || (element instanceof IAdaptable && ((IAdaptable)element).getAdapter(EObject.class) != null)) {
- List<IPapyrusDecoration> decorations = decorationService.getDecorations(element, true);
+ if(element instanceof EObject || element instanceof EReferenceTreeElement // fix for bug 391676
+ || (EMFHelper.getEObject(element) != null)) {
+ List<IPapyrusDecoration> decorations = decorationService.getDecorations(EMFHelper.getEObject(element), true);
if(decorations != null) {
adapter.setDecorations(decorations);
}
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/DirectEditorEditingSupport.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/DirectEditorEditingSupport.java
index 32b0333e940..61581ca5d52 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/DirectEditorEditingSupport.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/DirectEditorEditingSupport.java
@@ -14,7 +14,6 @@
package org.eclipse.papyrus.views.modelexplorer;
-import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.transaction.TransactionalEditingDomain;
import org.eclipse.emf.transaction.util.TransactionUtil;
@@ -31,6 +30,7 @@ import org.eclipse.papyrus.extensionpoints.editors.configuration.ICustomDirectEd
import org.eclipse.papyrus.extensionpoints.editors.configuration.IDirectEditorConfiguration;
import org.eclipse.papyrus.extensionpoints.editors.utils.DirectEditorsUtil;
import org.eclipse.papyrus.extensionpoints.editors.utils.IDirectEditorsIds;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.swt.widgets.Composite;
/**
@@ -45,8 +45,7 @@ public class DirectEditorEditingSupport extends EditingSupport {
@Override
protected CellEditor getCellEditor(final Object element) {
ICustomDirectEditorConfiguration configuration = getConfigurationAE(element);
- EObject semanticObject = (EObject) ((IAdaptable) element)
- .getAdapter(EObject.class);
+ EObject semanticObject = EMFHelper.getEObject(element);
Composite parent = (Composite) getViewer().getControl();
configuration.preEditAction(semanticObject);
return configuration.createCellEditor(parent, semanticObject);
@@ -60,8 +59,7 @@ public class DirectEditorEditingSupport extends EditingSupport {
@Override
protected Object getValue(Object element) {
ICustomDirectEditorConfiguration configuration = getConfigurationAE(element);
- Object semanticObject = ((IAdaptable) element)
- .getAdapter(EObject.class);
+ Object semanticObject = EMFHelper.getEObject(element);
return configuration.createParser((EObject) semanticObject)
.getEditString(new EObjectAdapter((EObject) semanticObject), 0);
}
@@ -69,8 +67,7 @@ public class DirectEditorEditingSupport extends EditingSupport {
@Override
protected void setValue(Object element, Object value) {
ICustomDirectEditorConfiguration configuration = getConfigurationAE(element);
- EObject semanticObject = (EObject) ((IAdaptable) element)
- .getAdapter(EObject.class);
+ EObject semanticObject = EMFHelper.getEObject(element);
IParser parser = configuration.createParser(semanticObject);
ICommand command = parser.getParseCommand(new EObjectAdapter(
@@ -88,12 +85,8 @@ public class DirectEditorEditingSupport extends EditingSupport {
* @return The direct editor configuration, if it exists.
*/
public static ICustomDirectEditorConfiguration getConfigurationAE(Object element) {
- if (element instanceof IAdaptable) {
- EObject semanticObject = (EObject) ((IAdaptable) element)
- .getAdapter(EObject.class);
+ EObject semanticObject = EMFHelper.getEObject(element);
return getConfiguration(semanticObject);
- }
- return null;
}
/**
@@ -120,4 +113,4 @@ public class DirectEditorEditingSupport extends EditingSupport {
}
return null;
}
-} \ No newline at end of file
+}
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/ITooltip.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/ITooltip.java
index 54bf2c9c305..3dde4d492b9 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/ITooltip.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/ITooltip.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.views.modelexplorer;
import org.eclipse.swt.graphics.Image;
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/LinkHelper.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/LinkHelper.java
index 1d71284629a..89f45382d2d 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/LinkHelper.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/LinkHelper.java
@@ -16,14 +16,13 @@ package org.eclipse.papyrus.views.modelexplorer;
import java.util.ArrayList;
import java.util.Iterator;
-import org.eclipse.core.runtime.IAdaptable;
-import org.eclipse.emf.ecore.EObject;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.viewers.ITreeSelection;
import org.eclipse.papyrus.infra.core.sasheditor.editor.ISashWindowsContainer;
import org.eclipse.papyrus.infra.core.services.ServiceException;
import org.eclipse.papyrus.infra.core.utils.ServiceUtilsForWorkbenchPage;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.widgets.util.IRevealSemanticElement;
import org.eclipse.ui.IEditorInput;
import org.eclipse.ui.IEditorPart;
@@ -77,12 +76,10 @@ public class LinkHelper implements ILinkHelper {
ArrayList<Object> semanticElementList = new ArrayList<Object>();
while(selectionIterator.hasNext()) {
Object currentSelection = selectionIterator.next();
- if(currentSelection instanceof IAdaptable) {
- Object semanticElement = ((IAdaptable)currentSelection).getAdapter(EObject.class);
+ Object semanticElement = EMFHelper.getEObject(currentSelection);
if(semanticElement != null) {
semanticElementList.add(semanticElement);
}
- }
}
((IRevealSemanticElement)diagramEditor).revealSemanticElement(semanticElementList);
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/LinkNodeAdapterFactory.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/LinkNodeAdapterFactory.java
index a48dafd5514..61adfe4c3db 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/LinkNodeAdapterFactory.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/LinkNodeAdapterFactory.java
@@ -12,7 +12,7 @@ package org.eclipse.papyrus.views.modelexplorer;
import org.eclipse.core.runtime.IAdapterFactory;
import org.eclipse.emf.ecore.EReference;
-import org.eclipse.emf.facet.infra.browser.uicore.internal.model.LinkItem;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement;
/**
* This factory returns a LinkNode instance for any adapter instancing LinkItem or EReference
@@ -24,7 +24,7 @@ public class LinkNodeAdapterFactory implements IAdapterFactory {
public Object getAdapter(Object adaptableObject, Class adapterType) {
if(adapterType == LinkNode.class) {
- if(adaptableObject instanceof LinkItem || adaptableObject instanceof EReference) {
+ if(adaptableObject instanceof EReferenceTreeElement || adaptableObject instanceof EReference) {
return LinkNode.LinkNodeInstance;
}
}
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/Messages.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/Messages.java
index 29086a3ed3f..fa1672ca6c1 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/Messages.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/Messages.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.views.modelexplorer;
import org.eclipse.osgi.util.NLS;
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/ModelExplorerView.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/ModelExplorerView.java
index ba00ac932ac..e0f64cdfde3 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/ModelExplorerView.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/ModelExplorerView.java
@@ -27,7 +27,6 @@ import java.util.Set;
import java.util.concurrent.atomic.AtomicBoolean;
import org.eclipse.core.commands.operations.IUndoContext;
-import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.resource.Resource;
@@ -69,6 +68,7 @@ import org.eclipse.papyrus.infra.core.services.ServicesRegistry;
import org.eclipse.papyrus.infra.core.utils.AdapterUtils;
import org.eclipse.papyrus.infra.core.utils.ServiceUtils;
import org.eclipse.papyrus.infra.emf.providers.SemanticFromModelExplorer;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.services.labelprovider.service.LabelProviderService;
import org.eclipse.papyrus.infra.services.navigation.service.NavigableElement;
import org.eclipse.papyrus.infra.services.navigation.service.NavigationService;
@@ -242,12 +242,10 @@ public class ModelExplorerView extends CommonNavigator implements IRevealSemanti
ArrayList<Object> semanticElementList = new ArrayList<Object>();
while(selectionIterator.hasNext()) {
Object currentSelection = selectionIterator.next();
- if(currentSelection instanceof IAdaptable) {
- Object semanticElement = ((IAdaptable)currentSelection).getAdapter(EObject.class);
+ Object semanticElement =EMFHelper.getEObject(currentSelection);
if(semanticElement != null) {
semanticElementList.add(semanticElement);
}
- }
}
revealSemanticElement(semanticElementList);
@@ -285,9 +283,8 @@ public class ModelExplorerView extends CommonNavigator implements IRevealSemanti
for(Object o : objects) {
// Search matches in this level
- // if(!(o instanceof Diagram) && o instanceof IAdaptable) {
- if(!editors.contains(o) && o instanceof IAdaptable) {
- if(eobject.equals(((IAdaptable)o).getAdapter(EObject.class))) {
+ if(!editors.contains(o)) {
+ if(eobject.equals(EMFHelper.getEObject(o))) {
path.add(o);
return path;
}
@@ -319,13 +316,11 @@ public class ModelExplorerView extends CommonNavigator implements IRevealSemanti
// if tmppath contains the wrapped eobject we have find the good path
if(tmppath.size() > 0) {
- if(tmppath.get(tmppath.size() - 1) instanceof IAdaptable) {
- if(eobject.equals(((IAdaptable)(tmppath.get(tmppath.size() - 1))).getAdapter(EObject.class))) {
+ if(eobject.equals((EMFHelper.getEObject((tmppath.get(tmppath.size() - 1)))))) {
path.add(o);
path.addAll(tmppath);
return path;
}
- }
}
}
}
@@ -381,14 +376,14 @@ public class ModelExplorerView extends CommonNavigator implements IRevealSemanti
private void installEMFFacetTreePainter(Tree tree) {
// Install the EMFFacet Custom Tree Painter
- org.eclipse.papyrus.infra.emf.Activator.getDefault().getCustomizationManager().installCustomPainter(tree);
+ //org.eclipse.papyrus.infra.emf.Activator.getDefault().getCustomizationManager().installCustomPainter(tree);
// The EMF Facet MeasureItem Listener is incompatible with the NavigatorDecoratingLabelProvider. Remove it.
// Symptoms: ModelElementItems with an EMF Facet Overlay have a small selection size
// Removal also fixes bug 400012: no scrollbar although tree is larger than visible area
Collection<Listener> listenersToRemove = new LinkedList<Listener>();
for(Listener listener : tree.getListeners(SWT.MeasureItem)) {
- if(listener.getClass().getName().contains("org.eclipse.emf.facet.infra.browser.uicore.internal.CustomTreePainter")) {
+ if(listener.getClass().getName().contains("org.eclipse.papyrus.emf.facet.infra.browser.uicore.internal.CustomTreePainter")) {
listenersToRemove.add(listener);
}
}
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/NavigatorUtils.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/NavigatorUtils.java
index eabfb7a9e43..3d5d8a7845c 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/NavigatorUtils.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/NavigatorUtils.java
@@ -166,7 +166,7 @@ public class NavigatorUtils {
IAdaptable input = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getInput();
if(input != null) {
- EObject obj = (EObject)input.getAdapter(EObject.class);
+ EObject obj = EMFHelper.getEObject(input);
return tryGetResources(obj, fileExtension);
}
return null;
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/actionprovider/AbstractCommonActionProvider.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/actionprovider/AbstractCommonActionProvider.java
index 264dc748c21..6cdbe5ba6f4 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/actionprovider/AbstractCommonActionProvider.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/actionprovider/AbstractCommonActionProvider.java
@@ -12,10 +12,10 @@
******************************************************************************/
package org.eclipse.papyrus.views.modelexplorer.actionprovider;
-import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.ui.actions.ActionContext;
import org.eclipse.ui.navigator.CommonActionProvider;
import org.eclipse.ui.navigator.CommonNavigator;
@@ -91,14 +91,6 @@ public abstract class AbstractCommonActionProvider extends CommonActionProvider
* specified object
*/
protected EObject resolveSemanticObject(Object object) {
- if (object instanceof EObject) {
- return (EObject) object;
- } else if (object instanceof IAdaptable) {
- IAdaptable adaptable = (IAdaptable) object;
- if (adaptable.getAdapter(EObject.class) != null) {
- return (EObject) adaptable.getAdapter(EObject.class);
- }
- }
- return null;
+ return EMFHelper.getEObject(object);
}
}
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dialog/NavigatorSearchDialog.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dialog/NavigatorSearchDialog.java
index 0f677339355..0afeb7de15d 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dialog/NavigatorSearchDialog.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dialog/NavigatorSearchDialog.java
@@ -37,6 +37,7 @@ import org.eclipse.jface.viewers.ITreeContentProvider;
import org.eclipse.jface.viewers.StructuredSelection;
import org.eclipse.jface.viewers.TreeViewer;
import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.widgets.editors.AbstractEditor;
import org.eclipse.papyrus.infra.widgets.editors.ICommitListener;
import org.eclipse.papyrus.infra.widgets.editors.StringEditor;
@@ -178,11 +179,7 @@ public class NavigatorSearchDialog extends TrayDialog {
ModelExplorerView.reveal(Iterables.transform(Lists.newArrayList(structured.iterator()), new Function<Object, EObject>() {
public EObject apply(Object arg0) {
- if(arg0 instanceof IAdaptable) {
- IAdaptable adapt = (IAdaptable)arg0;
- return getAdapter(adapt, EObject.class);
- }
- return null;
+ return EMFHelper.getEObject(arg0);
}
}), (CommonViewer)viewer);
}
@@ -390,7 +387,7 @@ public class NavigatorSearchDialog extends TrayDialog {
//If child can be adapted into a LinkNode, find its referenced EObjects
if(getAdapter(child, LinkNode.class) != null) {
for(Object referencedObject : contentProvider.getChildren(child)) {
- EObject referencedEObject = (EObject)((IAdaptable)referencedObject).getAdapter(EObject.class);
+ EObject referencedEObject = EMFHelper.getEObject(referencedObject);
if(referencedEObject != null && (parentEObj == null || parentEObj.equals(referencedEObject.eContainer()))) {
children.add(referencedObject);
}
@@ -398,7 +395,7 @@ public class NavigatorSearchDialog extends TrayDialog {
}
//If it is an EObject, add it to the list
else {
- EObject eObject = (EObject)((IAdaptable)child).getAdapter(EObject.class);
+ EObject eObject = EMFHelper.getEObject(child);
if(eObject != null && eObject.eContainer() != null && (parentEObj == null || eObject.eContainer().equals(parentEObj))) {
children.add(child);
}
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dialog/PapyrusLoadBrowserCustomizationDialog.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dialog/PapyrusLoadBrowserCustomizationDialog.java
index 88fcbfaf584..a708955687e 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dialog/PapyrusLoadBrowserCustomizationDialog.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dialog/PapyrusLoadBrowserCustomizationDialog.java
@@ -20,11 +20,11 @@ import java.util.List;
import java.util.Set;
import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.facet.infra.browser.custom.MetamodelView;
-import org.eclipse.emf.facet.infra.browser.custom.core.CustomizationsCatalog;
-import org.eclipse.emf.facet.infra.browser.uicore.internal.util.ImageProvider;
-import org.eclipse.emf.facet.infra.common.core.internal.utils.ModelUtils;
-import org.eclipse.emf.facet.infra.facet.FacetSet;
+//import org.eclipse.papyrus.emf.facet.infra.browser.custom.MetamodelView;
+//import org.eclipse.papyrus.emf.facet.infra.browser.custom.core.CustomizationsCatalog;
+//import org.eclipse.papyrus.emf.facet.infra.browser.uicore.internal.util.ImageProvider;
+//import org.eclipse.papyrus.emf.facet.infra.common.core.internal.utils.ModelUtils;
+//import org.eclipse.papyrus.emf.facet.infra.facet.FacetSet;
import org.eclipse.jface.dialogs.IDialogConstants;
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.jface.viewers.LabelProvider;
@@ -54,237 +54,242 @@ import org.eclipse.swt.widgets.Shell;
@SuppressWarnings({ "deprecation", "restriction" })
public class PapyrusLoadBrowserCustomizationDialog extends MultipleValueSelectorDialog {
- protected final Collection<EPackage> ePackages;
-
- /**
- * Creates a new dialog to select the EMF Facet uiCustom (Browser customizations) to apply
- *
- * @param parentShell
- * The parent shell for this dialog
- * @param initialSelection
- * The list of browser customization currently applied
- * @param ePackages
- * The list of EPackages used to filter the Browser Customizations to display. Only compatible browser customizations will be displayed to
- * the user.
- * This filter is only graphical (i.e. customizations which do not match these EPackages might still be returned by this dialog)
- * @param manager
- * The Customization
- */
- public PapyrusLoadBrowserCustomizationDialog(Shell parentShell, List<MetamodelView> initialSelection, Collection<EPackage> ePackages) {
- this(parentShell, getElementSelector(ePackages), initialSelection, ePackages);
- }
-
- protected PapyrusLoadBrowserCustomizationDialog(Shell parentShell, IElementSelector selector, List<MetamodelView> initialSelection, Collection<EPackage> ePackages) {
+ public PapyrusLoadBrowserCustomizationDialog(Shell parentShell, IElementSelector selector) {
super(parentShell, selector);
-
- this.ePackages = ePackages;
-
- setInitialElementSelections(initialSelection);
-
- setOrdered(true);
- setLabelProvider(createLabelProvider());
- setTitle("Select browser customizations");
+ // TODO Auto-generated constructor stub
}
- /**
- * {@inheritDoc}
- *
- * Adds the EMF Facet UICustom icon to the dialog
- */
- @Override
- protected void configureShell(Shell shell) {
- super.configureShell(shell);
- shell.setImage(ImageProvider.getInstance().getUiCustomIcon());
- }
-
- /**
- * The IElementSelector used for the left panel of this dialog. This is a simple ReferenceSelector for available UICustoms
- *
- * @param ePackages
- * The EPackages used to filter the compatible UICustom to display to the user
- * @return
- */
- protected static IElementSelector getElementSelector(final Collection<EPackage> ePackages) {
- ReferenceSelector selector = new ReferenceSelector(true) {
-
- @Override
- public void createControls(Composite parent) {
- super.createControls(parent);
- installCompatibleCustomizationViewerFilter(treeViewer, ePackages);
- }
- };
-
- List<MetamodelView> registryAllCustomizations = CustomizationsCatalog.getInstance().getRegistryCustomizations();
-
- IStaticContentProvider semanticProvider = new StaticContentProvider(registryAllCustomizations.toArray());
- IStaticContentProvider filteredProvider = new FilteredContentProvider(semanticProvider);
-
- selector.setContentProvider(filteredProvider);
- selector.setLabelProvider(createLabelProvider());
-
- return selector;
- }
-
- /**
- * The ID of the "Restore defaults" button
- */
- public static final int RESTORE_ID = IDialogConstants.CLIENT_ID + 1;
-
- /**
- * {@inheritDoc}
- *
- * Adds a "restore defaults" button
- */
- @Override
- protected void createButtonsForButtonBar(Composite parent) {
- createButton(parent, RESTORE_ID, "Restore defaults", false);
- super.createButtonsForButtonBar(parent);
- }
-
- /**
- * {@inheritDoc}
- *
- * Adds support for the Restore Default button/action
- */
- @Override
- protected void buttonPressed(int buttonId) {
- if(buttonId == RESTORE_ID) {
- restorePressed();
- } else {
- super.buttonPressed(buttonId);
- }
- }
-
- /**
- * {@inheritDoc}
- *
- * Installs a filter for the compatible UICustom models to display to the user
- */
- @Override
- public void create() {
- super.create();
- installCompatibleCustomizationViewerFilter(selectedElementsViewer, ePackages);
- getShell().pack();
- }
-
- /**
- * Install the compatible UICustom filter to the given viewer
- *
- * @param viewer
- * The viewer to filter
- * @param ePackages
- * The UICustom models will be displayed if they are compatible with one of these EPackages
- */
- protected static void installCompatibleCustomizationViewerFilter(StructuredViewer viewer, Collection<EPackage> ePackages) {
- List<ViewerFilter> currentFilters = ListHelper.asList(viewer.getFilters());
- currentFilters.add(createCompatibleCustomizationViewerFilter(ePackages));
- viewer.setFilters(currentFilters.toArray(new ViewerFilter[currentFilters.size()]));
- }
-
- /**
- * Creates a filter for the compatible UICustom
- *
- * @param ePackages
- * The UICustom models will be displayed if they are compatible with one of these EPackages
- */
- protected static ViewerFilter createCompatibleCustomizationViewerFilter(Collection<EPackage> ePackages) {
- final Set<String> ePackageURIs = new HashSet<String>();
-
- for(EPackage ePackage : ePackages) {
- ePackageURIs.add(ePackage.getNsURI());
- final Set<EPackage> referencedPackages = ModelUtils.computeReferencedPackages(ePackage);
- for(EPackage referencedEPackage : referencedPackages) {
- ePackageURIs.add(referencedEPackage.getNsURI());
- }
- }
-
- return new ViewerFilter() {
-
- @Override
- public boolean select(Viewer viewer, Object parentElement, Object element) {
- if(element instanceof MetamodelView) {
- MetamodelView customization = (MetamodelView)element;
-
- String nsURI = customization.getMetamodelURI();
-
- if(ePackageURIs.contains(nsURI)) {
- return true;
- }
-
- EPackage ePackage = EPackage.Registry.INSTANCE.getEPackage(nsURI);
- while(ePackage != null) {
- if(ePackageURIs.contains(ePackage.getNsURI())) {
- return true;
- }
-
- // allow customizations on Facets
- if(ePackage instanceof FacetSet) {
- FacetSet facetSet = (FacetSet)ePackage;
- ePackage = facetSet.getExtendedPackage();
- } else {
- // allow customizations on sub-packages
- ePackage = ePackage.getESuperPackage();
- }
- }
-
- return false;
- }
-
- return true;
- }
-
- };
- }
-
- /**
- * The "restore defaults" action
- */
- protected void restorePressed() {
- List<MetamodelView> defaultCustomizations = CustomizationsCatalog.getInstance().getRegistryDefaultCustomizations();
- Object[] filteredCustomizations = defaultCustomizations.toArray();
-
- removeAllAction();
- addElements(filteredCustomizations);
- selector.setSelectedElements(allElements.toArray());
- }
-
- /**
- * Returns the list of selected customizations (including the ones hidden by the compatible EPackage filter)
- *
- * @return
- */
- public List<MetamodelView> getSelectedCustomizations() {
- Object[] result = super.getResult();
- List<MetamodelView> customizations = new ArrayList<MetamodelView>();
- for(Object element : result) {
- if(element instanceof MetamodelView) {
- customizations.add((MetamodelView)element);
- }
- }
-
- return customizations;
- }
-
- //Copied from {@link org.eclipse.emf.facet.infra.browser.custom.ui.dialogs.LoadCustomizationsDialog#createLabelProvider()}
- /**
- * Creates a LabelProvider for EMF Facet MetamodelView elements
- *
- * @return the label provider for the Dialog
- */
- protected static ILabelProvider createLabelProvider() {
- return new LabelProvider() {
-
- @Override
- public String getText(final Object element) {
- final MetamodelView metamodelView = (MetamodelView)element;
- return metamodelView.getName();
- }
-
- @Override
- public Image getImage(final Object element) {
- return ImageProvider.getInstance().getUiCustomIcon();
- }
- };
- }
+///** protected final Collection<EPackage> ePackages;
+//
+// /**
+// * Creates a new dialog to select the EMF Facet uiCustom (Browser customizations) to apply
+// *
+// * @param parentShell
+// * The parent shell for this dialog
+// * @param initialSelection
+// * The list of browser customization currently applied
+// * @param ePackages
+// * The list of EPackages used to filter the Browser Customizations to display. Only compatible browser customizations will be displayed to
+// * the user.
+// * This filter is only graphical (i.e. customizations which do not match these EPackages might still be returned by this dialog)
+// * @param manager
+// * The Customization
+// */
+// public PapyrusLoadBrowserCustomizationDialog(Shell parentShell, List<MetamodelView> initialSelection, Collection<EPackage> ePackages) {
+// this(parentShell, getElementSelector(ePackages), initialSelection, ePackages);
+// }
+//
+// protected PapyrusLoadBrowserCustomizationDialog(Shell parentShell, IElementSelector selector, List<MetamodelView> initialSelection, Collection<EPackage> ePackages) {
+// super(parentShell, selector);
+//
+// this.ePackages = ePackages;
+//
+// setInitialElementSelections(initialSelection);
+//
+// setOrdered(true);
+// setLabelProvider(createLabelProvider());
+// setTitle("Select browser customizations");
+// }
+//
+// /**
+// * {@inheritDoc}
+// *
+// * Adds the EMF Facet UICustom icon to the dialog
+// */
+// @Override
+// protected void configureShell(Shell shell) {
+// super.configureShell(shell);
+// shell.setImage(ImageProvider.getInstance().getUiCustomIcon());
+// }
+//
+// /**
+// * The IElementSelector used for the left panel of this dialog. This is a simple ReferenceSelector for available UICustoms
+// *
+// * @param ePackages
+// * The EPackages used to filter the compatible UICustom to display to the user
+// * @return
+// */
+// protected static IElementSelector getElementSelector(final Collection<EPackage> ePackages) {
+// ReferenceSelector selector = new ReferenceSelector(true) {
+//
+// @Override
+// public void createControls(Composite parent) {
+// super.createControls(parent);
+// installCompatibleCustomizationViewerFilter(treeViewer, ePackages);
+// }
+// };
+//
+// List<MetamodelView> registryAllCustomizations = CustomizationsCatalog.getInstance().getRegistryCustomizations();
+//
+// IStaticContentProvider semanticProvider = new StaticContentProvider(registryAllCustomizations.toArray());
+// IStaticContentProvider filteredProvider = new FilteredContentProvider(semanticProvider);
+//
+// selector.setContentProvider(filteredProvider);
+// selector.setLabelProvider(createLabelProvider());
+//
+// return selector;
+// }
+//
+// /**
+// * The ID of the "Restore defaults" button
+// */
+// public static final int RESTORE_ID = IDialogConstants.CLIENT_ID + 1;
+//
+// /**
+// * {@inheritDoc}
+// *
+// * Adds a "restore defaults" button
+// */
+// @Override
+// protected void createButtonsForButtonBar(Composite parent) {
+// createButton(parent, RESTORE_ID, "Restore defaults", false);
+// super.createButtonsForButtonBar(parent);
+// }
+//
+// /**
+// * {@inheritDoc}
+// *
+// * Adds support for the Restore Default button/action
+// */
+// @Override
+// protected void buttonPressed(int buttonId) {
+// if(buttonId == RESTORE_ID) {
+// restorePressed();
+// } else {
+// super.buttonPressed(buttonId);
+// }
+// }
+//
+// /**
+// * {@inheritDoc}
+// *
+// * Installs a filter for the compatible UICustom models to display to the user
+// */
+// @Override
+// public void create() {
+// super.create();
+// installCompatibleCustomizationViewerFilter(selectedElementsViewer, ePackages);
+// getShell().pack();
+// }
+//
+// /**
+// * Install the compatible UICustom filter to the given viewer
+// *
+// * @param viewer
+// * The viewer to filter
+// * @param ePackages
+// * The UICustom models will be displayed if they are compatible with one of these EPackages
+// */
+// protected static void installCompatibleCustomizationViewerFilter(StructuredViewer viewer, Collection<EPackage> ePackages) {
+// List<ViewerFilter> currentFilters = ListHelper.asList(viewer.getFilters());
+// currentFilters.add(createCompatibleCustomizationViewerFilter(ePackages));
+// viewer.setFilters(currentFilters.toArray(new ViewerFilter[currentFilters.size()]));
+// }
+//
+// /**
+// * Creates a filter for the compatible UICustom
+// *
+// * @param ePackages
+// * The UICustom models will be displayed if they are compatible with one of these EPackages
+// */
+// protected static ViewerFilter createCompatibleCustomizationViewerFilter(Collection<EPackage> ePackages) {
+// final Set<String> ePackageURIs = new HashSet<String>();
+//
+// for(EPackage ePackage : ePackages) {
+// ePackageURIs.add(ePackage.getNsURI());
+// final Set<EPackage> referencedPackages = ModelUtils.computeReferencedPackages(ePackage);
+// for(EPackage referencedEPackage : referencedPackages) {
+// ePackageURIs.add(referencedEPackage.getNsURI());
+// }
+// }
+//
+// return new ViewerFilter() {
+//
+// @Override
+// public boolean select(Viewer viewer, Object parentElement, Object element) {
+// if(element instanceof MetamodelView) {
+// MetamodelView customization = (MetamodelView)element;
+//
+// String nsURI = customization.getMetamodelURI();
+//
+// if(ePackageURIs.contains(nsURI)) {
+// return true;
+// }
+//
+// EPackage ePackage = EPackage.Registry.INSTANCE.getEPackage(nsURI);
+// while(ePackage != null) {
+// if(ePackageURIs.contains(ePackage.getNsURI())) {
+// return true;
+// }
+//
+// // allow customizations on Facets
+// if(ePackage instanceof FacetSet) {
+// FacetSet facetSet = (FacetSet)ePackage;
+// ePackage = facetSet.getExtendedPackage();
+// } else {
+// // allow customizations on sub-packages
+// ePackage = ePackage.getESuperPackage();
+// }
+// }
+//
+// return false;
+// }
+//
+// return true;
+// }
+//
+// };
+// }
+//
+// /**
+// * The "restore defaults" action
+// */
+// protected void restorePressed() {
+// List<MetamodelView> defaultCustomizations = CustomizationsCatalog.getInstance().getRegistryDefaultCustomizations();
+// Object[] filteredCustomizations = defaultCustomizations.toArray();
+//
+// removeAllAction();
+// addElements(filteredCustomizations);
+// selector.setSelectedElements(allElements.toArray());
+// }
+//
+// /**
+// * Returns the list of selected customizations (including the ones hidden by the compatible EPackage filter)
+// *
+// * @return
+// */
+// public List<MetamodelView> getSelectedCustomizations() {
+// Object[] result = super.getResult();
+// List<MetamodelView> customizations = new ArrayList<MetamodelView>();
+// for(Object element : result) {
+// if(element instanceof MetamodelView) {
+// customizations.add((MetamodelView)element);
+// }
+// }
+//
+// return customizations;
+// }
+//
+// //Copied from {@link org.eclipse.papyrus.emf.facet.infra.browser.custom.ui.dialogs.LoadCustomizationsDialog#createLabelProvider()}
+// /**
+// * Creates a LabelProvider for EMF Facet MetamodelView elements
+// *
+// * @return the label provider for the Dialog
+// */
+// protected static ILabelProvider createLabelProvider() {
+// return new LabelProvider() {
+//
+// @Override
+// public String getText(final Object element) {
+// final MetamodelView metamodelView = (MetamodelView)element;
+// return metamodelView.getName();
+// }
+//
+// @Override
+// public Image getImage(final Object element) {
+// return ImageProvider.getInstance().getUiCustomIcon();
+// }
+// };
+// }
}
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dnd/CommonDropAdapterAssistant.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dnd/CommonDropAdapterAssistant.java
index 4e277698801..a8c0ade3825 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dnd/CommonDropAdapterAssistant.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dnd/CommonDropAdapterAssistant.java
@@ -20,7 +20,6 @@ import java.util.Collections;
import java.util.Iterator;
import java.util.List;
-import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.emf.common.command.Command;
@@ -35,8 +34,6 @@ import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.edit.domain.EditingDomain;
-import org.eclipse.emf.facet.infra.browser.uicore.internal.model.LinkItem;
-import org.eclipse.emf.facet.infra.browser.uicore.internal.model.ModelElementItem;
import org.eclipse.emf.transaction.TransactionalEditingDomain;
import org.eclipse.gmf.runtime.common.core.command.ICommand;
import org.eclipse.gmf.runtime.emf.commands.core.command.CompositeTransactionalCommand;
@@ -53,6 +50,8 @@ import org.eclipse.papyrus.commands.CreationCommandRegistry;
import org.eclipse.papyrus.commands.ICreationCommand;
import org.eclipse.papyrus.commands.ICreationCommandRegistry;
import org.eclipse.papyrus.commands.wrappers.GMFtoEMFCommandWrapper;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement;
import org.eclipse.papyrus.infra.core.editor.BackboneException;
import org.eclipse.papyrus.infra.core.resource.ModelSet;
import org.eclipse.papyrus.infra.core.services.ServiceException;
@@ -299,19 +298,19 @@ public class CommonDropAdapterAssistant extends org.eclipse.ui.navigator.CommonD
switch(dropAdapter.getCurrentOperation()) {
case DND.DROP_MOVE:
if(dropAdapter.getCurrentLocation() == ViewerDropAdapter.LOCATION_BEFORE) {
- if(target instanceof ModelElementItem) {
+ if(target instanceof EObjectTreeElement) {
commandList = getOrderChangeCommand(target, true);
}
} else if(dropAdapter.getCurrentLocation() == ViewerDropAdapter.LOCATION_AFTER) {
- if(target instanceof ModelElementItem) {
+ if(target instanceof EObjectTreeElement) {
commandList = getOrderChangeCommand(target, false);
}
} else if(dropAdapter.getCurrentLocation() == ViewerDropAdapter.LOCATION_ON) {
- if(target instanceof ModelElementItem) {
+ if(target instanceof EObjectTreeElement) {
commandList = getDropIntoCommand(target, null);
}
- if(target instanceof LinkItem) {
- commandList = getDropIntoCommand(((LinkItem)target).getParent(), ((LinkItem)target).getReference());
+ if(target instanceof EReferenceTreeElement) {
+ commandList = getDropIntoCommand(((EReferenceTreeElement)target).getParent(), ((EReferenceTreeElement)target).getEReference());
}
}
@@ -366,13 +365,7 @@ public class CommonDropAdapterAssistant extends org.eclipse.ui.navigator.CommonD
ArrayList<Command> result = new ArrayList<Command>();
EObject targetEObject = null;
- //target is an EObject?
- if(target instanceof EObject) {
- targetEObject = ((EObject)target);
- }
- if(target instanceof IAdaptable) {
- targetEObject = ((EObject)((IAdaptable)target).getAdapter(EObject.class));
- }
+ targetEObject = EMFHelper.getEObject(target);
if(targetEObject == null) {
return result;
}
@@ -384,12 +377,7 @@ public class CommonDropAdapterAssistant extends org.eclipse.ui.navigator.CommonD
Iterator<?> it = selectedElements.iterator();
while(it.hasNext()) {
Object object = it.next();
- EObject eObjectchild = null;
- if(object instanceof IAdaptable) {
- eObjectchild = (EObject)((IAdaptable)object).getAdapter(EObject.class);
- } else if(object instanceof EObject) {
- eObjectchild = (EObject)object;
- }
+ EObject eObjectchild = EMFHelper.getEObject(object);
// if(eObjectchild instanceof Diagram){
// result.addAll(getDropDiagramIntoCommand(getEditingDomain(), targetEObject,(Diagram) eObjectchild));
@@ -440,10 +428,7 @@ public class CommonDropAdapterAssistant extends org.eclipse.ui.navigator.CommonD
EObject objectLocation = null;
EObject objectOwner = null;
- //target is an EObject?
- if(target instanceof IAdaptable) {
- objectLocation = ((EObject)((IAdaptable)target).getAdapter(EObject.class));
- }
+ objectLocation = EMFHelper.getEObject(target);
if(objectLocation == null) {
return result;
}
@@ -457,14 +442,12 @@ public class CommonDropAdapterAssistant extends org.eclipse.ui.navigator.CommonD
Iterator<?> it = selectedElements.iterator();
while(it.hasNext()) {
Object object = it.next();
- if(object instanceof IAdaptable) {
- EObject eObjectchild = (EObject)((IAdaptable)object).getAdapter(EObject.class);
+ EObject eObjectchild = EMFHelper.getEObject(object);
//test if object is an eobject
if(eObjectchild != null && objectOwner != null) {
result.addAll(getOrderChangeCommand(getEditingDomain(eObjectchild), objectOwner, objectLocation, eObjectchild, before));
}
- }
}
}
return result;
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dnd/EObjectDragAdapterAssistant.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dnd/EObjectDragAdapterAssistant.java
index 14865d31c6a..ff0c2ac8d35 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dnd/EObjectDragAdapterAssistant.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/dnd/EObjectDragAdapterAssistant.java
@@ -17,11 +17,11 @@ import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
-import org.eclipse.core.runtime.IAdaptable;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.edit.ui.dnd.LocalTransfer;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.swt.dnd.DragSourceEvent;
import org.eclipse.swt.dnd.Transfer;
import org.eclipse.ui.navigator.CommonDragAdapterAssistant;
@@ -61,12 +61,10 @@ public class EObjectDragAdapterAssistant extends CommonDragAdapterAssistant {
while(iter.hasNext()) {
Object current = iter.next();
- if(current instanceof IAdaptable) {
- EObject eobject = (EObject)((IAdaptable)current).getAdapter(EObject.class);
+ EObject eobject =EMFHelper.getEObject(current);
if(eobject != null) {
selectedElements.add(eobject);
}
- }
}
if(!selectedElements.isEmpty()) {
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/handler/AbstractCommandHandler.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/handler/AbstractCommandHandler.java
index ec8457987ab..a28069085ec 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/handler/AbstractCommandHandler.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/handler/AbstractCommandHandler.java
@@ -85,7 +85,7 @@ public abstract class AbstractCommandHandler extends AbstractModelExplorerHandle
if(!selection.isEmpty()) {
// Get first element if the selection is an IStructuredSelection
- Object first = selection.get(0);
+ Object first = selection.get(0);
EObject businessObject = EMFHelper.getEObject(first);
if(businessObject != null) {
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/handler/AbstractModelExplorerHandler.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/handler/AbstractModelExplorerHandler.java
index 20ae835775f..1978a0b1930 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/handler/AbstractModelExplorerHandler.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/handler/AbstractModelExplorerHandler.java
@@ -29,6 +29,7 @@ import org.eclipse.jface.viewers.TreeSelection;
import org.eclipse.papyrus.infra.core.sasheditor.contentprovider.IPageManager;
import org.eclipse.papyrus.infra.core.services.ServiceException;
import org.eclipse.papyrus.infra.core.utils.ServiceUtilsForActionHandlers;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.ui.handlers.HandlerUtil;
/**
@@ -84,22 +85,15 @@ public abstract class AbstractModelExplorerHandler extends AbstractHandler {
@SuppressWarnings("unchecked")
private <T> T adapt(Object object, Class<T> expectedClassType) {
- if(object instanceof IAdaptable) {
- T ele = (T)((IAdaptable)object).getAdapter(expectedClassType);
- if(ele != null) {
- return ele;
- }
- // Try as EObject if the expectedClasType is sub-type of EObject.
- if(EObject.class.isAssignableFrom(expectedClassType)) {
- // to EObject
- EObject eobject = (EObject)((IAdaptable)object).getAdapter(EObject.class);
- if(eobject != null && expectedClassType.isInstance(eobject)) {
- return (T)eobject;
- }
- }
+ EObject eobject = EMFHelper.getEObject(object);
+
+ if(eobject != null && expectedClassType.isInstance(eobject)) {
+ return (T)eobject;
}
+
+
// Try global mechanism
{
T ele = (T)Platform.getAdapterManager().getAdapter(object, expectedClassType);
@@ -109,7 +103,7 @@ public abstract class AbstractModelExplorerHandler extends AbstractHandler {
// Try as EObject if the expectedClasType is sub-type of EObject.
if(EObject.class.isAssignableFrom(expectedClassType)) {
// to EObject
- EObject eobject = (EObject)Platform.getAdapterManager().getAdapter(object, EObject.class);
+ eobject = (EObject)Platform.getAdapterManager().getAdapter(object, EObject.class);
if(eobject != null && expectedClassType.isInstance(eobject)) {
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/handler/LoadBrowserCustomization.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/handler/LoadBrowserCustomization.java
index f37cbd7847c..639ad3136e2 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/handler/LoadBrowserCustomization.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/handler/LoadBrowserCustomization.java
@@ -28,15 +28,24 @@ import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EClassifier;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.facet.infra.browser.Messages;
-import org.eclipse.emf.facet.infra.browser.custom.MetamodelView;
-import org.eclipse.emf.facet.infra.browser.custom.TypeView;
-import org.eclipse.emf.facet.infra.browser.uicore.CustomizationManager;
-import org.eclipse.emf.facet.infra.facet.Facet;
-import org.eclipse.emf.facet.infra.facet.FacetSet;
-import org.eclipse.emf.facet.infra.facet.core.FacetSetCatalog;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+//import org.eclipse.papyrus.emf.facet.infra.browser.Messages;
+//import org.eclipse.papyrus.emf.facet.infra.browser.custom.MetamodelView;
+//import org.eclipse.papyrus.emf.facet.infra.browser.custom.TypeView;
+//import org.eclipse.papyrus.emf.facet.infra.browser.uicore.CustomizationManager;
+//import org.eclipse.papyrus.emf.facet.infra.facet.Facet;
+//import org.eclipse.papyrus.emf.facet.infra.facet.FacetSet;
+//import org.eclipse.papyrus.emf.facet.infra.facet.core.FacetSetCatalog;
import org.eclipse.jface.window.Window;
import org.eclipse.osgi.util.NLS;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationCatalogManager;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationCatalogManagerFactory;
+import org.eclipse.papyrus.emf.facet.custom.core.ICustomizationManager;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.dialog.ILoadCustomizationsDialog;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.exported.dialog.ILoadCustomizationsDialogFactory;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallback;
+import org.eclipse.papyrus.emf.facet.util.ui.internal.exported.dialog.IDialogCallbackWithPreCommit;
import org.eclipse.papyrus.infra.core.resource.ModelSet;
import org.eclipse.papyrus.infra.core.resource.ModelUtils;
import org.eclipse.papyrus.infra.core.sasheditor.contentprovider.IPageManager;
@@ -48,6 +57,7 @@ import org.eclipse.papyrus.infra.services.semantic.service.SemanticService;
import org.eclipse.papyrus.views.modelexplorer.Activator;
import org.eclipse.papyrus.views.modelexplorer.ModelExplorerPageBookView;
import org.eclipse.papyrus.views.modelexplorer.dialog.PapyrusLoadBrowserCustomizationDialog;
+import org.eclipse.swt.widgets.Dialog;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Tree;
import org.eclipse.ui.IViewPart;
@@ -83,55 +93,43 @@ public class LoadBrowserCustomization extends AbstractHandler {
public Object execute(ExecutionEvent event) throws ExecutionException {
if(Activator.getDefault().getCustomizationManager() != null) {
- CustomizationManager customizationManager = Activator.getDefault().getCustomizationManager();
- final List<MetamodelView> registeredCustomizations = customizationManager.getRegisteredCustomizations();
+ ICustomizationManager customizationManager = Activator.getDefault().getCustomizationManager();
+ final List<Customization> registeredCustomizations = ICustomizationCatalogManagerFactory.DEFAULT.getOrCreateCustomizationCatalogManager(customizationManager.getResourceSet()).getRegisteredCustomizations();
PapyrusLoadBrowserCustomizationDialog loadCustomizationsDialog;
- Shell shell = HandlerUtil.getActiveShell(event);
- try {
- ServicesRegistry registry = ServiceUtilsForHandlers.getInstance().getServiceRegistry(event);
- loadCustomizationsDialog = new PapyrusLoadBrowserCustomizationDialog(shell, registeredCustomizations, getMetamodels(registry));
- } catch (ServiceException ex) {
- Activator.log.error(ex);
- loadCustomizationsDialog = new PapyrusLoadBrowserCustomizationDialog(shell, registeredCustomizations, Collections.<EPackage> emptyList());
- }
+ Shell shell = HandlerUtil.getActiveShell(event);
+ IDialogCallbackWithPreCommit<List<Customization>, Boolean, Dialog> dialogCallBack= new IDialogCallbackWithPreCommit<List<Customization>, Boolean, Dialog>() {
- if(Window.OK == loadCustomizationsDialog.open()) {
- try {
+ public void committed(List<Customization> result, Boolean precommitResult) {
+ // TODO Auto-generated method stub
- customizationManager.clearCustomizations();
- List<MetamodelView> selectedCustomizations = loadCustomizationsDialog.getSelectedCustomizations();
- //before loading, clean all facet to prevent to let not interesting facets.
- customizationManager.clearFacets();
+ }
+ public Dialog openPrecommitDialog(List<Customization> result, IDialogCallback<Boolean> precommitCallback) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+ };
+ ILoadCustomizationsDialog dialog=ILoadCustomizationsDialogFactory.DEFAULT.createLoadCustomizationDialog(shell, registeredCustomizations, customizationManager.getManagedCustomizations(), dialogCallBack);
- // Always load facets corresponding to customizations
- loadFacetsForCustomizations(selectedCustomizations, customizationManager);
+ if(Window.OK == dialog.open()) {
+ customizationManager.getManagedCustomizations().clear();
+ customizationManager.getManagedCustomizations().addAll( dialog.getSelectedCustomizations());
- for(MetamodelView metamodelView : selectedCustomizations) {
- customizationManager.registerCustomization(metamodelView);
- }
- customizationManager.loadCustomizations();
- if(getCommonNavigator() != null) {
- Tree tree = getCommonNavigator().getCommonViewer().getTree();
- customizationManager.installCustomPainter(tree);
- }
-
- //Save the current state of the customizations
- org.eclipse.papyrus.infra.emf.Activator.getDefault().saveCustomizationManagerState();
- } catch (final Exception e) {
- Activator.log.error(e);
- }
+ //Save the current state of the customizations
+ org.eclipse.papyrus.infra.emf.Activator.getDefault().saveCustomizationManagerState();
}
- // load customizations defined as default through the customization
- // extension
+
+ // // load customizations defined as default through the customization
+ // // extension
if(getCommonNavigator() != null) {
getCommonNavigator().getCommonViewer().refresh();
}
}
+
return null;
}
@@ -143,75 +141,75 @@ public class LoadBrowserCustomization extends AbstractHandler {
return ModelUtils.getModelSet();
}
- /**
- * load the facets
- *
- * @param customizations
- * list of customization
- * @param customizationManager
- * the Customization Manager
- */
- protected void loadFacetsForCustomizations(final List<MetamodelView> customizations, final CustomizationManager customizationManager) {
- final Set<Facet> referencedFacets = new HashSet<Facet>();
- final Collection<FacetSet> facetSets = FacetSetCatalog.getSingleton().getAllFacetSets();
-
- for(MetamodelView customization : customizations) {
- String metamodelURI = customization.getMetamodelURI();
- // find customized FacetSet
- FacetSet customizedFacetSet = null;
- if(metamodelURI != null) {
- for(FacetSet facetSet : facetSets) {
- if(metamodelURI.equals(facetSet.getNsURI())) {
- customizedFacetSet = facetSet;
- break;
- }
- }
- }
- if(customizedFacetSet == null) {
- continue;
- }
-
- // find customized Facets
- EList<TypeView> types = customization.getTypes();
- for(TypeView typeView : types) {
- String metaclassName = typeView.getMetaclassName();
- Facet facet = findFacetWithFullyQualifiedName(metaclassName, customizedFacetSet);
- if(facet != null) {
- referencedFacets.add(facet);
- } else {
- Activator.log.warn(NLS.bind(Messages.BrowserActionBarContributor_missingRequiredFacet, new Object[]{ metaclassName, customizedFacetSet.getName(), customization.getName() }));
- }
- }
-
- for(Facet referencedFacet : referencedFacets) {
- customizationManager.loadFacet(referencedFacet);
- }
- }
+ // /**
+ // * load the facets
+ // *
+ // * @param customizations
+ // * list of customization
+ // * @param customizationManager
+ // * the Customization Manager
+ // */
+ // protected void loadFacetsForCustomizations(final List<MetamodelView> customizations, final CustomizationManager customizationManager) {
+ // final Set<Facet> referencedFacets = new HashSet<Facet>();
+ // final Collection<FacetSet> facetSets = FacetSetCatalog.getSingleton().getAllFacetSets();
+ //
+ // for(MetamodelView customization : customizations) {
+ // String metamodelURI = customization.getMetamodelURI();
+ // // find customized FacetSet
+ // FacetSet customizedFacetSet = null;
+ // if(metamodelURI != null) {
+ // for(FacetSet facetSet : facetSets) {
+ // if(metamodelURI.equals(facetSet.getNsURI())) {
+ // customizedFacetSet = facetSet;
+ // break;
+ // }
+ // }
+ // }
+ // if(customizedFacetSet == null) {
+ // continue;
+ // }
+ //
+ // // find customized Facets
+ // EList<TypeView> types = customization.getTypes();
+ // for(TypeView typeView : types) {
+ // String metaclassName = typeView.getMetaclassName();
+ // Facet facet = findFacetWithFullyQualifiedName(metaclassName, customizedFacetSet);
+ // if(facet != null) {
+ // referencedFacets.add(facet);
+ // } else {
+ // Activator.log.warn(NLS.bind(Messages.BrowserActionBarContributor_missingRequiredFacet, new Object[]{ metaclassName, customizedFacetSet.getName(), customization.getName() }));
+ // }
+ // }
+ //
+ // for(Facet referencedFacet : referencedFacets) {
+ // customizationManager.loadFacet(referencedFacet);
+ // }
+ // }
- //
- // for modified facets
- // customizationManager.getInstancesForMetaclasses().buildDerivationTree();
- // customizationManager.getAppearanceConfiguration().touch();
- // customizationManager.refreshDelayed(true);
- }
+ //
+ // for modified facets
+ // customizationManager.getInstancesForMetaclasses().buildDerivationTree();
+ // customizationManager.getAppearanceConfiguration().touch();
+ // customizationManager.refreshDelayed(true);
+ //}
- /**
- * fin a facet from
- *
- * @param metaclassName
- * @param customizedFacetSet
- * @return
- */
- private Facet findFacetWithFullyQualifiedName(final String metaclassName, final FacetSet customizedFacetSet) {
- EList<Facet> facets = customizedFacetSet.getFacets();
- for(Facet facet : facets) {
- String facetName = getMetaclassQualifiedName(facet);
- if(metaclassName.equals(facetName)) {
- return facet;
- }
- }
- return null;
- }
+ // /**
+ // * fin a facet from
+ // *
+ // * @param metaclassName
+ // * @param customizedFacetSet
+ // * @return
+ // */
+ // private Facet findFacetWithFullyQualifiedName(final String metaclassName, final FacetSet customizedFacetSet) {
+ // EList<Facet> facets = customizedFacetSet.getFacets();
+ // for(Facet facet : facets) {
+ // String facetName = getMetaclassQualifiedName(facet);
+ // if(metaclassName.equals(facetName)) {
+ // return facet;
+ // }
+ // }
+ // return null;
+ // }
/** @return the qualified name of the given metaclass */
public static String getMetaclassQualifiedName(final EClassifier eClass) {
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/matching/HashCodeCalculus.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/matching/HashCodeCalculus.java
new file mode 100644
index 00000000000..08f9c81351b
--- /dev/null
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/matching/HashCodeCalculus.java
@@ -0,0 +1,35 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) Patrick.Tessier@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.views.modelexplorer.matching;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * This code is used to ensure the same way to calculate hashcode
+ * @author PT202707
+ *
+ */
+public class HashCodeCalculus {
+
+ public static int getHashCode(EObject eObject){
+ return eObject.hashCode();
+ }
+ public static int getHashCode(EObject eObject , EReference eref){
+ final int hashPrime1 = 47;
+ final int hashPrime2 = 13;
+ return eref.hashCode() * hashPrime1 + eObject.hashCode() + hashPrime2;
+
+ }
+}
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/matching/LinkItemMatchingItem.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/matching/LinkItemMatchingItem.java
index a6e8223de46..31eb8656a0d 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/matching/LinkItemMatchingItem.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/matching/LinkItemMatchingItem.java
@@ -16,7 +16,7 @@ package org.eclipse.papyrus.views.modelexplorer.matching;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EReference;
-import org.eclipse.emf.facet.infra.browser.uicore.internal.model.LinkItem;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EReferenceTreeElement;
/***
* An IMatchingItem implementation that matches for LinkItems
@@ -35,9 +35,9 @@ public class LinkItemMatchingItem implements IMatchingItem {
}
public boolean matchingItemEquals(Object obj) {
- if(obj instanceof LinkItem) {
+ if(obj instanceof EReferenceTreeElement) {
if(ref != null && parent != null) {
- return parent.equals(((LinkItem)obj).getParent()) && ref.equals(((LinkItem)obj).getReference());
+ return parent.equals(((EReferenceTreeElement)obj).getParent()) && ref.equals(((EReferenceTreeElement)obj).getEReference());
}
}
return super.equals(obj);
@@ -45,9 +45,7 @@ public class LinkItemMatchingItem implements IMatchingItem {
public int matchingItemHashcode() {
if(ref != null && parent != null) {
- final int hashPrime1 = 47;
- final int hashPrime2 = 13;
- return ref.hashCode() * hashPrime1 + parent.hashCode() + hashPrime2;
+ return HashCodeCalculus.getHashCode(parent, ref);
}
return 0;
}
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/matching/ModelElementItemMatchingItem.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/matching/ModelElementItemMatchingItem.java
index d4b00750cf5..b4b75e381a9 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/matching/ModelElementItemMatchingItem.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/matching/ModelElementItemMatchingItem.java
@@ -15,7 +15,7 @@
package org.eclipse.papyrus.views.modelexplorer.matching;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.facet.infra.browser.uicore.internal.model.ModelElementItem;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement;
/***
* An IMatchingItem implementation that matches for ModelElementItem
@@ -31,15 +31,15 @@ public class ModelElementItemMatchingItem implements IMatchingItem {
}
public boolean matchingItemEquals(Object obj) {
- if(element != null && obj instanceof ModelElementItem) {
- return element.equals(((ModelElementItem)obj).getEObject());
+ if(element != null && obj instanceof EObjectTreeElement) {
+ return element.equals(((EObjectTreeElement)obj).getEObject());
}
return super.equals(obj);
}
public int matchingItemHashcode() {
if(element != null) {
- return element.hashCode();
+ return HashCodeCalculus.getHashCode(element);
}
return 0;
}
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsContainmentStructuralFeature.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsContainmentStructuralFeature.java
new file mode 100644
index 00000000000..a719398d178
--- /dev/null
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsContainmentStructuralFeature.java
@@ -0,0 +1,65 @@
+/*****************************************************************************
+ * Copyright (c) 2013 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.views.modelexplorer.queries;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.FacetReference;
+import org.eclipse.papyrus.emf.facet.efacet.metamodel.v0_2_0.efacet.ParameterValue;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+/**
+ * this query is used to return false, if the given object is a references that is not containment or if it is a attribute.
+ * it return true if the the feature is also a facetReferences
+ *
+ */
+public class IsContainmentStructuralFeature implements IJavaQuery2<EObject, Boolean> {
+ public Boolean evaluate(final EObject context,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ ParameterValue parameterValue= (ParameterValue)parameterValues.getParameterValueByName("eStructuralFeature");
+ EStructuralFeature eStructuralFeature=(EStructuralFeature)parameterValue.getValue();
+ //if eStructural feature ==null this is root model explorer.
+ //border effect of this kind of queries
+ if (eStructuralFeature==null){
+ return true;
+ }
+ // This is an UML element?
+ if(context instanceof EObject){
+ //the eStructure is a containmentReference or Facet Reference?
+ if(eStructuralFeature instanceof EReference){
+ if( ((EReference)eStructuralFeature).equals(EcorePackage.eINSTANCE.getEModelElement_EAnnotations())){
+ return false;
+ }
+ if(((EReference)(eStructuralFeature)).isContainment()||(eStructuralFeature instanceof FacetReference)){
+ return true;
+ }
+ else{
+ return false;
+ }
+ }
+ //this is not a ref like EAttribute
+ else{
+ return false;
+ }
+ }
+ //this is not a UML element
+ return false;
+ }
+}
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsOpen.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsOpen.java
deleted file mode 100644
index bcc7da7f1dc..00000000000
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsOpen.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
- *
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
- *****************************************************************************/
-package org.eclipse.papyrus.views.modelexplorer.queries;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
-import org.eclipse.papyrus.infra.core.sasheditor.contentprovider.IPageManager;
-import org.eclipse.papyrus.infra.core.services.ServiceException;
-import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForEObject;
-
-/** Tests whether a Page is opened */
-public class IsOpen implements IJavaModelQuery<EObject, Boolean> {
-
- public Boolean evaluate(final EObject context, final ParameterValueList parameterValues) throws ModelQueryExecutionException {
- try {
- IPageManager pageManager = ServiceUtilsForEObject.getInstance().getIPageManager(context);
- return pageManager.isOpen(context);
- } catch (ServiceException ex) {
- //Ignore
- }
- return false;
- }
-}
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsPage.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsOpenedPage.java
index a946d4935dc..7dfee904aaa 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsPage.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsOpenedPage.java
@@ -12,20 +12,22 @@
package org.eclipse.papyrus.views.modelexplorer.queries;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
import org.eclipse.papyrus.infra.core.sasheditor.contentprovider.IPageManager;
import org.eclipse.papyrus.infra.core.services.ServiceException;
import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForEObject;
/** Tests whether an element is a page */
-public class IsPage implements IJavaModelQuery<EObject, Boolean> {
+public class IsOpenedPage implements IJavaQuery2<EObject, Boolean> {
- public Boolean evaluate(final EObject context, final ParameterValueList parameterValues) throws ModelQueryExecutionException {
+
+ public Boolean evaluate(EObject source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException {
try {
- IPageManager pageManager = ServiceUtilsForEObject.getInstance().getIPageManager(context);
- return pageManager.allPages().contains(context);
+ IPageManager pageManager = ServiceUtilsForEObject.getInstance().getIPageManager(source);
+ return pageManager.isOpen(source);
} catch (ServiceException ex) {
//Ignore
}
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsReadOnly.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsReadOnly.java
index 79dc3c1c7d4..71d666b98cb 100644
--- a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsReadOnly.java
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsReadOnly.java
@@ -16,21 +16,23 @@ package org.eclipse.papyrus.views.modelexplorer.queries;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
import org.eclipse.emf.edit.domain.EditingDomain;
-import org.eclipse.emf.facet.infra.query.core.exception.ModelQueryExecutionException;
-import org.eclipse.emf.facet.infra.query.core.java.IJavaModelQuery;
-import org.eclipse.emf.facet.infra.query.core.java.ParameterValueList;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
/**
* Create a query which will return true if the ressource is in read only mode.
*
*/
@Deprecated
-public class IsReadOnly implements IJavaModelQuery<EObject, Boolean> {
+public class IsReadOnly implements IJavaQuery2<EObject, Boolean> {
- public Boolean evaluate(EObject context, ParameterValueList parameterValues) throws ModelQueryExecutionException {
- EditingDomain editingDomain = AdapterFactoryEditingDomain.getEditingDomainFor(context);
+
+ public Boolean evaluate(EObject source, IParameterValueList2 parameterValues, IFacetManager facetManager) throws DerivedTypedElementException {
+ EditingDomain editingDomain = AdapterFactoryEditingDomain.getEditingDomainFor(source);
if(editingDomain != null) {
- if(editingDomain.isReadOnly(context.eResource())) {
+ if(editingDomain.isReadOnly(source.eResource())) {
return true;
}
}
diff --git a/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsReadOnlyColorQuery.java b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsReadOnlyColorQuery.java
new file mode 100644
index 00000000000..8d74525b5be
--- /dev/null
+++ b/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer/src/org/eclipse/papyrus/views/modelexplorer/queries/IsReadOnlyColorQuery.java
@@ -0,0 +1,37 @@
+/*****************************************************************************
+ * Copyright (c) 2013 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.views.modelexplorer.queries;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.custompt.IColor;
+import org.eclipse.papyrus.emf.facet.efacet.core.IFacetManager;
+import org.eclipse.papyrus.emf.facet.efacet.core.exception.DerivedTypedElementException;
+import org.eclipse.papyrus.emf.facet.query.java.core.IJavaQuery2;
+import org.eclipse.papyrus.emf.facet.query.java.core.IParameterValueList2;
+import org.eclipse.papyrus.emf.facet.custom.ui.internal.custompt.Color;
+
+/**
+ * The purpose of this request is the return the color for read only elements
+ *
+ */
+public class IsReadOnlyColorQuery implements IJavaQuery2<EObject, IColor> {
+
+ public IColor evaluate(final EObject source,
+ final IParameterValueList2 parameterValues,
+ final IFacetManager facetManager)
+ throws DerivedTypedElementException {
+ return new Color(192,192,192);
+ }
+
+}
diff --git a/plugins/views/properties/org.eclipse.papyrus.views.properties/META-INF/MANIFEST.MF b/plugins/views/properties/org.eclipse.papyrus.views.properties/META-INF/MANIFEST.MF
index a8f42f70239..6977af84421 100644
--- a/plugins/views/properties/org.eclipse.papyrus.views.properties/META-INF/MANIFEST.MF
+++ b/plugins/views/properties/org.eclipse.papyrus.views.properties/META-INF/MANIFEST.MF
@@ -33,20 +33,18 @@ Require-Bundle: org.eclipse.emf;bundle-version="2.6.0",
org.eclipse.papyrus.views.properties.model;bundle-version="1.0.0",
org.eclipse.papyrus.infra.services.edit;bundle-version="1.0.0",
org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.query;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.query.core;bundle-version="0.1.0",
- org.eclipse.emf.facet.infra.common.core;bundle-version="0.1.0",
org.eclipse.papyrus.views.modelexplorer.widgets;bundle-version="1.0.0",
org.eclipse.papyrus.infra.emf;bundle-version="1.0.0",
org.eclipse.papyrus.infra.tools;bundle-version="1.0.0",
org.eclipse.papyrus.infra.constraints;bundle-version="1.0.0",
org.eclipse.papyrus.infra.core.log;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.0",
org.eclipse.papyrus.infra.core;bundle-version="1.0.0",
org.eclipse.emf.edit;bundle-version="2.8.0",
org.eclipse.ui.views.properties.tabbed;bundle-version="3.5.300",
org.eclipse.papyrus.infra.services.labelprovider;bundle-version="1.0.0",
- org.eclipse.papyrus.infra.widgets.toolbox;bundle-version="1.0.0"
+ org.eclipse.papyrus.infra.widgets.toolbox;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="0.4.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="0.4.0"
Bundle-Vendor: %Bundle-Vendor
Bundle-Version: 1.0.0.qualifier
Eclipse-BuddyPolicy: dependent
diff --git a/plugins/views/properties/org.eclipse.papyrus.views.properties/src/org/eclipse/papyrus/views/properties/runtime/ViewConstraintEngine.java b/plugins/views/properties/org.eclipse.papyrus.views.properties/src/org/eclipse/papyrus/views/properties/runtime/ViewConstraintEngine.java
index 73ee99cc12e..d0de23fcbd2 100644
--- a/plugins/views/properties/org.eclipse.papyrus.views.properties/src/org/eclipse/papyrus/views/properties/runtime/ViewConstraintEngine.java
+++ b/plugins/views/properties/org.eclipse.papyrus.views.properties/src/org/eclipse/papyrus/views/properties/runtime/ViewConstraintEngine.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.views.properties.runtime;
import java.util.Set;
diff --git a/plugins/views/properties/org.eclipse.papyrus.views.properties/src/org/eclipse/papyrus/views/properties/widgets/CustomizablePropertyEditor.java b/plugins/views/properties/org.eclipse.papyrus.views.properties/src/org/eclipse/papyrus/views/properties/widgets/CustomizablePropertyEditor.java
index f50e5fd7d93..428f752495c 100644
--- a/plugins/views/properties/org.eclipse.papyrus.views.properties/src/org/eclipse/papyrus/views/properties/widgets/CustomizablePropertyEditor.java
+++ b/plugins/views/properties/org.eclipse.papyrus.views.properties/src/org/eclipse/papyrus/views/properties/widgets/CustomizablePropertyEditor.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.views.properties.widgets;
import org.eclipse.papyrus.views.properties.modelelement.DataSource;
diff --git a/plugins/views/properties/org.eclipse.papyrus.views.properties/src/org/eclipse/papyrus/views/properties/widgets/StringFileSelectorEMF.java b/plugins/views/properties/org.eclipse.papyrus.views.properties/src/org/eclipse/papyrus/views/properties/widgets/StringFileSelectorEMF.java
index 592bab79704..0e156e5861f 100644
--- a/plugins/views/properties/org.eclipse.papyrus.views.properties/src/org/eclipse/papyrus/views/properties/widgets/StringFileSelectorEMF.java
+++ b/plugins/views/properties/org.eclipse.papyrus.views.properties/src/org/eclipse/papyrus/views/properties/widgets/StringFileSelectorEMF.java
@@ -1,3 +1,15 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Patrick Tessier (CEA LIST) - Initial API and implementation
+ /*****************************************************************************/
package org.eclipse.papyrus.views.properties.widgets;
import java.io.File;
diff --git a/releng/org.eclipse.mdt.papyrus.releng.buckminster/papyrus-trunk-nightly/build.rmap b/releng/org.eclipse.mdt.papyrus.releng.buckminster/papyrus-trunk-nightly/build.rmap
index 7475077d6b6..1009ed3e3a9 100644
--- a/releng/org.eclipse.mdt.papyrus.releng.buckminster/papyrus-trunk-nightly/build.rmap
+++ b/releng/org.eclipse.mdt.papyrus.releng.buckminster/papyrus-trunk-nightly/build.rmap
@@ -300,6 +300,13 @@
</rm:uri>
</rm:provider>
+ <!-- PAYURYS EMF FACET-->
+ <rm:provider componentTypes="osgi.bundle" readerType="local">
+ <rm:uri format="{0}/plugins/facet/{1}">
+ <bc:propertyRef key="local.repository"/>
+ <bc:propertyRef key="buckminster.component"/>
+ </rm:uri>
+ </rm:provider>
<!-- EPF -->
<rm:provider componentTypes="osgi.bundle" readerType="local">
diff --git a/tests/junit/plugins/infra/services/org.eclipse.papyrus.infra.services.labelprovider.tests/META-INF/MANIFEST.MF b/tests/junit/plugins/infra/services/org.eclipse.papyrus.infra.services.labelprovider.tests/META-INF/MANIFEST.MF
index 7c71c7f6f70..605872464a1 100644
--- a/tests/junit/plugins/infra/services/org.eclipse.papyrus.infra.services.labelprovider.tests/META-INF/MANIFEST.MF
+++ b/tests/junit/plugins/infra/services/org.eclipse.papyrus.infra.services.labelprovider.tests/META-INF/MANIFEST.MF
@@ -8,9 +8,10 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.papyrus.uml.tools;bundle-version="1.0.0",
org.eclipse.emf.ecore;bundle-version="2.8.1",
org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
- org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.1",
org.eclipse.uml2.uml;bundle-version="4.0.0",
- org.junit;bundle-version="4.10.0"
+ org.junit;bundle-version="4.10.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="1.0.0",
+ org.eclipse.papyrus.emf.facet.custom.core;bundle-version="1.0.0"
Export-Package: org.eclipse.papyrus.infra.services.labelprovider.tests
Bundle-Vendor: Eclipse Modeling Project
Bundle-ActivationPolicy: lazy
diff --git a/tests/junit/plugins/sysml/org.eclipse.papyrus.sysml.modelexplorer.tests/META-INF/MANIFEST.MF b/tests/junit/plugins/sysml/org.eclipse.papyrus.sysml.modelexplorer.tests/META-INF/MANIFEST.MF
index d767afa793a..f6ebe099f5f 100644
--- a/tests/junit/plugins/sysml/org.eclipse.papyrus.sysml.modelexplorer.tests/META-INF/MANIFEST.MF
+++ b/tests/junit/plugins/sysml/org.eclipse.papyrus.sysml.modelexplorer.tests/META-INF/MANIFEST.MF
@@ -2,7 +2,8 @@ Manifest-Version: 1.0
Require-Bundle: org.eclipse.core.expressions;bundle-version="3.4.300",
org.eclipse.gmf.runtime.diagram.ui;bundle-version="1.5.0",
org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
- org.junit;bundle-version="4.10.0"
+ org.junit;bundle-version="4.10.0",
+ org.eclipse.papyrus.emf.facet.custom.core
Bundle-Vendor: %providerName
Fragment-Host: org.eclipse.papyrus.sysml.modelexplorer;bundle-version=
"0.10.0"
diff --git a/tests/junit/plugins/sysml/org.eclipse.papyrus.sysml.modelexplorer.tests/test-gen/org/eclipse/papyrus/sysml/modelexplorer/tests/common/AbstractModelExplorerTest.java b/tests/junit/plugins/sysml/org.eclipse.papyrus.sysml.modelexplorer.tests/test-gen/org/eclipse/papyrus/sysml/modelexplorer/tests/common/AbstractModelExplorerTest.java
index ae1c576fe7b..165a3329338 100644
--- a/tests/junit/plugins/sysml/org.eclipse.papyrus.sysml.modelexplorer.tests/test-gen/org/eclipse/papyrus/sysml/modelexplorer/tests/common/AbstractModelExplorerTest.java
+++ b/tests/junit/plugins/sysml/org.eclipse.papyrus.sysml.modelexplorer.tests/test-gen/org/eclipse/papyrus/sysml/modelexplorer/tests/common/AbstractModelExplorerTest.java
@@ -30,13 +30,14 @@ import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.emf.ecore.resource.ResourceSet;
import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.emf.facet.infra.browser.uicore.internal.model.ModelElementItem;
import org.eclipse.emf.transaction.RunnableWithResult;
import org.eclipse.emf.transaction.TransactionalEditingDomain;
import org.eclipse.gmf.runtime.diagram.ui.editparts.DiagramEditPart;
import org.eclipse.gmf.runtime.notation.Diagram;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.custom.Customization;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement;
import org.eclipse.papyrus.infra.core.resource.ModelSet;
import org.eclipse.papyrus.infra.core.resource.additional.AdditionalResourcesModel;
import org.eclipse.papyrus.sysml.modelexplorer.Activator;
@@ -207,9 +208,23 @@ public abstract class AbstractModelExplorerTest {
Assert.assertNotNull("Impossible to find IBD_B1", iBD_B1_Diagram);
bDD_Main_Diagram = getDiagram("BDD_Main");
Assert.assertNotNull("Impossible to find BDD_Main", bDD_Main_Diagram);
+ List<Customization> appliedCustomizations=org.eclipse.papyrus.views.modelexplorer.Activator.getDefault().getCustomizationManager().getManagedCustomizations();
+ Customization SimpleUML=null;
+ Iterator<?>iter=appliedCustomizations.iterator();
+ while(iter.hasNext()) {
+ Customization custo = (Customization)iter.next();
+ if( custo.getName().equals("SimpleUML")){
+ SimpleUML=custo;
+ }
+ }
+ org.junit.Assert.assertNotNull("Custom SimpleUML not found", SimpleUML);
+ org.eclipse.papyrus.views.modelexplorer.Activator.getDefault().getCustomizationManager().getManagedCustomizations().add(0, SimpleUML);
+
+
+ org.junit.Assert.assertEquals("bad order of applied Custom", "SimpleUML", appliedCustomizations.get(0).getName());
- /** end of generated selectable objects */
+ /** end of generated selectable objects */
}
/**
@@ -347,12 +362,15 @@ public abstract class AbstractModelExplorerTest {
if(bookViewPart != null) {
modelExplorerView = (ModelExplorerView)bookViewPart.getActiveView();
}
+ modelExplorerView.getCommonViewer().expandAll();
// Set selection on new element in the model explorer
if((modelExplorerView != null) && (newDiagrams != null)) {
List<Diagram> semanticElementList = new ArrayList<Diagram>();
semanticElementList.addAll(newDiagrams);
// reveal 'container' of the diagram
- reveal(semanticElementList, modelExplorerView.getCommonViewer());
+
+ modelExplorerView.revealSemanticElement(semanticElementList);
+ //reveal(semanticElementList, modelExplorerView.getCommonViewer());
} else {
throw new Exception("Impossible to find the model explorer required to select: " + newDiagrams);
}
@@ -455,15 +473,15 @@ public abstract class AbstractModelExplorerTest {
* @throws Exception
* exception thrown in case of issue
*/
- protected ModelElementItem findSemanticModelElementItem(EObject objectToFind) throws Exception {
+ protected EObjectTreeElement findSemanticModelElementItem(EObject objectToFind) throws Exception {
selectAndReveal(objectToFind);
IStructuredSelection selection = (IStructuredSelection)modelExplorerPart.getSite().getSelectionProvider().getSelection();
Assert.assertEquals("one and only one object should be selected", 1, selection.size());
Object selectedElement = selection.getFirstElement();
- Assert.assertTrue("selection should be a model item element", selectedElement instanceof ModelElementItem);
- Assert.assertTrue("selection should be linked to a EObject", ((ModelElementItem)selectedElement).getEObject() instanceof EObject);
- Assert.assertTrue("selection should be linked to the Object: " + objectToFind, ((ModelElementItem)selectedElement).getEObject().equals(objectToFind));
- return (ModelElementItem)selectedElement;
+ Assert.assertTrue("selection should be a model item element", selectedElement instanceof EObjectTreeElement);
+ Assert.assertTrue("selection should be linked to a EObject", ((EObjectTreeElement)selectedElement).getEObject() instanceof EObject);
+ Assert.assertTrue("selection should be linked to the Object: " + objectToFind, ((EObjectTreeElement)selectedElement).getEObject().equals(objectToFind));
+ return (EObjectTreeElement)selectedElement;
}
/**
@@ -475,15 +493,16 @@ public abstract class AbstractModelExplorerTest {
* @throws Exception
* exception thrown in case of issue
*/
- protected ModelElementItem findSemanticModelElementItem(Diagram diagramToFind) throws Exception {
+ protected EObjectTreeElement findSemanticModelElementItem(Diagram diagramToFind) throws Exception {
+
selectAndRevealDiagram(diagramToFind);
IStructuredSelection selection = (IStructuredSelection)modelExplorerPart.getSite().getSelectionProvider().getSelection();
Assert.assertEquals("one and only one diagram should be selected", 1, selection.size());
Object selectedElement = selection.getFirstElement();
- Assert.assertTrue("selection should be a model item element", selectedElement instanceof ModelElementItem);
- Assert.assertTrue("selection should be linked to a Diagram", ((ModelElementItem)selectedElement).getEObject() instanceof Diagram);
- Assert.assertTrue("selection should be linked to the Object: " + diagramToFind, ((ModelElementItem)selectedElement).getEObject().equals(diagramToFind));
- return (ModelElementItem)selectedElement;
+ Assert.assertTrue("selection should be a model item element", selectedElement instanceof EObjectTreeElement);
+ Assert.assertTrue("selection should be linked to a Diagram", ((EObjectTreeElement)selectedElement).getEObject() instanceof Diagram);
+ Assert.assertTrue("selection should be linked to the Object: " + diagramToFind, ((EObjectTreeElement)selectedElement).getEObject().equals(diagramToFind));
+ return (EObjectTreeElement)selectedElement;
}
protected String printElement(EObject object) {
diff --git a/tests/junit/plugins/sysml/org.eclipse.papyrus.sysml.modelexplorer.tests/test/org/eclipse/papyrus/sysml/modelexplorer/tests/dragdrop/AbstractDragDropTest.java b/tests/junit/plugins/sysml/org.eclipse.papyrus.sysml.modelexplorer.tests/test/org/eclipse/papyrus/sysml/modelexplorer/tests/dragdrop/AbstractDragDropTest.java
index e8525c958c9..82e15f263d6 100644
--- a/tests/junit/plugins/sysml/org.eclipse.papyrus.sysml.modelexplorer.tests/test/org/eclipse/papyrus/sysml/modelexplorer/tests/dragdrop/AbstractDragDropTest.java
+++ b/tests/junit/plugins/sysml/org.eclipse.papyrus.sysml.modelexplorer.tests/test/org/eclipse/papyrus/sysml/modelexplorer/tests/dragdrop/AbstractDragDropTest.java
@@ -22,11 +22,11 @@ import java.util.List;
import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.emf.common.command.CompoundCommand;
import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.facet.infra.browser.uicore.internal.model.ModelElementItem;
import org.eclipse.gmf.runtime.notation.Diagram;
import org.eclipse.jface.util.LocalSelectionTransfer;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.viewers.ViewerDropAdapter;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EObjectTreeElement;
import org.eclipse.papyrus.sysml.modelexplorer.tests.common.AbstractModelExplorerTest;
import org.eclipse.papyrus.sysml.modelexplorer.tests.utils.EditorUtils;
import org.eclipse.papyrus.views.modelexplorer.CustomCommonViewer;
@@ -69,13 +69,13 @@ public class AbstractDragDropTest extends AbstractModelExplorerTest {
public List<CompoundCommand> getListOfDropCommands(EObject sourceElement, EObject targetElement) throws Exception {
// init source object
- ModelElementItem sourceMEI = null;
+ EObjectTreeElement sourceMEI = null;
if(sourceElement instanceof Diagram) {
sourceMEI = findSemanticModelElementItem((Diagram)sourceElement);
} else {
sourceMEI = findSemanticModelElementItem(sourceElement);
}
- ModelElementItem targetMEI = null;
+ EObjectTreeElement targetMEI = null;
if(targetElement instanceof Diagram) {
targetMEI = findSemanticModelElementItem((Diagram)targetElement);
} else {
diff --git a/tests/junit/plugins/uml/tools/org.eclipse.papyrus.uml.tools.tests/META-INF/MANIFEST.MF b/tests/junit/plugins/uml/tools/org.eclipse.papyrus.uml.tools.tests/META-INF/MANIFEST.MF
index 45335126385..a6ffe40397d 100644
--- a/tests/junit/plugins/uml/tools/org.eclipse.papyrus.uml.tools.tests/META-INF/MANIFEST.MF
+++ b/tests/junit/plugins/uml/tools/org.eclipse.papyrus.uml.tools.tests/META-INF/MANIFEST.MF
@@ -10,7 +10,8 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.emf.facet.infra.browser.uicore;bundle-version="0.2.0",
org.junit;bundle-version="4.10.0",
org.eclipse.papyrus.junit.utils;bundle-version="1.0.0",
- org.eclipse.emf.transaction;bundle-version="1.4.0"
+ org.eclipse.emf.transaction;bundle-version="1.4.0",
+ org.eclipse.papyrus.emf.facet.custom.ui;bundle-version="1.0.0"
Export-Package: org.eclipse.papyrus.uml.tools.tests,
org.eclipse.papyrus.uml.tools.tests.tests
Bundle-Vendor: Eclipse Modeling Project
diff --git a/tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/META-INF/MANIFEST.MF b/tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/META-INF/MANIFEST.MF
index d0fd039419a..d1f486cca15 100644
--- a/tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/META-INF/MANIFEST.MF
+++ b/tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/META-INF/MANIFEST.MF
@@ -15,7 +15,9 @@ Require-Bundle: org.eclipse.ui,
org.eclipse.papyrus.infra.core.sasheditor;bundle-version="1.0.0",
org.eclipse.papyrus.views.modelexplorer;bundle-version="1.0.0",
org.eclipse.papyrus.infra.widgets;bundle-version="1.0.0",
- org.junit;bundle-version="4.10.0"
+ org.junit;bundle-version="4.10.0",
+ org.eclipse.papyrus.emf.facet.custom.metamodel,
+ org.eclipse.papyrus.infra.emf
Export-Package: org.eclipse.papyrus.views.modelexplorer.tests
Bundle-Vendor: %providerName
Bundle-ActivationPolicy: lazy
diff --git a/tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/src/org/eclipse/papyrus/views/modelexplorer/tests/AbstractHandlerTest.java b/tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/src/org/eclipse/papyrus/views/modelexplorer/tests/AbstractHandlerTest.java
index a700e2a5271..481420d48d7 100644
--- a/tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/src/org/eclipse/papyrus/views/modelexplorer/tests/AbstractHandlerTest.java
+++ b/tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/src/org/eclipse/papyrus/views/modelexplorer/tests/AbstractHandlerTest.java
@@ -38,6 +38,7 @@ import org.eclipse.emf.transaction.util.TransactionUtil;
import org.eclipse.jface.viewers.IStructuredSelection;
import org.eclipse.jface.viewers.StructuredSelection;
import org.eclipse.papyrus.infra.core.editor.CoreMultiDiagramEditor;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.views.modelexplorer.ModelExplorerPage;
import org.eclipse.papyrus.views.modelexplorer.ModelExplorerPageBookView;
import org.eclipse.papyrus.views.modelexplorer.ModelExplorerView;
@@ -296,9 +297,7 @@ public abstract class AbstractHandlerTest {
// store the root of the model
Object[] visibleElement = commonViewer.getVisibleExpandedElements();
- if(visibleElement[0] instanceof IAdaptable) {
- modelRoot = (EObject)((IAdaptable)visibleElement[0]).getAdapter(EObject.class);
- }
+ modelRoot = EMFHelper.getEObject(visibleElement[0]);
setStatus(Status.OK_STATUS);
}
diff --git a/tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/src/org/eclipse/papyrus/views/modelexplorer/tests/DeleteHandlerTest.java b/tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/src/org/eclipse/papyrus/views/modelexplorer/tests/DeleteHandlerTest.java
index ab04aafea6c..c261cd3399e 100644
--- a/tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/src/org/eclipse/papyrus/views/modelexplorer/tests/DeleteHandlerTest.java
+++ b/tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/src/org/eclipse/papyrus/views/modelexplorer/tests/DeleteHandlerTest.java
@@ -24,6 +24,8 @@ import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.facet.infra.browser.uicore.internal.model.ITreeElement;
import org.eclipse.emf.transaction.RunnableWithResult;
import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.papyrus.emf.facet.custom.metamodel.v0_2_0.internal.treeproxy.EStructuralFeatureTreeElement;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.views.modelexplorer.ModelExplorerPageBookView;
import org.eclipse.swt.widgets.Display;
import org.eclipse.ui.IWorkbenchPage;
@@ -90,9 +92,7 @@ public class DeleteHandlerTest extends AbstractHandlerTest {
final IStructuredSelection currentSelection = getCurrentSelection();
Assert.assertEquals("Only one element should be selected", currentSelection.size(), 1); //$NON-NLS-1$
Object obj = currentSelection.getFirstElement();
- if(obj instanceof IAdaptable) {
- obj = ((IAdaptable)obj).getAdapter(EObject.class);
- }
+ obj = EMFHelper.getEObject(obj);
Assert.assertSame(getRootOfTheModel(), obj);
final IHandler currentHandler = getActiveHandler();
if(currentHandler == null) {
@@ -118,8 +118,8 @@ public class DeleteHandlerTest extends AbstractHandlerTest {
final Object[] expandedElement = runnable.getResult();
for(final Object object : expandedElement) {
- if(object instanceof org.eclipse.emf.facet.infra.browser.uicore.internal.model.LinkItem) {
- selectElementInTheModelexplorer((ITreeElement)object);
+ if(object instanceof EStructuralFeatureTreeElement) {
+ selectElementInTheModelexplorer((EStructuralFeatureTreeElement)object);
final IHandler handler = getActiveHandler();
if(handler != null) {
Assert.assertFalse("The handler " + handler + " is active on LinkItem, it is not the wanted behavior", handler.isEnabled()); //$NON-NLS-1$ //$NON-NLS-2$
diff --git a/tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/src/org/eclipse/papyrus/views/modelexplorer/tests/ModelExplorerViewTests.java b/tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/src/org/eclipse/papyrus/views/modelexplorer/tests/ModelExplorerViewTests.java
index cf8c7180bc9..660aa92a500 100644
--- a/tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/src/org/eclipse/papyrus/views/modelexplorer/tests/ModelExplorerViewTests.java
+++ b/tests/junit/plugins/views/modelexplorer/org.eclipse.papyrus.views.modelexplorer.tests/src/org/eclipse/papyrus/views/modelexplorer/tests/ModelExplorerViewTests.java
@@ -22,6 +22,7 @@ import org.eclipse.core.runtime.Status;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.transaction.RunnableWithResult;
import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.views.modelexplorer.ModelExplorerPageBookView;
import org.eclipse.swt.widgets.Display;
import org.eclipse.ui.IWorkbenchPage;
@@ -76,9 +77,7 @@ public class ModelExplorerViewTests extends AbstractHandlerTest {
final IStructuredSelection currentSelection = getCurrentSelection();
Assert.assertEquals("Only one element should be selected", currentSelection.size(), 1); //$NON-NLS-1$
Object obj = currentSelection.getFirstElement();
- if(obj instanceof IAdaptable) {
- obj = ((IAdaptable)obj).getAdapter(EObject.class);
- }
+ obj = EMFHelper.getEObject(obj);
Assert.assertSame("The function revealSemanticElement seems doesn't work on the root of the model", obj, getRootOfTheModel()); //$NON-NLS-1$
}

Back to the top